相关疑难解决方法(0)

C#PasswordDeriveBytes混乱

我在C#中有以下代码

PasswordDeriveBytes DerivedPassword = new PasswordDeriveBytes(Password, SaltValueBytes, HashAlgorithm, PasswordIterations);
byte[] KeyBytes = DerivedPassword.GetBytes(32);
Run Code Online (Sandbox Code Playgroud)

我正在使用"SHA1"哈希算法.

根据SHA1定义,它生成160位(20字节)密钥.我的问题是GetBytes方法如何从DerivedPassword中获取32个字节,GetBytes方法后面使用了什么算法?

c# cryptography pbkdf2

7
推荐指数
2
解决办法
6494
查看次数

C#版本的OpenSSL EVP_BytesToKey方法?

我正在寻找OpenSSL EVP_BytesToKey函数的直接.NET实现.我发现的最接近的是System.Security.Cryptography.PasswordDeriveBytes类(和Rfc2898DeriveBytes),但它似乎略有不同,并且不生成与EVP_BytesToKey 相同的密钥iv.

我也发现这个实现似乎是一个好的开始,但没有考虑迭代计数.

我意识到有OpenSSL.NET,但它只是本机openssl DLL的包装,而不是"真正的".NET实现.

.net c# encryption openssl md5

4
推荐指数
1
解决办法
4098
查看次数

标签 统计

c# ×2

.net ×1

cryptography ×1

encryption ×1

md5 ×1

openssl ×1

pbkdf2 ×1