喜悦国际村 » 喜悦原创 » 具备防篡改功能的cookie储存函数

页: [1]
songlv2008-3-7 08:10 AM
具备防篡改功能的cookie储存函数

[php]
define("COOKIE_PRE", "CKE_");
define("COOKIE_DOMAIN", ".XX.COM");
define("COOKIE_KEY", ".1SDS2SDGDFGDFGDGa2aso9wkdfmsDFDF");

/**
* 设置具备防篡改功能的cookie储存函数
*
* @access  public
* @param   string  $name   cookie的键
* @param   string  $value  cookie的键
* @param   string  $time   失效时间
* @return  string
*/
function cookie($name,$value='',$time=900){

        global $Global;
        setcookie(COOKIE_PRE.$name,$value, time()+$time, '/', COOKIE_DOMAIN);
        $hash=md5(substr(md5($value),8,16).COOKIE_KEY);
        setcookie(COOKIE_PRE.$name.'_hash',$hash, time()+$time, '/', COOKIE_DOMAIN);

}

/**
* 获取具备防篡改功能的cookie储存函数
*
* @access  public
* @param   string  $name   cookie的键
* @return  string
*/
function getCookie($name){       
       
        global $Global;
        $pre=COOKIE_PRE;
        $key=COOKIE_KEY;
       
        $value=!empty($_COOKIE[$pre.$name])?$_COOKIE[$pre.$name]:'';       
        $hash=md5(substr(md5($value),8,16).COOKIE_KEY);
        $hash_c=!empty($_COOKIE[$pre.$name.'_hash'])?$_COOKIE[$pre.$name.'_hash']:'';
       
        return ($hash==$hash_c)?$value:'';

}



[/php]

chinahtml2008-3-7 12:58 PM
hash建立种子,用md5校验

millken2008-3-11 04:37 AM
这个跟DZ差不多,不过不能防止修改过期时间,

dreamblaze2008-3-18 08:00 AM
DZ好在可以加密解密


查看完整版本: 具备防篡改功能的cookie储存函数


Powered by Discuz! Archiver 6.1.0  © 2001-2006 Comsenz Inc.
Processed in 0.006291 second(s), 2 queries