先看看小程序的开放数据校验与解密
公钥,私钥,对称非对称,DES加密算法,AES加密算法,RSA加密算法,Base64加密算法,MD5加密算法等的定义
略
openssl的使用
mac 本省自带openssl可通过如下命令查看
1 | ➜ .ssh openssl version |
- 命令行cd到公私密钥需要生成的目录
- 生成公钥:
openssl genrsa -out rsa_private_key.pem 1024
- 生成私钥:
openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
拓展指令
使用终端进入到制定目录下
运行命令:
openssl
生成一个1024位的私钥:
genrsa -out rsa_private_key.pem 1024
利用私钥生成JAVA支持的PKCS8类型的私钥:
pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out pkcs8_private_key.pem
生成JAVA支持的PKCS8二进制类型的私钥:
pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform DER -nocrypt -out pkcs8_private_key.der
(java端使用的私钥就是这个:pkcs8_private_key.der)生成公钥:
rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
创建证书请求:
req -new -out cert.csr -key rsa_private_key.pem
(其间会要求填写国家地区公司信息等,随便填写OR认真填写都不影响证书使用)创建X509的自签署跟证书(iOS支持X509,有效期3650天):
x509 -req -in cert.csr -out rsa_public_key.der -outform der -signkey rsa_private_key.pem -days 3650
(iOS端使用的私钥就是这个:rsa_public_key.der)
下面创建iOS端的密钥(p12)
x509 -req -days 3650 -in cert.csr -signkey rsa_private_key.pem -out rsacert.crt
pkcs12 -export -out p.p12 -inkey rsa_private_key.pem -in rsacert.crt
node.js公钥,私钥加解密一例
1 | const fs = require('fs'); |