通常情况下,这种很长一段数字字母的key和secret都是通过md5和sha1加密算法来生成。
-
appkey的生成
appkey生成比较简单,一般是客户的唯一值+字符串组成,方法很多,做到唯一性的字符串就可以。比如使用用户的uid+”abc”字符串组成。
-
appSecret生成方法
其原始数据有可能是你的账号的id,还有注册时间之类的唯一值进行组合再通过md5和sha1来生成,而md5和sha1对比的话,md5比sha1更快,但sha1比md5强度更高,所以在此类授权应用里,通常都使用sha1算法,例如oauth的签名算法
-
验证授权
例如要和微信通信里,要传递三个参数ABC,则需要将ABC与appsecret一起sha1一遍,得到一个签名串,然后将这个签名串与appkey一起传递给微信,
此时,微信会通过appkey去查找对应的appsecret,然后再将ABC参数与查询出来的appsecret做一遍相同的签名算法,如果得到的签名串一致,则认为是授权成功