这样做 api 接口的 token 验证能行吗?

2018-09-06 09:43:52 +08:00
 azev
看了一些 api 接口的安全设计
基本都是有 appid 和 appsecret
但是如果是只有 appid 的设计会有什么缺陷吗?

就是请求的时候不明文传 appid 参数
而是把 appid 和时间戳进行 md5 加密 然后传到服务器

这样相比 appid+appsecret 的设计有没有什么缺陷
2285 次点击
所在节点    问与答
6 条回复
lizhenda
2018-09-06 09:59:27 +08:00
appsecret 一般放在服务端和第三方服务通信,appid 才给客户端用的。所以 appsecret 很难说泄露
raptium
2018-09-06 10:03:12 +08:00
这样服务器怎么知道你是谁,如果把所有分配出去的 appid 都尝试验证一遍,那么分配的 appid 越多,误通过验证的可能性就越大
qiayue
2018-09-06 10:06:38 +08:00
如 2 楼所说,怎么表明身份,怎么证明你是谁
azev
2018-09-06 10:13:55 +08:00
@raptium
我想一下 貌似是有点错误
写成 md5 加密了 应该是可逆加密
raptium
2018-09-06 11:46:01 +08:00
@azev 加密的话,是不是所有的调用方都用同样的 key 加密?
如果不是同样的,那么服务器怎么知道应该用哪个 key 解密?
如果是同样的,那么这个 key 扩散的范围也会因为调用方变多而原来越大,最后变成公开的秘密……
Marmot
2018-09-06 11:52:49 +08:00
appsecret 相当于只有你我知道的的暗号
appid 相当于是谁发过来的消息

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

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

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

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

© 2021 V2EX