6

reCAPTCHA 需要公钥和私钥才能实施到网站中。它还需要 reCAPTCHA 密钥,具体取决于网站。这背后的原因是什么?公钥和私钥是否会影响 reCAPTCHA 中显示的单词?我知道我可以将公钥和私钥设置为 GLOBAL,它可以用于其他域,但为什么首先需要密钥?

4

1 回答 1

5

好的。这是我的猜测,不能保证。

  1. 生成客户端页面时需要您的公钥。
  2. 客户端使用此公钥从 recaptcha 请求:图像、相应的正确答案以及可能的 id。当然,答案和 id 是使用公钥加密的。(所以客户无法知道答案)
  3. 用户输入答案,将其发送到您的服务器。
  4. 你有: {id, answer} 使用公钥加密。您将您的私钥和此加密消息发送到 recaptcha 服务器。
  5. recaptcha 解密消息,显示答案和 ID,并检查它们是否匹配。
  6. 它告诉您的服务器检查结果。

笔记:

  1. 如果用户将他自己的公钥发送给 recaptcha,检查将不会成功,因为您的私钥不能与他的公钥一起使用。
  2. 该方案证明您的服务器确实是接收recaptcha 答案的服务器。
于 2011-02-15T15:33:10.340 回答