91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 12.64MB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發布日期: 2023-06-18
  • 語言: C/C++
  • 標簽: MFC??vc6.0??RSA??DES??MD5??

資源簡介

MFC vc6.0 RSA DES MD5的加密解密算法 圖形化開發

資源截圖

代碼片段和文件信息

//?DESHOME.cpp:?implementation?of?the?CDESHOME?class.
//
//////////////////////////////////////////////////////////////////////

#include?“stdafx.h“
#include?“Encryption_decode.h“
#include?“DESHOME.h“
#include?“data.h“
#include?

#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
//?Construction/Destruction
//////////////////////////////////////////////////////////////////////
/*對對所定義變量進行初始化*/
CDESHOME::CDESHOME()
{
memset(key?0?17*49);??//key[17][49]?存放16輪子密鑰,下標從1開始
memset(t1?0?65);??????//存放明文置換后的二進制
memset(L?0?17*33);
memset(R?0?17*33);?
memset(plain_binary?0?65);??//存放明文二進制,下標從0開始
memset(cipher_binary?0?65);?//存放密鑰二進制,下標從0開始
}
/*將待加密、解密的文件轉換成二進制文件*/
void?CDESHOME::PlainText(const?CString?String)
{
unsigned?char?ch;
int?i?j?str[8];
for(i=0;?i<8;?i++)
{
??ch?=?String.GetAt(i);

??for(j=0;?j<8;?j++)
??{
?????????str[j]?=?ch%2;
?ch?=?ch/2;
??}

??for(j=7;?j>=0;?j--)
????plain_binary[i*8+7-j]?=?str[j];
}
}

/*將密鑰轉換成二進制形式,并保存在數組cipher_binary中*/
void?CDESHOME::CipherText(const?CString?String)
{
unsigned?char?ch;
int?i?j?str[8];
for(i=0;?i<8;?i++)
{
??ch?=?String.GetAt(i);
??for(j=0;?j<8;?j++)
??{
?????????str[j]?=?ch%2;
?ch?=?ch/2;
??}
??for(j=7;?j>=0;?j--)
??{
????cipher_binary[i*8+7-j]?=?str[j];
??}
}
}

/*子密鑰的產生函數,并將生成的子密鑰保存在數組key中*/
void?CDESHOME::CreateCipher()
{
int?i?k0[57]?CC[57];
int?C[17][29]?D[17][29];

for(i=1;?i<=56;i++)//密鑰二進制經過PC_1置換表選擇56位
{
??k0[i]?=?cipher_binary[PC_1[i-1]-1];
}

//將選擇好的56位二進制分成兩組,每組28位,分別存放到C[0][]?D[0][]中
for(i=1;?i<=28;?i++)?
{
C[0][i]?=?k0[i];
}
for(i=29;?i<=56;?i++)
{
D[0][i-28]?=?k0[i];
}

for?(int?temp?=?0;?temp<16;?temp++)
{
//做左移位
if(shift[temp]?==?1)//循環左移1位
{
for(i=1;?i<28;?i++)
{
C[temp+1][i]=C[temp][i+1];
D[temp+1][i]=D[temp][i+1];
}
C[temp+1][28]=C[temp][1];
D[temp+1][28]=D[temp][1];
}
else????//循環左移2位
{
for(i=1;?i<27;?i++)
{
C[temp+1][i]=C[temp][i+2];
D[temp+1][i]=D[temp][i+2];
}
C[temp+1][27]=C[temp][1];
D[temp+1][27]=D[temp][1];
C[temp+1][28]=C[temp][2];
D[temp+1][28]=D[temp][2];
}

for(i=1;?i<=28;?i++)?//將兩部分密鑰合并到CC[56]數組中,經過PC_2置換表生成一輪子密鑰
{
CC[i]=C[temp+1][i];
CC[i+28]=D[temp+1][i];
}
for(i=1;?i<=48;?i++)//壓縮置換
{
key[temp+1][i]?=?CC[PC_2[i-1]];//生成子密鑰存放到key[17][]中
}
}
}


/*保存子密鑰*/
void?CDESHOME::SaveToFile()
{
CFile?file(savepath.SaveFilePath()?CFile::modeNoTruncate|CFile::modeWrite);
static?int?i?j;
CString?strstring=““;
for(i=1;?i<17;?i++)
{
str?==?““;
for(j=1;?j<=48;?j++)
{
str.Format(“%d“?key[i][j]);
string?+=?str;
}
string?+=?“\n“;?
}
file.Write(string??string.GetLength());
file.Close();
}
/*密鑰操作主程序*/
void?CDESHOME::Init(CString?ciphertex

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????3280??2014-11-26?23:13??Encryption_decode\data.h

?????文件??????32186??2014-11-26?23:16??Encryption_decode\Debug\DESHOME.obj

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\DESHOME.sbr

?????文件??????32349??2014-11-27?18:30??Encryption_decode\Debug\DES_Dlg.obj

?????文件??????????0??2014-11-27?18:30??Encryption_decode\Debug\DES_Dlg.sbr

?????文件??????14763??2014-11-26?23:16??Encryption_decode\Debug\DocOpera.obj

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\DocOpera.sbr

?????文件????3998720??2014-11-27?18:30??Encryption_decode\Debug\Encryption_decode.bsc

?????文件???11550870??2014-11-27?18:30??Encryption_decode\Debug\Encryption_decode.exe

?????文件?????372628??2014-11-27?18:30??Encryption_decode\Debug\Encryption_decode.ilk

?????文件??????15471??2014-11-26?23:16??Encryption_decode\Debug\Encryption_decode.obj

?????文件????8583416??2014-11-26?23:16??Encryption_decode\Debug\Encryption_decode.pch

?????文件?????680960??2014-11-27?18:30??Encryption_decode\Debug\Encryption_decode.pdb

?????文件????9462292??2014-11-26?23:44??Encryption_decode\Debug\Encryption_decode.res

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\Encryption_decode.sbr

?????文件??????41801??2014-11-26?23:16??Encryption_decode\Debug\Encryption_decodeDlg.obj

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\Encryption_decodeDlg.sbr

?????文件??????14166??2014-11-26?23:16??Encryption_decode\Debug\MD5Crypt.obj

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\MD5Crypt.sbr

?????文件??????77079??2014-11-26?23:16??Encryption_decode\Debug\MD5Dlg.obj

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\MD5Dlg.sbr

?????文件?????222028??2012-06-06?14:05??Encryption_decode\Debug\msado15.tlh

?????文件?????167307??2012-06-06?14:05??Encryption_decode\Debug\msado15.tli

?????文件???????7066??2014-11-26?23:16??Encryption_decode\Debug\MyButton.obj

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\MyButton.sbr

?????文件??????29292??2014-11-26?23:16??Encryption_decode\Debug\RSA_DecryptionDlg.obj

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\RSA_DecryptionDlg.sbr

?????文件??????26093??2014-11-26?23:16??Encryption_decode\Debug\RSA_Dlg.obj

?????文件??????????0??2014-11-27?00:20??Encryption_decode\Debug\RSA_Dlg.sbr

?????文件??????28072??2014-11-26?23:16??Encryption_decode\Debug\RSA_EncryptionDlg.obj

............此處省略82個文件信息

評論

共有 條評論