資源簡(jiǎn)介
3DES(即Triple DES)是DES向AES過(guò)渡的加密算法,它使用3條64位的密鑰對(duì)數(shù)據(jù)進(jìn)行三次加密。是DES的一個(gè)更安全的變形。它以DES為基本模塊,通過(guò)組合分組方法設(shè)計(jì)出分組加密算法。比起最初的DES,3DES更為安全。

代碼片段和文件信息
//?DES.cpp:?implementation?of?the?DES?class.
//
//////////////////////////////////////////////////////////////////////
#include?“stdafx.h“
#include?“DESlxp.h“
#include?“DES.h“
#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
//?Construction/Destruction
//////////////////////////////////////////////////////////////////////
DES::DES()
{
}
DES::~DES()
{
}
//?initial?permutation?IP
const?static?char?IP_Table[64]?=?{
58?50?42?34?26?18?10?2?60?52?44?36?28?20?12?4
62?54?46?38?30?22?14?6?64?56?48?40?32?24?16?8
57?49?41?33?25?17??9?1?59?51?43?35?27?19?11?3
????61?53?45?37?29?21?13?5?63?55?47?39?31?23?15?7
};
//?final?permutation?IP^-1?
const?static?char?IPR_Table[64]?=?{
40?8?48?16?56?24?64?32?39?7?47?15?55?23?63?31
38?6?46?14?54?22?62?30?37?5?45?13?53?21?61?29
????36?4?44?12?52?20?60?28?35?3?43?11?51?19?59?27
34?2?42?10?50?18?58?26?33?1?41??9?49?17?57?25
};
//?expansion?operation?matrix
static?const?char?E_Table[48]?=?{
32??1??2??3??4??5??4??5??6??7??8??9
?8??9?10?11?12?13?12?13?14?15?16?17
16?17?18?19?20?21?20?21?22?23?24?25
24?25?26?27?28?29?28?29?30?31?32??1
};
//?32-bit?permutation?function?P?used?on?the?output?of?the?S-boxes?
const?static?char?P_Table[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?13?30?6??22?11?4??25
};
//?permuted?choice?table?(key)?
const?static?char?PC1_Table[56]?=?{
57?49?41?33?25?17??9??1?58?50?42?34?26?18
10??2?59?51?43?35?27?19?11??3?60?52?44?36
63?55?47?39?31?23?15??7?62?54?46?38?30?22
14??6?61?53?45?37?29?21?13??5?28?20?12??4
};
//?permuted?choice?key?(table)?
const?static?char?PC2_Table[48]?=?{
14?17?11?24??1??5??3?28?15??6?21?10
23?19?12??4?26??8?16??7?27?20?13??2
41?52?31?37?47?55?30?40?51?45?33?48
44?49?39?56?34?53?46?42?50?36?29?32
};
//?number?left?rotations?of?pc1?
const?static?char?LOOP_Table[16]?=?{
1122222212222221
};
//?The?(in)famous?S-boxes?
const?static?char?S_Box[8][4][16]?=?{
//?S1?
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
//?S2?
????15??1??8?14??6?11??3??4??9??7??2?13?12??0??5?10
?3?13??4??7?15??2??8?14?12??0??1?10??6??9?11??5
?0?14??7?11?10??4?13??1??5??8?12??6??9??3??2?15
????13??8?10??1??3?15??4??2?11??6??7?12??0??5?14??9
//?S3?
????10??0??
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件???????9008??2005-05-27?09:53??3DES\DES.cpp
?????文件????????586??2005-05-27?09:53??3DES\DES.h
?????文件??????22120??2008-11-09?15:20??3DES\DESlxp.aps
?????文件???????1929??2008-12-18?17:17??3DES\DESlxp.clw
?????文件???????2063??2005-05-27?09:42??3DES\DESlxp.cpp
?????文件???????4277??2005-05-27?09:43??3DES\DESlxp.dsp
?????文件????????537??2005-05-27?09:42??3DES\DESlxp.dsw
?????文件???????1324??2005-05-27?09:42??3DES\DESlxp.h
?????文件??????99328??2008-12-18?17:17??3DES\DESlxp.ncb
?????文件????????246??2008-11-09?15:20??3DES\DESlxp.plg
?????文件???????6501??2005-05-27?11:29??3DES\DESlxp.rc
?????文件???????1607??2005-05-27?10:49??3DES\DESlxpDlg.h
?????文件???????1374??2005-05-27?11:29??3DES\resource.h
?????文件????????208??2005-05-27?09:42??3DES\StdAfx.cpp
?????文件???????1054??2005-05-27?09:42??3DES\StdAfx.h
?????文件??????15644??2005-05-27?09:53??3DES\Debug\DES.obj
?????文件?????118834??2005-05-27?14:34??3DES\Debug\DESlxp.exe
?????文件?????253924??2005-05-27?14:34??3DES\Debug\DESlxp.ilk
?????文件??????14913??2005-05-27?10:54??3DES\Debug\DESlxp.obj
?????文件????5510544??2005-05-27?09:45??3DES\Debug\DESlxp.pch
?????文件?????402432??2005-05-27?14:34??3DES\Debug\DESlxp.pdb
?????文件???????3272??2005-05-27?11:29??3DES\Debug\DESlxp.res
?????文件??????47527??2005-05-27?14:34??3DES\Debug\DESlxpDlg.obj
?????文件?????105433??2005-05-27?09:45??3DES\Debug\StdAfx.obj
?????文件?????214016??2008-12-18?17:17??3DES\Debug\vc60.idb
?????文件?????372736??2005-05-27?14:34??3DES\Debug\vc60.pdb
?????文件???????1078??2005-05-27?09:42??3DES\res\DESlxp.ico
?????文件????????398??2005-05-27?09:42??3DES\res\DESlxp.rc2
?????文件???????8414??2008-12-18?17:17??3DES\DESlxpDlg.cpp
?????文件?????175616??2008-12-18?17:17??3DES\DESlxp.opt
............此處省略6個(gè)文件信息
評(píng)論
共有 條評(píng)論