php 易安卓 加密,php可逆带密码的文本加密算法 可配合易语言或其他语言使用

php可逆加密代码:

参数一:要加密的文本

参数二:密码function jiami($data, $key){

$key    =    md5($key);

$x        =    0;

$len    =    strlen($data);

$l        =    strlen($key);

for ($i = 0; $i 

if ($x == $l) {

$x = 0;

}

$char .= $key{$x};

$x++;

}

for ($i = 0; $i 

$str.=ord($data{$i})-ord($char{$i}).',';/*用于分割密文的分割符,必须与解密里的一致*/

}

return $str;

}

php解密算法function jiemi($data, $key){

$data=substr($data,0,strlen($data)-strlen(','));/*用于分割密文的分割符,必须与加密里的一致*/

$array=explode(",",$data);

$md5=md5($key);

while (strlen($md5)

$md5=$md5.md5($key);

}

$str="";

$md5=substr($md5,0,count($array));

for ($i=0; $i

$code=(int)$array[$i] + (int)ord($md5{$i});

$str.=chr($code);

}

return $str;

}

易语言加密算法(与上方php加密结果一样): 可以互相通用.版本 2

.支持库 commobj

.支持库 dp1

.子程序 php加密文本, 文本型, 公开, 与php加密一致的一种算法

.参数 原文, 文本型

.参数 密码, 文本型

.参数 网页是否utf8, 逻辑型, 可空

.局部变量 原文长度, 整数型

.局部变量 key, 文本型

.局部变量 密, 文本型

.局部变量 i, 整数型

.局部变量 原文字符, 整数型

.局部变量 密文字符, 整数型

.局部变量 对象, 快速文本对象

.如果真 (是否为空 (网页是否utf8))

网页是否utf8 = 真

.如果真结束

.如果 (网页是否utf8)

key = 取数据摘要 (到字节集 (编码_gb2312到utf8 (密码)))

原文 = 编码_gb2312到utf8 (原文)

.否则

key = 取数据摘要 (到字节集 (密码))

.如果结束

原文长度 = 取文本长度 (原文)

.判断循环首 (取文本长度 (密) < 原文长度)

密 = 密 + key

.判断循环尾 ()

密 = 取文本左边 (密, 原文长度)

对象.置文本 (“”)

.计次循环首 (原文长度, i)

原文字符 = 取字节集数据 (到字节集 (取文本中间 (原文, i, 1)), 3, )

密文字符 = 取字节集数据 (到字节集 (取文本中间 (密, i, 1)), 3, )

对象.添加 (到文本 (原文字符 - 密文字符), “F”)

.计次循环尾 ()

返回 (对象.取文本 (, ))

易语言解密算法:可以解密上方 php加密的文本和易语言加密的文本.版本 2

.支持库 commobj

.支持库 dp1

.子程序 php解密文本, 文本型, 公开, 加密算法 查看:   #php加密函数

.参数 密文, 文本型

.参数 密码, 文本型

.参数 网页是否utf8, 逻辑型, 可空, 如果网页内些的utf8

.局部变量 key, 文本型

.局部变量 对象, 快速文本对象

.局部变量 array, 文本型, , "0"

.局部变量 a, 整数型

.局部变量 密, 文本型

.局部变量 字节2, 字节集

.局部变量 i, 整数型

.局部变量 字节2数字, 整数型

.如果真 (是否为空 (网页是否utf8))

网页是否utf8 = 真

.如果真结束

.如果 (网页是否utf8)

key = 取数据摘要 (到字节集 (编码_gb2312到utf8 (密码)))

.否则

key = 取数据摘要 (到字节集 (密码))

.如果结束

对象.置文本 (密文)

array = 对象.分割文本 (“分隔符可以自定义”, )

a = 取数组成员数 (array)

.判断循环首 (取文本长度 (密) < a)

密 = 密 + key

.判断循环尾 ()

密 = 取文本左边 (密, a)

对象.清除文本 ()

.计次循环首 (取数组成员数 (array), i)

字节2 = 到字节集 (取文本中间 (密, i, 1))

字节2数字 = 到整数 (取字节集数据 (字节2, 1, ))

对象.添加 (字符 (到数值 (array [i]) + 字节2数字))

.计次循环尾 ()

.如果 (网页是否utf8)

返回 (编码_utf8到gb2312 (对象.取文本 (, )))

.否则

返回 (对象.取文本 (, ))

.如果结束

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值