本文主要介绍了PHP实现超简单的SSL加密解密、验证及签名的方法,结合实例形式分析了PHP基于openssl相关函数的签名、加密、解密、验证等操作技巧,需要的朋友可以参考下PHP源码,具体如下:
1. sign签名代码:
function sign($data) { //读取私钥文件 $priKey = file_get_contents('key/rsa_private_key.pem'); //转换为openssl密钥,必须是没有经过pkcs8转换的私钥 $res = openssl_get_privatekey($priKey); //调用openssl内置签名方法,生成签名$sign openssl_sign($data, $sign, $res); //释放资源 openssl_free_key($res); return $sign; }
2. verify 验证代码:
function verify($data, $sign) { //读取支付宝公钥文件 $pubKey = file_get_contents('key/alipay_public_key.pem'); //转换为openssl格式密钥 $res = openssl_get_publickey($pubKey); //调用openssl内置方法验签,返回bool值 $result = (bool)openssl_verify($data, $sign, $res); //释放资源 openssl_free_key($res); return $result; }
3. 解密代码
function decrypt($content) { //读取商户私钥 $priKey = file_get_contents('key/rsa_private_key.pem'); //转换为openssl密钥,必须是没有经过pkcs8转换的私钥 $res = openssl_get_privatekey($priKey); //声明明文字符串变量 $result = ''; //循环按照128位解密 for($i = 0; $i < strlen($content)/128; $i++ ) { $data = substr($content, $i * 128, 128); //拆分开长度为128的字符串片段通过私钥进行解密,返回$decrypt解析后的明文 openssl_private_decrypt($data, $decrypt, $res); //明文片段拼接 $result .= $decrypt; } //释放资源 openssl_free_key($res); //返回明文 return $result; }
相关推荐
C#RSA加密解密签名和验证签名的小例子,代码都加了注释...使用签名和验证签名这个操作就可以实现了.RSA是非对称加密,一般情况下是用公钥加密,私钥解密,这是一对.特殊情况下(例如验证软件正版),使用签名和验证签名这一对.
主要介绍了VueJs里利用CryptoJs实现加密及解密的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
PGP 加解密及签名验签示例
请注意,这种加密方式是非常简单的,仅用于示例目的。在实际应用中,可能需要采用更安全的加密算法。 您可以使用上述代码作为起点,根据自己的需求进行修改和扩展,以实现更复杂和安全的PNG图片加密和解密功能。
java 代码实现 获取keystore,cer文件中的私钥公钥,对数据进行加密解密验签签名
一个netty建立的SSL双向加密的服务器和客户端的简单示例。工程是IDEA创建的,直接导入即可,注意需要依赖的pom文件中的包。需要的证书文件示例也在压缩包内。
用c#做的加密解密的小软件,可以实现对文本的加密解密。
php版ssl加密解密上传密钥,支持无限长度加密解密,附带demo。
主要介绍了java实现的RC4加密解密算法,结合具体实例形式分析了java RC4加密解密算法的实现与使用技巧,需要的朋友可以参考下
php实现的加密解密处理类
AES加密解密验证工具(支持各种加密模式)
使用Openssl实现RSA的加密和解密过程;使用Openssl实现签名和验签过程;SHA256WithRSA签名验签过程;封装很好,一看就懂,直接使用!
主要介绍了PHP下SSL加密解密、验证、签名方法,方法很简单,欢迎大家阅读
主要介绍了Java加密解密和数字签名完整代码示例,具有一定参考价值,需要的朋友可以了解下。
主要介绍了java使用Hex编码解码实现Aes加密解密功能,结合完整实例形式分析了Aes加密解密功能的定义与使用方法,需要的朋友可以参考下
SM2算法可以生成密钥和公钥,支持SM2的签名和验签;AES加密解密,支持各种常用的堆成非对称的加密算法的加密解密和验签
主要介绍了Java实现的RSA加密解密算法,结合实例形式分析了java RAS加密解密算法的相关实现技巧,需要的朋友可以参考下
VC++6.0 DES加密解密示例工程,包含两个加密解密类库,实例化后即可使用