位置: 编程技术 - 正文

PHP中的多种加密技术及代码示例解析(php常用加密技术)

编辑:rootadmin

推荐整理分享PHP中的多种加密技术及代码示例解析(php常用加密技术),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php加密方法,php中的多种加密方法,php常用加密方式,php加密zend,php中的多种加密方法,php常用加密技术,php中的多种加密方式,php中的多种加密工具,内容如对您有帮助,希望把文章链接给更多的朋友!

对称加密(也叫私钥加密)指加密和解密使用相同密钥的加密算法。有时又叫传统密码算法,就是加密密钥能够从解密密钥中推算出来,同时解密密钥也可以 从加密密钥中推算出来。而在大多数的对称算法中,加密密钥和解密密钥是相同的,所以也称这种加密算法为秘密密钥算法或单密钥算法。

信息加密技术的分类

单项散列加密技术(不可逆的加密)

属于摘要算法,不是一种加密算法,作用是把任意长的输入字符串变化成固定长的输出串的一种函数

MD5

string md5 ( string $str [, bool $raw_output = false ] ); //MD5加密,输入任意长度字符串返回一个唯一的位字符

md5()为单向加密,没有逆向解密算法,但是还是可以对一些常见的字符串通过收集,枚举,碰撞等方法破解;所以为了让其破解起来更麻烦一些,所以我们一般加一点盐值(salt)并双重MD5;

md5(md5($password).'sdva');

sdva就是盐值,该盐值应该是随机的,比如md5常用在密码加密上,所以在注册的时候我会随机生成这个字符串,然后通过上面的方法来双重加密一下;

Crypt

很少看到有人用这个函数,如果要用的话有可能是用在对称或非对称的算法里面,了解一下既可;

string crypt ( string $str [, string $salt ] ) //第一个为需要加密的字符串,第二个为盐值(就是加密干扰值,如果没有提供,则默认由PHP自动生成);返回散列后的字符串或一个少于 字符的字符串,后者为了区别盐值

非对称加密

非对称加密算法需要两个密钥来进行加密和解密,这两个秘钥是公开密钥(public key,简称公钥)和私有密钥(private key,简称私钥);

PHP中的多种加密技术及代码示例解析(php常用加密技术)

如图所示,甲乙之间使用非对称加密的方式完成了重要信息的安全传输。

乙方生成一对密钥(公钥和私钥)并将公钥向其它方公开。 得到该公钥的甲方使用该密钥对机密信息进行加密后再发送给乙方。 乙方再用自己保存的另一把专用密钥(私钥)对加密后的信息进行解密。乙方只能用其专用密钥(私钥)解密由对应的公钥加密后的信息。

在传输过程中,即使攻击者截获了传输的密文,并得到了乙的公钥,也无法破解密文,因为只有乙的私钥才能解密密文

同样,如果乙要回复加密信息给甲,那么需要甲先公布甲的公钥给乙用于加密,甲自己保存甲的私钥用于解密。

在非对称加密中使用的主要算法有:RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)等。 其中我们最见的算法是RSA算法

以下是从网上摘抄的一段PHP通过openssl实现非对称加密的算法

对称加密算法

对称加密(也叫私钥加密)指加密和解密使用相同密钥的加密算法。有时又叫传统密码算法,就是加密密钥能够从解密密钥中推算出来,同时解密密钥也可以 从加密密钥中推算出来。而在大多数的对称算法中,加密密钥和解密密钥是相同的,所以也称这种加密算法为秘密密钥算法或单密钥算法。它要求发送方和接收方在 安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都可以对他们发送或接收的消息解密,所以密钥的保密性对通信性至关重 要。

对称加密的常用算法有: DES算法,3DES算法,TDEA算法,Blowfish算法,RC5算法,IDEA算法。

在PHP中也有封装好的对称加密函数

通过Urlencode函数解决链接中带有&字符引起的问题:

严格的来说..这两个函数其实不算是加密,更像是一种格式的序列化

以下是我们PHP程序中常用到的对称加密算法

discuz经典算法

加解密函数encrypt()

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP Header用于页面跳转时的几个注意事项 前言本文介绍的是在PHP中用header("location:test.php")进行跳转要注意以下几点,有助于解决一些新手经常遇到的问题一、location和:号间不能有空格,否则会出

PHP抓取远程图片(含不带后缀的)教程详解 一、创建项目作为演示,我们在www根目录创建项目grabimg,创建一个类GrabImage.php和一个index.php。二、编写类代码我们定义一个和文件名相同的类:GrabImage

PHP 常用时间函数资料整理 php常用的时间函数测试环境:php5.3.unix时间戳(从Unix纪元(January::GMT)到给定时间的秒数。)。以下简称时间戳。返回某一时间的时间戳。time();

标签: php常用加密技术

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

上一篇:php rmdir使用递归函数删除非空目录实例详解(php递归函数桃子一天吃一半)

下一篇:PHP Header用于页面跳转时的几个注意事项(php页面跳转可以用header)

  • 增值税发票如何抵扣税款
  • 坏账准备要写到明细账里面吗
  • 土地 税
  • 中国税务精神是谁提出的
  • 医疗服务有增值业务吗
  • 企业购买理财都需先交税再提现吗
  • 住宿税率是多少 5%
  • 金蝶软件预收账款明细
  • 定期定额自行申报表填表说明
  • 销售商品货款未收
  • 通用定额发票属于哪一类
  • 公司授权给公司有风险吗?
  • 预付房租摊销账务处理
  • 自产的产品无偿赠送职工
  • 实收资本印花税税率多少
  • 无形资产土地需要折旧吗
  • 年底计提费用和实际费用
  • 一般纳税人外经证预缴怎样缴费
  • 关于建筑工程发包与承包下列说法正确的是
  • 土地增值税计算表
  • 转账户有误退回会计处理
  • 制造费用年末需要结转吗
  • 认证过的发票
  • 留抵的进项税可以退吗
  • 用苹果macbook pro怎样
  • mac怎么连接校园网网线
  • 当月的费用次月入账可以么
  • Omniserv.exe - Omniserv是什么进程 有什么用
  • windows10更新会丢失数据吗
  • win10移动热点开关自动弹回
  • PHP:curl_multi_init()的用法_cURL函数
  • 总公司拨给分公司的钱怎么平账
  • php零基础教程
  • three.js入门指南
  • 企业出售房产土地增值税怎么计算
  • 原材料按实际成本核算需设置的科目包括
  • php随机抽取
  • 存货捐赠视同销售要不要确认收入?
  • 反斜杠python
  • 涌泉的准确位置图 图解
  • vue怎么用bootstrap
  • content security policy blob
  • 卷积拆分
  • 建筑公司预收账款财税怎么处理
  • 印花税的花贴在哪里
  • 开了张增值税发票能退吗
  • 结转成本计入
  • 教育类财务工作内容
  • 企业工会经费计提比例
  • sqlserver监视器
  • 公司缴纳残保金查询怎么查
  • 购买原材料没有发票能入库吗
  • 委外加工物资管理制度
  • 小规模企业房产税税率是多少
  • 装订凭证如何穿线
  • 在建工程什么时候用
  • 劳务外包账务
  • 外汇申报材料
  • 长期股权投资的成本法和权益法区别
  • 期初数据根据总账还是明细账
  • SQL Server 2008 到底需要使用哪些端口?
  • sqlserver 创建索引与使用
  • SQL Server"错误 21002: [SQL-DMO]用户 * 已经存在问题解决
  • mysql连接查询和子查询效率
  • 如何进行节约
  • 红帽子一个月能挣多少钱
  • window10电池
  • win7系统打开浏览器后突然卡住了
  • windows10自带磁盘修复工具
  • centos6基础命令
  • kochsysteme
  • WIN7快捷键冲突怎么解决
  • ubuntu重新安装网卡驱动
  • vue中使用ajax
  • PHP+jquery+ajax实现分页
  • Node.js中的construct
  • JavaScript浏览器扩展
  • android错误报告
  • 广东发票开票软件
  • 累计计税金额是怎么得出
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设