编辑: You—灰機 | 2019-07-14 |
2007 西安交通大学电子商务系 两种加密算法 对称加解密算法:通信双方(通信主体)同时掌握一个钥匙,加解密都由这一个钥匙完成.
公私钥加解密算法:通信双方(通信主体)彼此掌握不同的钥匙,不同方向的加解密由不同钥匙完成. 对称加解密算法 通信双方通信前共同拟定一个密钥,不对第三方公开.消息发送前都通过该密钥加密,到达后也通过该密钥解密.不具有个体原子性,一个密钥被共享,泄露机率加大. 对称加解密过程 通信双方甲、乙共同拟定一个密钥,共享.任何一方发信时都以该共享密钥加密再发送.收信方同样以该密钥解密.复信同上. 公钥与私钥 权威数字认证机构(CA)给所有通信主体(个人或组织)颁发公钥和私钥,彼此配对,分别唯一.私钥好比数字指纹,同时具有解密和加密功能.个人保管,不公开.公钥好比安全性极高的挂号信箱地址,公开. 公私钥加解密举例 设若甲有一份需保密的数字商业合同发给乙签署.经过如下步骤:1. 甲用乙的公钥对合同加密.2. 密文从甲发送到乙.3. 乙收到密文,并用自己的私钥对其解密.4. 解密正确,经阅读,乙用自己的私钥对合同进行签署.5. 乙用甲的公钥对已经签署的合同进行加密.6. 乙将密文发给甲.7. 甲用自己的私钥将已签署合同解密.8. 解密正确,确认签署. 公私钥加解密说明 从以上步骤,我们知道:1. 用公钥加密的密文能且只能用与其唯一配对的私钥才能解开.2. 如果某份密文被解开,那么肯定是密文的目标信息主体解开的.3. 私钥因其唯一标识所有者的属性,被用于数字签名,具有法律效力. DES 与RSA 加解密算法 DES 是一种单一密钥加解密算法.通信主体之间只有一个密钥,该密钥不对第三方公开.RSA 则是公钥/私钥系统.该系统比 DES 系统更原子化,具有普遍应用意义. DES 加解密算法 DES (Data Encryption Standard),是IBM在上个世纪70年代开发的单密钥对称加解密算法.该算法利用一个56+8奇偶校验位(第8, 16, 24, 32, 40, 48, 56, 64位)=64位的密钥对以64位为单位的块数据进行加解密. DES 加解密算法:In Action 有明文M(64位) = 0123456789ABCDEF,即M(64位) =
0000 0001
0010 0011
0100 0101
0110 0111
1000 1001
1010 1011
1100 1101
1110 1111L(32位) =
0000 0001
0010 0011
0100 0101
0110 0111R(32位) =
1000 1001
1010 1011
1100 1101
1110 1111 DES 加解密算法:In Action 有密钥K(64位) = 133457799BBCDFF1,即K(64位) =
00010011 00110100
01010111 01111001
10011011 10111100
11011111 11110001 其中红色标注为奇偶校验位,即实际密钥为56位. 第一步:生成16个子钥(48位) 对K使用PC-1(8*7)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 第一步:生成16个子钥(48位) 从而,由K(64位) =
00010011 00110100
01010111 01111001
10011011 10111100
11011111 11110001 得到K+(56位) =
1111000 0110011
0010101 0101111
0101010 1011001
1001111 0001111 进而,C0(28位) =
1111000 0110011
0010101 0101111 D0(28位) =
0101010 1011001
1001111 0001111 第一步:生成16个子钥(48位) C1和D1分别为C0和D0左移1位.… C3和D3分别为C2和D2左移2位…第一步:生成16个子钥(48位) 从而得到C1D1 ~ C16D16:C1 = 1110000110011001010101011111D1 =