拒绝 API 在公网裸奔之实现过程

2019-01-13 17:51:31 +08:00
 jss
(先忽略 Https )不想让 API 数据在公网中裸奔于是查了一些方案,比如:jwt des aes rsa 等,最终组合一个理想解决方案:Rsa+Aes; 客户端生成 Aes 密钥 将请求参数进行 Aes 加密,然后,Aes 密钥通过 Rsa 加密一并提交给服务器,服务器通过 Rsa 解密获得 Aes 密钥,进行 Aes 参数解密处理,最后通过解密后的 Aes 密钥加密返回给客户端,实现,公网传输加密。
6063 次点击
所在节点    PHP
22 条回复
xuanbg
2019-01-14 01:00:53 +08:00
@chinvo 不一样,HTTPS 使用的是 SSL 隧道,他这个是一次性密钥加密。效果一样,但开销比较大,每次都要用 RSA 加密和解密。
zwh2698
2019-01-14 09:04:46 +08:00
你的安全性不如 https,这种安全设计没法拿出手,即便模拟,建议先看看 https 握手都干了啥,为啥要 pre/master key, 等机制。建议不要自己造安全性不高的轮子,会让自己陷入误区的。检验思考的全面性要借助工具 STRIDE 模型。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/526632

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX