有什么方法可以对整数(或字符串)进行双向加密/解密 请注意,我不是在寻找编码
我需要这样的东西
crypting (100) --> 24694
crypting (101) --> 9564jh4 or 45216 or gvhjdfT or whatever ...
decrypting (24694) --> 100
我不需要编码,因为它是双射的
base64_encode(100) -->MTAw
base64_encode(101) -->MTAx
我希望我能在这里找到一种加密/解密纯数字的方法(计算机喜欢数字,速度更快)
最佳答案
function decrypt($string, $key) {
$result = '';
$string = base64_decode($string);
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)-ord($keychar));
$result.=$char;
}
return $result;
}
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}
关于php - 如何在 PHP 中加密/解密整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24350891/