现代密码学课程相关介绍--参考书籍教学参考书第一章概论与引言概论21世纪是信息的时代、经济的时代。信息成为社会发展的重要战略资源,改变着人们的生活和工作方式。然而,目前影响电子政务、电子商务、电子金融等领域应用的主要技术障碍是网络安全和信息安全问题。由于网络的开放性和无政府状态,网络很不安全。概论世界主要工业国家每年因利用计算机犯罪所造成的经济损失巨大。美国每年因利用计算机犯罪所造成的经济损失就高达1700多亿美元,远远超过普通经济犯罪所造成的损失。在我国,利用计算机犯罪的案例也在迅速上升。“黑客”入侵已成为危害计算机网络和信息安去的普遍性、多发性事件,国内外都屡屡发生严重的“黑客”入侵事件。概论2000年2月7日起的一周内,“黑客”对Internet网站发动了大规模的攻击,著名的美国雅虎、亚马逊、伊贝等8大网站相继被攻瘫痪,造成直接损失12亿美元。2001年5月1日前后发生了一场中美网络“黑客”大战。双方互相攻击对方的计算机网站,双方都有很大的损失。2003年1月25日13时30分到19时30分的6个小时内,北美、欧洲和亚洲的Internet全部陷入瘫痪或半瘫痪状态,其原因至今尚不清楚。概论除了金融信息外,政治、军事等重要数据也是不法分子攻击的重点。德国几名青年曾攻入五角大楼和北约的计算机数据库。美国通用动力公司的一名软件设计师设计的逻辑炸弹破坏了太空导弹数据库,致使电脑数据库的数据无法恢复,造成无法弥补的损失。英国、法国和韩国也发生过类似事件。军事上,信息战、网络战已成为新的重要作战形式。概论1995年海湾战争期间,美国成功地对伊拉克发动了信息战。战争一开始美国便激活了埋藏在伊拉克计算机系统中的病毒,并用电子干扰机对伊拉克的防空及通信系统实施电子干扰,致使计算机和通信系统瘫痪,使伊拉克处于被动挨打的地位。在科索沃战争期间,美国也曾发动信息战袭击前南斯拉夫的电脑系统。在2003年的伊拉克战争中,美国的信息战和电子战的优势就更加明显。概论计算机病毒的出现也使得网络面临极大的威胁。虽然我们在信息安全方面整体上落后于美国等发达国家,但我国在信息安全领域中的某些方面有自己的特色。如在密码技术、计算机病毒防治、软件加密等方面都有自己的特色。我国政府已将信息安全技术和产业的发展列为优先发展领域。概论密码技术是信息安全的关键技术。大概自人类社会出现战争便产生了密码。由于密码长期以来仅用于政治、军事、公安、外交等要害部门,其研究本身也只限于秘密进行,所以密码被蒙上神秘的面纱。然而,随着计算机和通信技术的迅速发展和普及应用,出现了电子政务、电子商务、电子金融等重要的应用信息系统。在这些系统中必须确保数据的安全保密,因此密码技术有了更广泛的应用空间。概论密码技术的基本思想是伪装信息,伪装就是对数据施加一种可逆的数学变换。伪装前的数据称为明文,伪装后的数据称为密文。伪装的过程称为加密,去掉伪装恢复明文的过程称为解密。1课程相关介绍--概念什么叫密码学?密码学(Cryptology):是研究密码编制、密码破译和密码系统设计的一门综合性科学,其包括密码编码学和密码分析学。密码编码学(Cryptography):主要研究对信息进行编码,以实现对信息的隐蔽。密码分析学(Cryptanalytics):主要研究对加密消息的破译或消息的伪造。1课程相关介绍—密码学研究的内容编码学研究的主要内容:序列密码算法的编码技术分组密码算法的编码技术公钥密码体制的编码技术加密算法数字签名方案密钥分配方案认证方案单向函数等传统且主流的研究方向1课程相关介绍—密码学研究的内容密码分析学研究的主要内容(1)密码算法的安全性分析和破译的理论、方法、技术和实践(2)密码协议的安全性分析的理论与方法(3)安全保密系统的安全性分析和攻击的理论、方法、技术和实践1课程相关介绍--密码学是干什么的?密码学是干什么的?密码学要解决的基本问题:(1)信息的保密传输和存储问题;(2)信息的认证问题.例:我收到你写给我1封信,那么我问:----信的内容是否被改动?----是否真是你写的信?----是否真是写给我信?----有没有人看过这封信?1课程相关介绍—密码学的应用领域现代密码学主要的应用领域:1.信息系统的安全与保密问题;2.电子商务、电子政务中的安全和保密问题;3.银行系统、证券系统、保险系统等的安全问题;4.商品、票据、信用卡等的防伪与审核问题。2密码学发展1949年之前密码学是一门艺术1949~1975年密码学成为一门科学1976年以后密码学的新方向——公钥密码学2密码学发展--第一阶段概述第1阶段-古典密码(1949年以前)密码学还不是科学,而是艺术出现一些密码算法和加密设备密码算法的基本手段出现,针对的是字符简单的密码分析手段出现主要特点:数据的安全基于算法的保密2密码学发展--第一阶段中的例子第1阶段-古典密码几个典型的密码:卡撒密码、维几尼亚密码;几个典型的战例:1.一战时德国人的ADFGVX密码被法国密码分析家破译,间接的导致了德国一战的失败;2.二战德国人的恩尼格马密码被破,直接导致德军二战的失败2密码学发展--第二阶段概述第2阶段1949~19751、计算机使得基于复杂计算的密码成为可能2、主要特点:数据的安全基于密钥而不是算法的保密2密码学发展--第三阶段大事记第3阶段1976~1976年:Diffie&Hellman的“密码学中的新方向(NewDirectionsinCryptography)”,并提出了不对称密钥密码1977年Rivest,Shamir&Adleman提出了RSA公钥算法1977年DES正式成为美国数据加密标准3密码学的基本概念--信息传输中的基本概念信息传递的一般问题信源、信道、信宿攻击的种类:•中断(Interruption)(干扰)•截取(Interception)(侦听)•修改(Modification)•伪造(Fabrication)角色:通信双方(发送方和接收方)、第三方(可信、不可信第三方)、敌手也叫攻击者A:信源B:信宿信道3密码学的基本概念--信息传输过程中的攻击例子窃听:对传输的信息的攻击A:信源发送方B:信宿接收方C:敌手攻击者3密码学的基本概念--信息传输过程中的攻击例子对窃听的防护:加密技术A:信源B:信宿C:敌手加密解密3密码学的基本概念--基本概念明文:被隐蔽的消息称作明文,通常用m表示。其英文为Message和Plaintext明文就是没有被加密的消息.密文:将明文隐蔽后的结果称作密文或密报,通常用c表示。其英文为Ciphertext密文就是加密后的结果.3密码学的基本概念--基本概念加密(Encryption):将明文变换成密文的过程称作加密,该过程表示为解密(Decryption):由密文恢复出明文的过程称作解密,该过程表示为密钥(key):控制或参与密码变换的可变参数称为密钥。密钥又分为加密密钥和解密密钥。加密密钥是加密时用的密钥,用表示;解密密钥是解密时用的密钥,用表示;)(mEcek)(cDmdkekdk3密码学的基本概念--密码体制的概念密码体制的概念:一个密码体制(Cryptosystem)由五部分组成:(1)明文空间M;----所有可能的明文构成的集合(2)密文空间C;----所有可能的密文构成的集合(3)密钥空间K;----所有可用的密钥构成的集合----又包括加密密钥和解密密钥(4)加密算法E;----由加密密钥控制的加密变换的集合(5)解密算法D;----由解密密钥控制的解密变换的集合3密码学的基本概念--加密函数分析----从加密函数的角度理解密码体制的概念----加密函数:将明文m加密为密文c,即其(1)定义域是明文空间M;(2)值域是密文空间C;(3)加密函数就是加密算法;(4)控制参数就是加密密钥)(mEcekCMEek:ek3密码学的基本概念--解密函数分析--针对解密函数分析--解密函数:将密文c解密为明文m,即其(1)定义域是密文空间C;(2)值域是明文空间M;(3)解密函数就是解密算法;(4)控制参数就是解密密钥.mcDdk)(dk:dkDCM3密码学的基本概念--加、解密函数说明(1)加、解密密钥与成对使用;(2)加密函数与解密函数互为逆函数,即对所有明文m,都有注:一个密文只能有一个解密结果!ekdkdkDekE),(dekkkmcDmEDdedkkk)())((3密码学的基本概念--密码算法的分类密钥·对称密码算法(symmetriccipher)加密密钥和解密密钥相同,或实质上等同,即从一个易于推另一个,又称秘密密钥算法或单密钥算法·非对称密钥算法(asymmetriccipher)加密密钥和解密密钥不相同,从一个很难推出另一个,又称公开密钥算法(public-keycipher).公开密钥算法用一个密钥进行加密,而用另一个密钥进行解密,其中的加密密钥可以公开,又称公开密钥(publickey).解密密钥必须保密,又称私人密钥(privatekey),简称私钥。3密码学的基本概念--密码算法的分类明文处理方式·分组密码(blockcipher)将明文分成固定长度的组,用同一密钥和算法对每一块加密,输出也是固定长度的密文。·流密码(streamcipher)又称序列密码。序列密码每次加密一位或一字节的明文。3密码学的基本概念--密码分析学中的概念破译:对于一个密码体制,如果能够根据密文确定明文和密钥,或者根据明文或相应的密文确定密钥,我们就说这个密码体制时可破译的;否则,称其为不可破译的。3密码学的基本概念--攻击方法1、攻击密码体制的方法(1)穷举攻击:如果没有密钥会怎样?----谁都可解密!如果可能的密钥太少会怎样?----若对每个可能的密钥都逐一测试,则一定可以碰到正确的密钥,利用它就可解密!这就是穷举攻击方法!穷举攻击就是逐一利用每个可能的密钥对密文进行解密测试,并将解密结果合理的那个密钥判断为正确密钥。3密码学的基本概念--攻击方法要想能抵抗穷举攻击,一个密码算法的可能密钥总数不能太少!一个密码算法的可能密钥的总数称为该密码算法的密钥变化量.目前,密钥变化量少于264的密码算法是不安全的!密钥变化量为2128的密码算法是安全的!为什么?3密码学的基本概念--攻击方法假设密钥变化量为2128≈10128×0.301=1038.5考查该密码算法的抗穷举攻击能力。假想为计算机速度为10亿次/每秒10亿=1091年=365×24×3600=3.15×107秒1年可以穷举的密钥量为:3.15×107×109=3.15×1016个密钥2128个密钥需要1038.5/3.15×1016≈1022年才能穷举完。(一万亿亿年)3密码学的基本概念--攻击方法(2)统计分析攻击:密码分析者通过分析:(A)密文与明文之间,或(B)明文--密文对与密钥之间的统计规律来进行破译。一个设计的不太差的密码算法一般只能用这种方法进行攻击!3密码学的基本概念--攻击方法(3)解密变换攻击:密码分析者针对加密变换的数学基础,通过数学求解的方法来设法找到相应的解密变换或等价的解密变换实现攻击。这种攻击通常用于对公钥密码的攻击之中!对付这种攻击的手段就是:采用坚实的数学基础和足够复杂的加密算法。3密码学的基本概念--攻击方法对密码体制进行攻击时,攻击对象是什么?(1)求出明文!(2)求出密钥,进而求出明文!3密码学的基本概念--攻击方法按敌手可利用的知识的类别的多少,攻击方法可分为:密码学的基本概念-加密方案的安全性加密方案的安全性计算安全性:如果我们使用最好的算法来破译一个密码体制至少需要n次操作,而n是一个非常大的数,则称为是计算上安全的可证明安全性:如果一个密码体制的安全性可以归结为某一个数学问题,而这个数学问题目前是难解的,则称为是可证明安全的无条件安全性:对于一个密码体制,如果密码分析者即使具有无限的计算能力,也无法破译该密码体制,则称为是无条件安全的密码学的基本概念--加密方案的安