<?php /**
* xxtea 加密實現類
*/class xxtea
$s = array ();
for ($i = 0; $i < $len;程式設計客棧 $i++)
$s[$i] = pack("v", $v[$i]);
return $w ? substr(implode('', $s), 0, $n) : implode('', $s);
} private function str2long($s, $w)
private function int32($n)
public function encrypt($str, $key)
$y = $v[0];
$mx = $this->int32((($z >> 5 & 0x07ffffff) ^ $y << 2) + (($y >> 3 & 0x1fffffff) ^ $z << 4)) ^ $this->int32(($sum ^ $y) + ($k[$p & 3 ^ $e] ^ $z));
$z = $v[$n] = $this->int32($v[程式設計客棧$n] + $mx);
}return $this->long2str($v, false);
} public function decrypt($str, $key)
$z = $v[$n];
$mx = $this->int32((($z >> 5 & 0x07ffffff) ^ $y << 2) + (($y >> 3 & 0x1fffffff) ^ $z << 4)) ^ $this->int32(($sum ^ $y) + ($k[$p & 3 ^ $e] ^ $z));
$y = $v[0] = $this->int32($v[0] - $mx);
$sum = $this->int32($sum - $delta);
}return $this->long2str($v, true);
}}//用法測試:
$strdemo = "www.jb51.net";
$key = "123456";
$pwd = new xxtea();
$pwdrel = $pwd->encrypt($strdemo, $key);
echo $pwdrel;
echo "
";echo $pwd->decrypt($pwdrel, $key);
?>
執行結果:
{���h(�s��7*�u7u
www.jb51.net
ps:關於加密解密感興趣的朋友還可以參考本站**工具:
**rsa加密/解密工具:
文字**加密解密工具(包含aes、des、rc4等):
**雜湊/雜湊演算法加密工具:
**md5/hash/sha-1/sha-2/sha-256/sha-512/sha-3/ripemd-160加密工具:
**sha1/sha224/sha256/sha384/sha512加密工具:
PHP加密解密
加密 function string2secret str 解密 function secret2string sec echo secret2string string2secret 11111111111111111 顯示結果是11111111111111111 echo string2secr...
PHP 加密 解密
由於出於安全考慮,引數傳遞的時候需要進行加密和解密,乙個比較簡單的方法是直接使用php中的函式mcrypt encrypt mcrypt decrypt,乙個加密,乙個解密,但是問題又出現了,這個加密過程中會產生一些使url混亂的符號,於是在加密後對加密字元再進行一次處理,然後多了一一次解析 key...
php加密解密
php可逆加解密 1 位運算 知識點 a b and 按位與 將把 a 和 b 中都為 1 的位設為 1。a b or 按位或 將把 a 和 b 中任何乙個為 1 的位設為 1。a b xor 按位異或 將把 a 和 b 中乙個為 1 另乙個為 0 的位設為 1。a not 按位取反 將 a 中為 ...