DES一轮加密算法,假设8个S盒一样,都为S1盒。输出每一步 的结果。 已知R0=00000000 11111111 00000110 10000011, 子密钥K1=00111101 10001111 11001101 00110111 00111111 00000110 实现E盒扩展、与轮密钥异或加、S盒代换(8个一样的S盒,都为S1盒)和P盒置换。 #include #include int R0[32]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,1,1,0,1,0,0,0,0,0,1,1}; int K1[48]={0,0,1,1,1,1,0,1,1,0,0,0,1,1,1,1,1,1,0,0,1,1,0,1,0,0,1,1,0,1,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,1,1,0}; int E[48]; int S[4][16]={
{14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7}, {0,15,7,4,14,2,13,1,10,6,12,11,9,5,3,8}, {4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0}, {15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13}}; int P[32]={16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10,2, 8,24,14,32,27,3,9,19 |
|