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文件代码内容如下:

  1. public function indexAction() {
  2.  
  3. $text = 'now you are on my way';
  4. $hashObj = $this->instance('Encrypt');
  5. $string = $hashObj->config('xor', true)->encode($text);
  6.  
  7. echo $string;
  8. }

例二、解密

  1. public function indexAction() {
  2.  
  3. $string = '上面例一中获取的加密字符串';
  4.  
  5. $hashObj = $this->instance('Encrypt');
  6. $text = $hashObj->config('xor', true)->decode($string);
  7.  
  8. echo $text;
  9. }

例三、获取随机码

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

原文: http://www.doitphp.com/index/documentation/?articleid=58