📄 aes.bak
字号:
// AES.cpp : Defines the entry point for the console application.
//
#include<iostream.h>
#include<stdio.h>
void njz(int a[8][16])
{
int i,j,k;
static int t[16];
for(i=0;i<8;i++)
{ if(a[i][i]==0)
for(j=i+1;j<8;j++)
if(a[j][i]==1)
{for(k=i;k<16;k++)
{t[k]=a[j][k];
a[j][k]=a[i][k];
a[i][k]=t[k];}
break;
}
for(j=i+1;j<8;j++)
if(a[j][i]==1)
for(k=i;k<16;k++)
a[j][k]=(a[j][k]+a[i][k])%2;
}
for(i=7;i>=0;i--)
for(j=i-1;j>=0;j--)
if(a[j][i]==1)
for(k=0;k<16;k++)
a[j][k]=(a[j][k]+a[i][k])%2;
}
void nxl()
{ static int c[16];
static int a[8];
static int b[8];
static int d[9]={1,1,0,1,1,0,0,0,1};
int i,i1,i2,j,k;
for(i1=4;i1<5;i1++)
{ k=i1;
j=0;
while(k>0)
{a[j++]=k%2;
k=k/2;
}//while
printf("a=");
for(j=7;j>=0;j--)
printf("%d",a[j]);
printf(" ");
for(i2=0;i2<256;i2++)
{ k=i2;
j=0;
while(k>0)
{b[j++]=k%2;
k=k/2;
}
for(k=15;k>=0;k--)
c[k]=0;
for(i=0;i<8;i++)
for(j=0;j<8;j++)
c[i+j]=(c[i+j]+a[i]*b[j])%2;
for(i=15;i>=8;i--)
if(c[i]==1)
{ k=i;
for(j=8;j>=0;j--)
{c[k]=(c[k]+d[j])%2;
k--;
}
}
for(k=7;k>=0;k--)
if(c[k]==1)
break;
if(k==0)
{ printf("b=");
for(k=7;k>=0;k--)
printf("%d",b[k]);
printf(" ");
}
}
printf("\n");
}
}
void main()
{ static int a[8][16]=
{{1,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0},
{ 1,1,0,0,0,1,1,1,0,1,0,0,0,0,0,0},
{ 1,1,1,0,0,0,1,1,0,0,1,0,0,0,0,0},
{ 1,1,1,1,0,0,0,1,0,0,0,1,0,0,0,0},
{ 1,1,1,1,1,0,0,0,0,0,0,0,1,0,0,0},
{ 0,1,1,1,1,1,0,0,0,0,0,0,0,1,0,0},
{ 0,0,1,1,1,1,1,0,0,0,0,0,0,0,1,0},
{ 0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,1}};
//int i,j;
nxl();
/*for(i=0;i<8;i++)
{ for(j=8;j<16;j++)
cout<<a[i][j]<<" ";
cout<<endl;
}*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -