PHP使用RSA非对称加密解密

RSA算法属于非对称加密算法,非对称加密算法需要两个秘钥:公开密钥(publickey)和私有秘钥(privatekey).公开密钥和私有秘钥是一对,如果公开密钥对数据进行加密,只有用对应的私有秘钥才能解密;如果私有秘钥对数据进行加密那么只有用对应的公开密钥才能解密.因为加密解密使用的是两个不同的秘钥,所以这种算法叫做非对称加密算法.简单的说就是公钥加密私钥解密,私钥加密公钥解密.

  • 注意: 需要给PHP打开OpenSSL模块

密钥采用openssl工具生成,命令:

教程:https://blog.csdn.net/haibo0668/article/details/81369607

  1. 生成 rsa 私钥
    openssl genrsa -out rsaprivatekey.pem 1024
  2. 生成对应的公钥
    openssl rsa -in rsaprivatekey.pem -pubout -out rsapublickey.pem
  3. 将 RSA 私钥转换成 PKCS8 格式,
    openssl pkcs8 -topk8 -inform PEM -in rsaprivatekey.pem -outform PEM -nocrypt -out
    rsaprivatepkcs8.pem

你可能感兴趣的:(PHP,linux)