Encrypt(加密、解密)使用说明

DoitPHP扩展类Encrypt,用于处理字符串的加密与解密码,生成随机码等操作。加密,解密支持xor、mcrypt、noise三种方式

类方法使用说明

1、config($key = null, $value = null)

设置或获取配置参数($_config)信息
参数说明:
$key : 键值
$value : 参数值

2、encode($string, $key = null)

加密
参数说明:
$string : 待加密的字符串
$key : 密钥

3、decode($string, $key = null)

解密
参数说明:
$string : 待解密的字符串
$key : 附加码

4、randCode($length = 5)

生成随机码
参数说明:
$length : 随机码长度 (0~32)

使用举例

例一、加密

Controller文件代码内容如下:

public function indexAction() {
    
    $text    = 'now you are on my way';
    $hashObj = $this->instance('Encrypt');    
    $string  = $hashObj->config('xor', true)->encode($text);

    echo $string;
}

例二、解密

public function indexAction() {
    
    $string  = '上面例一中获取的加密字符串';

    $hashObj = $this->instance('Encrypt');    
    $text  = $hashObj->config('xor', true)->decode($string);

    echo $text;
}

例三、获取随机码

public function indexAction() {
    echo Encrypt::randCode(4);
}
注于本类加密方式的选择,默认设置为:xor(关闭), mcrypt(自适应,环境满足则开启,反之关闭), noise(开启)。加密方式的权重顺序依次为:xor->mcrypt->noise。当开启xor加密方式时,则使用xor加密;当xor关闭时,则采用mcrypt加密,如果此时mcrypt关闭了,程序将采用noise加密方式。