内置函数:encode_rsa2

录入时间:2017/2/11 20:28:49      最后更新:2017/3/16 22:01:04

函数名 :encode_rsa2 功能 :标准RSA加解密算法 参数1 :RSA私钥或RSA公钥 参数2 :要加密或解密的数据 参数3 :加密填encrypt 解密填decrypt 可不传默认是encrypt加密 返回值 :base64格式的RSA加密数据 备注 :加密时要加密的数据长度必须小于(RSA加密的位数/8-11) 例如,openssl工具默认生成的RSA私钥加密位数是512位,所以数据长度要小于(512/8-11)=53位 本函数使用的大数运算库支持三种openssl、gpm、bcmath 优先使用openssl 其次gmp 最后bcmath(内部自动选择,bcmath太慢) 如果你所使用的PHP环境以上三种PHP扩展没有加载的话,将不能使用本函数 RSA私钥加密数据 $data= encode_rsa2(RSA私钥,$data,"encrypt") 或 encode_rsa2(私钥,$data) RSA公钥解密数据 $data= encode_rsa2(RSA公钥,$data,"decrypt") RSA公钥加密数据 $data= encode_rsa2(RSA公钥,$data,"encrypt") 或 encode_rsa2(RSA公钥,$data) RSA私钥解密数据 $data= encode_rsa2(RSA私钥,$data,"decrypt") RSA私钥加密的数据必须用RSA公钥解密 RSA公钥加密的数据必须用RSA私钥解密 一般情况下,服务端只用的到RSA私钥加密功能 也就是 encode_rsa2(RSA私钥,数据)
1、服务端实现 假设第1个资源文本是rsa的PKCS1 private PEM RSA私钥
function v_*****(){ $data='hello world!'; //要加密的数据 $privateKeyText:=_rs(1); $result=encode_rsa2($privateKeyText,$data); //私钥加密 return $result; }
2、RSA密钥的生成 请到下载中心下载 openssl_tool工具,生成RSA密钥对文件 生成的密钥对文件中,第1项 PKCS1 private PEM RSA私钥PEM,是encode_rsa2的第一个参数rsa私钥(pem) 密钥对文件中,下边的一些数据对应不同编程语言实现rsa公钥解密时要用到的参数

 Copyright 2008-2017 武汉市洪山区火云网络工作室 可可网络验证系统
 联系电话:027-88778177    鄂ICP备12009746号