【问题标题】:Implementing Digest-MD5 in J2ME: How to compute the 16 octet MD5 hash of a String?在 J2ME 中实现 Digest-MD5:如何计算字符串的 16 个八位字节的 MD5 哈希?
【发布时间】:2011-09-23 08:16:04
【问题描述】:

我在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。

提前谢谢你。 :)

【问题讨论】:

  • 嗨,Kenneth,在服务器端使用摘要式身份验证,我正在尝试连接 url,但我不能,因为身份验证在那里,所以请告诉我如何在 j2me 中使用 httpconection 消化身份验证。

标签: java-me md5 digest-authentication


【解决方案1】:

this

使用 MD-5 代替 SHA 256

【讨论】:

  • 感谢您的回答! :) 但是,MessageDigest 不适用于 Java J2ME。
  • 另外,我的问题已经解决了!感谢这个博客:deusty.blogspot.com/2007/09/example-please.html
  • @Kenneth 我知道这是一个非常古老的问题,但我面临着类似的问题。我正在使用由撰写解决您问题的帖子的人制作的 XMPP 库。但是,此库不会以 XMPP 定义的方式创建响应(您的问题中发布的步骤)。我的问题是:在那个 blogspot 帖子中实现之后,你能登录到 XMPP 服务器吗?我无法用那个家伙图书馆这样做......
猜你喜欢
  • 2012-07-12
  • 2011-12-20
  • 2011-08-24
  • 2011-06-14
  • 2012-10-10
  • 2012-04-14
  • 1970-01-01
  • 2011-11-29
  • 1970-01-01
相关资源
最近更新 更多