我們在QQ網上找到的一個hash加密算法是js版本的,下面我們根據js版的hash加密算法改成php版的加密算法,希望方法對各位有幫。
由於最近QQ垃圾信息群發嚴重,官方選擇將WebQQ部分功能實現細節方面做了點手腳。其中獲取好友的POST值多了一個hash參數。
這個hash是在js裡加密完成的。
以下是js源碼
代碼如下 復制代碼<script type="text/javascript">
function getHash(b, i) {
for (var a = i + "password error",
s = "",
j = [];;) if (s.length <= a.length) {
if (s += b, s.length == a.length) break
} else {
s = s.slice(0, a.length);
break
}
for (var d = 0; d < s.length; d++) j[d] = s.charCodeAt(d) ^ a.charCodeAt(d);
a = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F"];
s = "";
for (d = 0; d < j.length; d++) s += a[j[d] >> 4 & 15],
s += a[j[d] & 15];
return s;
}
</script>
轉成PHP版本處理,源碼如下
代碼如下 復制代碼 <?php$ord;
}
/* End of file commons.php */