好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php 用户验证 base64验证方法 - php函数

php 用户验证 base64验证方法

function  dsetcookie( $var ,  $value ,  $life  = 0,  $prefix  = 1) {    global   $cookiedomain ,  $cookiepath ,  $addtime ,  $_server ;   setcookie( $var ,  $value , $life  ?  $addtime  +  $life  : 0,  $cookiepath , $cookiedomain ,  $_server [ 'server_port' ] == 443 ? 1 : 0);  }    function  authcode( $string ,  $operation  =  'decode' ,  $key  =  '' ,  $expiry  = 0) {       global   $webaddr ;       $auth_key =md5( $webaddr );    $ckey_length  = 4;    $key  = md5( $key  ?  $key  :  $auth_key );    $keya  = md5( substr ( $key , 0, 16));    $keyb  = md5( substr ( $key , 16, 16));    $keyc  =  $ckey_length  ? ( $operation  ==  'decode'  ?  substr ( $string , 0,  $ckey_length ):  substr (md5(microtime()), - $ckey_length )) :  '' ;    $cryptkey  =  $keya .md5( $keya . $keyc );    $key_length  =  strlen ( $cryptkey );    $string  =  $operation  ==  'decode'  ?  base64_decode ( substr ( $string ,  $ckey_length )) : sprintf( '%010d' ,  $expiry  ?  $expiry  + time() : 0). substr (md5( $string . $keyb ), 0, 16). $string ;    $string_length  =  strlen ( $string );    $result  =  '' ;    $box  = range(0, 255);    $rndkey  =  array ();    for ( $i  = 0;  $i  <= 255;  $i ++) {     $rndkey [ $i ] = ord( $cryptkey [ $i  %  $key_length ]);   }    for ( $j  =  $i  = 0;  $i  < 256;  $i ++) {     $j  = ( $j  +  $box [ $i ] +  $rndkey [ $i ]) % 256;     $tmp  =  $box [ $i ];     $box [ $i ] =  $box [ $j ];     $box [ $j ] =  $tmp ;   }    for ( $a  =  $j  =  $i  = 0;  $i  <  $string_length ;  $i ++) {     $a  = ( $a  + 1) % 256;     $j  = ( $j  +  $box [ $a ]) % 256;     $tmp  =  $box [ $a ];     $box [ $a ] =  $box [ $j ];     $box [ $j ] =  $tmp ;     $result  .=  chr (ord( $string [ $i ]) ^ ( $box [( $box [ $a ] +  $box [ $j ]) % 256]));   }    if ( $operation  ==  'decode' ) {     if (( substr ( $result , 0, 10) == 0 ||  substr ( $result , 0, 10) - time() > 0) &&  substr ( $result , 10, 16) ==  substr (md5( substr ( $result , 26). $keyb ), 0, 16)) { //开源代码phpfensi.com       return   substr ( $result , 26);    }  else  {      return   '' ;    }   }  else  {     return   $keyc . str_replace ( '=' ,  '' ,  base64_encode ( $result ));   }  } 

查看更多关于php 用户验证 base64验证方法 - php函数的详细内容...

  阅读:42次