我正在运行一些测试,比较用 javascript 实现的 sha1 算法 - 从http://pajhome.org.uk/crypt/获得- 与它在 C# 中的实现。
使用 C# 获取 {'method':'people.get'} 的哈希值我正在使用以下语句:
Convert.ToBase64String(new System.Security.Cryptography.SHA1CryptoServiceProvider().ComputeHash(Encoding.ASCII.GetBytes("{'method':'people.get'}")));
这给了我Qy95a0ShZqhbNdt6IF8qNf72jX0=
在 javascript 中,我得到了几乎相同的结果:Qy95a0ShZqhbNdt6IF8qNf72jX0
使用语句:
b64_sha1("{'method':'people.get'}");
在 javascript 案例中,哈希不以等号 (=) 结尾。
这种差异会导致我在针对服务器进行身份验证时遇到麻烦吗?
就我而言,你们中的许多人可能都知道,我认为哈希值的句子进入了 http 正文,服务器将对其进行检查。
谢谢