密码算法设计与实现-.ppt
《密码算法设计与实现-.ppt》由会员分享,可在线阅读,更多相关《密码算法设计与实现-.ppt(59页珍藏版)》请在咨信网上搜索。
1、安全程序安全程序设计设计方法方法密密码码算法算法设计设计与与实现实现黄玉划黄玉划1问题问题点加/解密,可生成一个新文件(有默认目录和名称,可更改)。如果消息校验失败,则输出解密失败信息,不会生成新文件。2问题问题分析分析加密加密n我们用EA、DA和AA分别表示加密算法、解密算法和数据认证算法,则加密过程如图所示,可表示为:n(1)校验值ICV=AA(P,Ka,IV);n(2)密文C=EA(K,IV,P|ICV)3问题问题分析分析加密加密(续续)n上图中,IV一般为计数器,功能是抗重放攻击,对于相同的明文和密钥,每次可以加密成不同的密文。数据认证算法AA的功能是检测密文是否被篡改,保证数据的完整
2、性完整性,即消息的接收者能够验证在传送过程中消息没有被修改,入侵者不能用假消息代替合法消息。认证密钥Ka与加密密钥K可相同,也可不相同。4问题问题分析分析解密解密n解密过程根据加密套件选择相应的解密算法,如图所示,可表示为:(1)P|ICV=DA(K,IV,C);n(2)认证码MAC=AA(P,Ka,IV);n(3)MAC=ICV?5密密码码算法算法选择选择n(1)加密算法(流密流密码码算法、分算法、分组组密密码码算法算法、公钥密码算法)实现保密性;n(2)数据认证算法(分分组组密密码码算法的算法的认证认证模式、模式、CRC、单单向向Hash函数函数、数字签名算法)保证完整性(消息真实性)。6
3、密密码码算法具体算法具体选选用用n1分组密码算法:AES、SHACAL2、DES、IDEA、MISTY1、Camellia、RC6n2分组密码模式:CBC+PXOR(或或CRC)、ECB(或或CTR或或OFB)+CBC-MAC、OCB、PMAC、RMAC、XCBCn3流密码算法和PRNG(与CBC-MAC结合):RC4、SEAL、A5、ANSI X9.17(基于3DES)、G-SHA-1n4CRC-32n5单向Hash函数(备用):SHA1、SHA256、Whirlpool、RIPEMD160、SHA384、SHA512、HMAC、UMAC、T-T-MAC、MD571分分组组密密码码算法算法n
4、1.0概述概述n1.1DES(数据加密数据加密标准准)算法算法n1.2IDEA(国国际数据加密算法数据加密算法)n1.3AES(Rijndael)算法算法n1.4NESSIE候候选分分组密密码算法算法81.0 分分组组密密码码算法概述算法概述n美国的第一代分组密码算法标准是DES算法,也是一个早期的国际标准;第二代标准是AES算法。欧洲的第一代分组密码算法标准是IDEA算法,新标准是日本人Eisaku Takeda设计的MISTY1算法、Shiho Moriai和Mitsuru Matsui设计的Camellia算法、以及法国人Helena Handschuh和David Naccache设计
5、的SHACAL2算法。n日本在分组密码算法领域的研究非常活跃,向NESSIE提交了5个分组密码算法,是递交数量最多的国家。Camellia算法也是日本的分组密码算法标准,据说某些性能超过了AES 算法。第三代移动通信系统3GPP的标准加密算法KASUMI是MISTY1算法的变种。n巴西在分组密码算法领域的研究也比较活跃,向NESSIE提交了3个分组密码算法,其中,Paulo S.L.M.Barreto和比利时人Vincen t Rijmen合作设计的Khazad算法是入围欧洲决赛的算法。在美国和欧洲新标准征集过程中,俄罗斯、加拿大、澳大利亚和韩国也提交了几个分组密码算法。n国内科研人员提出了几
6、个分组密码算法,性能还不错。91.1 DES算法算法有陷有陷门门?nDES的半公开性:S盒的设计原理至今未公布,可能隐含有陷门(Hidden trapdoors)。n有趣的是,DES算法是由IBM公司设计的;当时的美国国家标准局(NSA)修改了S-盒设计,以确保IBM没有在算法中嵌入陷门,因为NSA没有理由相信IBM的研究成果,而他们不能绝对确定DES算法没有陷门,如果有陷门,将是他们失职,所以只好修改S-盒;而人们又怀疑NSA在DES算法中强加了弱点。101.2 IDEA(国国际际数据加密算法数据加密算法)nIDEA算法是欧洲的第一代分组密码算法标准,是由我国旅欧学者来学嘉和他的导师Jame
7、s Massey设计的,也是PGP的标准之一。该算法的设计原则是“来自于3个不同代数群的混合运算”,即异或、模216加、模216+1乘,这就使得IDEA算法易于软硬件实现。n在代数结构上,IDEA算法也不是一个群。该算法的软件实现速度是DES算法的2倍。Bruce Schneier认为,在早期的分组密码算法中,IDEA算法是最好和最安全的。111.3 AES(Rijndael)算法算法nDES算法的安全强度越来越满足不了技术发展的需要。为此,美国NIST于1997年开始制定AES(高级加密标准)算法以满足新时代的信息安全需求。1999年,NIST宣布已从15个候选算法中选出5个较好的算法:MA
8、RS,RC6,Rijndael,Serpent,Twofish。2000年底,NIST最终确定采纳Rijndael算法作为AES算法。AES算法是由比利时的Joan Daemen和Vincent Rijmen设计的,经过全世界密码学者3年多的密集评估,被认为是安全的。由于评估过程公开,AES算法会有陷门的可能性很小。121.3 AES(高高级加密加密标准准)算法算法设计思路思路n通常,分组密码算法的结构是Feistel结构,不过AES算法使用了一种称为宽轨迹策略(WTS)的方法。n该算法有3条设计准则:抗所有已知的攻击;在多个平台上快速简洁地实现;设计简单。其分组长度为128位(Rijndae
9、l算法本身的分组长度可以是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算法过程可分为轮密钥编排和加密过程两个独立的部分。131.3 AES算法算法加密全加密全过程程加密全过程包括:轮密钥编排(扩展);轮密钥异或,前(r-1)轮迭代,一个结尾轮。即Rijndael(State,CipherKey)KeyExpansion(CipherKey,ExpandedKey);AddRoundKey(State,
10、ExpandedKey);for(i=1;i 1)poly;else crc=crc 1;qcrcTab i=crc;n则CRC-32算法ICV=CRC-32(P)过程为:ncrc=0 xffffffff;nfor i=0 to len-1 crc=crcTab(crcPi)&0 xff(crc 8)&0 x00ffffff;nICV=crc0 xffffffff;455单单向向Hash函数函数n5.0 概述n5.1 早期的Hash函数n5.2 HMAC(带密钥的Hash函数)n5.3 新一代Hash函数n5.4 国产Hash函数465.0 单单向向Hash函数概述函数概述n散列(Hash)函
11、数又称为杂凑函数,或音译为哈希函数。单向散列函数的早期国际标准有SHA-1(美)、RIPEMD-160(欧)等算法,现在NIST又增加了三个标准算法(SHA-256,SHA-384,SHA-512)。带密钥的散列函数(HMAC)是MAC(消息认证码)算法的一种。HMAC的美国标准是HMAC-MD5和HMAC-SHA-1算法。欧洲的单向散列函数新标准是比利时人Paulo Barreto和Vincent Rijmen设计的Whirlpool算法;欧洲的MAC新标准是Ted Krovetz,John Black,Shai Halevi,Hugo Krawczyk和Phillip Rogaway合作设
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 密码 算法 设计 实现
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。