




已阅读5页,还剩54页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,安全程序设计方法密码算法设计与实现,黄玉划,2,问题,点加/解密,可生成一个新文件(有默认目录和名称,可更改)。如果消息校验失败,则输出解密失败信息,不会生成新文件。,3,问题分析加密,我们用EA、DA和AA分别表示加密算法、解密算法和数据认证算法,则加密过程如图所示,可表示为:(1)校验值ICV=AA(P,Ka,IV);(2)密文C=EA(K,IV,P|ICV),4,问题分析加密(续),上图中,IV一般为计数器,功能是抗重放攻击,对于相同的明文和密钥,每次可以加密成不同的密文。数据认证算法AA的功能是检测密文是否被篡改,保证数据的完整性,即消息的接收者能够验证在传送过程中消息没有被修改,入侵者不能用假消息代替合法消息。认证密钥Ka与加密密钥K可相同,也可不相同。,5,问题分析解密,解密过程根据加密套件选择相应的解密算法,如图所示,可表示为:(1)P|ICV=DA(K,IV,C);(2)认证码MAC=AA(P,Ka,IV);(3)MAC=ICV?,6,密码算法选择,(1)加密算法(流密码算法、分组密码算法、公钥密码算法)实现保密性;(2)数据认证算法(分组密码算法的认证模式、CRC、单向Hash函数、数字签名算法)保证完整性(消息真实性)。,7,密码算法具体选用,1分组密码算法:AES、SHACAL2、DES、IDEA、MISTY1、Camellia、RC62分组密码模式:CBC+PXOR(或CRC)、ECB(或CTR或OFB)+CBC-MAC、OCB、PMAC、RMAC、XCBC3流密码算法和PRNG(与CBC-MAC结合):RC4、SEAL、A5、ANSIX9.17(基于3DES)、G-SHA-14CRC-325单向Hash函数(备用):SHA1、SHA256、Whirlpool、RIPEMD160、SHA384、SHA512、HMAC、UMAC、T-T-MAC、MD5,8,1分组密码算法,1.0概述1.1DES(数据加密标准)算法1.2IDEA(国际数据加密算法)1.3AES(Rijndael)算法1.4NESSIE候选分组密码算法,9,1.0分组密码算法概述,美国的第一代分组密码算法标准是DES算法,也是一个早期的国际标准;第二代标准是AES算法。欧洲的第一代分组密码算法标准是IDEA算法,新标准是日本人EisakuTakeda设计的MISTY1算法、ShihoMoriai和MitsuruMatsui设计的Camellia算法、以及法国人HelenaHandschuh和DavidNaccache设计的SHACAL2算法。日本在分组密码算法领域的研究非常活跃,向NESSIE提交了5个分组密码算法,是递交数量最多的国家。Camellia算法也是日本的分组密码算法标准,据说某些性能超过了AES算法。第三代移动通信系统3GPP的标准加密算法KASUMI是MISTY1算法的变种。巴西在分组密码算法领域的研究也比较活跃,向NESSIE提交了3个分组密码算法,其中,PauloS.L.M.Barreto和比利时人VincentRijmen合作设计的Khazad算法是入围欧洲决赛的算法。在美国和欧洲新标准征集过程中,俄罗斯、加拿大、澳大利亚和韩国也提交了几个分组密码算法。国内科研人员提出了几个分组密码算法,性能还不错。,10,1.1DES算法有陷门?,DES的半公开性:S盒的设计原理至今未公布,可能隐含有陷门(Hiddentrapdoors)。有趣的是,DES算法是由IBM公司设计的;当时的美国国家标准局(NSA)修改了S-盒设计,以确保IBM没有在算法中嵌入陷门,因为NSA没有理由相信IBM的研究成果,而他们不能绝对确定DES算法没有陷门,如果有陷门,将是他们失职,所以只好修改S-盒;而人们又怀疑NSA在DES算法中强加了弱点。,11,1.2IDEA(国际数据加密算法),IDEA算法是欧洲的第一代分组密码算法标准,是由我国旅欧学者来学嘉和他的导师JamesMassey设计的,也是PGP的标准之一。该算法的设计原则是“来自于3个不同代数群的混合运算”,即异或、模216加、模216+1乘,这就使得IDEA算法易于软硬件实现。在代数结构上,IDEA算法也不是一个群。该算法的软件实现速度是DES算法的2倍。BruceSchneier认为,在早期的分组密码算法中,IDEA算法是最好和最安全的。,12,1.3AES(Rijndael)算法,DES算法的安全强度越来越满足不了技术发展的需要。为此,美国NIST于1997年开始制定AES(高级加密标准)算法以满足新时代的信息安全需求。1999年,NIST宣布已从15个候选算法中选出5个较好的算法:MARS,RC6,Rijndael,Serpent,Twofish。2000年底,NIST最终确定采纳Rijndael算法作为AES算法。AES算法是由比利时的JoanDaemen和VincentRijmen设计的,经过全世界密码学者3年多的密集评估,被认为是安全的。由于评估过程公开,AES算法会有陷门的可能性很小。,13,1.3AES(高级加密标准)算法设计思路,通常,分组密码算法的结构是Feistel结构,不过AES算法使用了一种称为宽轨迹策略(WTS)的方法。该算法有3条设计准则:抗所有已知的攻击;在多个平台上快速简洁地实现;设计简单。其分组长度为128位(Rijndael算法本身的分组长度可以是128、192或256位),密钥长度可以是128、192或256位,分别记为AES-128、AES-192和AES-256。对于AES-128,迭代轮数r=10+1;对于AES-192,r=12+1;对于AES-256,r=14+1。AES算法过程可分为轮密钥编排和加密过程两个独立的部分。,14,1.3AES算法加密全过程,加密全过程包括:轮密钥编排(扩展);轮密钥异或,前(r-1)轮迭代,一个结尾轮。即Rijndael(State,CipherKey)KeyExpansion(CipherKey,ExpandedKey);AddRoundKey(State,ExpandedKey);for(i=1;i1)poly;elsecrc=crc1;crcTabi=crc;则CRC-32算法ICV=CRC-32(P)过程为:crc=0 xffffffff;fori=0tolen-1crc=crcTab(crcPi)也就是说,常用单向散列函数都是局部散列的,并非全局杂凑的。HTBC和PHTB算法不存在这种确定的规律,因为其每组计算值Yi都与整个消息P有关;也就是说,HTBC和PHTB是全局散列的。从这个角度而言,HTBC和PHTB的安全性比常用单向散列函数高。对HTBC和PHTB算法进行的大量统计测试结果都满足要求。,55,作业,大作业:综合运用所学知识,设计、开发和实现一个文件加密软件系统。上机作业:常用密码算法编程实现,并测试其速度。1分组密码算法:AES、SHACAL2、MISTY1、Camellia、RC6。工作模式采用CBC+PXOR(或CRC-32)、ECB(或CTR或OFB)+CBC-MAC3流密码算法和PRNG(与CBC-MAC结合):RC4、SEAL4CRC-325单向Hash函数:SHA1、SHA256、Whirlpool、RIPEMD160、SHA384、SHA512,56,习题,1、网络系统安全机制的简单模型一般可分为两步:(1)(身份)认证与密钥交换和(2)保密通信。2、身份认证可分为两类:(1)对称认证(即常用的口令认证);(2)非对称认证(基于数字签名算法)。、(1)流密码算法、分组密码算法和公钥密码算法用于加解密(保密);(2)分组密码算法的认证模式、单向Hash函数和数字签名算法用于消息认证(数据校验、窜改检测);Hash函数和公钥密码算法还可用于(身份)认证与密钥交换。、(1)身份认证算法为信息安全提供不可否认(抗抵赖,身份真实)性;(2)加密算法为信息安全提供保密性;(3)数据认证算法为信息安全提供完整(数据真实)性。5、对称算法(含Hash函数和PRNG)的基本设计思想是扩散和混乱。,57,习题(续),6、非对称算法(公钥密码算法)的基本设计思想是计算复杂性和陷门单向函数。7、对称加密算法的处理过程一般分为两步:密钥编排和数据加密。8、产生流密码中的密钥流的一种主要工具是移位寄存器。9、分组密码设计一般采用SP思想(S盒和置换运算P两种变换)(S盒实现混乱;置换运算P实现扩散)和Feistel结构。10、AES和Whirlpool算法是根据宽轨迹策略设计的。11、在实际应用的混合密码系统中,公钥密码(非对称)算法用作身份认证和加密会话密钥,对称算法用于加密消息。12、把公钥密码用于密钥分配解决了重要的密钥管理问题。,58,习题(续),13、为了节约时间,数字签名协议经常和单向Hash函数一起使用。并不对整个文件签名,只对文件的Hash值签名。14、密码统计测试方法的原理一般是假设检验。15、对密码算法f,如果每一位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二手双绞线传输器维修合同7篇
- 小额借款项目抵贷款合同书范本3篇
- 西宁市租赁房屋协议3篇
- 新解读《GB-T 32618-2016政务服务中心信息公开业务规范》
- 淮安市物流公司保洁劳务合同协议4篇
- 新解读《GB-T 31147-2014人身损害护理依赖程度评定》
- 新解读《GB-T 31176-2014休闲咨询服务规范》
- 疫情期间租车合同范本
- 合法种植养殖合同范本
- 别墅灯具采购合同范本
- 2025中国人民抗日战争暨世界反法西斯战争胜利80周年阅兵观后感心得体会3篇
- 成人脑室外引流护理标准解读
- 算法认识与体验(教学设计)-2024-2025学年人教版(2024)小学信息技术五年级全一册
- 2025年辅警笔试考试题库题库与答案
- 2025危险品押运员模拟考试试题及答案
- 2025年银发族市场洞察报告
- 第十四章 开放经济的宏观经济
- 2025年幼儿园食堂餐饮从业人员食品安全知识培训考核试题(附答案)
- 存款定期管理办法
- 2025至2030全球及中国港口疏浚行业发展研究与产业战略规划分析评估报告
- 小儿惊风的中医护理
评论
0/150
提交评论