在Silverlight中不能使用SHA-512?

时间:2011-02-23 23:27:53

标签: c# silverlight hash

pdf:通过URL进行的Web客户端集成说:

从密码短语中确定SHA-512哈希值(结果512位)。这可以使用SHA512Managed类在.NET中实现 问题是我的项目在SilverLight中,而SHA512Managed不适用于Silverlight,也不是SilverLight目前可用的另一种实现。

所以基本上我在SHA512步骤被阻止了:

var passphrase = "mypassphrase";

byte[] byteValue = (new SHA512Managed()).ComputeHash(System.Text.Encoding.UTF8.GetBytes(passphrase));
byte[] key = new byte[32];
byte[] iv = new byte[16];
Array.Copy(byteValue, key, 32);
Array.Copy(byteValue, 32, iv, 0, 16);

// Declare the stream used to encrypt to an in memory
// array of bytes.
MemoryStream msEncrypt = null;

// Create a RijndaelManaged object
// with the specified key and IV.
aesAlg = new AesManaged();
aesAlg.Key = key;
aesAlg.IV = iv;

如果有其他方法对网址进行编码,请告诉我吗?

1 个答案:

答案 0 :(得分:1)

Mono有一个你可以使用的实现,前提是你对操作系统许可证感到满意。

https://github.com/mono/mono/blob/master/mcs/class/corlib/System.Security.Cryptography/SHA512Managed.cs