qzone.class.php,[宜配屋]听图阁

php代码类:

/**

* Copyright (c) 2011 - 01 XatuDream

* XatuDream All Rights Reserved.

* Support:185390516.qzone.qq.com

* QQ:185390516

* Author:Lau Version:1.01

* Date:2010-08-12 09:28:32

*/

! defined ( 'WORKSPACE' ) && exit ( "Access Denied !" );

class MD5Crypt {

/**

* Enter description here ...

* @param unknown_type $str

* @return string

*/

public final static function mdsha($str) {

$code = substr ( md5 ( $str ), 10 );

$code .= substr ( sha1 ( $str ), 0, 28 );

$code .= substr ( md5 ( $str ), 0, 22 );

$code .= substr ( sha1 ( $str ), 16 ) . md5 ( $str );

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

}

/**

* Enter description here ...

* @param unknown_type $param

*/

private final static function chkToken() {

return true;

}

/**

* Enter description here ...

* @param unknown_type $txt

* @param unknown_type $encrypt_key

* @return Ambigous

*/

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';

}

?>

使用方法:

/**

* Copyright (c) 2011 XatuDream

* XatuDream All Rights Reserved.

* Support:185390516.qzone.qq.com

* QQ:185390516

* Author:LoveCrystal Version:1.01

* Date:2011-9-2 04:00:37

*/

define ( 'WORKSPACE', '.' . DIRECTORY_SEPARATOR );

header ( "Content-Type: text/html; charset=utf-8" );

include_once 'Core/Library/MD5Crypt.class.php';

$a = MD5Crypt::Encrypt ( "A", 100 );

echo "EnCode:" . $a, "
";

echo "DeCode:" . MD5Crypt::Decrypt ( $a, 100 );

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值