PHP加密演算法

2021-08-03 05:08:59 字數 2782 閱讀 8740

<?php

/**

* $string 明文或密文

* $operation 加密encode或解密decode

* $key 金鑰

* $expiry 金鑰有效期

*/function

authcode

( $string , $operation = 'decode' , $key = '' , $expiry = 0 )

// 用固定的演算法,打亂密匙簿,增加隨機性,好像很複雜,實際上並不會增加密文的強度

for( $j = $i = 0 ; $i < 256 ; $i ++)

// 核心加解密部分

for( $a = $j = $i = 0 ; $i < $string_length ; $i ++)

if( $operation == 'decode' ) else

} else

} $a = "www.test.com" ;

$b = authcode ( $a , "encode" , "abc123" );

echo $b . "

" ;

echo authcode ( $b , "decode" , "abc123" );

<?php

/**

* 簡單對稱加密演算法之加密

* @param string $string 需要加密的字串

* @param string $skey 加密eky

* @author anyon zou @qq.com>

* @date 2013-08-13 19:30

* @update 2014-10-10 10:10

* @return string

*/function

encode

( $string = '' , $skey = 'cxphp' )

/**

* 簡單對稱加密演算法之解密

* @param string $string 需要解密的字串

* @param string $skey 解密key

* @author anyon zou @qq.com>

* @date 2013-08-13 19:30

* @update 2014-10-10 10:10

* @return string

*/function

decode

( $string = '' , $skey = 'cxphp' )

echo

'' ;

$str = '56,15123365247,54,四大古典風格' ;

echo

"string : " . $str . "

" ;

echo

"encode : " . ( $enstring = encode ( $str )) . '

' ;

echo

"decode : " . decode ( $enstring );

<?php

class

deselse

} //加密

function

encrypt

( $str )

//解密

function

decrypt

( $str )

function

hex2bin

( $hexdata )

return $bindata ;

} function

pkcs5pad

( $text , $blocksize )

function

pkcs5unpad

( $text )

); if ( $pad > strlen ( $text ))

return

false ;

if ( strspn ( $text , chr ( $pad ), strlen ( $text ) - $pad ) != $pad )

return

false ;

return substr ( $text , 0 , - 1 * $pad );

} }

$str = 'abc' ;

$key = '12345678' ; //8位內

$crypt = new des ( $key );

$mstr = $crypt -> encrypt ( $str );

$str = $crypt -> decrypt ( $mstr );

echo $str . ' <=> ' . $mstr ;

<?php

function

hexxbin

( $data , $types = false )

else

if ( strspn ( $data , '0123456789abcdefabcdef' ) != $len )

return pack ( 'h*' , $data );

}else

} echo $t = hexxbin ( 'xn中國人( addwere)zq4mzuwotcy==' , true );

echo

'' ;

echo hexxbin ( $t );

php加密演算法小結

加密演算法 header content type text html charset utf 8 password hugehugehuge pwd hugehuge md5加密,單向加密演算法,兩個引數,1必寫,要加密的字串,2第二個引數是bool值,為真,md5 報文摘要將以16位元組長度的原...

對稱加密演算法 DES加密演算法

一 對稱加密演算法 對稱加密也稱為常規加密 私鑰或單鑰加密。乙個對稱加密由5部分組成 明文 plaintext 這是原始資訊或資料,作為演算法的輸入。加密演算法 encryption algorithm 加密演算法對明文進行各種替換和轉換。金鑰 secret key 金鑰也是演算法的輸入。演算法進行...

php加密演算法之實現可逆加密演算法和解密分享

加密演算法如下 複製 如下 function encrypt data,key ordpuvh nbs程式設計客棧p char key x for i 0 i len i ord char 256 return base64 encode str 解密演算法如下 複製 如下 function dec...