使用第三方网站(https://encode.chahuo.com/)和百度签名工具(https://cloud.baidu.com/signature/index.html)测试同样的密文和密钥,如果密文无换行结果相同,有换行时quicker与前二者结果不一样
方便的话请发下测试数据以及第三方网站的测试截图,我这里测试下看看。如果有示例动作更好,谢谢。
百度签名计算:
中间结果2是使用SecretAccessKey作为密文对authStringPrefix进行HMAC-SHA-256-HEX计算,第三方网站和quicker的结果均一致:
第三方网站结果:
quicker结果:
中间结果3是使用signingKey(也就是中间结果2)作为密文对canonicalRequest(也就是中间结果1)进行HMAC-SHA-256-HEX计算,
第三方网站测试与其一致:
quicker结果不一致:
可能是quicker默认的换行符与系统的不太一样吧,如果是这样还请加个选择换行符的功能
我测试了一下,这个应该是换行符号不同的问题,
windows默认的换行符号是\r\n,在改成\n之后,和网页里的结果对比一致。
可以直接编辑换行符就好,感谢!
这个主要看内容在哪里,如果内容是输入进去的,就会有\r\n,可以放在变量里,在进行哈希之前替换一下换行符。
$= {text}.Replace("\r\n", "\n")