PHP實現的AES加密 解密封裝類與用法示例

2022-09-28 06:06:14 字數 1585 閱讀 1937

<?php /**

* class aes

* 用於aes加解密資料

* time:2018-04-27

*/class aes

$this->key = $key;

$this->iv = $iv;

} /**

* 加密資料

* @param $data

** @return string

*/public function encrypt($data)

/*** 解密資料

* @param $data

** @return bool|string

*/public function decrypt($data)

/*** 填充資料到分組大小的整數倍

程式設計客棧 * @param null $data

** @return string

*/protected function padding($data = null)

/*** 去掉填充的資料

* @param null $data

** @return bool|string

*/protected function unpadding($data = null)

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

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

} /**

* @return mixed

*/public function getsecretkey()

/*** @param mixed $key

*/public function setsecretkey($key)

/*** @return null

*/public function getiv()

/*** @param null $iv

*/public function setiv($iv) }

//使用方法:

$keystr = 'sq8f77fwhksk';

$aes = new aes($keystr);

$str = 'www.jb51.net';

$chgstr = $aes->encrypt($str);

echo $chgstr;

echo "

";$rstr = $aes->decrypt($chgstr);

echo $rstr;

?>

執行結果:

pdyirrnaxlss2b6sgoivpdkd2m1qwhx393lh2ifggdy=

www.jb51.net

ps:關於加密解密感興趣的朋友還可以參考本站**工具:

文字**加密解密工具(包含aes、des、rc4等):

md5**加密工具:

**雜湊/雜湊演算法加密工具:

**md5/hash/sha-1/sha-2/sha-256/sha-512/sha-3/ripemd-160加密工具:

**sha1/sha224/sha256/sha384/sha512加密工具:

C 學習八之AES加密封裝

高階加密標準 英語 advanced encryption standard,縮寫 aes 在密碼學中又稱rijndael加密法,是美國聯邦 採用的一種區塊加密標準。這個標準用來替代原先的des,已經被多方分析且廣為全世界所使用。經過五年的甄選流程,高階加密標準由美國國家標準與技術研究院 nist ...

C 實現DES加密解密,AES加密解密

des演算法描述簡介 des是data encryption standard 資料加密標準 的縮寫。它是由ibm公司研製的一種加密演算法,美國國家標準局於1977年公布把它作為非機要部門使用的資料加密標準 它是乙個分組加密演算法,他以64位為分組對資料加密。同時des也是乙個對稱演算法 加密和解密...

Python 實現 AES 加密 解密

一 前言 金鑰 k 用來加密明文的密碼,在對稱加密演算法中,加密與解密的金鑰是相同的。金鑰為接收方與傳送方協商產生,但不可以直接在網路上傳輸,否則會導致金鑰洩漏,通常是通過非對稱加密演算法加密金鑰,然後再通過網路傳輸給對方,或者直接面對面商量金鑰。金鑰是絕對不可以洩漏的,否則會被攻擊者還原密文,竊取...