鹅城剑仙 2023-06-28 03:21 采纳率: 100%
浏览 60
已结题

前端存储RSA公钥安全问题(求解)

注:我是小bai有些问题不太懂,希望亲们指点迷津,当前的前端指的是游览器web前端,我不清楚移动端会不会遇到类似的问题,如果会遇到麻烦一并指导一下:),如果我的思路设计提出的问题啥的有问题也麻烦亲们给我指出优化,感谢:)。

1、前言:当前项目接口校验使用的是jwt无状态token,用户每次请求服务端都会携带该token,该token有效时间可能比较久1~7天或更长,只要token泄露,不法分子就可以使用该token伪造请求,我想前端使用RSA公钥和时间等数据加密token,让加密后的数据成为一个短时间、一次性的消耗品。现在遇到一些疑问

2、问题:怎么样才能保证公钥的安全呢。公钥放在代码内会被反编译获取,想把公钥和源代码隔离,把公钥放在服务器文件内,使用环境变量获取。如果是在web端读取公钥用于加密的时候,打个断点不是就能看到变量内的数据了吗?

3、诉求:想了解一下前端怎么保证公钥的安全,欢迎大家回答~

img

  • 写回答

3条回答 默认 最新

  • 北海屿鹿 2023-06-28 09:28
    关注

    确保公钥的安全性是非常重要的,以下是一些常见的方法来保护公钥的安全:

    使用加密算法:使用非对称加密算法(如RSA)生成公钥和私钥对,确保私钥的安全性。只有私钥的持有者才能解密使用公钥加密的数据。

    隔离公钥和源代码:将公钥存储在与源代码分离的位置,如服务器文件内。这样即使源代码被反编译,攻击者也无法直接获取到公钥。

    使用环境变量:将公钥存储在服务器的环境变量中,而不是直接放在代码中。这样即使代码被反编译,攻击者也无法直接获得公钥。

    加密传输:在web端读取公钥时,确保使用安全的传输协议(如HTTPS)来获取公钥,以防止中间人攻击。

    访问控制:通过限制对存储公钥的服务器文件的访问权限,只允许授权的用户或服务访问,从而增加公钥的安全性。

    定期更新:定期更换公钥,减少公钥被攻击者利用的风险。

    需要注意的是,尽管采取了上述措施,仍然无法保证绝对的安全性。因此,在设计系统时需要综合考虑其他安全措施,如使用数字签名、访问日志监控等来增加整个系统的安全性。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 7月8日
  • 已采纳回答 6月30日
  • 创建了问题 6月28日

悬赏问题

  • ¥15 PVE8.2版本ceph的监控项状态stopped不能销毁
  • ¥15 如何加快视频观看速度?
  • ¥15 HP P2000存储 硬盘损坏两块如何更换
  • ¥15 c#的richTextBox控件有更好的替代品吗
  • ¥15 ntrip协议发送失败
  • ¥15 关于#c语言#的问题:c语言main函数括弧里为什么有时候加void
  • ¥15 如何利用R语言对语料库之间数据差异性分析
  • ¥20 如何制作支付宝扫码跳转到发红包
  • ¥15 STM32F103C8T6使用标准库stm32f10x.h驱动ws2812
  • ¥20 我是数控机床电气工程师,主要是做840DSL与one,请问如何自学