2017-06-08 78 views
0

我有debian Squeeze中的phpmyadmin版本4.0.10.20。它是LAMP服務器。爲什麼Phpmyadmin不理解MD5?

如果我運行SQL查詢:在phpMyAdmin

SELECT MD5('testing'); 

The result is : 
MD5('testing') 
6165326231666361353135393439653564353466623232623865643935353735 

直接Mysql的CONSOL:(在同一臺服務器上)

mysql> SELECT MD5('testing'); 
    +----------------------------------+ 
    | MD5('testing')     | 
    +----------------------------------+ 
    | ae2b1fca515949e5d54fb22b8ed95575 | 
    +----------------------------------+ 
    1 row in set (0.00 sec) 

你怎麼看呢? - >我從來沒有見過!

+1

MD5是舊的,你不應該使用這個散列函數annymore。 –

+0

'616532 ...'是'ae2..' –

回答

1

這只是它的不同表示。

A=61 
E=65 
2=32 
B=62 
... 
5=35 

61 65 32 62 31 66 63 61 35 31 35 39 34 39 65 35 64 35 34 66 62 32 32 62 38 65 64 39 35 35 37 35 
a e 2 b 1 f c a 5 1 5 9 4 9 e 5 d 5 4 f b 2 2 b 8 e d 9 5 5 7 5 
+0

的十六進制ascii代碼好的謝謝,但爲什麼phpmyadmin在Hexa中說話? – Chrystophe

+0

我不知道。很可能PHPMyAdmin的作者擔心MD5會以二進制形式輸出數據,或者過去可能會輸出數據?運行SELECT UNHEX(MD5('testing'));在PHPMyAdmin應該給你相同的結果。 https://dev.mysql.com/doc/refman/5.5/en/encryption-functions.html –

+0

我不能測試這個,因爲我的系統太新了,但我認爲取消選中「顯示二進制內容爲HEX」複選框在「選項」區域下可以得到您期望的結果。請參閱https://i.stack.imgur.com/3xqhS.png –

相關問題