所以這裏是一個已經存在java的MD5哈希,PHP函數來檢查
StringBuffer sbTemp = new StringBuffer();
byte[] btTypeInPasswd = this.md.digest(this.password.getBytes());
for (int i = 0; i < btTypeInPasswd.length; i++)
sbTemp = sbTemp.append(btTypeInPasswd[i]);
this.password = sbTemp.toString();
this.password然後將包含一個字符串像如下如果密碼是測試一個java功能:-8774-113-27- 52-79-101-9028768115-45-111-23-121-10447-69-45
我需要的是一個PHP函數來產生相同的結果,可以這樣做嗎?
I can not編輯java .class文件,因爲這是現有應用程序的一部分,我希望通過訪問它的現有數據庫來一起工作。
這就是我試過的。
$bytes = md5("test", true);
$bArray = array();
for ($x = 0; $x < strlen($bytes); $x++)
$bArray[$x] = ord(substr($bytes, $x, 1));
print "<pre>" . implode('-', $numbers) . "</pre>";
然而,使用相同的密碼「測試」它產生:9-143-107-205-70-33-211-115-202-222-78-131-38-39-180-246不根本就像-8774-113-27-52-79-101-9028768115-45-111-23-121-10447-69-45
謝謝。
哇靠,我犯了一個錯誤通過不發佈我已經嘗試過的東西,我只是假設每個人都會認爲我已經嘗試了像ord這樣明顯的東西,打包/解包等等......我的壞處。 – Joe 2012-01-10 17:08:39