解決php的sha1和java的sha1(DigestUtils.sha1Hex)產生的字符串不相等的問題

  最近對接某個第三方服務,其中對接某些api須要用到他們的簽名回調,根據他們傳來的get參數和apiSecret進行拼接並使用sha1加密,而後返回弄成jsonp的格式返回,出於菜鳥的本能,首先是下載了他們的demo進行查看,發現只有java的版本,使用了DigestUtils.sha1Hex函數對字符串進行了sha1加密。php

String signToken = String.valueOf(DigestUtils.sha1Hex(message + apiSecret));

  而後我也如法炮製,使用了php的sha1進行加密,發現輸出字符串和java上面的函數輸出不一樣,天然也不能經過他的sign驗證,這時候百度了國內不少資料都查不出解決方案,最後在stackoverflow找到了答案,如此使用就能夠解決了:java

$sign = sha1($str, false);

  但願對有須要對接api的朋友有幫助。json

相關文章
相關標籤/搜索