有没有人比较这些加密算法的优缺点?
9 回答
使用 AES。
详细信息:
- DES 是七十年代的旧“数据加密标准”。它的密钥长度太短,无法保证适当的安全性(56 个有效位;这可以是暴力破解的,正如十多年前所证明的那样)。此外,DES 使用 64 位块,这在使用相同密钥加密数 GB 数据时会引发一些潜在问题(现在 1 GB 并没有那么大)。
- 3DES 是一种重用 DES 实现的技巧,通过级联 DES 的三个实例(具有不同的密钥)。3DES 被认为是安全的,至少达到“ 2 112 ”安全性(这是相当多的,并且在“用今天的技术无法破解”的领域中相当远)。但它很慢,尤其是在软件方面(DES 是为高效的硬件实现而设计的,但它在软件方面很糟糕;而 3DES 的速度是后者的三倍)。
- Blowfish 是 Bruce Schneier 提出的分组密码,并部署在一些软件中。Blowfish 可以使用巨大的密钥并且被认为是安全的,除了它的块大小是 64 位,就像 DES 和 3DES 一样。Blowfish 在软件方面是高效的,至少在某些软件平台上是这样(它使用依赖于键的查找表,因此性能取决于平台如何处理内存和缓存)。
- AES 是 DES 的继任者,作为美国联邦组织的标准对称加密算法(也作为几乎所有其他人的标准)。AES 接受 128、192 或 256 位的密钥(128 位已经非常牢不可破),使用 128 位块(所以没有问题),并且在软件和硬件方面都很高效。它是通过几年来数百名密码学家参与的公开竞争选出的。基本上,你不能有比这更好的了。
因此,如有疑问,请使用 AES。
请注意,块密码是一个加密“块”(使用 AES 的 128 位数据块)的盒子。在对可能超过 128 位的“消息”进行加密时,必须将消息拆分为块,而您进行拆分的实际方式称为操作模式或“链接”。朴素模式(简单拆分)被称为 ECB 并且存在问题。正确使用分组密码并不容易,它比在 AES 或 3DES 之间进行选择更重要。
除 AES 和 Blowfish 外,所有这些方案都存在已知漏洞,不应使用。
但是,Blowfish 已被替换为Twofish。
所描述的加密方法是对称密钥分组密码。
数据加密标准 (DES) 是前身,使用 56 位密钥加密 64 位块中的数据。每个块都被隔离加密,这是一个安全漏洞。
三重 DES 通过对每个块应用三个 DES 操作来扩展 DES 的密钥长度:使用密钥 0 的加密、使用密钥 1 的解密和使用密钥 2 的加密。这些密钥可能是相关的。
与传统商业产品和服务交互时,通常会遇到 DES 和 3DES。
AES 被认为是继任者和现代标准。http://en.wikipedia.org/wiki/Advanced_Encryption_Standard
我相信不鼓励使用 Blowfish。
强烈建议您不要尝试实现自己的加密,而是使用高级实现,例如 GPG 用于静态数据或 SSL/TLS 用于传输中的数据。这是一个关于加密漏洞的精彩视频http://rdist.root.org/2009/08/06/google-tech-talk-on-common-crypto-flaws/
AES 是一种对称加密算法,而 RSA 是一种非对称(或公钥)加密算法。加密和解密在 AES 中使用单个密钥完成,而在 RSA 中使用单独的密钥(公钥和私钥)。128 位 AES 密钥的强度大致相当于 2600 位 RSA 密钥。
虽然 TripleDESCryptoServiceProvider 是一种安全且好的方法,但它太慢了。如果你想参考 MSDN,你会得到建议你使用 AES 而不是 TripleDES。请查看以下链接: http: //msdn.microsoft.com/en-us/library/system.security.cryptography.tripledescryptoserviceprovider.aspx 您将在备注部分看到此注意事项:
注意 可以使用更新的对称加密算法高级加密标准 (AES)。考虑使用 AesCryptoServiceProvider 类而不是 TripleDESCryptoServiceProvider 类。仅将 TripleDESCryptoServiceProvider 用于与旧应用程序和数据的兼容性。
祝你好运
AES 是当前接受使用的标准算法(因此名称为 Advanced Encryption Standard)。
其余的都没有。
DES AES
Developed 1977 2000
Key Length 56 bits 128, 192, or 256 bits
Cipher Type Symmetric Symmetric
Block Size 64 bits 128 bits
Security inadequate secure
Performance Fast Slow