php源码不可逆加密,四种好用的PHP自定义加密函数(可逆/不可逆)

原标题:四种好用的PHP自定义加密函数(可逆/不可逆)

项目中有时我们需要使用PHP将特定的信息进行加密,也就是通过加密算法生成一个加密字符串,这些加密后的字符串可以通过解密算法进行解密,便于程序对解密后的信息进行处理。

最常见的应用在用户登录以及一些API数据交换的场景。最常见的应用在用户登录以及一些API数据交换的场景。加密解密原理一般都是通过一定的加密解密算法,将密钥加入到算法中,最终得到加密解密结果。

一、第一种针对于ID的可逆加密函数,也可以用作于邀请码之类的,解密后的数据比较简单

示例:lockcode(28)=》000X unlockcode('000X')=》28

5881024642795157ebd0db4a4bfa3ecd.png

二、第二种是加密函数是我在网上搜索来的,很好用,可逆加密,支持盐值参数

示例:

encrypt('abcd','1234')=》nkiV93IfJ decrypt('nkiV93IfJ','1234')=》abcd

204f0d3f96d3f700c630c5f6d8c09175.png

三、第三种跟上面的比较类似,也支持盐值参数

示例:encrypt('abcd','1234')=》mZPHxw== decrypt('mZPHxw==','1234')=》abcd

de74edb9a3d61e053cf424fff91628a3.png

四、这个是我用过最好用的一个了,discuz中使用的加密解密算法

责任编辑:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PHP的`pack`函数是一个二进制数据打包函数,用于把数据按指定格式转换成二进制字符串。它并不是一个加密函数,不能直接用于加密源码文件。 如果你需要对PHP源码文件进行加密,可以使用一些第三方工具或者自己编写加密脚本实现。以下是一个简单的PHP源码加密示例: ```php <?php // 加密函数 function encrypt($data, $key){ $encrypted_data = openssl_encrypt($data, 'AES-128-CBC', $key, OPENSSL_RAW_DATA, $key); return base64_encode($encrypted_data); } // 解密函数 function decrypt($data, $key){ $encrypted_data = base64_decode($data); return openssl_decrypt($encrypted_data, 'AES-128-CBC', $key, OPENSSL_RAW_DATA, $key); } // 加密源码文件 $source_file = 'test.php'; $encrypted_file = 'test_encrypted.php'; $key = 'my_secret_key'; $data = file_get_contents($source_file); $encrypted_data = encrypt($data, $key); file_put_contents($encrypted_file, '<?php /* Encrypted */ ?>' . $encrypted_data); // 解密源码文件 $encrypted_data = substr(file_get_contents($encrypted_file), 19); // 去除 '<?php /* Encrypted */ ?>' $data = decrypt($encrypted_data, $key); file_put_contents($source_file, $data); ``` 这个示例使用了AES-128-CBC加密算法对源码文件进行加密,并使用一个密钥作为加密参数。加密后的数据通过Base64编码后存储到文件中,解密时则需要先解码再使用相同的密钥进行解密。请注意,这种简单的加密方式并不足以保证源码的安全性,仅供学习和参考。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值