【问题标题】:Different md5 hash for same string in SwiftSwift中相同字符串的不同md5哈希
【发布时间】:2015-12-12 15:54:50
【问题描述】:

我目前正在开发基于网站特定 API 的 swift 应用程序。我使用 md5 函数来创建有效的 url 并访问一些 JSON 数据,我可以使用 SwiftJSON 在我的应用程序中引入这些数据。

我在第 6 个 url 上工作得很好,但后来我的 url 校验和出现错误。我检查了一下,发现我在 swift 中的 md5 函数得到了错误的哈希

在我的快速程序中,字符串“answerfr1%3D%3DQf7AjOptTN6k2OyoTa7QjOptDM6k2OzoTa7cjOptjM6k2O1oTa7EjOptDMxoTa7AjOptnO2oTY”的哈希值 给我这个“09938c1325c87ef89251f668a8cf5d42” 但这不正确,因为我的链接无效

但是通过http://www.md5.cz/自己做 我有这个结果“9d78b73d28f590beb8ef25b5e4b99a1d”,我的链接工作得很好。

我不知道为什么我的 md5 函数对 6 第一个哈希没有问题,但给我一个错误的 7 哈希。

我意识到 www.md5.fr 给了我同样的错误代码。为什么相同的字符串有不同的 md5 哈希?

我在 swift 中的 md5 函数: How to convert string to MD5 hash using ios swift

希望你们在这里理解我的问题! 对不起我的英语不好

【问题讨论】:

  • 您在 swift 程序中得到的东西可能是 NSData(我不太确定),尝试将其转换为字符串并再次打印。让 convertString = NSString(data: yourData, encoding: NSUTF8StringEncoding)
  • 您必须将百分比转义“%3D%3D”解码为“==”。

标签: ios swift md5


【解决方案1】:

感谢 Martin R,您解决了我的问题 “%3D”等于“=” 所以 "%3D%3D" 等于 "=="

【讨论】:

    猜你喜欢
    • 2021-05-09
    • 2021-09-21
    • 2018-03-23
    • 1970-01-01
    • 2015-02-25
    • 1970-01-01
    • 2011-05-17
    • 1970-01-01
    相关资源
    最近更新 更多