前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >RSA 证书加解密通信

RSA 证书加解密通信

作者头像
潇洒
发布2023-10-20 10:51:25
4100
发布2023-10-20 10:51:25
举报
文章被收录于专栏:石头岛

思路

经常有需要使用安全传输的场景,尤其是在一些泛及资金安全的行业,对数据的传输犹为重视安全性。 一般常用的就是对前参的数据进行加密,再到后台进行解密。 接口和接口之前的数据也用一样的方式进行加密和解密。

  1. 生成公私钥证书
  2. 公钥对接口参数明文加密
  3. 私钥对接口参数明文解密
  4. 通信双方互相持有对方公私钥

如果所有的接口都需要加解密,可以放到拦截器中去统一处理,也可以用注解的方式,控制哪些接口需要加密,哪些接口不需要加密。

生成 RAS 密钥

windows 下使用 OpenSSL 工具生成即可,下载后需要解压,然后在 bin 下面打开 OpenSSL,解压是因为生运行后会生成公私钥文件在当前目录下。 mac也有一个自带OpenSSL,可以直接用来生成RSA公钥与私钥。

步骤

打开iterm2,输入openssl

1.生成私钥

genrsa -out rsa_private_key.pem 1024

2.生成公钥

rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

3.生成 PKCS8 格式私钥

pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt

这个需要保存另外保存起来,java 中需要使用 PKCS8 格式。

4.openssl生成RSA公、私钥对文件 rsa_private_key.pem rsa_public_key.pem

cat 看一下内容,其实就是上面生成的部份。

使用证书

看到这里有经验的小伙伴肯定会有疑问,平时用的不都是.cer后缀的文件吗,这里是.pem格式的密钥文件,这个怎么用? 这是因为openssl可以将不同后缀的文件进行转换,以便应用在不同场景中。 也可以在生成的时候,直接指定生成.cer类型的密钥文件,一步到位。

pem 格式

内容为Base64编码的ASCII文件。

PEM格式是证书颁发机构颁发证书的最常见格式.PEM证书通常具有扩展名,例如.pem.crt.cer.key。 它们是Base64编码的ASCII文件, 包含-----BEGIN RSA PRIVATE KEY----------END RSA PRIVATE KEY-----语句,就像上面生在的一样。 服务器证书,中间证书和私钥都可以放入PEM格式。

DER 格式

DER格式只是证书的二进制形式,而不是ASCII PEM格式。

它有时会有.der的文件扩展名,但它的文件扩展名通常是.cer所以判断DER .cer文件和PEM .cer文件之间区别的唯一方法是在文本编辑器中打开它并查找BEGIN / END语句。所有类型的证书和私钥都可以用DER格式编码。

DER通常与Java平台一起使用。 SSL转换器只能将证书转换为DER格式。 如果您需要将私钥转换为DER,请使用此页面上的OpenSSL命令。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-04-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 思路
  • 生成 RAS 密钥
    • 步骤
    • 使用证书
      • pem 格式
        • DER 格式
        相关产品与服务
        SSL 证书
        腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档