《密码学拓展报告13771.pdf》由会员分享,可在线阅读,更多相关《密码学拓展报告13771.pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-密码学课外拓展报告 课题:密码学算法最新进展 教师:*:班级:序言 信息平安效劳依靠平安机制来完成,而平安机制主要依赖于密码技术,因此,密码技术是信息平安的核心。而密码算法(Cryptography Algorithm,用于加密和解密的数学函数)又是密码的核心,所以,密码算法是保障信息平安的核心之核心,其重要性不言而喻。为此,世界各国对密码算法的研制都高度重视,1977 年美国NIST 提出数据加密标准(DES),出于政治原因和技术原因,多种密码算法在世界各国相继出现,这些算法有:RIJ INDAEL、MARS、RC6、Twofish、Serpent、IDEA、CS2Cipher、MMB、C
2、A21.1、SKIPJACK、Karn 等对称密码算法以及背包公钥密码算法、RSA、ElGamal、椭圆曲线密码算法(ECC)、NTRU 等非对称密码算法。此次拓展主要对RSA 算法和 DES、AES 算法开展现状进展。-RSA 算法 RSA 算法简述:RSA 算法是由三位数学家 Rivest、Shamir 和 Adleman在1978 年根据Whitfield 和 Martin Hellman 的理论框架设计出的一种非对称加密算法。RSA 是被研究得最广泛的公钥算法,是第一个能同时用于加密和数字签名的算法,也易于理解和操作。它的理论根底为大数分解、素数检测和Euler 定理。从提出到现在已三
3、十年,经历了各种攻击的考验,逐渐为人们承受,普遍认为是目前最优秀的公钥方案之一。RSA 算法利用了陷门单向函数的一种可逆模指数运算。RSA 算法应用现状:1.用于文件加密 RSA 表达方式简单、性强、没有密钥管理的麻烦,并且具有数字签名、认证和鉴别等功能,特别适合于现代通信的需要。用 RSA 可以加密一些重要文件,如在一台物理存为 512MB 的PC 上测试实现的系统,以 560bit 的 n 逐字节加密一个 1KB 大小的文件需要 55 秒。通常记录如银行密码等重要数据的文本文件大小缺乏百字节,加密只需要数秒钟。所以对于小型文件,进展较长密钥的 RSA 加密是完全可行的。其实从一个简单的角度
4、来说,既然 RSA 用于数字签名可行,那就完全可以用于同样大小的普通文件。对于较大的文件,如果分成与数字签名同样大小的段(这里假设数字签名较短,不分段一次计算加密完成),分开-的各段逐一进展加密运算,那所需要的时间也只是按文件大小线性的增长。通常数字签名为几十字节,加密运算并不需要很长的等待,这就说明对于几百字节或一两 K 字节大小的文件来说,如果进展 RSA 加密,并不会是非常漫长的工作。当然,如果文件更大,加密就显得十分漫长了。比方按前面表达的 45 毫秒大数运算程序推理,加密 1M 字节大小的文件需要约 1 天的时间。所以,要在普通 PC 用几百位以上的长密钥 RSA 加密文件,文件不能
5、过大,一般可以承受的上限是几 KB。如果要在较短时间加密大文件,需要缩短密钥长度以减小运算量,但是这将带来平安性隐患。2.用于数字签名算法 基于 RSA 算法的数字签名在 2000 年的第六届国际密码学会议上被推荐为公钥密码系统的加密算法中的一种,则 RSA 数字签名有较好的开展空间。对于未来的加密、生成和验证数字签-名的工具还需完善,只有用 SSL平安套接层建立平安连接的Web 浏览器,才会频繁使用数字签名,公司要对其员工在网络上的行为进展规,就要建立广泛协作机制来支持数字签名,支持数字签名是 Web 开展的目标,确保数据性、数据完整性和不可否认性才能保证在线商业的平安交易。和数字签名有关的
6、复杂认证能力就像现在操作、应用环境中的口令保护一样直接做进操作系统环境、应用、远程访问产品、信息系统等中,像 Microsoft支持*.509 的 Internet E*plorer4.0 客户机软件及支持对象签名检查的 JAVA 虚拟机等。RSA 算法存在的缺点:1产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。2RSA 的平安性依赖于大数的因子分解,无法从理论上把握它的性能如何并没有从理论上证明破译 RSA 的难度与大数分解难度等价。3 速度太慢,由于 RSA 的分组长度太大,为保证平安性,n 至少也要 600bits 以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几
7、个数量级;且随着大数分解技术的开展,这个 长 度 还 在 增 加,不 利 于 数 据 格 式 的 标 准 化。目 前,SET(SecureElectronicTransaction)协议中要求 CA 采 用2048 比特长的密钥,其它实体使用 1024 比特的密钥。为了速度问题,目前人们广泛使用私、公钥密码结合使用的方法,优缺-点互补:私钥密码加密速度快,人们用它来加密较长的文件,然后用 RSA 来给文件密钥加密,极好地解决了私钥密码的密钥分发问题。不过个人认为如今计算机的性能水平,加密 RSA 消耗的时间应该是可以承受的。个人理解RSA 算法的耐用性 在查阅 RSA 算法相关资料的过程中,发
8、现有 2013 年报道称 4096 位的 RSA 算法被侧信道攻击破解。Daniel Genkin,Adi Shamir,Eran Tromer 在 2013 年十二月份的一篇报告中详细讲解了他们是如何通过计算机在执行 RSA 加密过程过噪声来破解 4096 位的 RSA 算法。然而,时至今日,RSA 算法的使用并没有受到太大的影响,采用指数计算方法虽然能破解 RSA 算法,目前 1024 位的 RSA已经被认为不平安了,但是以现在的计算机运算能力,还缺乏以破解 4096 位的 RSA 算法。素数的排布越大越稀疏,所以在以后假设计算机运算能力大幅增长,增加 RSA 算法的位数又可保证可用性。D
9、ES 和 AES 算法 DES和AES算法对称密码算法最著名的是美国数据加密标准 DES、高级加密标准 AES 和欧洲数据加密标准 IDEA。DES DES 算法由 IBM 公司开发,并被美国国家标准局(NIST)于1977 年 2 月采纳作为非应用的一个标准,此后,DES 成为全-世界使用最广泛的加密标准。它曾经成为世界上最广泛使用的密码算法。DES 算法加密时把明文以 64bit 为单位分成块,采用美国国家平安局精心设计的 8 个 S2 盒(S:Substitution)和 P2置换(P:Permutation),经过 16 轮迭代,最终产生 64 比特密文,每 轮迭代使用的 48 比特子
10、密钥由原始的 56 比特产生。DES 的加密与解密的密钥和流程完全一样,区别仅仅是加密与解密使用的子密钥序列的施加顺序正好相反。DES 算法在历史上曾发挥重要作用,但也存在以下问题:(1)DES 密钥空间的规模 256 对实际平安而言太小。(2)DES 的密钥存在弱密钥、半弱密钥和互补密钥。(3)DES 里的所有计算,除去 S 盒,全是线性的。S 盒的设计对密码算法的平安性至关重要。然而,美国国家平安局并没有公布 S 盒的设计原则,因此,有人疑心 S 盒里隐藏了陷门(trapdoors),如果是这样,美国国家平安局就能轻易地解密消息。由于DES的密钥空间小,针对DES算法进展穷举攻击就可以取得
11、成功。在 1998 年 7 月,电子前沿基金会(EFF)使用一台 25 万美元的电脑在 56 小时破译了 DES密钥。1999 年 1 月 RSA 数据平安会议期间,EFF 通过遍布全世界的 10 万台计算机的协同工作,用 22 小时 15 分钟就宣告破解了一个 DES 的密钥。此外,关于 DES 的攻击还有差分密码分析方法和线性密码分析方法。为了增强 DES 算法的平安性,密码设-计者又提出了基于 DES 的 Triple2DES、独立子密钥方法、推广的 GDES 算法等。这些改变有些作用不大,有些还削弱了 DES的平安性。总之,DES 需要新的有效的加密标准来代替 AES NIST 于 1
12、997 年 1 月开场了遴选 DES 替代者高级加密标准(AES)的工作。其目的是为了确定一个非的、全球免费使用的分组密码算法,用于保护下一世纪政府的敏感信息,并希望成为秘密和公开部门的数据加密标准。AES 确实立过程简介如下:(1)1997年9月12日,NIST在联邦登记处公布了征集 AES候选算法的通告。并对候选者提出以下根本要求:(a)比Triple2DES快,且至少和Triple2DES一样平安;(b)应当具有 128 比特分组长度和 128/192/256 比特密钥长度;(c)具有较大的灵活性。(2)1998 年 8 月 20 日,NIST 召开了第一次候选大会并公布了 12 个国家
13、的 15 个候选算法。(3)1999 年 3 月 22 日,NIST 召开了第二次 AES 候选会议,从中选出 5 个候选算法:MARS(IBM)、RC6(MIT)、Serpent(英、以、美)、Twofish(美)和 Rijndael(比利时)。(4)2000 年 10 月2日,NIST宣布比利时的密码学家JoandaemenVincentRijmen 设计的Rijndael 算法最终获-胜。Rijndael 之所为能中选 AES,主要是因为:(1)运算速度快。在无论有无反应模式的计算环境下的软硬件中,Rijndael都表现出非常好的性能。(2)对存的需求非常低,使它很适合用于受限制的环境。
14、(3)算法可靠。使用非线性构造的 S2 盒,表现出有足够的平安余地。(4)Rijndael算 法 的 设 计 谋 略 是 宽 轨 迹 策 略(WideTrailStrategy),这种策略能有效抵抗差分分析和线性分析攻击。(5)Rijndael是一个分组迭代密码,被设计成128/192/256比特三种密钥长度,可用于加密长度为 128/192/256 比特的分组,相应的轮数为 10/12/14,分组长度和密钥长度设计灵活。(6)密钥安装的时间很好,也具有很高的灵活性。(7)操作简单,并可抵御时间和能量攻击,此外,它还有许多未被特别强调的防御性能。由上可见,Rijndael 会聚了平安性能、效率
15、、可实现性和灵活性等优点,Rijndael 的中选是众望所归。密码学开展预测 随着破译方法、硬件技术的开展,导致 AES、ECC 出现。技术和方法总是不停向前推进,因此,密码算法、应用及标准化工作也应不断地开展。下面从密码算法本身、基于密码算法的应用技术和密码算法的标准化工作三个方面进展分析和预测。(1)密码算法本身-量子密码、神经网络密码、混沌密码、基因密码等新型密码的研究和应用,说明了密码学具有强劲的生命力和广阔的应用前景。(2)应用角度 密码学不仅仅是编码与破译的学问,而且包括平安管理、平安协议设计、秘密共享、散列函数等容。到目前为止,密码学中出现了大量的新技术和新概念,例如门限密码技术、零知识证明技术、盲签名、比特承诺、数字化现金等,所有这些均是基于密码算法的应用。(3)标准化工作目前,美国已确定了 21 世纪高级加密算法AES,以代替过时的 DES。欧盟各国投资 33 亿欧元,方案在 3 年时间建立自己的分组密码、序列密码、公钥密码等算法标准。我国也应高度重视密码算法的标准化问题,增大密码研究经费投入的力度,以利于加快密码关键技术及其产品的研究与开发,为赢得高技术条件下的竞争提供信息平安保障。参考资料:RSA 应用现状及其在文件加密中的应用司红伟汤彬 基于 RSA 的数字签名的设计与实现 密码算法的现状和开展研究 局部资料来自知乎