900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > php加密解密类的实现代码

php加密解密类的实现代码

时间:2024-01-29 13:05:58

相关推荐

php加密解密类的实现代码

php教程|php手册

php,加密解密,类,实现,代码,class,Crypt,本文,来源,龙哥,博客,protected,key,公钥,

php教程-php手册

class Crypt{

电子公告源码,ubuntu查看lua版本,tomcat8临时目录,爬虫get不完,php网站建设哪个好,seo表现lzw

// 本文来源:龙哥博客

zlib 源码分析,vscode如何转换成中文,ubuntu 下载博客,tomcat启动弹出,斗鱼 弹幕爬虫,php中文分词算法,seo什么时候发布最重要,wordpress 网站logolzw

protected $key = “”; //公钥

源码教程网,VsCode使用教程-简书,更改ubuntu权限,公网访问tomcat,sqlite delph,网页设计菜单栏标签栏,mysql数据库创建表,云服务器ftp地址,vb 开发打印插件,前端框架飞,斗牛爬虫,php 命令行参数,seo查询源码,springboot表格实现,html css 标签,网站后台密码忘了怎么办,网页确认框样式,html邮件模板代码,magento 后台 演示,页面放大自动排班,学校校舍管理系统,开淘宝客程序下载视频lzw

private function keyED($txt,$encrypt_key)

{

$encrypt_key = md5($encrypt_key);

$ctr=0;

$tmp = “”;

for ($i=0;$i

{

if ($ctr==strlen($encrypt_key)){

$ctr=0;

}

$tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);

$ctr++;

}

return $tmp;

}

public function encrypt($txt,$key=””)

{

if(empty($key)){

$key=$this->key;

}

srand((double)microtime()*1000000);

$encrypt_key = md5(rand(0,32000));

$ctr=0;

$tmp = “”;

for ($i=0;$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 $this->keyED($tmp,$key);

}

public function decrypt($txt,$key=””)

{

if(empty($key)){

$key=$this->key;

}

$txt = $this->keyED($txt,$key);

$tmp = “”;

for ($i=0;$i

{

$md5 = substr($txt,$i,1);

$i++;

$tmp.= (substr($txt,$i,1) ^ $md5);

}

return $tmp;

}

public function setKey($key)

{

if(empty($key)){

return null;

}

$this->key=$key;

}

public function getKey()

{

return $this->key;

}

// Downloads By

}

$string = “”;

$crypt= new Crypt();

$crypt->setKey(“”);

$enc_text = $crypt->encrypt($string,$crypt->getKey());

$dec_text = $crypt->decrypt($enc_text,$crypt->getKey());

echo “加密前 : $string

\n”;

echo “加密后 : $enc_text

\n”;

echo “解密后 : $dec_text \n”;

?>

执行结果:

加密前 :

加密后 : hSzQ’Z* kP~y(WpVs=6Q3gZbR5QkhtZ(f=Zm

解密后 :

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。