我在C#中有以下代码

PasswordDeriveBytes DerivedPassword = new PasswordDeriveBytes(Password, SaltValueBytes,
                                              HashAlgorithm, PasswordIterations);
byte[] KeyBytes = DerivedPassword.GetBytes(32);

.Net的PasswordDeriveBytes使用 PBKDF1 。我正在使用“SHA1”哈希算法生成32字节密钥。

请告诉我如何用crypto ++实现。在使用PBKDF2的crypto ++中,它生成20个字节的密钥。如何制作C#生成的32字节密钥。

最佳答案

您不能,因为PasswordDerivedBytes不是标准的PBKDF1,而crypto ++实现是。请改用PBKDF2实现(.NET中的Rfc2898DeriveBytes)。

关于c++ - 加密++中的PBKDF,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9242912/

10-13 09:47