欢迎来到天天文库
浏览记录
ID:43512552
大小:2.25 MB
页数:99页
时间:2019-10-09
《密码与隐藏技术》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第2章密码与隐藏技术2.1密码技术概述2.2古典加密方法2.3数据加密标准DES2.4高级加密标准AES2.5公开密钥体制2.6RSA算法2.7NTRU公开密钥体制2.8对称加密体制与公开密钥体制比较2.9信息隐藏技术2.10数字水印12.1密码技术概述密码技术是防止信息泄露的技术,是信息安全技术中最重要和最基本的安全技术。密码技术中常用的一些术语:1.明文P(Plaintext):可以理解的信息原文。2.加密E(Encryption):用某种方法伪装明文以隐藏它的内容的过程。3.密文C(Ciphertext):经过加密后将明文变换成不容易理解的信息
2、。4.解密D(Decryption):将密文恢复成明文的过程。25.算法(algorithm):就是用于加密或解密的方法,在现代密码学中算法就是一个用于加密和解密的数学函数。6.密钥K(key):是用来控制加密和解密算法的实现。典型的加密和解密过程可以用图2.1来描述。如果将加密过程看成是一个数学函数F的话,则密文C可以表示为:C=F(P,K)3这个函数具有两个自变量P和K,在函数F的作用下得到密文。在已知密钥K1、K2、加密算法E和解密算法D时,则加密和解密过程可以表示如下:EK1(P)=CDK2(C)=P显然为使明文加密后能被解密必须有:P=DK
3、2(EK1(P))=P在实际加密和解密时,根据加密算法的特点,K1与K2的值可以不同,也可以相同。4例:设明文是一串二进制序列,加密和解密算法都采用模2运算,即异或运算⊕,加密密钥和解密密钥也相同。若明文P=11001100加密和解密密钥K=11000111则加密后的密文C=P⊕K=00001011解密后的密文P=C⊕K=11001100如字符串“HYIT”的ASCII码为48594954H,密钥用05H,密文为4D5C4C51H,对应的ASCII码为“MLQ”5现代密码学已发展成两个重要的研究分支:(1)对称加密方法,其典型代表是数据加密标准DE
4、S(数据加密标准)、IDEA(国际数据加密算法)、AES(高级加密标准)等算法。(2)公开密钥算法(也称非对称算法),其典型代表是RSA、椭圆曲线加密、NTRU算法等。62.2古典加密方法2.2.1代替密码代替密码又称替换密码,就是按照一定要求,将明文中的每个字符替换成另一个字符,明文中字符的位置保持不变,但其本身改变了。分为单表代换和多表代换。(1)单表代换:同一个字符具有一个密文字符。(2)多表代换:同一个字符具有不同的密文字符。如:移位密码:C=P+K(mod26),M=C-K(mod26)仿射变换:C=aP+b(mod26),M=a-1(C-
5、b)(mod26),a与26互素7多表代换:密钥由多个字母组成,依次用来对明文进行加密。2.2.2换位密码换位密码也可称为置换密码,它是改变明文中字母的位置,明文中的字母不变。也就是明文中的字母保持不变,但顺序被打乱了。例如可以将明文the变换成het。82.3对称加密体制对称加密算法,有时又叫传统密码算法,它的典型特点是:1.采用的解密算法就是加密算法的逆运算,或者解密算法与加密算法完全相同;2.加密密钥和解密密钥相同,或者加密密钥能够从解密密钥中推算出来,反过来也成立。对称算法要求发送者和接收者在安全通信之前,商定一个密钥。它的安全性依赖于密钥的
6、保密性。9对称算法可分为两类:分组密码和序列密码或流密码。1.分组密码是将明文分成固定长度的组或块(如64比特为一组),然后用同一密钥和算法对每一块进行加密,输出密文的长度也是固定的,如图2.3所示。教材P192.序列密码(streamcipher)的主要原理是通过伪随机序列发生器产生性能优良的随机序列,使用该序列与明文序列叠加来输出密文序列。解密时,再用同一个随机序列与密文序列进行叠加来恢复明文,如图2.4所示。教材P19102.3.1DES算法DES(数据加密标准,DataEncryptionAlgorithm)算法:IBM提出,美国标准,世界首
7、例标准。DES是分组加密算法,它以64位(二进制)为一组,对称数据加密,64位明文输入,64位密文输出。密钥长度为56位,但密钥通常表示为64位,并分为8组,每组第8位作为奇偶校验位,以确保密钥的正确性,这样对用户来说每组密钥仍是56位。利用密钥,通过传统的换位、替换和异或等变换,实现二进制明文的加密与解密。11DES算法概要:1.对输入的明文从右向左按顺序每64位分为一组(不足64位时,在高位补0),并按组进行加密或解密。2.进行初始换位。3.将换位后的明文分成左、右两个部分,每部分为32位长。4.进行16轮相同的变换,包括密钥变换。5.将变换后左
8、右两部分合并在一起。6.逆初始变换,输出64位密文。12p=p1p2…p64p’=p58p50…p7c’=c
此文档下载收益归作者所有