PHP如何实现加密函数并支持私人密钥
发表于:2025-02-16 作者:千家信息网编辑
千家信息网最后更新 2025年02月16日,这篇文章主要为大家展示了"PHP如何实现加密函数并支持私人密钥",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"PHP如何实现加密函数并支持私人密钥"这篇文章
千家信息网最后更新 2025年02月16日PHP如何实现加密函数并支持私人密钥
这篇文章主要为大家展示了"PHP如何实现加密函数并支持私人密钥",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"PHP如何实现加密函数并支持私人密钥"这篇文章吧。
在开发PHP系统时,会员部分往往是一个必不可少的模块,而密码的处理又是不得不面对的问题,PHP 的 Mcrypt 加密库又需要额外设置,很多人都是直接使用md5()函数加密,这个方法的确安全,但是因为md5是不可逆加密,无法还原密码,因此也有一些不便之处,本文介绍加密函数支持私钥,用起来还是不错的.
代码如下:
PHP:
- // 说明:PHP 写的加密函数,支持私人密钥
- // 整理:https://www.jb51.net
- function
keyED(
$txt
,$encrypt_key
) - {
- $encrypt_key
= md5
(
$encrypt_key
)
; - $ctr
=0
; - $tmp
= ""
; - for
(
$i
=0
;$i(
$txt
)
;$i
++) - {
- if
(
$ctr
==strlen
(
$encrypt_key
)
)
$ctr
=0
; - $tmp
.= substr
(
$txt
,$i
,1
)
^ substr
(
$encrypt_key
,$ctr
,1
)
; - $ctr
++; - }
- return
$tmp
; - }
- function
encrypt(
$txt
,$key
) - {
- srand
(
(
double)
microtime
(
)
*1000000
)
; - $encrypt_key
= md5
(
rand
(
0
,32000
)
)
; - $ctr
=0
; - $tmp
= ""
; - for
(
$i
=0
;$i(
$txt
)
;$i
++) - {
- if
(
$ctr
==strlen
(
$encrypt_key
)
)
$ctr
=0
; - $tmp
.= substr
(
$encrypt_key
,$ctr
,1
)
. (
substr
(
$txt
,$i
,1
)
^ substr
(
$encrypt_key
,$ctr
,1
)
)
; - $ctr
++; - }
- return
keyED(
$tmp
,$key
)
; - }
- function
decrypt(
$txt
,$key
) - {
- $txt
= keyED(
$txt
,$key
)
; - $tmp
= ""
; - for
(
$i
=0
;$i(
$txt
)
;$i
++) - {
- $md5
= substr
(
$txt
,$i
,1
)
; - $i
++; - $tmp
.= (
substr
(
$txt
,$i
,1
)
^ $md5
)
; - }
- return
$tmp
; - }
- $key
= "www.yitu.org"
; - $string
= "我是加密字符"
; - // encrypt $string, and store it in $enc_text
- $enc_text
= encrypt(
$string
,$key
)
; - // decrypt the encrypted text $enc_text, and store it in $dec_text
- $dec_text
= decrypt(
$enc_text
,$key
)
; - print
"加密的 text : $enc_text
"
; - print
"解密的 text : $dec_text
"
; - ?>
每一次加密后的结果是不一样的,大大加强了密码的安全性.
以上是"PHP如何实现加密函数并支持私人密钥"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
加密
函数
支持
密钥
私人
内容
密码
篇文章
安全
学习
帮助
不错
不便
代码
会员
又是
字符
安全性
必不可少
方法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
接触数据库需要了解些什么
国家网络安全中心江苏分心
数据库算百分比
怎么打开软件存在电脑的数据库
工信部 网络安全标准
大武口区智能网站服务器
默纳克服务器显示ep55
网络安全宣传之校园安全画报
如何建造服务器新手村
彩虹6 号连接不上服务器
方舟观察服务器通不通
科南 软件开发
网站数据库接口竞彩足球
国光软件开发有限责任
web前端 怎么连数据库
phpmyadmin连接数据库
怎么找软件开发的工作经验
简易数据库
开票系统显示数据库错误
嵌入式控制软件开发
测试服务器是什么东西
学生关于网络安全的法律法规
惠普服务器 安全模式
数据库系统工程师教程
azure如何关联数据库
三门峡网络安全工程师课程
天影视通 定时播放服务器
亚太网络安全性
游族网络技术人员
网络安全的业务如何推进