什么是“AES算法”?

发布时间: 2018-09-11 来源:admin 浏览次数:781次

先进加密标准(AES:Advanced Encryption Standard)是美国政府的标准密码公共键密码程序(DES:Data Encryption Standard)的后续密码。由美国的标准化团体NIST(National Institute of Standards and Technology)从1997年开始公开征集并且开始进行选拔作业。由于DES已经积累了在全球受到广泛使用的业绩,因此AES选拔作业也备受注目。

  在选拔初期AES的候补共有15种方式,截止2000年3月,最终候选减少至5种方式。这5种方式包括美国IBM公司的“MARS”;美国RSASecurity的研究开发部门--美国RSA Laboratories的“RC6”;比利时的“Rijndael”;英国/以色列/挪威等公司的“Serpent”;美国的“Twofish”等。日本NTT(日本电信电话)的“E2”曾经在初选阶段被选为AES的候补,但未能入选最终候选。

  经过3年多的反复选拔,最终选定的密码算法为“Rijndael”(发音为“Rhine-doll”。提案者为比利时的JoanDaemen和VincentRijmen)。之前专家们曾预测将AES算法确定为一种还存在着一些困难。最终结果将很可能会采取多个算法方式,但结果还是确定为一种算法。

  AES标准可以使用的密钥长度可以为128位、192位和256位,对应的可用密钥个数分别是:3.4 ×1038、6.2 ×1057、1.1 ×1077,与DES相比,DES钥匙长度56位,即约有7.2 ×1016可能钥匙,故AES 128位钥匙数约为DES 56位钥匙数之3.4 ×1038 / 7.2 ×1016 = 4.7 ×1021倍。在90年代末,有名为 “DES CRACKER” 的机器,它宣称只需数小时就能找出DES所用钥匙。假设可建造一部可在一秒内测试255个钥匙,找出DES钥匙之机器,则此机器约需4.7 ×1021秒 = 4.7 ×1021 / 3.2 ×107年= 149 ×1012年,才能找出所用128位之AES钥匙。149×1012年是多久?大家可由一般相信宇宙诞生至今约小于2 ×1010年(即700亿年)来想象。

  AES 作为新的美国联邦信息处理标准 FIPS (Federal Information Processing Standard),正式成为认证(Approved)加密算法,就可被美国政府机构使用于保护具敏感性之信息。这些政府机构可使用AES或其它认证算法。民间公司或其它非美国政府机构是被邀请,不是被要求,接纳并实作AES 或其它NIST 认证之密码标准。

  更多AES标准的信息,请访问NIST官方网站http://www.nist.gov。

推荐新闻