最新新闻:

美国国家标准与技术研究院加解密的分组加密标准亟待

时间:2022-05-01 10:00:39来源:网络整理

什么是AES?

AES是美国国家标准与技术研究院(NIST)于2001年发布的Advanced Encryption Standard(高级加密标准)的缩写,旨在取代DES(Data Encryption Standard,高级加密标准)成为新一代的块加密标准,现已广泛应用于各个领域。

随着密码破解技术的发展和计算机操作水平的提高,采用56位密钥的DES算法已经不能满足当今数据加密安全的要求,需要提出更安全的加密标准。最终,NIST 选择了分组长度为 128 位的 Rijndael 算法作为 AES 算法。AES 和 DES 都是对称块加密算法,都使用相同的密钥来加密和解密数据。与 DES 算法的密钥长度为 56 位相比,AES 的密钥长度可以是 128 位、192 位和 256 位。根据加解密密钥的长度,AES算法可分为AES-128、AES192和AES-256三种。

图1.AES加解密算法结构[2]

什么是蛮力攻击?

蛮力攻击也称为穷举攻击,即​​穷举依次枚举每一个可能的密钥进行解密操作,直到找到正确的密钥。成功破解密码算法平均需要遍历一半的密钥空间。下表给出了基于不同长度密钥的 AES 和 DES 算法的平均暴力攻击时间 [2]。随着密钥长度的增加,密钥空间中的密钥数量也相应增加,DES和AES抵抗暴力攻击的能力也随之增加。

表1. 穷举密钥搜索所需的平均时间[2] 随着计算机计算能力的提高,56 位密钥DES 在暴力攻击下的安全性变得非常脆弱。为保证数据安全保密,可采用新一代AES算法,并大幅增加密钥数量,抵御暴力破解。然而,新的算法设计也意味着以前的 DES 算法的软件开发和硬件设施不再适用。为了保护现有的软硬件投资,也可以使用多个密钥对数据进行多次加密(例如使用三个Key三重DES),变相增加密钥长度,从而保证隐私数据的安全。

破解AES算法需要多长时间?

以 AES-128 算法为例,平均取 2^127 ≈ 1.7*10^38 个 128 位的随机数作为密钥,进行加解密操作找到正确的密钥。

俗话说“天下武功,唯快不可破”;相反,世界的密码,快要被破解。问题是,这会发生多快?我们知道,比特币网络利用全球庞大的硬件资源来实现极高的计算效率。哈希运算(SHA-256)可以高达2.5644*10^19次。虽然AES和SHA-256算法不一样,计算量也不同,我们可以使用这些数据来估计世界各地的人们破解 AES 算法所需的时间。

假设AES运算效率为2.564410^19≈2^64.4753次/秒,2^127次AES运算所需时间为:

2^127 / 2^64.4753 ≈ 2^62.5247 秒≈ 6.6345 10^18 秒≈ 1.8429 10^15 小时≈ 7.6789 10^13 天 ≈ 2.104 * 10^11 年 ≈ 210,400,000,000 年

210,400,000,000 年有多长?通俗地说,是2104亿年。但是2104亿年是什么概念呢?从宇宙大爆炸的那一刻起,宇宙中的老人现在已经138亿岁了。但是,与2104亿年相比,他现在只能算是一个学龄前儿童。2104/138 ≈ 15.2464(次)

太阳还有大约 50 亿年的寿命aes算法原理,而宇宙也不是不朽的。想看到AES破解成功的那一天吗?想一口气度过他的 15 个宇宙时代吗?想要比太阳活得更久,比宇宙活得更久吗?无论你在佛教中如何保持健康,或者你如何将枸杞泡在保温杯中,即使你再从天上借五百五百年,结果也只能是AES从一开始就破解到放弃。

破解AES算法需要多少钱?

继续以比特币网络为例,据统计,每秒1G哈希运算的功耗约为0.237J,破解AES平均需要2^127次AES运算,总共耗电量约为:

(2^127 / 10^9) (0.237 10^-3) / 3600 ≈ 1.1201 * 10^22 kWh

中国一般工商业用电的电价约为0.77元/kWh,AES暴力破解的电费约为:

0.77 1.1201 10^22 ≈ 8.625 10^21 元 = 8.625 10^130 亿 ≈ 1.368 * 10^130 亿美元

2017年我国GDP为827122亿元,全球GDP不足100万亿美元,远低于破解AES的电费。

8.625 10^13 / 827122 ≈ 1.043 10^8 年

1.368 10^13 / 1000000 = 1.368 10^7 年

一个大国可以动用全国的财力,为破解AES节省1亿多年的电费;全世界汇聚全世界的资金,为破解AES的电债而辛勤耕耘数千万年。以上只是用电成本,不包括硬件设施、人力物力、资源成本、环境因素等,如果综合考虑,用电成本更是遥不可及。

大多数安全攻击和代码破译都是因为“盈利”。什么样的秘密值得花这么多钱去窥探?如果这么费时费力,还不如直接绑架密码管理员;如果这么麻烦又贵,还是买密码管理员比较好。

量子计算机,AES算法的终结?

量子计算机的出现引发了对现代算法密码学的许多质疑和担忧。流行的密码算法不再安全吗?诚然,学术界已经严格论证了量子计算机的计算优势,例如大因式分解问题和离散对数问题。与电子计算机相比,量子计算机确实可以带来指数级的速度提升。RSA算法和椭圆曲线算法可以在短时间内破解。

然而,量子计算机并没有对所有计算问题都具有如此令人印象深刻的加速。对于对称加密系统中的AES-128算法,假设电子计算机需要2^128个时间单位来破解,而量子计算机只需要2^64个时间单位来破解。以此类推,量子计算机暴力破解AES-256算法的难度与电子计算机暴力破解AES-128算法的难度是一样的。虽然 AES-128 算法的安全性对于量子计算机来说很难保证,但是这个问题可以通过简单地增加密钥长度来解决,例如使用 AES-256 算法,在前面的电子计算机穷举攻击中已经讨论过在 AES-128 算法上是无能为力的,出于同样的原因,

墙有耳朵 - 侧通道攻击

以正面交锋的方式破解AES算法是不可能的,所以你不妨试试其他的并行方法。

侧信道攻击(SCA),又称侧信道攻击、侧信道攻击、侧信道攻击,是指通过窃取电子设备实现加解密算法时泄露的旁路信息来攻击密码系统的方法,如如通过分析密码系统的计算时间、功耗、电磁辐射、声音状况等,“听解”破解密码的钥匙。与传统的通过数学手段进行密码分析不同的是,SCA并不直接攻击密码算法本身,已经证明运行安全aes算法原理,而是采用“曲线救国”的方式攻击密码算法的实现技术,并且破解密码系统的效果更有效。显著地。例如,如果我们想知道一个人是否在家里洗衣服或看电视,我们不需要撬门锁进入房子就知道了。我们可以通过观察室外水表和电表直接推断。SCA 正是这样一个旁路门。锁的窥探方法。

侧信道攻击是目前对AES密码系统唯一成功的攻击,但实际上这种攻击不仅对AES有效,许多其他密码系统也存在侧信道攻击的安全隐患。AES算法本身就足够安全了,可惜在算法的实现中被植入了。“我不怕神一样的对手,只怕猪一样的队友。” 大概就是这样。

侧信道攻击可行的主要原因是电子密码设备泄露的时间、功率、电磁辐射等旁路信息与设备计算的数据有关。在硬件电路层面,这种相关性可以通过功率平衡等技术减弱;在软件算法实现层面,可以通过“掩蔽”或“隐藏”等方法通过牺牲一定的计算效率来混淆攻击者的视听效果。确保密码算法的安全性。

总结

在规范 AES 密码系统实现的情况下,对于当前电子计算机和量子计算机的计算能力,除非在数学上有重大突破,否则 AES 密码算法仍然是牢不可破的。一旦上述被提前破解,就不用担心,会有新的密码系统来抢接力棒,继续捍卫数据的隐私和安全。

参考

[1] 标准,NIST-FIPS。“宣布高级加密标准 (AES)。” 联邦信息处理标准出版物 197 (2001): 1-51.

[2] 斯托林斯,威廉。密码学与网络安全:原理与实践。印度培生教育,2003.

[3] 高级加密标准,维基百科

[4] 比特币能源消耗,Digiconomist

[5] 陈莉莉等人。关于后量子密码学的报告。美国商务部,国家标准与技术研究院,2016.

[6] 侧信道攻击,维基百科

声明:文章仅代表原作者观点,不代表本站立场;如有侵权、违规,可直接反馈本站,我们将会作修改或删除处理。

图文推荐

热点排行

精彩文章

热门推荐