<?php
class Crypt
{
const CRYPT_KEY = '^_KeY';
//工具包禁止实例化
private function __construct(){}
private function Crypt(){}
/**
* 加密
* @param $str
* @return string
*/
public static function encrypt($str)
{
$block = mcrypt_get_block_size(MCRYPT_DES, MCRYPT_MODE_ECB);
$pad = $block - (strlen($str) % $block);
$str .= str_repeat(chr($pad), $pad);
$encryptText = mcrypt_encrypt(MCRYPT_DES, static::CRYPT_KEY, $str, MCRYPT_MODE_ECB);
return trim(base64_encode($encryptText));
}
/**
* 解密
* @param $str
* @return string
*/
public static function decrypt($str)
{
$cryptText = base64_decode($str);
$decryptText = mcrypt_decrypt(MCRYPT_DES, static::CRYPT_KEY, $cryptText, MCRYPT_MODE_ECB);
$pad = ord($decryptText[strlen($decryptText) - 1]);
return trim(substr($decryptText, 0, strlen($decryptText) - $pad));
}
}
PHP的一个加密算法
最新推荐文章于 2024-08-20 15:38:41 发布