【问题标题】:MySQL's MD5 hash is incorrectMySQL 的 MD5 哈希值不正确
【发布时间】:2010-09-24 00:07:30
【问题描述】:

PHP 的 md5("123123") 给了我一个正确的值 4297f44b13955235245b2497399d7a93,而 mysql 的

select md5("123123");

给我'6e9abeea535938c496a261b3b39c0d79'。

为什么会这样?这与mysql服务器编码有什么关系吗?我有点失去它,非常感谢帮助!

谢谢!

【问题讨论】:

  • 当我在 MySQL 5.0.45 上运行 select md5("123123"); 时,我得到的 4297f4...7a93 与您为 PHP 列出的相同。
  • 我没有 :) 我从 MySQL 5.1.44 得到不同的值
  • 我知道你现在对宇宙感到非常不安和愤怒:)
  • 你无法想象有多少:) 多么迟钝(我)。你能在这个网站上删除你的问题吗?

标签: php mysql md5


【解决方案1】:

6e9abeea535938c496a261b3b39c0d79md5("132123") 的值,所以我认为你有类型错误。

【讨论】:

  • +1 你应该获得奖牌。除非你刚刚使用了 md5crack.com/crackmd5.php ,否则就不那么令人印象深刻了......
  • 我得到04c63186ff836a823b1f7fa0f98f266a 作为“123123”的md5(引号作为字符串的一部分)。我怎样才能重现你得到的东西?
  • echo -n '"123123"' | md5sumecho md5('"123123"'); (php) 和 select md5('"123123"'); (mysql) 都给了我 04c63186ff836a823b1f7fa0f98f266a 的值 ...
【解决方案2】:

我从 mysql 和 php 得到相同的值。可能与多字节字符有关?


mysql> select md5("123123");
+----------------------------------+
| md5("123123")                    |
+----------------------------------+
| 4297f44b13955235245b2497399d7a93 |
+----------------------------------+
1 row in set (0.00 sec)
  • mysql Ver 14.14 Distrib 5.1.41,适用于使用 readline 6.1 的 debian-linux-gnu (i486)

php > echo md5("123123");
4297f44b13955235245b2497399d7a93
  • 带有 Suhosin-Patch (cli) 的 PHP 5.3.2-1ubuntu4.5(构建时间:2010 年 9 月 17 日 13:41:55)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-17
    • 2013-08-09
    • 2012-08-17
    • 1970-01-01
    相关资源
    最近更新 更多