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

正文內(nèi)容

杭電密碼學(xué)des密碼實(shí)驗(yàn)報(bào)告-資料下載頁

2025-05-14 01:27本頁面
  

【正文】 // bcde代表第幾列 ByteToBit(DatOut,amp。S_Box[i][Y][X],4)。 // 把找到的點(diǎn)數(shù)據(jù)換為二進(jìn)制 }}// F函數(shù)void F_Change(bool DatIn[32],bool DatKi[48]) // F函數(shù){ static bool MiR[48]={0}。 // 輸入32位通過E選位變?yōu)?8位 TablePermute(MiR,DatIn,E_Table,48)。 Xor(MiR,DatKi,48)。 // 和子密鑰異或 S_Change(DatIn,MiR)。 // S盒變換 TablePermute(DatIn,DatIn,P_Table,32)。 // P置換后輸出}void SetKey(char KeyIn[8]) // 獲取子密鑰Ki { int i=0。 static bool KeyBit[64]={0}。 // 密鑰二進(jìn)制存儲(chǔ)空間 static bool *KiL=amp。KeyBit[0],*KiR=amp。KeyBit[28]。 // 前28,后28共56 ByteToBit(KeyBit,KeyIn,64)。 // 把密鑰轉(zhuǎn)為二進(jìn)制存入KeyBit TablePermute(KeyBit,KeyBit,PC1_Table,56)。 // PC1表置換 for(i=0。i16。i++) { LoopMove(KiL,28,Move_Table[i])。 // 左移 LoopMove(KiR,28,Move_Table[i])。 TablePermute(SubKey[i],KeyBit,PC2_Table,48)。 // 二維數(shù)組 SubKey[i]為每一行起始地址 // 每移一次位進(jìn)行PC2置換得 Ki 48位 } }void PlayDes(bool MesOut[64],char MesIn[8]) // DES加密{ int i=0。 static bool MesBit[64]={0}。 // 明文二進(jìn)制存儲(chǔ)空間 64位 static bool Temp[32]={0}。 static bool *MiL=amp。MesBit[0],*MiR=amp。MesBit[32]。 ByteToBit(MesBit,MesIn,64)。 // 把明文換成二進(jìn)制存入MesBit TablePermute(MesBit,MesBit,IP_Table,64)。 for(i=0。i16。i++) // 迭代16次 { BitsCopy(Temp,MiR,32)。 // 臨時(shí)存儲(chǔ) F_Change(MiR,SubKey[i])。 // F函數(shù)變換 Xor(MiR,MiL,32)。 // 得到Ri BitsCopy(MiL,Temp,32)。 // 得到Li } TablePermute(MesOut,MesBit,IPR_Table,64)。}void KickDes(char MesOut[8],bool MesBit[64]) // DES解密{ int i=0。 static bool Temp[32]={0}。 static bool *MiL=amp。MesBit[0],*MiR=amp。MesBit[32]。 // 指針分開前32位和后32位 TablePermute(MesBit,MesBit,IP_Table,64)。 for(i=15。i=0。i) { BitsCopy(Temp,MiL,32)。 F_Change(MiL,SubKey[i])。 Xor(MiL,MiR,32)。 BitsCopy(MiR,Temp,32)。 } TablePermute(MesBit,MesBit,IPR_Table,64)。 BitToByte(MesOut,MesBit,64)。 } char MyKey[200]={0}。 //密鑰 char MyMessage[200]={0}。 //明文 bool MesHex[64]={0}。 //用來儲(chǔ)存密文的64位2進(jìn)制代碼 void CMy13113424_yfDlg::OnButton1() { UpdateData(TRUE)。 int i,j。 for(i = 0。i ()。i++) MyKey[i] = (i)。 SetKey(MyKey)。 char str[9]。 m_miwen = m_mingwen。 int m=()。 int t=0。 for(i = 0。i ()。i+=8) { memset(str,0,sizeof(str))。 for (j=i。ji+8amp。amp。jm。j++) str[ji]=(j)。 PlayDes(MesHex,str)。 for (int i=0。i64。i++) m_miwen+=MesHex[i]+39。039。 } UpdateData(FALSE)。}void CMy13113424_yfDlg::OnButton2() { UpdateData(TRUE)。 int i,j。// KickDes(MyMessage,MesHex)。 //解密到Mymessage中 int m=()。 char str[9]。 bool ss[64]。 for(i = 0。i m。i+=64) { memset(str,0,sizeof(str))。 for (j=i。ji+64。j++) ss[ji]=(j)39。039。 KickDes(str,ss)。 for (int j=0。j8。j++) m_mingwen_pro+=str[j]。 } UpdateData(FALSE)。}DES密碼輸出界面截屏如下:
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1