位置: 编程技术 - 正文
推荐整理分享PHP:mdecrypt_generic()的用法_Mcrypt函数,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
(PHP 4 >= 4.0.2, PHP 5)
mdecrypt_generic — 解密数据
说明 string mdecrypt_generic ( resource $td , string $data )解密数据。 请注意,由于存在数据补齐的情况, 返回字符串的长度可能和明文的长度不相等。
参数td
由 mcrypt_module_open() 函数创建的加密描述符。
data密文。
范例
Example #1 mdecrypt_generic() 例程
<?php/*数据*/$key='thisisaverylongkey,eventoolongforthecipher';$plain_text='veryimportantdata';/*打开加密模块,并且创建初始向量*/$td=mcrypt_module_open('des','','ecb','');$key=substr($key,0,mcrypt_enc_get_key_size($td));$iv_size=mcrypt_enc_get_iv_size($td);$iv=mcrypt_create_iv($iv_size,MCRYPT_RAND);/*初始化加密句柄*/if(mcrypt_generic_init($td,$key,$iv)!=-1){/*加密数据*/$c_t=mcrypt_generic($td,$plain_text);mcrypt_generic_deinit($td);/*为解密重新初始化缓冲区*/mcrypt_generic_init($td,$key,$iv);$p_t=mdecrypt_generic($td,$c_t);/*执行清理工作*/mcrypt_generic_deinit($td);mcrypt_module_close($td);}if(strncmp($p_t,$plain_text,strlen($plain_text))==0){echo"okn";}else{echo"errorn";}?>上例中演示了如何检测 解密后的数据是否和原始明文长度一致。 需要着重提醒的是,在对数据进行机密之前, 必须使用 mcrypt_generic_init() 函数来重新初始化缓冲区。
调用本函数之前, 必须使用密钥和初始向量来调用 mcrypt_generic_init() 函数 对解密句柄进行初始化。 加解密工作完成之后,需要调用 mcrypt_generic_deinit() 来释放加解密缓冲区。 例程请参见 mcrypt_module_open()。
参见mcrypt_generic() - 加密数据 mcrypt_generic_init() - 初始化加密所需的缓冲区 mcrypt_generic_deinit() - 对加密模块进行清理工作
PHP:unixtojd()的用法_日历函数 unixtojd(PHP4,PHP5)unixtojd转变Unix时间戳为JulianDay计数说明intunixtojd([int$timestamp=time()])根据指定的Unix时间戳timestamp,返回Julian天数。如果没有指定时间戳则返
PHP:JulianToJD()的用法_日历函数 JulianToJD(PHP4,PHP5)JulianToJD转变一个Julian历法的日期为JulianDay计数说明intjuliantojd(int$month,int$day,int$year)Julian历法的合理年份为B.C.到A.D.尽管这个函数也
PHP:JewishToJD()的用法_日历函数 JewishToJD(PHP4,PHP5)JewishToJD转变一个Jewish历法的日期为一个JulianDay计数说明intjewishtojd(int$month,int$day,int$year)尽管这个函数可以处理1(B.C.)以前的年份,
标签: PHP:mdecrypt_generic()的用法_Mcrypt函数
本文链接地址:https://www.jiuchutong.com/biancheng/287378.html 转载请保留说明!友情链接: 武汉网站建设