自定义解密数据接口__myDecrypt

录入时间:2017/2/13 19:31:50      最后更新:2017/2/13 20:16:27

先看易语言的例子
子程序名返回值类型公开备注
__myDecrypt 文本型   建议修改,该解密算法需和服务端的加密算法相互对称 __myEncrypt
参数名类型参考可空数组备注
inData 文本型
变量名类型静态数组备注
Modulus 文本型 
Public_exp 文本型 
i 整数型 
RSA加密的RC4KEY的密文 文本型 
解密后的RC4KEY明文 文本型 
RC4_Base64加密后的密文 文本型 
解密后的数据原文 文本型 
' 本算法是默认的解密算法,建议自行修改(修改了这里,服务端里的高级API里的  __myEncrypt也要修改)
' 请到下载中心下载openrsa_tool,然后用该工具生成RSA密钥对文件,可从里边提取 模数(Modulus [N]) 和 公钥(Public_exp[E] 指数)
' 模数(Modulus [N])
Modulus = “C245FA8CE4EE39CFABD9DF57B8FC9BA96597582C924DD425DF7CE8F075A84A82AE2F3F3E1CA4A9B25728CB530CCB0D3B180EEC725383319FE6D4AB47CBF158AF”
' 公钥(Public_exp[E] 指数)
Public_exp = “65537”
i = 寻找文本 (inData, “,”, , 假)
RSA加密的RC4KEY的密文 = 取文本中间 (inData, 1, i - 1)
解密后的RC4KEY明文 = RSADecrypt (RSA加密的RC4KEY的密文, Modulus, Public_exp)
RC4_Base64加密后的密文 = 取文本中间 (inData, i + 1, 取文本长度 (inData) - i)
解密后的数据原文 = 到文本 (解密数据 (到字节集 (BASE64_decode (RC4_Base64加密后的密文)), 解密后的RC4KEY明文, #RC4算法))
返回 (解密后的数据原文)
重点说明: 1、__myDecrypt要解密的数据,必须是由服务端高级API里 __myEncrypt函数加密出来的 所以服务端高级API里的__myEncrypt加密算法 和客户端的__myDecrypt解密算法要配匹 2、如果你不想花费精力去修改加解算法的话,那么密钥是一定要改的,由其是 Modulus 和 Public_exp 这两个 Modulus 和 Public_exp可从RSA密钥对文件中获取 RSA密钥对文件的生成方式请参见encode_rsa2函数

 Copyright 2013-2018 土默特左旗灵盾网络工作室 图图网络验证系统
     蒙ICP备15001097号