0

C# コードがあり、それを Java で書き直そうとしています。

しかし、Java コードで期待した結果が得られません。私は何を間違っていますか?

C# コード:

string response = pwd + challenge;
System.Security.Cryptography.SHA1CryptoServiceProvider SHA1 = 
   new System.Security.Cryptography.SHA1CryptoServiceProvider(); 
SHA1.Initialize();
byte[] hash = SHA1.ComputeHash(System.Text.Encoding.Default.GetBytes(response));
System.Text.StringBuilder builder = new System.Text.StringBuilder(); 
foreach (byte b in hash)
    builder.Append(b.ToString("x2"));

Java コード:

MessageDigest messageDigest  = MessageDigest.getInstance("SHA-1");
    byte[] digest = messageDigest.digest((PASSWORD + challenge).getBytes());

    String result = new BigInteger(1, digest).toString(16);
4

0 に答える 0