0

IKVM を使用して Java の SHA1 暗号化を利用する C# のコードがあります。

    public static string ComputeHash(params byte[][] bytes)
    {
        if (bytes == null) throw new ArgumentNullException("bytes");
        MessageDigest digest = MessageDigest.getInstance("SHA-1");
        foreach (var item in bytes)
        {
            if (item == null)
                if (bytes == null) throw new ArgumentNullException("bytes", "Inner array is null");
            digest.update(item);
        }
        string s = (new java.math.BigInteger(digest.digest())).toString(16);
        return s;
    }

これに IKVM を使用する以外の方法はありますか?

4

1 に答える 1

0

質問を正しく理解できれば、System.Security.Cryptography でSha1CryptoServiceProviderクラスを使用できます。

そのページのコード例は次のとおりです。

byte[] data = new byte[DATA_SIZE];

byte[] result; 

SHA1 sha = new SHA1CryptoServiceProvider(); 
    // This is one implementation of the abstract class SHA1.

result = sha.ComputeHash(data);

この例をギザギザの配列を使用する例に変更するのはそれほど難しいとは思いません。

于 2012-07-28T12:02:23.103 に答える