我正在尝试测试我的 google 安全浏览 api 版本 2 的实现。为了测试我的代码的一部分,该代码发送给定前缀的完整哈希请求,我捕获了一小段流量,我访问了一个已知的当前列入黑名单的 url “ utfvq.portrelay.com”和 Firefox 向 google 发送了完整哈希的请求,谷歌以哈希列表作为响应。
firefox 发送的前缀是(十六进制编码):2e2e372e,2e26382e,2e2e382e,6545382e
它收到的 4 个匹配的完整哈希是:
2e26382e2e2e436d2e2e2e2e322e3b2e2e2e2e2e4a2e2e2e7b2e2e2e6a492e2e
6545382e2e2a5b792e652e2e2e2e2e2e2e2e70442e7d2e2e2e222e2e502e2e2e
2e2e382e6c36252e2e522e2e592e2e2e2e2e3f592e2e2e782e2e572e4e2e2e2e
2e2e372e2e2e2e2e55682e542e51622e552e2e68352e2e2e2e2e2e2e2ed2755
然而,在我的实现中,我生成的哈希前缀似乎与 firefox 发送的哈希前缀不匹配。因此,我的客户端没有得到任何完整的哈希匹配。
我已经密切关注谷歌对 API 的描述,并确保正确实施了前面的步骤,例如 url 规范化。
我得到的 url,SHA256 哈希是
utfvq.portrelay.com/:5c2383012676e63656c13167e1cc4f55309c4e1b73c22556e36ec1487e8b8697
portrelay.com/:842638fe92ee436da7808d0232d03bcaa0f5c8b64ad5eee97bf28dbb6a49f8ae
有人可以指出为什么哈希不匹配。据我所知,我已遵循 API 指南。我缺少一些实现细节吗?