位置: 编程技术 - 正文
推荐整理分享PHP:mcrypt_module_open()的用法_Mcrypt函数,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
(PHP 4 >= 4.0.2, PHP 5)
mcrypt_module_open — 打开算法和模式对应的模块
说明 resource mcrypt_module_open ( string $algorithm , string $algorithm_directory , string $mode , string $mode_directory )本函数打开指定算法和模式对应的模块。 算法名称可以是字符串,例如 "twofish", 也可以是 MCRYPT_ciphername 常量。 调用 mcrypt_module_close() 函数可以关闭模块。
参数algorithm
MCRYPT_ciphername 常量中的一个,或者是字符串值的算法名称。
algorithm_directoryalgorithm_directory 参数指示加密模块的位置。 如果你提供此参数,则使用你指定的值。 如果将此参数设置为空字符串(""),将使用 php.ini 中的 mcrypt.algorithms_dir 。 如果不指定此参数,则使用 libmcrypt 的编译路径 (通常是 /usr/local/lib/libmcrypt)。
modeMCRYPT_MODE_modename 常量中的一个,或以下字符串中的一个:"ecb","cbc","cfb","ofb","nofb" 和 "stream"。
mode_directoryalgorithm_directory 参数指示加密模式的位置。 如果你提供此参数,则使用你指定的值。 如果将此参数设置为空字符串(""),将使用 php.ini 中的 mcrypt.modes_dir 。 如果不指定此参数,则使用 libmcrypt 的编译路径 (通常是 /usr/local/lib/libmcrypt)。
返回值成功则返回加密描述符,如果发生错误则返回 FALSE。
范例
Example #1 mcrypt_module_open() 例程
<?php$td=mcrypt_module_open(MCRYPT_DES,'',MCRYPT_MODE_ECB,'/usr/lib/mcrypt-modes');$td=mcrypt_module_open('rijndael-','','ofb','');?>例程中的第一行从默认目录打开 DES 加密算法, 从 /usr/lib/mcrypt-modes 目录打开 ECB 模式。 第二个示例中,使用字符串形式表示算法和模式, 这种形式仅适用于 libmcrypt 2.4.x 或 2.5.x 版本。
Example #2 在加密中使用 mcrypt_module_open()
<?php/*打开加密算法和模式*/$td=mcrypt_module_open('rijndael-','','ofb','');/*创建初始向量,并且检测密钥长度。*Windows平台请使用MCRYPT_RAND。*/$iv=mcrypt_create_iv(mcrypt_enc_get_iv_size($td),MCRYPT_DEV_RANDOM);$ks=mcrypt_enc_get_key_size($td);/*创建密钥*/$key=substr(md5('verysecretkey'),0,$ks);/*初始化加密*/mcrypt_generic_init($td,$key,$iv);/*加密数据*/$encrypted=mcrypt_generic($td,'Thisisveryimportantdata');/*结束加密,执行清理工作*/mcrypt_generic_deinit($td);/*初始化解密模块*/mcrypt_generic_init($td,$key,$iv);/*解密数据*/$decrypted=mdecrypt_generic($td,$encrypted);/*结束解密,执行清理工作,并且关闭模块*/mcrypt_generic_deinit($td);mcrypt_module_close($td);/*显示文本*/echotrim($decrypted)."n";?> 参见mcrypt_module_close() - 关闭加密模块 mcrypt_generic() - 加密数据 mdecrypt_generic() - 解密数据 mcrypt_generic_init() - 初始化加密所需的缓冲区 mcrypt_generic_deinit() - 对加密模块进行清理工作
PHP:mcrypt_module_is_block_algorithm()的用法_Mcrypt函数 mcrypt_module_is_block_algorithm(PHP4=4.0.2,PHP5)mcrypt_module_is_block_algorithm检测指定算法是否为分组加密算法说明boolmcrypt_module_is_block_algorithm(string$algorithm[,string$lib_di
PHP:mcrypt_module_is_block_mode()的用法_Mcrypt函数 mcrypt_module_is_block_mode(PHP4=4.0.2,PHP5)mcrypt_module_is_block_mode检测指定模式是否以分组方式输出说明boolmcrypt_module_is_block_mode(string$mode[,string$lib_dir])如果模式是
PHP:mcrypt_module_is_block_algorithm_mode()的用法_Mcrypt函数 mcrypt_module_is_block_algorithm_mode(PHP4=4.0.2,PHP5)mcrypt_module_is_block_algorithm_mode返回指定模块是否是分组加密模式说明boolmcrypt_module_is_block_algorithm_mode(string$mode[,str
标签: PHP:mcrypt_module_open()的用法_Mcrypt函数
本文链接地址:https://www.jiuchutong.com/biancheng/287399.html 转载请保留说明!上一篇:PHP:mcrypt_module_self_test()的用法_Mcrypt函数
下一篇:PHP:mcrypt_module_is_block_algorithm()的用法_Mcrypt函数
友情链接: 武汉网站建设