<p>为了验证来自<a href="http://code.google.com/apis/safebrowsing/developers_guide.html" rel="nofollow noreferrer">Google Safe Browsing API</a>的数据,可以为每个更新计算一个消息验证码(MAC)。执行此操作的说明(来自谷歌)是:</p>
<blockquote>
<p>The MAC is computed from an MD5 Digest
over the following information:
client_key|separator|table
data|separator|client_key. The
separator is the string:coolgoog: -
that is a colon followed by "coolgoog"
followed by a colon. The resulting
128-bit MD5 digest is websafe base-64
encoded.</p>
</blockquote>
<p>还有一些示例数据需要检查:</p>
<pre><code>client key: "8eirwN1kTwCzgWA2HxTaRQ=="
</code></pre>
<p>回应:</p>
^{pr2}$
<p>我找不到匹配的。请指出我的错误所在,或者只写几行必要的Python代码就可以了!在</p>
<p>FWIW,我希望能做这样的事情:</p>
<pre><code>>>> s = "+8070465bdf3b9c6ad6a89c32e8162ef1\t\n+86fa593a025714f89d6bc8c9c5a191ac\t\n+bbbd7247731cbb7ec1b3a5814ed4bc9d\t"
>>> c = "8eirwN1kTwCzgWA2HxTaRQ=="
>>> hashlib.md5("%s%s%s%s%s" % (c, ":coolgoog:", s, ":coolgoog:", c)).digest().encode("base64")
'qfb50mxpHrS82yTofPkcEg==\n'
</code></pre>
<p>但正如您所见,'qfb50mxpHrS82yTofPkcEg==\n'!='dRalfTU+bxwulk0ncgjtq=='。在</p>