1

我在 J2ME 中实现了 digest-md5。在计算客户端响应时,给出了以下步骤:

  1. 创建一个“用户名:领域:密码”形式的字符串。将此字符串称为 X。
  2. 计算 X 的 16 个八位字节的 MD5 散列。将结果称为 Y。
  3. 创建一个“Y:nonce:cnonce:authzid”形式的字符串。将此字符串称为 A1。
  4. 创建一个“AUTHENTICATE:digest-uri”形式的字符串。将此字符串称为 A2。
  5. 计算 A1 的 32 位十六进制数字 MD5 哈希。调用结果 HA1。
  6. 计算 A2 的 32 位十六进制数字 MD5 哈希。调用结果 HA2。
  7. 创建一个格式为“HA1:nonce:nc:cnonce:qop:HA2”的字符串。将此字符串称为 KD。
  8. 计算 KD 的 32 位十六进制数字 MD5 哈希。调用结果 Z。

这里有人知道如何实施第2步吗?我有一个返回 32 十六进制数字的 md5 函数,但我不知道如何计算 16 个八位字节的 md5 哈希?

我只想重申我正在使用 J2ME。在那种情况下,我不能简单地使用 MessageDigest。

先感谢您。:)

4

1 回答 1

0

看到这个

改用MD-5SHA 256

于 2011-06-28T11:57:52.993 回答