授权用的 APPSecret 一般是什么算法生成的呢?

62669ad9gw1escalmnamnj20rk062t97.jpg

如图,在做服务器给第三方授权的时候,申请接口授权的一方往往要获得APPKEY和APPSecret,它们一般都是根据什么算法生成的?可以的话有代码示例更好了,谢谢!

阅读 12.1k
1 个回答

通常情况下,这种很长一段数字字母的key和secret都是通过md5和sha1加密算法来生成的
(当然也可以完全随机生成,有另外一个uuid算法)
其原始数据有可能是你的账号的id,还有注册时间之类的唯一值进行组合再通过md5和sha1来生成,

而md5和sha1对比的话,md5比sha1更快,但sha1比md5强度更高,所以在此类授权应用里,通常都使用sha1算法,例如oauth的签名算法

而为什么会有appkey和appsecret才能保障授权成功呢?
例如要和微信通信里,要传递三个参数ABC,则需要将ABC与appsecret一起sha1一遍,得到一个签名串,然后将这个签名串与appkey一起传递给微信,
此时,微信会通过appkey去查找对应的appsecret,然后再将ABC参数与查询出来的appsecret做一遍相同的签名算法,如果得到的签名串一致,则认为是授权成功

这个过程中的关键就在于,appsecret的保密性

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题