密码学

合集下载

第2章密码学概论

第2章密码学概论

2 5
8 2 2 1 1 9
2 2
1 3 6 1 2 6 9 7 5
6 2 9 2 2 2 2 7 2 1 2 3 1 2 6 1 5 8 6 4 2
3 1 7 2
z
i c v t
w q n g r z g v t
w a v z h c q y g l m

维吉尼亚密码示例 明文为polyalphabetic cipher,(多字母替换密码) 密钥K=RADIO, 用维吉尼亚密码加密。 方法:将明文串转化为对应的数字(a-0,…,z-25),每5个 一组,进行模26运算。

法国密码分析人员断定这种密码是不可破译的。他们甚至根 本就懒得根据搞到的情报去复制一台ENIGMA。
在十年前法国和波兰签订过一个军事合作协议。波兰方面一 直坚持要取得所有关于ENIGMA的情报。既然看来自己拿着 也没什么用,法国人就把从施密特那里买来的情报交给了波 兰人。和法国人不同,破译ENIGMA对波兰来说至关重要, 就算死马也要当作活马医。后来英国应情报部门在波兰人的 帮助下于1940年破译了德国直至1944年还自认安全可靠的 ENIGMA的密码系统。
v
e
y
o u r
s
e
2 4 0 1 4 3 8 1 2 1 2 4 1 4 2 1 0 2 4 2 1 2 1 1 4 2 7 8 4 1 7 8 1 4 4 0 7 8
d
e c
e p t
i
v
e
d e
c
e
p t
i
v
e
d e
c
e
p
t
i
3
4 2 4 1 1 8 2 4 3 4 2 4 1 1 8 2 4 3 4 2 4 1 1 8 5 9 1 5 9 1 5 9

密码学——精选推荐

密码学——精选推荐

密码学密码学(第⼆讲)古典密码古典密码张焕国武汉⼤学计算机学院⽬录1 , 密码学的基本概念密码学的基本概念古典密码2 , 古典密码3 ,数据加密标准(DES) ,数据加密标准(DES )4 , ⾼级数据加密标准(AES) ⾼级数据加密标准(AES)5 ,中国商⽤密码(SMS4) ,中国商⽤密码(SMS4)6 ,分组密码的应⽤技术7 , 序列密码8 ,习题课:复习对称密码9 ,公开密钥密码(1) ,公开密钥密码(1⽬录10, 公开密钥密码(2 10 , 公开密钥密码(2) 11, 数字签名(1 11, 数字签名(1) 12,数字签名(2 12,数字签名(2) 13, HASH函数 13 , HASH 函数 14, 14 , 认证 15, 15 , 密钥管理 16, PKI技术 16 , PKI技术17,习题课:复习公钥密码 17 ,习题课:复习公钥密码 18,总复习/ 18 ,总复习/检查:综合实验⼀,古典密码⼀,古典密码虽然⽤近代密码学的观点来看,许多古典密码是很不安全的,或者说是极易破译的.但是我们不能忘记古典密码在破译的.但是我们不能忘记古典密码在历史上发挥的巨⼤作⽤. 历史上发挥的巨⼤作⽤. 另外,编制古典密码的基本⽅法对于另外,编制古典密码的基本⽅法对于编制近代密码仍然有效. 编制近代密码仍然有效⼀,古典密码⼀,古典密码C. D. Shannon:采⽤混淆,扩散和乘积的⽅法来设计密码混淆:使密⽂和明⽂,密钥之间的关系复杂化扩散:将每⼀位明⽂和密钥的影响扩⼤到尽可能多的密⽂位中. 乘积和迭代:多种加密⽅法混合使⽤对⼀个加密函数多次迭代古典密码编码⽅法: 置换,代替,加法⼀,古典密码⼀,古典密码1,置换密码把明⽂中的字母重新排列,字母本⾝不变, 但其位置改变了,这样编成的密码称为置换密码.最简单的置换密码是把明⽂中的字母顺序倒过来 , 最简单的置换密码是把明⽂中的字母顺序倒过来, 然后截成固定长度的字母组作为密⽂. 然后截成固定长度的字母组作为密⽂. 明⽂:明晨 5点发动反攻. 明⽂:明晨5点发动反攻. MING CHEN WU DIAN FA DONG FAN GONG 密⽂:GNOGN 密⽂:GNOGN AFGNO DAFNA IDUWN EHCGN IM把明⽂按某⼀顺序排成⼀个矩阵, 然后按另⼀顺序选出矩阵中的字母以形成密⽂,最后截成固定长度的字母组作为密⽂.例如: 明⽂:MING 明⽂:MING CHEN WU DIAN FA DONG FAN GONG 矩阵:MINGCH 矩阵:MINGCH 选出顺序:按列 ENWUDI ANFADO 改变矩阵⼤⼩和取出序列 NGFANG 可得到不同的密码 ONG 密⽂:MEANO 密⽂:MEANO INNGN NWFFG GUAA CDDN HIOG⼀,古典密码⼀,古典密码理论上: ① , 置换密码的加密钥是置换矩阵 p , 解密钥是置换矩阵p-1 .P= 1 2 3 a1 a2 a3 … … n an② , 置换密码经不起已知明⽂攻击.⼀,古典密码⼀,古典密码2, 代替密码⾸先构造⼀个或多个密⽂字母表, ⾸先构造⼀个或多个密⽂字母表 , 然后⽤密⽂字母表中的字母或字母组来代替明⽂字母或字母组,各字母或字母组的相对位置不变, 或字母组,各字母或字母组的相对位置不变 , 但其本⾝改变了. 但其本⾝改变了. 这样编成的密码称为代替密码.①单表代替密码②多表代替密码③多名代替密码⼀,古典密码⼀,古典密码⑴ . 单表代替密码只使⽤⼀个密⽂字母表, 只使⽤⼀个密⽂字母表,并且⽤密⽂字母表中的⼀个字母来代替明⽂字母表中的⼀个字母. 个字母来代替明⽂字母表中的⼀个字母. 明⽂字母表:A = { a 0 , a 1 , ... , a n - 1 } ...,密⽂字母表:B 密⽂字母表:B = { b 0 , b 1 , ... , b n - 1 } ..., 定义⼀个由A 定义⼀个由A到 B 的映射: f:A→B 的映射:f f(a i )= b i 设明⽂:M 设明⽂: M = ( m 0 , m 1 , ... , m n - 1 ) , ..., 则密⽂: C =(f(m0 ),f(m1 ), ...,f(mn-1 )) . 则密⽂:C ),...,f(m )). 简单代替密码的密钥就是映射函数 f 简单代替密码的密钥就是映射函数f或密⽂字母表 B.⼀,古典密码⼀,古典密码⑴单表代替密码①,加法密码 A 和 B 是有 n个字母的字母表. 定义⼀个由A到B的映射: f:A→B 定义⼀个由A 的映射:f:A→Bf(a i )= b i =a j j=i+k mod n 加法密码是⽤明⽂字母在字母表中后⾯第 k 个字母来代替. K=3 时是著名的凯撒密码.⼀,古典密码⼀,古典密码⑴单表代替密码②,乘法密码 A 和 B 是有n个字母的字母表. 定义⼀个由A到B的映射: f:A→B 定义⼀个由A 的映射:f:A→Bf(a i )= b i = a j j=ik mod n 其中,( n,k)=1. 其中, ( n,k)=1. 注意: 只有(n,k)=1 ,才能正确解密. 只有(n,k)=1,⼀,古典密码⼀,古典密码⑴单表代替密码③密钥词组代替密码:随机选⼀个词语,去掉其中的重复字母, 写到矩阵的第⼀⾏,从明⽂字母表中去掉这第⼀⾏的字母,其余字母顺序写⼊矩阵.然后按列取出字母构成密⽂字母表.⼀,古典密码⼀,古典密码举例:密钥: HONG YE 选出顺序:按列矩阵: HONGYE 选出顺序:按列 ABCDFI JKLMPQ 改变密钥,矩阵⼤⼩ RSTUVW 和取出序列,得到不同的 XZ 密⽂字母表. 密⽂字母表 : B={ HAJRXOBKSZNCLTGDMUYFPVEIQW }⑵,多表代替密码单表代替密码的安全性不⾼,⼀个原因是⼀个明⽂字母只由⼀个密⽂字母代替.构造多个密⽂字母表, 在密钥的控制下⽤相应密⽂字母表中的⼀个字母来代替明⽂字母表中的⼀个字母.⼀个明⽂母来代替明⽂字母表中的⼀个字母.⼀个明⽂字母有多种代替.Vigenere密码: 著名的多表代替密码密码:著名的多表代替密码⼀,古典密码⼀,古典密码Vigenre⽅阵 Vigenre⽅阵A B 密C ⽂H 明⽂字母 AB C D E F G H I J K LM N O P Q R S TU V WX YZAB C D E F G H I J K LM N O PQ R S T UV WX YZ BCDE FG HIJ KLMNO PQ RSTUVWXYZA CDE FG HIJ KLMNO PQ RSTUVWXYZAB H I J K LM N O P Q R S TU V WXY ZAB C D EF G字 X X YZAB C D E F G H I J K LM N O P Q R S TU V W 母 Y YZAB CDEFGHIJKLMNOPQRSTUVW X Z ZAB C D E F G H I J K LM N O PQ R S TU VWX Y⼀,古典密码⼀,古典密码Vigenre密码的代替规则是⽤明⽂字母在 Vigenre ⽅阵中的列和密钥字母在 Vigenre⽅阵中的⾏的交点处的字母来代替该明⽂字母. 例如, 点处的字母来代替该明⽂字母 . 例如 , 设明⽂字母为 P, 密钥字母为 Y , 则⽤字母 N来代替明⽂字母 P.明⽂: 明⽂ : MING CHEN WU DIAN FA DONG FAN GONG 密钥: 密钥 : XING CHUI PING YE KUO YUE YONG DA JIANG LIU 密⽂: 密⽂ : JQAME OYVLC QOYRP URMHK DOAMR NP解密就是利⽤Vigenre⽅阵进⾏反代替. ⽅阵进⾏反代替.⼀,古典密码⼀,古典密码3,代数密码:① Vernam密码 Vernam密码明⽂,密⽂,密钥都表⽰为⼆进制位:M=m1,m2,… ,mn K =k1,k2,… ,kn C =c1,c2,… ,cn ②加密: c1= mi⊕ ki ,i=1,2,… ,n 解密: m1= ci⊕ ki ,i=1,2,… ,n ③因为加解密算法是模2加,所以称为代数密码. 因为加解密算法是模2 ④对合运算:f=f-1, 模 2加运算是对合运算. 对合运算:密码算法是对和运算,则加密算法=解密算法,⼯程实现⼯作量减半.⑤ Vernam密码经不起已知明⽂攻击. Vernam密码经不起已知明⽂攻击.⼀,古典密码⼀,古典密码⑥如果密钥序列有重复,则Vernam密码是不安全如果密钥序列有重复,则 Vernam密码是不安全的. ⼀种极端情况:⼀次⼀密⑦⼀种极端情况:⼀次⼀密密钥是随机序列. 密钥⾄少和明⽂⼀样长. ⼀个密钥只⽤⼀次. ⑧⼀次⼀密是绝对不可破译的,但它是不实⽤的. ⑨⼀次⼀密给密码设计指出⼀个⽅向,⼈们⽤序列密码逼近⼀次⼀密.⼆,古典密码的穷举分析1 ,单表代替密码分析①加法密码因为 f(ai )= b i =aj 因为f(a j=i+k mod n所以k=1,2,... ,n - 1,共n- 1种可能,密钥空所以 k=1,2, ,n- 1,共间太⼩.以英⽂为例,只有25种密钥. 间太⼩.以英⽂为例,只有 25种密钥. 经不起穷举攻击.⼆,古典密码的穷举分析1 ,单表代替密码分析②乘法密码因为 f(ai )= b i =aj 因为f(a j=ik mod n , 且( k,n)=1 . n, 且(k,n)=1. 所以 k 共有φ(n)种可能,密钥空间更⼩. 所以k 对于英⽂字母表,n=26, 对于英⽂字母表,n=26 , k=1,3,5,7,9,11,15,17,19,21,23,25 取掉1 ,共11种,⽐加法密码更弱.取掉 1 ,共 11种,⽐加法密码更弱. 经不起穷举攻击.⼆,古典密码的穷举分析1 ,单表代替密码分析③密钥词语代替密码因为密钥词语的选取是随机的,所以密⽂字母因为密钥词语的选取是随机的,所以密⽂字母表完全可能穷尽明⽂字母表的全排列.以英⽂字母表为例,n=26,所以共有26!种可以英⽂字母表为例,n=26,所以共有26 !种可能的密⽂字母表. 26! ≈4× 26 ! ≈4 ×1026⽤计算机也不可能穷举攻击. 注意: 穷举不是攻击密钥词语代替密码的唯⼀注意:穷举不是攻击密钥词语代替密码的唯⼀⽅法.三,古典密码的统计分析2 ,密钥词组单表代替密码的统计分析任何⾃然语⾔都有⾃⼰的统计规律. 如果密⽂中保留了明⽂的统计特征,就可⽤如果密⽂中保留了明⽂的统计特征,就可⽤统计⽅法攻击密码. 由于单表代替密码只使⽤⼀个密⽂字母表, ⼀个明⽂字母固定的⽤⼀个密⽂字母来代替, ⼀个明⽂字母固定的⽤⼀个密⽂字母来代替, 所以密⽂的统计规律与明⽂相同. 所以密⽂的统计规律与明⽂相同.因此,单表代替密码可⽤统计分析攻破.三,古典密码的统计分析英语的统计规律每个单字母出现的频率稳定. 最⾼频率字母 E 次⾼频率字母 T A O I N S H R 中⾼频率字母 D L 低频率字母 C U M W F G Y P B 最低频率字母 V K J X Q Z三,古典密码的统计分析英语的统计规律频率最⾼的双字母组: TH HE IN ER AN RE ED ON ESST EN AT TO NT HA ND OU EA NG AS OR TI IS ET IT AR TE SE HI OF 三,古典密码的统计分析英语的统计规律频率最⾼的三字母组: THE ING AND HER ERE ENT THA WAS ETH FOR DHT HAT SHE ION HIS ERS VER其中THE的频率是ING的其中THE的频率是ING的3倍!三,古典密码的统计分析英语的统计规律英⽂单词以E,S,D,T 为结尾的超过⼀半. 英⽂单词以E 英⽂单词以T,A,S,W 为起始字母的约占⼀英⽂单词以T 半.还有其它统计规律! 还有其它统计规律! 教科书上有⼀个完整的统计分析例⼦.三,古典密码的统计分析经得起统计分析是对近代密码的基本要求!复习题①已知置换如下: 1 2 3 4 5 6 P= 3 5 1 6 4 2 明⽂=642135 ,密⽂= 明⽂= 642135 ,密⽂= 密⽂=214365 密⽂= 214365 , 明⽂= ②使加法密码算法称为对合运算的密钥k ②使加法密码算法称为对合运算的密钥k称为对合密钥, 以英⽂为例求出其对合密钥.复习题③已知⼀个加法密码的密⽂如下: BEEAKFYDJXUQYHYJIQRYHTYJIQFBQDUYJIIKF UHCQD ⽤穷举法求出明⽂.④以英⽂为例,⽤加法密码,取密钥常数 k= 7,对明⽂ 7, 对明⽂INFORMATION SECURITY, 进⾏加密,求出密⽂. SECURITY, ⑤证明,在置换密码中,置换p是对合的,当且仅当对任意证明,在置换密码中,置换p 的 i和j(i, j=1,2,3,…,n), 若 p(i)=j, 则必有p(j)=i . j=1,2,3,…,n), p(i)=j, 则必有p(j)=i ⑥编程实现Vigenre密码. 编程实现Vigenre密码. ⑦分析仿射密码的安全性.谢谢!单字母替换密码及实例通过把信息隐藏起来的这种秘密通信称为Staganography(隐⽂术),由希腊词Steganos(意为“覆盖”)和Graphein(意为“写”)派⽣⽽来。

什么是密码学?

什么是密码学?

什么是密码学?
密码学是一门关于信息安全和加密原理的学科。

它涉及到设计和使用密码算法来保护通信和数据的机密性、完整性和可用性。

密码学可以分为两个主要领域:对称加密和非对称加密。

对称加密是一种加密方法,使用相同的密钥对数据进行加密和解密。

这意味着发送方和接收方都必须共享相同的密钥才能进行安全的通信。

常见的对称加密算法包括DES,AES和RC4。

非对称加密是一种加密方法,使用一对密钥进行加密和解密。

这对密钥被称为公钥和私钥。

公钥可以公开给任何人,用于加密数据,而私钥只能由数据的接收方使用来解密数据。

这种方法保证了通信的安全性,因为即使公钥被泄露,攻击者也无法解密数据。

常见的非对称加密算法包括RSA和椭圆曲线密码算法。

密码学还涉及到其他领域,如哈希函数和数字签名。

哈希函数将任意长度的数据转换为固定长度的哈希值,用于验证数据的完整性。

数字签名使用非对称加密算法来验证数据的来源和完整性。

密码学在现代社会中起着重要的作用,保护着我们的个人隐私和敏感信息。

了解密码学的基本原理和工作方式有助于我们更好地理解信息安全的重要性,并采取适当的措施来保护我们的数据。

密码学概述

密码学概述

密码学概述
密码学是一门研究保护信息安全的学科。

它涉及设计和使用密码算法,以确保敏感数据在传输和存储过程中得到保护。

密码学的目标是保密性、完整性、身份验证和不可抵赖性。

密码学分为两个主要领域:对称密码和公钥密码。

对称密码使用相同的密钥进行加密和解密,其主要方法有替换和置换。

常见的对称密码算法包括DES、AES和RC4。

公钥密码也称为非对称密码,使用一对密钥:公钥和私钥。

公钥用于加密数据,私钥用于解密数据。

公钥密码算法具有更高的安全性和密钥管理的便利性。

常见的公钥密码算法包括RSA和椭圆曲线密码算法(ECC)。

除了对称密码和公钥密码,密码学还涉及其他重要概念,如哈希函数、数字签名和数字证书。

哈希函数将任意长度的数据映射为固定长度的哈希值,用于验证数据的完整性。

数字签名使用私钥生成数字签名,用于验证数据的身份和不可抵赖性。

数字证书由可信的第三方机构颁发,用于验证公钥的真实性和所有者身份。

密码学在现代通信和计算机系统中扮演着至关重要的角色,确保数据的安全传输和存储。

随着技术的不断发展,密码学也在不断进步,以应对不断出现的安全威胁和攻击。

什么是密码学?

什么是密码学?

什么是密码学?密码学是一门研究密码学理论与密码技术的学科,是信息安全领域不可或缺的一部分。

它涉及的范围广泛,包括数据加密、数字签名、身份认证等。

随着信息安全技术的逐步发展,密码学也愈加重要和广泛应用。

1. 密码学的起源密码学的历史可追溯到古代。

最早有关密码学的文献记载可追溯至公元前400年左右。

在历史上,密码学曾发挥过重要作用,如在二战中的阿兰·图灵破解纳粹德国的恩格玛密码机等事件中。

2. 密码学的分类(1)对称密钥密码学:在加密和解密过程中使用相同的密钥。

通常使用的加密算法有DES、AES等。

(2)非对称密钥密码学:在加密和解密过程中使用不同的密钥。

常用的算法有RSA、DSA等。

(3)哈希函数密码学:“哈希”把任意长度的输入(又叫做预映射,pre-image)“压缩”到某一固定长度的输出上(称为哈希值),且输入的数据量越大,输出值的信息量越小,也就是说不同的输入可能相同的输出。

常用的哈希函数有MD5、SHA-1等。

3. 密码学的应用(1)数据加密:数据加/解密可防止机密数据泄露,确保数据传输的完整性。

(2)数字签名:数字签名可以验证文档在传递过程中是否被篡改,确认文档的完整性,具有很高的安全性。

(3)身份认证:基于密码学的身份认证技术可以确保只有被授权的用户能够访问特定系统或应用程序,确保系统和数据的安全性和完整性。

4. 密码学的未来随着信息安全和隐私保护的日益重要,密码学的发展也愈加迅速。

未来,密码学将会在云计算、大数据、物联网等领域更加广泛地应用,需要不断创新和进一步研究加强相应领域的安全保护。

总结:密码学涉及领域广泛,适用于数据加密、数字签名、身份认证等场景。

在信息安全领域中起到至关重要的作用,对云计算、大数据、物联网等领域的发展起到积极促进作用。

密码学是什么

密码学是什么

密码学是什么1、什么是密码学密码学(Cryptography)是一门研究保护信息安全的学科,旨在发明和推广应用用来保护信息不被未经授权的实体获取的一系列技术。

它的研究规定了认证方式,加密算法,数字签名等技术,使得信息在网络上传输的安全性得到有效保障。

2、密码学发展历史从古代祭祀文本,到中世纪以前采用信封保护信息,再到如今运用根据科学原理设计的隐藏手段来免受攻击,形成了自己独特的新时代——密码学从古至今飞速发展。

在古代,人们提出基于门限理论的“将信息隐藏在古文献中”的想法,致使密码学技术的研究进入一个全新的研究水平。

噬血无声的18世纪,密码学技术得到了按比例加密法、变换锁以及一些其他加密技术的发明,使得发送者可以保护其传输的信息安全性。

20世纪,随着计算机科学、数学和通信学的迅猛发展,对于密码学的研究不断深入,密码破译也得到了彻底的结束。

3、密码学的应用密码学技术的应用正在不断的扩大,已经影响到计算机安全,电子商务,社交媒体,安全性协议。

其中,在计算机安全领域,应用的最广的就是网络安全了,例如使用数字签名,校验数据完整性及可靠性;实现密码认证,提高网络安全性;确保交易安全,实现交易无痕迹。

此外,在其他领域,还应用于支付货币,移动通信,数字信息传输,数字家庭,多媒体看门狗等。

4、密码学体系建设根据国家科学研究规划,国家建立自己的密码体系,推动密码学发展,建立一套完整的标准化体系,促进社会的网络安全发展,促进新的网络体系的快速发展,并且提出国家大力研究密码学,在国际技术水平上更具有单调作用和竞争优势。

5、总结综上所述,我们可以看到,密码学是一门相对年轻的学科,但是它在近十数年中有着突飞猛进的发展,并且把它妥善运用到了当今信息时代。

密码学研究实际上在不断推动并加强现代通信网络的安全性,使得更多的人群乐于在网上购买等等,为人们的网络安全提供了有效的保障。

只要把它的研究应用得当,密码学必将为更多的人带来更多的安全保障。

密码学

密码学

密码学英文是Cryptography。

源自希腊语kryptós(隐藏的)和gráphein(书写)。

是研究如何隐密地传递信息的学科。

现代的密码学是一般被认为是数学和计算机科学的分支。

在信息论里也有涉及。

密码学的首要目的是隐藏讯息的涵义,并不是隐藏讯息的存在。

密码学也促进了计算机科学。

特别是在於电脑与网路安全技术的发展。

先介绍几个术语:1.加密(encryption)算法指将普通信息(明文,plaintext)转换成难以理解的资料(密文,ciphertext)的过程。

与之相反的是解密(decryption)算法。

两者统称加解密。

加解密包括两部分:算法和密钥。

密钥是一个加解密算法的秘密参数,通常只通讯者拥有。

2.密码协议(cryptographic protocol):指使用密码技术的通信协议(communication protocol)。

加解密演算法和密码协议是密码学研究的两大课题。

经典密码学近代以前的密码学。

只考虑信息的机密性(confidentiality)。

西方世界的最早的起源可以追述到秘密书信。

希罗多德的《历史》中就记载过。

介绍一下最古典的两个加密技巧:1.移位式(Transposition cipher):将字母顺序重新排列。

例如Dave is killer变成Adev si likrel2.替代式(substitution cipher):有系统地将一组字母换成其他字母或符号。

例如fly at once变成gmz bu podf(每个字母用下一个字母取代)。

凯撒密码是最经典的替代法,据传由古罗马帝国的皇帝凯撒发明。

用在与远方将领的通讯上,每个字母被往后位移三格字母所取代。

下面讲一下密码在近代以前的种种记载:早期基督徒使用密码学模糊他们写作的部份观点以避免遭受迫害。

666或部分更早期的手稿上的616是新约基督经启示录所指的野兽的数字常用来暗指专迫害基督徒的古罗马皇帝尼禄(Nero)。

密码学重要知识点

密码学重要知识点

密码学重要知识点0x01 密码学定义密码学(Cryptograghy)是研究编制密码和破译密码的技术科学,是研究如何隐密地传递信息的学科。

研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。

在现代特别指对信息以及其传输的数学性研究,常被认为是数学和计算机科学的分支,和信息论也密切相关。

著名的密码学者 Ron Rivest 解释道:“密码学是关于如何在敌人存在的环境中通讯”,自工程学的角度,这相当于密码学与纯数学的异同。

密码是通信双方按约定的法则进行信息特殊变换的一种重要保密手段。

依照这些法则,变明文为密文,称为加密变换;变密文为明文,称为脱密变换。

密码在早期仅对文字或数码进行加、脱密变换,随着通信技术的发展,对语音、图像、数据等都可实施加、脱密变换。

现代密码学所涉及的学科包括:信息论、概率论、数论、计算复杂性理论、近世代数、离散数学、代数几何学和数字逻辑等。

0x02 密码发展史根据国家密码管理局给出的全面文件指出古典密码在古代很多国都有所使用。

古代中国:从古到今,军队历来是使用密码最频繁的地方,因为保护己方秘密并洞悉敌方秘密是克敌制胜的重要条件。

中国古代有着丰富的军事实践和发达的军事理论,其中不乏巧妙、规范和系统的保密通信和身份认证方法。

中国古代兵书《六韬》中的阴符和阴书:《六韬》又称《太公六韬》或《太公兵法》,据说是由西周的开国功臣太公望(又名吕尚或姜子牙,约公元前1128—公元前1015)所著。

书中以周文王和周武王与太公问答的形式阐述军事理论,其中《龙韬•阴符》篇和《龙韬•阴书》篇,讲述了君主如何在战争中与在外的将领进行保密通信。

以下是关于“阴符”使用方法对话的译文。

武王问太公说:领兵深入敌国境内,军队突然遇到紧急情况,战事或有利,或失利。

我要与各军远近相通,内外相应,保持密切的联系,以便及时应对战场上军队的需求,应该怎么办呢?太公回答说:国君与主将之间用阴符秘密联络。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

密码学及应用综述
摘要:人们总想对他人保守自己信息的秘密,历史上有不少这方面的例子。

国王和将军们利用基本的密码方法与他们的军队进行通信,以防止敌人获得敏感的军事信息。

据说凯撒大帝就用过一种后来以他名字命名的简单密码。

关键字:对称密码公开密码密钥管理
一、密码学
密码学是研究编制密码和破译密码的技术科学。

研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。

密码是通信双方按约定的法则进行信息特殊变换的一种重要保密手段。

依照这些法则,变明文为密文,称为加密变换;变密文为明文,称为脱密变换。

密码在早期仅对文字或数码进行加、脱密变换,随着通信技术的发展,对语音、图像、数据等都可实施加、脱密变换。

密码学是在编码与破译的斗争实践中逐步发展起来的,并随着先进科学技术的应用,已成为一门综合性的尖端技术科学。

它与语言学、数学、电子学、声学、信息论、计算机科学等有着广泛而密切的联系。

它的现实研究成果,特别是各国政府现用的密码编制及破译手段都具有高度的机密性。

二、对称密码
对称密码术(也称作秘钥密码术)早已被人们使用了数千年,它有各种形式:从简单的替换密码到较复杂的构造方式。

不过,数学的发展和计算能力的不断进步使得创建牢不可破的密码成为可能。

对称系统通常非常快速,却易受攻击,因为用于加密的密钥必须与需要对消息进行解密的所有人一起共享。

IBM 开发的密码 DES 已被广泛使用,但如今已到了其使用寿命的尽头,应该要更换了。

无论开发人员在他们的应用程序中使用哪种密码,都应该考虑使用的方法、认识到发生的折衷方案以及规划功能更强大的计算机系统的前景。

现在,通常使用分组密码(block cipher)或序列密码(stream cipher)实现对称密码,我们将在此讨论这两种密码。

这一特性中还要考虑称为“消息认证代码(Message Authentication Code,MAC)”的一种使用秘钥的校验和机制。

分组密码将定长的明文块转换成等长的密文,这一过程在秘钥的控制之下。

使用逆向变换和同一密钥来实现解密。

对于当前的许多分组密码,分组大小是 64 位,但这很可能会增加。

与分组密码相比,序列密码可以是非常快速的,尽管某些方式下工作的一些分组密码(如 CFB 或 OFB 中的 DES)可以与序列密码一样有效地运作。

序列密码作用于由若干位组成的一些小型组,通常使用称为密钥流的一个位序列作为密钥对它们逐位应用“异或”运算。

有些序列密码基于一种称作“线形反馈移位寄存器(Linear Feedback Shift Register,LFSR)”的机制,该机制生成一个二进制位序列。

消息认证代码(MAC)并不是密码,而是校验和(通常是 32 位)的一种特殊形式,它是通过使用一个秘钥并结合一个特定认证方案而生成的,并且附加在一条消息后。

消息摘要是使用单向散列函数生成的,紧密联系的数字签名是使用非对称密钥对生成并进行验证的。

与这两者相比,预期的接收方需要对秘钥有访问权,以便验证代码。

使用对称加密技术将简化加密的处理,每个参与方都不必彼此研究和交换专用设备的加密算法,而是采用相同的加密算法并只交换共享的专用密钥。

如果进行通信的双方能够确保专用密钥在密钥交换阶段未曾泄露,那么机密性和报文完整性就可以通过使用对称加密方法对机密信息进行加密以及通过随报文一起发送报文摘要或报文散列值来实现。

三、公开密码
对信息发送与接收人的真实身份的验证、对所发出/接收信息在事后的不可抵赖以及保障数据的完整性是现代密码学主题的另一方面。

公开密钥密码体制对这两方面的问题都给出了出色的解答,并正在继续产生许多新的思想和方案。

在公钥体制中,加密密钥不同于解密密钥。

人们将加密密钥公之于众,谁都可以使用;而解密密钥只有解密人自己知道。

迄今为止的所有公钥密码体系中,RSA系统是最著名、使用最广泛的一种。

RSA使用两个密钥,一个公共密钥,一个专用密钥。

如用其中一个加密,则可用另一个解密,密钥长度从40到2048bit可变,加密时也把明文分成块,块的大小可变,但不能超过密钥的长度,RSA算法把每一块明文转化为与密钥长度相同的密文块。

密钥越长,加密效果越好,但加密解密的开销也大,所以要在安全与性能之间折衷考虑,一般64位是较合适的。

RSA的一个比较知名的应用是SSL,在美国和加拿大SSL用128位RSA算法,由于出口限制,在其它地区(包括中国)通用的则是40位版本。

RSA算法研制的最初理念与目标是努力使互联网安全可靠,旨在解决DES算法秘密密钥的利用公开信道传输分发的难题。

而实际结果不但很好地解决了这个难题;还可利用RSA来完成对电文的数字签名以抗对电文的否认与抵赖;同时还可以利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完整性。

RSA算法很好的完成对电文的数字签名以抗对数据的否认与抵赖;利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完整
性。

目前为止,很多种加密技术采用了RSA算法,比如PGP (PrettyGoodPrivacy)加密系统,它是一个工具软件,向认证中心注册后就可以用它对文件进行加解密或数字签名,PGP所采用的就是RSA算法。

四、密钥管理
主要表现于管理体制、管理协议和密钥的产生、分配、更换和注入等。

对于军用计算机网络系统,由于用户机动性强,隶属关系和协同作战指挥等方式复杂,因此,对密钥管理提出了更高的要求。

密钥管理包括,从密钥的产生到密钥的销毁的各个方面。

主要表现于管理体制、管理协议和密钥的产生、分配、更换和注入等。

流程:(1)密钥生成(2)密钥分发(3)验证密钥(4)更新密钥(5)密钥存储(6)备份密钥(7)密钥有效期(8)销毁密钥(9)密钥管理
安全机制
在全国银行IC卡联合试点中,各级银行利用密钥管理系统来实现密钥的安全管理。

密钥管理系统采用3DES加密算法,运用中国人民银行总行、人民银行地区分行(商业银行总行)、成员银行三级管理体制,安全共享公共主密钥的,实现卡片互通、机具共享。

整个安全体系结构主要包括三类密钥:全国通用的人总行消费/取现主密钥GMPK、发卡银行的消费/取现主密钥MPK和发卡银行的其他主密钥。

根据密钥的用途,系统采用不同的处理策略。

这两种算法一个从DES到3DES再到AES,一个从RSA到ECC。

其发展角度无不是从密钥的简单性,成本的低廉性,管理的简易性,算法的复杂性,保密的安全性以及计算的快速性这几个方面去考虑。

因此,未来算法的发展也必定是从这几个角度出发的,而且在实际操作中往往把这两种算法结合起来,也需将来一种集两种算法优点于一身的新型算法将会出现,到那个时候,电子商务的实现必将更加的快捷和安全。

参考文献:
1、冯登国,裴定一,1999年4月,《密码学导引》,科学出版社
2、谷利泽、杨义先《现代密码学教程》,北京邮电大学出版社2009年08月出版。

相关文档
最新文档