《计算机安全密码学》由会员分享,可在线阅读,更多相关《计算机安全密码学(61页珍藏版)》请在金锄头文库上搜索。
1、中国海洋大学 信息科学与工程学院 计算机科学系计算机安全技术密码学刘培顺*1Copyright Liu Peishun计算机系统安全定义 信息安全的五类服务Date2Copyright Liu Peishun需要掌握的知识l密码学基础知识l常见的密码算法l密码算法的应用模式Date3Copyright Liu Peishun内容提要l密码学的起源l密码学的发展和现状l基本的概念和术语Date4Copyright Liu Peishun1密码学的起源l信息的存储:在公开的地方l信息的交换:使用非隐秘介质l信息的传输:通过不安全信道信息源信息目的地信息源信息目的地信息源信息目的地窃听篡改Date5
2、Copyright Liu Peishun1密码学的起源:密码技术的主要用途l数据保密数据加密/解密数据加密(存储和传输)l认证技术实体身份认证数据源发认证l信息完整性保护数据在传输过程中没有被插入、篡改、重发;l数字签名和抗抵赖(Non-repudiation )源发抗抵赖交付抗抵赖Date6Copyright Liu Peishun2密码学发展阶段1949年之前古典密码学密码学是一门艺术 19491975年现代密码学密码学成为科学 1976年以后密码学的新方向公钥密码学Date7Copyright Liu Peishun密码的重要型第一次世界大战进行到关键时刻,英国破译密码的专门机构第一次
3、世界大战进行到关键时刻,英国破译密码的专门机构 “4040号房间号房间”利用缴获的德国密码本破译了著名的利用缴获的德国密码本破译了著名的“齐默尔齐默尔 曼电报曼电报”,促使美国放弃中立参战,改变了战争进程。,促使美国放弃中立参战,改变了战争进程。 第二次世界大战中,在破译德国著名的第二次世界大战中,在破译德国著名的“恩格玛恩格玛 (Enigma)”(Enigma)”密码机密码过程中,原本是以语言学家和人文学密码机密码过程中,原本是以语言学家和人文学 者为主的解码团队中加入了数学家和科学家。电脑之父亚伦者为主的解码团队中加入了数学家和科学家。电脑之父亚伦 图灵图灵(Alan (Alan Math
4、isonMathison Turing) Turing)就是在这个时候加入了解码就是在这个时候加入了解码 队伍,发明了一套更高明的解码方法。同时,这支优秀的队队伍,发明了一套更高明的解码方法。同时,这支优秀的队 伍设计了人类的第一部电脑来协助破解工作。显然,越来越伍设计了人类的第一部电脑来协助破解工作。显然,越来越 普及的计算机也是军工转民用产品。美国人破译了被称为普及的计算机也是军工转民用产品。美国人破译了被称为“ 紫密紫密”的日本的日本“九七式九七式”密码机密码。靠前者,德国的许多密码机密码。靠前者,德国的许多 重大军事行动对盟军都不成为秘密;靠后者,美军炸死了偷重大军事行动对盟军都不成为
5、秘密;靠后者,美军炸死了偷 袭珍珠港的元凶日本舰队总司令山本五十六。袭珍珠港的元凶日本舰队总司令山本五十六。 Date8Copyright Liu Peishun3 基本概念l密码学(Cryptology): 是研究信息系统安全 保密的科学.密码编码学(Cryptography): 主要研究对信息进 行编码,实现对信息的隐蔽.密码分析学(Cryptanalytics):主要研究加密消息 的破译或消息的伪造.Date9Copyright Liu Peishun3 基本概念:基本术语l消息被称为明文(Plaintext)。用某种方法伪装消息以隐 藏它的内容的过程称为加密(Encrtption),被
6、加密的消 息称为密文(Ciphertext),而把密文转变为明文的过程 称为解密(Decryption),加密和解密要在密钥的控制下 进行。 l密码算法(Cryptography Algorithm):是用于加密和解密 的数学函数。l密码员对明文进行加密操作时所采用的一组规则称作加 密算法(Encryption Algorithm).l所传送消息的预定对象称为接收者(Receiver).l接收者对密文解密所采用的一组规则称为解密算法 (Decryption Algorithm).Date10Copyright Liu Peishunl加密和解密算法的操作通常都是在一组密钥的控 制下进行的,分别
7、称为加密密钥(Encryption Key) 和解密密钥(Decryption Key).3 基本概念:加解密过程示意图明文明文密文加密算法解密算法密钥密钥安全信道Date11Copyright Liu Peishun3 基本概念:加密通信的shannon模型l密码学的目的:实现消息源和消息宿在不安全的 信道上进行通信,而系统分析者(破译者)不能理 解他们通信的内容。消息源加密机解密机消息宿安全信道密钥源系统分析者xyxk不安 全信 道Date12Copyright Liu Peishun3 基本概念:密码体制l密码体制:它是一个五元组(M,C,K,E,D)满足条 件:(1)M是可能明文的有限
8、集;(明文空间)(2)C是可能密文的有限集;(密文空间)(3)K是一切可能密钥构成的有限集;(密钥空间 )*(4)任意k K,有一个加密算法 和相应 的解密算法 ,使得 和 分别为加密解密函数,满足dk(ek(x)=x, 这里 x P。Date13Copyright Liu Peishun3 基本概念:密码体制分类l古典密码算法和现代密码算法按照算法是否公开l对称密钥密码和非对称密钥密码加密和解密是否使用相同的密钥l分组密码和序列密码每次操作的数据单元是否分块Date14Copyright Liu Peishun3 基本概念对称密码算法对称密码算法(symmetric cipher):又称传统
9、密 码算法(conventional cipher),就是加密密钥和 解密密钥相同,或实质上等同,即从一个易于推 出另一个。又称秘密密钥算法或单密钥算法。l优点加密速度快,便于硬件实现和大规模生产l缺点密钥分配:必须通过保密的信道密钥个数:n(n-1)/2 无法用来签名和抗抵赖(没有第三方公证时)Date15Copyright Liu Peishun3 基本概念非对称密码算法非对称密钥算法(asymmetric cipher):加密密钥和解密 密钥不相同,从一个很难推出另一个。又称公开密钥算 法(public-key cipher) 。l公开密钥算法用一个密钥进行加密, 而用另一个进行解密 .
10、其中的加密密钥可以公开,又称公开密钥(public key), 简称公钥.解密密钥必须保密,又称私人密钥(private key)私钥.简称私钥。l优点:密钥分配:不必保持信道的保密性密钥个数:n pair可以用来签名和抗抵赖 l缺点加密速度慢,不便于硬件实现和大规模生产Date16Copyright Liu Peishun3 基本概念分组密码和流密码分组密码(block cipher):将明文分成固定 长度的组,用同一密钥和算法对每一块加 密,输出也是固定长度的密文。流密码(stream cipher):又称序列密码.序 列密码每次加密一位或一字节的明文,也 可以称为流密码。序列密码是手工和
11、机械密码时代的主流Date17Copyright Liu Peishun3 基本概念密码算法分类对称密钥密码又可分为: 分组密码每次对一块数据加密,多数网络加密应用DES,IDEA,RC6,Rijndael 流密码每次对一位或一字节加密,A5(GSM移动通 信),RC-4Date18Copyright Liu Peishun3 基本概念密码算法分类公开密钥密码: 大部分是分组密码 每次对一块数据加密,数字签名,身份认 证RSA,ECC,ElGamal,DSA加密解密速度慢Date19Copyright Liu Peishun3 基本概念密码分析l在未知密钥的前提下,从密文恢复出明文 、或者推导
12、出密钥l对密码进行分析的尝试称为攻击l攻击方法分类(根据已知信息量的多少)唯密文攻击已知明文攻击选择明文攻击选择密文攻击选择文本Date20Copyright Liu Peishun3 基本概念密码分析1883年Kerchoffs第一次明确提出了编码的原则:算法的公开不影响明文和密钥的安全。 这一原则已得到普遍承认,成为判定密码强度的衡量标准,实际上也成为传统密码和现代密码的分界线。Date21Copyright Liu Peishun3 基本概念密码算法的安全性lLars Knudsen 把破译密码算法分为4种不同的类型全部破译:密码分析者找出密钥K,从而可以解密密文全盘推导:密码分析者找到
13、一个代替算法A, 在不知道密钥K 的情况下可以解密密文。实例(局部)推导:密码分析者从截获的密文中找出明文。信息推导:密码分析者获得一些有关密钥或明文的信息。l无条件保密:无论获得多少密文,都不能恢复明文一次一密:密钥是一个随机序列,密钥只使用一次,密钥的长 度等于明文序列的长度。蛮力攻击:测试每一种可能的密钥Date22Copyright Liu Peishun3 基本概念密码算法的安全性l密码算法的安全性如果破译算法的代价大于加密数据本身的价值 ,或者在信息的生命期内无法破解,那么你的 算法可能是安全的。(实际保密性)一个算法被称为是计算上安全的,如果一个算 法用可得到的资源不能破解。l处
14、理复杂性:计算量,CPU时间l数据复杂性:所需输入数据量l存储复杂性:计算所需的存储空间Date23Copyright Liu Peishun典型的算法复杂度分析类复杂度运算次数(n106) 时间值 常数 线性 平方 立方O(1) O(n) O(n2) O(n3)1 106 1012 10181s 1s 10天 27897年指数 O(nn)103010301010301016年Date24Copyright Liu Peishun4 古典密码l古典密码是密码学的 渊泉,这些密码大都 比较简单,可用手工 或机械操作实现加解 密。l古典密码的分类换位代替Phaistos圆盘,一种直径约为160mm
15、 的Cretan-Mnoan粘土圆盘,始于公元 前17世纪。表面有明显字间空格的字母 ,至今还没有破解。Date25Copyright Liu Peishun4 古典密码换位密码l根据一定的规则重新安排明文字母,使 之成为密文.l列换位密码( Columnar transposition cipher)Date26Copyright Liu Peishun4 古典密码换位密码l换位密码把明文按列写入,按行读出l密钥包含3方面信息: 行宽,列高,读出顺序 key: 4 3 1 2 5 6 7 plaintext: a t t a c k po s t p o n ed u n t i l tw o a m x y z ciphertext: TTNA APTM TSUO AODW COIX PETZl完全保留字符的统计信息l使用多轮加密可提高安全性Date27Copyright Liu Peishun4 古典密码换位密码l周期换位密码( Periodic permutation cipher)i=1,2,3,4 f(i)=3,4,2,1 M=c a n y o u n n d e r s t a n d C=NYAC UNUO RSED NDATDate28Copyright Liu Peishun4古典密码替代密码l明文的字母由其它字母或数字或符