探究简化DES算法与RSA算法

  • 格式:pdf
  • 大小:50.40 KB
  • 文档页数:1

表所示,将左边 5 位、右边 5 位各循环左

随着信息时代的到来,重要信息的存储和 移 1 位,选取 10 位中的 8位按下面的规则
传输都面临着被窃取或破坏的危险,那么如何保 进行 P8 置换,得到子密钥 K1。
证信息数据的安全,已经成为计算机领域内不可
忽视的严峻课题。为了理解的简便,本文仅讨论
DES
具体操作如下:第 1 位和第 4 位作为一个 2 位二进制数决定 文:515159 mod 667=100。
行,第 2 位和第 4 位决定列。例如 p0p3=01(十进制是 1), p1p2=11 (十进制是 3),则输出 S0 第 1 行第 3 列的数 0,二进制为 00。注
三、结束语 简化 DES 体制 10 位密钥存在于 0000H-03FFH 之间,有 210 种可
输入是一个 8 位的明文
R S A 密钥,所以选择 1 0 2 4 比特的密钥长度已经足够对付穷举
RSA
n n n n n n n n ,首先使用 IP 函 abcdefgh
数进行置换:
攻击。明文以分组为单位进行加密,每个分组的二进制值都是小 于 n,在实际应用中,分组的大小是 K 位,其中 2k<n<=2k+1。对明
简化 DES 加密算法与 RSA 加密算法。


一.简化 DES 加密算法
同理,对上述循环左移的结果,分别再循环左移 2 位,根据
DES(数据加密标准)使用较为广泛,虽然 上面 P8 规则,得到子密钥 K2。
法 与
曹 锦 仁
有被取代的趋势,但 DES 依然是很重要的算法之 一。收、发双方独享密钥。DES 加密过程包括五
149
意行和列都是从第 0 行或列开始计序的。
能的值,采用穷举攻击解密是可行的,但是实际广泛采用的是 56 位
由 S0 和 S1 的输出组成的 4 位再置换 P0-3/P4-7:
密钥,目前已有事实说明,56 位密钥 DES 体制对于个人来说是安全
的,但是对于一个群体或国家来说还不够安全。经过测算,DES 体
与 e 互素且 1<e<(p-1)(q-1)(; 五)计算 d,保证 d mod (p-1)(q-
扩展后即为:n n n n n n n n ,与 8 位子密钥 K =(k k
dabcbcda

1a 1b
k1ck1dk1e k1f k1g k1h)进行异或运算后得:p0p1p2p3p4p5p6p7,前面

文分组 M 和密文分组 C,加密和解密过程如下: C=Me mod n

它保留了明文的所有 8 位信 息,只不过进行换位。算法最后
M=Cd mod n =(Me)d mod n =Med mod n 收、发双方都是已知 n,发送方知道 e,只有收方知道 d,公
使用的逆置换 IP-1 是:
二、RSA 加密算法 RSA 体制是分组密码,其明文和密文均是[0,n-1]之间的整
个函数,如图 1 描述:
数,n 的大小通常为 309 位十进制数,据测算,用 114 台 170GB
(一)初始置换 IP 和末尾置换 IP-1。算法的 内存的特殊制造的计算机需要 3 百万年才能破解 1020 比特的
运算。现在描述 F。它的输入是一个 4 位二进制数(nanbncnd)。 证{ed mod (p-1)(q-1)}={1 mod (p-1)(q-1)}。密钥产生过程如下:
第一个操作是扩展、置换 EP:
(一)选择 p、q,p、q 都是素数且 p 不等于 q;(二)计算 n=p*q;
(三)计算(p-1)(q-1);(四)随机选择整数 e, 保证(p-1)(q-1)
由置换函数和代换函数组合而成。函数可按如下方式表达。设 L
(三)由 e 和 n 确定 d 是行不通的。
和 R 分别是 Fk 的 8 位输入的左边 4 位和右边 4 位。设 Fk(L,R)=
RSA算法用到如下元素:保密的两个素数p、q;公开的n, n=p*q;
(L XOR F(EP(R) , Kn),R),其中 Kn 是子密钥,XOR 是按位异或 公开的e,(p-1)(q-1)与e互素且1<e<(p-1)(q-1);还有需保密的d,保
钥加密算法的公有密钥为{e,n},私有密钥为{d,n}。当然,要能

用做公钥加密,必须满足以下条件:
(一)可以找到 e,d 和 n,使得对所有 M<n,有 Med = M mod n;
(二)函数 Fk。简化 DES 算法较为复杂的部分是函数 Fk,它
(二)对所有 M<n,计算 Me 和 Cd 是比较容易的;
一个 2 位的输出。S0、S1 定义如下:
小于 616,这里选择 e=31;确定 d 使得(de mod 616 )= (1 mod
616)且d<616,经过计算d=159,因为31*159=4928=8*616+1,所得
的公钥为{31,667},私钥为{159,667}。假设输入明文为 100,
用公钥加密得出密文:10031 mod 667=515,用私钥解密得出明
结束。解密过程类似图 1,只不过先启用子密钥 K2,后用 K1。
(三)子密钥 Kn 的产生。运用简化 DES 机制,安全通信的前提
是收、发双发共享 10 位密钥,由它产生 2 个 8 位子密钥分别用在加
密、解密的两个阶段,如图 1 所示。图 2 描述了子密钥产生过程。
10 位密钥表示为(k kb k k k k k k k k ),置换 P10 规则为:
4 位输入到 S0 中得到一个 2 位的输出,后 4 位输入到 S1 中产生另
1)=e-1 mod (p-1)(q-1);(六)得到公私钥对:{e,n},{d,n}。 为了说明问题,举个例子: 选择 2 个素数 p = 2 3 、q = 2 9 ; n=23*29=667; (p-1)(q-1)=22*28=616;选择e使其与616互素且

cd ef gh ij
制的加密过程比 RSA 体制的加密过程的速度快 100 倍左右,虽然速 度慢一些,但是 RSA 机制有其独特的优点,收、发双方使用不同的 密钥大大弥补了对称密码的先天不足。而 DES 体制与 RSA 体制常常 应用于同一场合,互补不足,有效地提高了网络通信的安全性。
参考文献: 1.William Stallings,“Cryptography and Network Secu- rity ---Principles and Practices”,Fourth Edition,2007.3 2.段云所,魏仕民,唐礼勇,陈钟.信息安全概论[M].高 等教育出版社,2003 3.胡铮.网络与信息安全.清华大学出版社,2006.5 (作者单位:广东省白云学院)
教学研究
教育·科研 Sc计算机网络技术的发展,对信息

安全的要求越来越高,各种数据加密技术日趋完 善。本文旨在比较两种常见的加密算法,让读者

了解DES加密算法与RSA加密算法的区别和实质。
10 位密钥经 P10 置换后的次序如上
关键词:DES 算法、RSA 算法、网络安全
置换完成后,与输入 Fk 的左边 4 位按位进行异或运算,得出
图 1 中第二个函数的左边 4 位,结合输入 Fk 的右边 4 位,从而得到
函数 Fk 的输出。经过图 1 中第三个函数处理,将左边 4 位与右边 4
位互换,得到图1中第四个函数的输入,同第二个函数的计算方法,
求出第四个函数的输出,经逆置换 IP-1,得到 8 位密文。加密过程