位置: 编程技术 - 正文

PHP:mcrypt_encrypt()的用法_Mcrypt函数

编辑:rootadmin
mcrypt_encrypt

推荐整理分享PHP:mcrypt_encrypt()的用法_Mcrypt函数,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

(PHP 4 >= 4.0.2, PHP 5)

mcrypt_encrypt — 使用给定参数加密明文

说明 string mcrypt_encrypt ( string $cipher , string $key , string $data , string $mode [, string $iv ] )

加密数据并返回密文。

参数

cipher

MCRYPT_ciphername 常量中的一个,或者是字符串值的算法名称。

key

加密密钥。 如果其长度小于所需的长度,将在其后使用 &#;&#; 补齐。 建议不要使用 ASCII 字符作为密钥。

建议使用 mhash 函数 从一个字符串中创建密钥。

data PHP:mcrypt_encrypt()的用法_Mcrypt函数

使用给定的 cipher 和 mode 加密的数据。 如果数据长度不是 n*分组大小,则在其后使用 &#;&#; 补齐。

返回的密文长度可能比 data 更大。

mode

MCRYPT_MODE_modename 常量中的一个,或以下字符串中的一个:"ecb","cbc","cfb","ofb","nofb" 和 "stream"。

iv

在 CBC, CFB, OFB 模式中用于初始化过程,在 STREAM 模式中用于某些算法。如果未提供 IV 并且在某算法中需要,本函数发出一条警告并使用一个全部字节设为 "" 的 IV。

返回值

以字符串方式返回密文。

范例

Example #1 mcrypt_encrypt() 例程

<?php#---加密---#密钥应该是随机的二进制数据,#开始使用scrypt,bcrypt或PBKDF2将一个字符串转换成一个密钥#密钥是进制字符串格式$key=pack('H*',"bcbb7ea0cd8bcefbcabefdebae5e1de2ffb2aa3");#显示AES-,,对应的密钥长度:#,,字节。$key_size=strlen($key);echo"Keysize:".$key_size."n";$plaintext="ThisstringwasAES-/CBC/ZeroBytePaddingencrypted.";#为CBC模式创建随机的初始向量$iv_size=mcrypt_get_iv_size(MCRYPT_RIJNDAEL_,MCRYPT_MODE_CBC);$iv=mcrypt_create_iv($iv_size,MCRYPT_RAND);#创建和AES兼容的密文(Rijndael分组大小=)#仅适用于编码后的输入不是以h结尾的#(因为默认是使用0来补齐数据)$ciphertext=mcrypt_encrypt(MCRYPT_RIJNDAEL_,$key,$plaintext,MCRYPT_MODE_CBC,$iv);#将初始向量附加在密文之后,以供解密时使用$ciphertext=$iv.$ciphertext;#对密文进行base编码$ciphertext_base=base_encode($ciphertext);echo$ciphertext_base."n";#===警告===#密文并未进行完整性和可信度保护,#所以可能遭受PaddingOracle攻击。#---解密---$ciphertext_dec=base_decode($ciphertext_base);#初始向量大小,可以通过mcrypt_get_iv_size()来获得$iv_dec=substr($ciphertext_dec,0,$iv_size);#获取除初始向量外的密文$ciphertext_dec=substr($ciphertext_dec,$iv_size);#可能需要从明文末尾移除0$plaintext_dec=mcrypt_decrypt(MCRYPT_RIJNDAEL_,$key,$ciphertext_dec,MCRYPT_MODE_CBC,$iv_dec);echo$plaintext_dec."n";?>

以上例程会输出:

更高级的 API, 参见 mcrypt_module_open()。

PHP:mcrypt_enc_self_test()的用法_Mcrypt函数 mcrypt_enc_self_test(PHP4=4.0.2,PHP5)mcrypt_enc_self_test在打开的模块上进行自检说明intmcrypt_enc_self_test(resource$td)在td指定的算法上进行自检操作。参数td加密描述符

PHP:mcrypt_enc_is_block_algorithm()的用法_Mcrypt函数 mcrypt_enc_is_block_algorithm(PHP4=4.0.2,PHP5)mcrypt_enc_is_block_algorithm检测打开模式的算法是否为分组算法说明boolmcrypt_enc_is_block_algorithm(resource$td)打开模式的算法是

PHP:mcrypt_enc_is_block_mode()的用法_Mcrypt函数 mcrypt_enc_is_block_mode(PHP4=4.0.2,PHP5)mcrypt_enc_is_block_mode检测打开的模式是否以分组方式输出说明boolmcrypt_enc_is_block_mode(resource$td)打开的模式是否以分组方式输

标签: PHP:mcrypt_encrypt()的用法_Mcrypt函数

本文链接地址:https://www.jiuchutong.com/biancheng/287417.html 转载请保留说明!

上一篇:PHP:mcrypt_generic_end()的用法_Mcrypt函数

下一篇:Thinkphp实现自动验证和自动完成(thinkphp5.1教程)

  • 交所得税用计提吗
  • 接受捐赠的增值税处理
  • 税务局核定税种是什么意思
  • 超市的库存商品分类混乱怎么看出来的
  • 资质费用是什么意思
  • 收入比开票多如何处理好
  • 更换税控盘后原发票如何导入旧盘开票税局
  • 计算企业所得税可以扣除的项目有
  • 小微企业增值税优惠政策最新2023
  • 劳务派遣增值税怎么算
  • 进项税额计入其他应付款是什么意思
  • 技术转让成本包括什么
  • 预算报表分析报告
  • 营改增后电力行业非正常损失怎么做会计处理?
  • 接受股权转让要交什么税
  • 筹建期间的费用可以扣除吗
  • 储备基金是用来干嘛的
  • 发行债券支付的费用要减吗
  • 个人独资所得税税率表最新
  • 装卸费可以抵扣销项税额吗
  • 对方转出没收到怎么办
  • 研发费用费用化金额和资本化金额有什么区别
  • 小型微利企业年度汇算清缴报哪些报表
  • 消耗性生物资产是指什么
  • 销售固定资产的收入计入什么科目
  • 专项应付款会计科目代码
  • 政府补助不征税条件
  • 没有进项发票的货物能算成本吗
  • 代理进口货物账务怎么处理
  • amr文件下载
  • 设计版权费用
  • 本地连接受限制无法连接
  • 苹果充电宝怎么验真假
  • 消防器材怎么做?
  • PHP:oci_field_size()的用法_Oracle函数
  • php socket select
  • 出售固定资产减免的税款账务处理
  • 赊销分期付款
  • 长期借款和短期借款的区别是什么
  • vue split函数
  • 命名空间 php
  • 大小周是否违反劳动法
  • 资产减值损失属于营业外支出吗
  • phpcms怎么样
  • 织梦技巧
  • 对公账户是怎样的
  • 社保下个月扣款
  • 预提成本和冲回成本金额不一致情况说明
  • 损益类科目没有结平是什么意思
  • 老板借给公司钱需要交税吗
  • 支付货款订金入什么科目
  • 税控系统维护费可以全额抵扣吗
  • 跨年度费用如何计算
  • 失控发票已补税及滞纳金后还有事吗
  • 发票抬头是个人税号怎么填
  • 老项目简易征收税率
  • 职工福利费的核算内容
  • 将sql语句的执行状态传递给主语言的是
  • 无比强大的思维
  • win7 光盘
  • windows8出现蓝屏
  • regsync.exe - regsync是什么进程 有什么用
  • win8.1 微软拼音设置
  • win8隐藏的文件夹怎么找出来
  • win8.1如何更新到win10
  • windows10 rs4
  • linux文件目录管理命令
  • nodejs readdir
  • shell字符串截取加替换
  • 解析函数
  • 批处理改ipv4地址
  • shell脚本中调用外部c程序
  • 安卓压缩图片
  • android webapi调用
  • python极简讲义pdf
  • unity游戏加密
  • django批量上传图片
  • listview添加按钮
  • 新时代新思想基层医疗宣讲
  • 增值税发票冲红是什么意思
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设