签名机制
所有数据接口请求时必须传入数字签名,数字签名使用的MD5 32位规范。
签名算法计算规则:
sign= ((noncestr + openid + PublicKey + timestamp).MD5()+ PrivateKey).MD5().ToLower();
第一步:
//拼接字符串
String str1 = (随机字符串noncestr + 开放平台openid + 公钥PublicKey+ 时间戳timestamp);
//对str1进行md5运算之后得到str1MD5;
String str1MD5 = str1.MD5();
第二步:
//第二次拼接字符串
String str2 = (第一步得到的str1MD5 + 私钥PrivateKey);
//对str2进行md5运算之后并转换为小写的32位
String sign = str2.MD5().ToLower();
所有请求都需要传入数字签名,系统验证数字签名正确后再进行其他响应。
例:
Openid:IOS1101
Timestamp:1439950776
Noncestr:xy19102724
PrivateKey: defe97621eef237896e489228fb68786
PublicKey: 38dae8d211692021116dd85793487f6b
正确的sign:6f2573587a4ca0379d32a8975014cc0f