0
A
回答
1
的粗略近似:
假设〜94个显示的ASCII字符,这将是94^17个潜在的密码17。接下来的问题是如何将字符串转换为128位密钥?
如果一个很好的派生方法,如PBKDF2具有足够的迭代计数,要求〜100ms只需乘以94^16 * 100ms并转换为年:10^24年。现在除以比加密器和机器数量更快的解密器。说快1,000倍,1,000,000机器,我们只有10^15或1,000,000,000,000,000年。
假设没有密钥导出功能和相同的快速解密设备,并且加密设备上25M/s的解密时间仍然需要约40,000,000年。
注意:即使使用128位AES密钥,暴力攻击在一生中(甚至地球)也不会成功。
查看:lesser known details about the NSA's capabilities by poncho。
相关问题
- 1. AES -256解密
- 2. JAVA AES 256解密
- 3. PHP-AES-256-ECB解密乱码
- 4. AES 256解密错误
- 5. AES-256-CBC坏解密
- 6. RNCryptor IOS + Javascript加密/解密AES 256
- 7. 加密和解密使用PyCrypto AES 256
- 8. AES 256位加密
- 9. 如何使用AES加密来自Entry的密码256
- 10. AES 128位和AES 256位加密解密
- 11. 解密使用AES 256使用Java
- 12. jaaslounge spnego/kerberos票证解密aes-256
- 13. Java 256中的AES 256加密支持
- 14. 从大密钥文件为AES-256创建强密钥
- 15. javax.crypto.BadPaddingException AES 256 CBC加密
- 16. AES 256加密文件C#
- 17. iOS CoreData和AES 256加密
- 18. 加密与AES-256 Java
- 19. AES 256加密实现android
- 20. C#PHP AES 256 CBC加密
- 21. AES-256加密,PHP到MySQL
- 22. 如何解码AES-256/CBC/ZeroBytePadding加密对象
- 23. 解密类型和破解(AES 128?)
- 24. Bouncycastle AES 256多线程解密速度降低,因为JIT
- 25. AES Base64 256位密钥加密和解密目标C
- 26. 使用Java加密/解密AES 256密钥
- 27. AES-256-CBC这个Mcrypt - 加密JS加密和解密PHP
- 28. AWS使用什么密码/密钥进行AES-256加密?
- 29. 错过某些字符时AES 256解密在objc
- 30. 以sencha touch加密AES 256加密
多久的东西需要取决于你怎么做。你怎么试图“破解”这个密码? – David
加密密码口令校验器使用时(认证)是不安全的。即使仅使用哈希函数保存密码验证程序也是不够的,只是添加盐对提高安全性没有多大作用。相反,用随机盐迭代HMAC约100ms持续时间,然后用散列表保存盐。更好的是使用诸如'PBKDF2','Rfc2898DeriveBytes','password_hash','Bcrypt','passlib.hash'或类似函数的函数。关键是要让攻击者花费大量时间通过暴力破解密码。 – zaph
我投票作为题外话,因为这是属于security.stackexchange.com关闭这个问题 –