freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

編程實(shí)現(xiàn)aes算法及加密解密過(guò)程(參考版)

2024-09-03 13:54本頁(yè)面
  

【正文】 通過(guò)完成本次實(shí)驗(yàn),不僅使我對(duì)AES加密解密的原理、實(shí)現(xiàn)過(guò)程等諸多細(xì)節(jié)有了完整、透徹的理解,對(duì)算法、密碼保密性和安全性有了新的認(rèn)識(shí),而且在具體實(shí)現(xiàn)中學(xué)習(xí)到了很多的知識(shí)與能力,認(rèn)識(shí)到了自身存在的許多不足,對(duì)今后的學(xué)習(xí)工作起到了極大的幫助。然而,程序中仍存在諸多問(wèn)題需要在今后更深入的學(xué)習(xí)和實(shí)踐后改進(jìn),完成例如使用面向?qū)ο蟮乃枷肱c語(yǔ)言進(jìn)行編程,設(shè)計(jì)更加良好的人機(jī)交互界面等高級(jí)要求。}6. 測(cè)試報(bào)告 加密下面是我的程序運(yùn)行界面:下面的是我的程序運(yùn)行結(jié)果:“”: 解密下面是我的程序運(yùn)行界面:下面的是我的程序運(yùn)行結(jié)果: “”:7 實(shí)驗(yàn)總結(jié)本次課程設(shè)計(jì)對(duì)我來(lái)說(shuō)是一個(gè)不小的挑戰(zhàn),在工作過(guò)程之中也遇到過(guò)種種問(wèn)題與困難。in[i][j])。 j 4。 i 4。 if ((fp = fopen(file2, r)) == NULL)//打開(kāi)消息 { exit(0)。key[i][j])。 j 4。 i 4。 if ((fp = fopen(file1, r)) == NULL)//打開(kāi)密鑰 { exit(0)。}void OpenFile(char file1[64], char file2[64]){ FILE *fp。 fprintf(fp, %c, out[i][j])。 j Nb。 i 4。 j++) { out[i][j] = state[i][j]。 i++) { for(j = 0。 } for(i = 0。 if ((fp = fopen(, w)) == NULL) { AfxMessageBox(打開(kāi)文件錯(cuò)誤!)。 k++) { fprintf(fp, %x , state[j][k])。 for (k = 0。 j 4。 } } fprintf(fp, \n\n解密完成后輸出:\n)。 k 4。 j++) { fprintf(fp, \nw[%d]= ,round*4+j)。 for (j = 0。 AddRoundKey(state,w[round])。 } } } } InvShiftRows(state)。 k 4。 j++) { fprintf(fp, \n)。 for (j = 0。 k++) { fprintf(fp, %x , w[round1][k][j])。 for (k = 0。 j 4。 if (round == 2) { fprintf(fp, \n\n第九輪輪密鑰:\n)。 AddRoundKey(state, w[round])。 InvShiftRows(state)。 round 0。 } } AddRoundKey(state,w[round])。 j Nb。 i++) { fprintf(fp,\n)。 for(i = 0。 j++) { fprintf(fp,%0x ,state[i][j])。 for(j = 0。 i 4。 } fprintf(fp,初始密文:\n)。 } }//將初始密文和初始密鑰存入文件中并在程序中輸出 if ((fp = fopen(, w)) == NULL) { AfxMessageBox(打開(kāi)文件錯(cuò)誤!)。 j Nb。 i 4。 KeyExpansion(key,w)。 int round = 10。 int i, j, k。 byte w[Nr+1][Nk][4]。 state[3][i] = mul(0x0e, temp[3][i]) ^ mul(0x0b, temp[0][i]) ^ mul(0x09, temp[2][i]) ^ mul(0x0d, temp[1][i])。 state[1][i] = mul(0x0e, temp[1][i]) ^ mul(0x0b, temp[2][i]) ^ mul(0x09, temp[0][i]) ^ mul(0x0d, temp[3][i])。 i 4。 j++) { temp[i][j] = state[i][j]。 i++) { for(j = 0。 for(i = 0。 } }}//逆列混合void InvMixColumns(byte state[4][Nb]){ byte temp[4][Nb]。 j Nb。 i 4。 }}//逆字節(jié)替代void InvSubBytes(byte state[4][Nb]){ int i, j。 memcpy(state[position], state[position]+time, 4time)。 time 0, position 4。 int time,position。 //此處的密文輸出是以列優(yōu)先 } } fclose(fp)。 j Nb。 i 4。 j++) { out[j][i] = state[i][j]。 i++) { for(j = 0。 } for(i = 0。 if ((fp = fopen(, w)) == NULL) { AfxMessageBox(打開(kāi)文件錯(cuò)誤!)。 k++) { fprintf(fp, %x , state[j][k])。 for (k = 0。 j 4。 } } fprintf(fp, \n\n加密完成后輸出:\n)。 k 4。 j++) { fprintf(fp, \nw[%d]= ,round*4+j)。 for (j = 0。 AddRoundKey(state, w[round])。 } } } } SubBytes(state)。 k 4。 j++) { fprintf(fp, \n)。 for (j = 0。 k++) { fprintf(fp, %x , w[round+1][k][j])。 for (k = 0。 j 4。 if (round == 8) { fprintf(fp, \n\n第九輪輪密鑰:\n)。 MixColumns(state)。 round++) { SubBytes(state)。 //初始輪密鑰加 //開(kāi)始循環(huán)Nr輪 for(round = 1。 j++) { fprintf(fp,%0x ,w[0][j][i])。 for(j = 0。 i 4。 } } fprintf(fp, \n\n初始密鑰:\n)。 j Nb。 i++) { fprintf(fp,\n)。 for(i = 0。 exit(0)。 j++) { state[j][i] = in[i][j]。 i++) { for(j = 0。 //調(diào)用密鑰擴(kuò)展函數(shù)將所有的擴(kuò)展密鑰存于w[][][]數(shù)組中 //將讀入的明文進(jìn)行轉(zhuǎn)秩 for(i = 0。 OpenFile(file1, file2)。 byte out[4][Nb]。 int round = 0。 } } }}//加密模塊void Cipher(char file1[64], char file2[64]){ byte state[4][Nb]。 l 4。 j Nk。 l++) { b[j][l] = w[i][l][j]。 j++) { for (l = 0。 } } for (j = 0。 l 4。 j Nk。 i Nr + 1。 } printf(\n)。 j++) { k[i][j] = k[iNk][j]^temp[j]。 } } for(j = 0。 j 4 。 SubWords(temp)。 j++) { te
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1