我已经编写了一个 DES 实现作为练习,现在想知道今天是否以及在哪里使用(三重)DES。
我读过有关使用它的银行卡的信息,但找不到任何可靠的来源。
Triple-DES 至今仍在使用,但被广泛认为是一种遗留加密算法。DES 本质上是不安全的,而 Triple-DES 具有更好的安全特性,但仍被认为存在问题。
NIST 是标准化加密算法的政府组织。最新的对称密钥加密算法 NIST 标准是高级加密标准 AES。事实上,NIST 的 AES 有许多很好的提名,包括后来成为 AES 的 Rijndael 算法,以及 Bruce Schneier 的 Blowfish、Twofish 算法和 Serpent 算法。
编辑:@David Koontz 回复了这篇文章,我有机会回顾过去的 5 年。我将在下面保留我的帖子,但对于现在阅读本文的任何人,如果有机会,请避免使用 3DES,如果没有,请让专家查看您的特定系统。不能保证一个通用的答案将适用于您的情况,尤其是在计算机安全方面。
是的。
3DES 被破坏了,但是当密码学家说“破坏”时,这意味着非常具体的事情:攻击者可以在比暴力破解更好的时间内破解密钥。3DES 的密钥长度为 168 位,通过一些中间相遇攻击的技巧将其缩减为 112 位。而且,引用维基百科的话,“NIST 指定它只有 80 位的安全性。”
它被严重破坏了,但即便如此,80 位仍然是一个非常大的数字。例如,3DES 非常适合击败资源少于 NSA 的人,如果运气好的话,它可能会持续 10 或 15 年。对于许多不使用它来保护昂贵物品的人来说,更换 3DES 的动机还不够高。
为了回答您关于在何处使用 3DES 的问题,我想补充一点,Microsoft OneNote、Microsoft Outlook 2007 和 Microsoft System Center Configuration Manager 2012 使用三重 DES 密码保护用户内容和系统数据。
也可以看看:
你对银行业的看法是对的。但一切都发生在硬件层面。一种流行的技术是HSM。
我敢打赌,一些银行卡实际上使用三重DES。经营一家企业(在现实世界中)与人们仅仅通过研究问题所想的不同,这一点非常值得注意。只是感兴趣还是手头有实际的挑战?(无论是学习任务还是其他)
3DES 有一个问题已经在两个 CVE 问题中描述,称为 SWEET32 问题。它的基础密码深度是 64 位(虽然在三个回合中使用),所以它也属于一个原本较弱的密码家族,从今天 2017 年的安全角度来看,它更容易被破解,应该不再使用.