C#密碼生成密鑰
回答
如果您在System.Security.Cryptography
名稱空間中使用加密類,請使用Rfc2898DeriveBytes
類(@CodeInChaos指出它取代PasswordDeriveBytes
)從密碼派生密鑰。
如果一個隨機密鑰是OK,則SymmetricAlgorithm
類具有GenerateKey
方法。
我喜歡'Rfc2898DeriveBytes' http://msdn.microsoft.com/en-us/library/system.security.cryptography.rfc2898derivebytes.aspx – CodesInChaos 2011-12-21 10:38:59
@CodeInChaos,什麼是TL; DR版本爲什麼你會選擇一個在另一方面? – shambulator 2011-12-21 11:14:07
'Rfc2898DeriveBytes'是PBKDF2,'PasswordDeriveBytes'是PBKDF1。我簡單地假設2比1好。 – CodesInChaos 2011-12-21 11:36:45
這取決於你處理的關鍵。
如果您自動生成密鑰,只需通過密鑰交換方法在某個通道上交換密鑰,那麼您應該使用一些強大的隨機數生成器(如RNGCryptoServiceProvider
)生成密鑰。事實上,.NET中的大多數Cipher自動生成一個隨機密鑰。
如果你想有某種用戶輸入的密碼,那麼我建議你使用Rfc2898DeriveBytes
類。還有關於Rfc2898DeriveBytes
的.NET Security blog教程。
- 1. Twofish密碼密鑰生成
- 2. 僅基於密碼生成AES密鑰
- 3. C RSA密鑰生成器
- 4. 密鑰生成
- 5. 生成密鑰
- 6. 加密密鑰生成
- 7. CryptoJS密鑰生成
- 8. RSA密鑰生成
- 9. 生成Api密鑰
- 10. RijndaelManaged密鑰生成
- 11. 從RSA編碼的AES密鑰生成AES密鑰
- 12. 從用戶密碼安全生成加密密鑰?
- 13. 如何使用用密碼加密的私鑰生成RSA密鑰對?
- 14. 密鑰組合的Ascii代碼生成
- 15. AES加密 - 密鑰生成與OpenSSL的
- 16. random.randint生成加密安全密鑰
- 17. Rails加密:danpal/attr_encryptor密鑰生成
- 18. 密鑰生成AES加密symbian
- 19. C# - 在SortedList中自動生成密鑰
- 20. 在C中生成私有RSA密鑰#
- 21. C++懶密鑰生成比較功能
- 22. NGit/Nsch生成SSH密鑰對(c#Jgit)
- 23. Objective C Secure.h RSA密鑰對生成
- 24. 從共享密鑰(ECDH-ES)生成派生密鑰 - ConcatKDF
- 25. 如何調整iOS密鑰派生迭代密鑰生成?
- 26. 高效密鑰生成類
- 27. 生成解鎖密鑰
- 28. 生成唯一密鑰
- 29. AS3 Php密鑰生成器
- 30. 生成唯一的密鑰
如此簡單,你可以問用戶通過階段 – 2011-12-21 10:01:10
? – Jonny 2011-12-21 10:02:14
我會這麼說。 – 2011-12-21 10:10:01