轉換入參字符串waitForSignString 為二進制數組,編碼采用UTF-8(Java代碼如:waitForSignString.getByte("utf-8")),得到簽名入參的二進制格式數據(waitForSignBytes)。使用MD5,Sha1或Sha256算法對waitForSignBytes進行摘要簽名。得到簽名在結果二進制數組數據(signatureBytes)對簽名輸出的結果二進制數組(signatureBytes)進行16進制的字符串編碼,得到最后的簽名字符串(signature)算法表達式:String signature = Hex(digest (stringToSign+secretKey)) 其中digest算法可以為:MD5, Sha256Hex請問這段簽名算法用php應該怎么實現? php的md5似乎沒有辦法操作數組。。。。
1 回答

交互式愛情
TA貢獻1712條經驗 獲得超3個贊
在PHP中,字符串是兼容二進制的,并且默認就帶有編碼形式,如果你的字符串本身是UTF-8編碼的,那它就已經是UTF-8的二進制數組了。
PHP中的md5函數可以直接計算字符串(也就是二進制數組)的MD5值,并且默認輸出的就是已經轉換成16進制的結果。
所以,在Java中捺莫多操作所所要實現的……
在PHP中就是 $md5 = md5('字符串');
添加回答
舉報
0/150
提交
取消