java中的小类型!
来源:互联网 发布:星际争霸数据库 编辑:程序博客网 时间:2024/06/15 05:13
话不多说,先放上代码,一共有两个文件:AES.php(aes算法类文件)和aesDemo.php(应用实例文件),这里只贴出aesDemo.php,其他的看附件吧!
aesDemo.php:
例子,
代码如下
require_once('./AES.php');
//$aes = new AES();
$aes = new AES(true);// 把加密后的字符串按十六进制进行存储
//$aes = new AES(true,true);// 带有调试信息且加密字符串按十六进制存储
$key = "this is a 32 byte key";// 密钥
$keys = $aes->makeKey($key);
$encode = "123456";// 被加密的字符串
$ct = $aes->encryptString($encode, $keys);
echo "encode = ".$ct."
";
$cpt = $aes->decryptString($ct, $keys);
echo "decode = ".$cpt;
?>
例子、AES加密类
代码如下
//php aes加密类
class AESMcrypt {
public $iv = null;
public $key = null;
public $bit = 128;
private $cipher;
public function __construct($bit, $key, $iv, $mode) {
if(empty($bit) || empty($key) || empty($iv) || empty($mode))
return NULL;
$this->bit = $bit;
$this->key = $key;
$this->iv = $iv;
$this->mode = $mode;
switch($this->bit) {
case 192:$this->cipher = MCRYPT_RIJNDAEL_192; break;
case 256:$this->cipher = MCRYPT_RIJNDAEL_256; break;
default: $this->cipher = MCRYPT_RIJNDAEL_128;
} // www.111cn.net
switch($this->mode) {
case 'ecb':$this->mode = MCRYPT_MODE_ECB; break;
case 'cfb':$this->mode = MCRYPT_MODE_CFB; break;
case 'ofb':$this->mode = MCRYPT_MODE_OFB; break;
case 'nofb':$this->mode = MCRYPT_MODE_NOFB; break;
default: $this->mode = MCRYPT_MODE_CBC;
}
}
public function encrypt($data) {
$data = base64_encode(mcrypt_encrypt( $this->cipher, $this->key, $data, $this->mode, $this->iv));
return $data;
}
public function decrypt($data) {
$data = mcrypt_decrypt( $this->cipher, $this->key, base64_decode($data), $this->mode, $this->iv);
$data = rtrim(rtrim($data), "..");
return $data;
}
}
//使用方法
$aes = new AESMcrypt($bit = 128, $key = 'abcdef1234567890', $iv = '0987654321fedcba', $mode = 'cbc');
$c = $aes->encrypt('haowei.me');
var_dump($aes->decrypt($c));
- java中的小类型!
- 关于Java Primitive类型与内置Wrapper类型使用过程中的一点小总结
- java 小类型向大类型转化
- java 小类型向大类型转化
- java小类型向大类型转化
- java大类型转化为小类型
- Java小类型向大类型转换
- java小知识-byte类型
- java类型 转换小技巧
- java中的类型转换
- java中的类型转换
- Java中的存储空间类型
- java中的类型转换
- Java中的枚举类型
- Java中的类型转换
- Java中的枚举类型
- JAVA中的异常类型
- java中的类型转换
- leetcode ZigZag Conversion
- startup oracle out or memory
- Sql Server中的表访问方式Table Scan, Index Scan, Index Seek
- 单文档下List控件的添加及随窗口大小变化而变化的实现
- Android ListView控件的使用
- java中的小类型!
- JDK 5.0 注解
- RedHat5.8 create a database instance
- 002_015 Python 用类对象适配真实文件对象
- HCPC2014校赛训练赛 4 B.Sequential Game (3.16)
- java中的加密!
- LeetCode Two Sum
- C#-数据类型
- java中的使用类!