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);