php 中英文加密,php支持中英文的加密解密类代码_PHP教程

这段代码包含两个静态函数,用于加密和解密字符串。它们使用MD5和异或操作进行加解密,并在过程中混合了随机数。加密过程首先生成一个随机的加密密钥,然后与输入文本逐位异或,最后将结果进行base64编码和MD5处理。解密过程则通过解码和异或操作还原原始文本。
摘要由CSDN通过智能技术生成

*/

private final static function keyED($txt, $encrypt_key) {

$encrypt_key = md5 ( $encrypt_key );

$ctr = 0;

$tmp = "";

for($i = 0; $i < strlen ( $txt ); $i ++) {

if ($ctr == strlen ( $encrypt_key ))

$ctr = 0;

$tmp .= substr ( $txt, $i, 1 ) ^ substr ( $encrypt_key, $ctr, 1 );

$ctr ++;

}

return $tmp;

}

/**

* Enter description here ...

* @param unknown_type $txt

* @param unknown_type $key

* @return string

*/

public final static function Encrypt($txt, $key) {

srand ( ( double ) microtime () * 1000000 );

$encrypt_key = md5 ( rand ( 0, 32000 ) );

$ctr = 0;

$tmp = "";

for($i = 0; $i < strlen ( $txt ); $i ++) {

if ($ctr == strlen ( $encrypt_key ))

$ctr = 0;

$tmp .= substr ( $encrypt_key, $ctr, 1 ) . (substr ( $txt, $i, 1 ) ^ substr ( $encrypt_key, $ctr, 1 ));

$ctr ++;

}

$_code = md5 ( $encrypt_key ) . base64_encode ( self::keyED ( $tmp, $key ) ) . md5 ( $encrypt_key . $key );

return self::chkToken () ? $_code : null;

}

/**

* Enter description here ...

* @param unknown_type $txt

* @param unknown_type $key

* @return Ambigous */

public final static function Decrypt($txt, $key) {

$txt = self::keyED ( base64_decode ( substr ( $txt, 32, - 32 ) ), $key );

$tmp = "";

for($i = 0; $i < strlen ( $txt ); $i ++) {

$md5 = substr ( $txt, $i, 1 );

$i ++;

$tmp .= (substr ( $txt, $i, 1 ) ^ $md5);

}

return self::chkToken () ? $tmp : null;

}

/**

* Enter description here ...

* @var unknown_type

*/

private static $_key = 'lau';

}

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值