Perbandingan

reCAPTCHA v3 Enterprise vs Standard — Perbandingan

Kedua versi berjalan tanpa terlihat dan mengembalikan skor risiko antara 0,0 (bot) dan 1,0 (manusia). Enterprise menambahkan kode alasan, manajemen berbasis proyek, ambang batas adaptif, dan pembela akun. Untuk pengguna CaptchaAI, perbedaan solvenya adalah satu parameter: enterprise=1.

Panduan ini berfokus pada hal-hal yang penting untuk otomatisasi: apa yang ditambahkan oleh Enterprise, cara mendeteksinya, dan bagaimana perbedaan penilaian memengaruhi integrasi Anda.


Perbandingan fitur

Fitur Standar v3 Enterprise v3
Operasi invisible Ya Ya
Skor (0,0–1,0) Ya Ya
Parameter tindakan Diperlukan Diperlukan
Kode alasan Tidak Ya
Ambang batas khusus per tindakan Tidak Ya (melalui Cloud Console)
Deteksi kebocoran kata sandi Tidak Ya
Pembela akun Tidak Ya
Label pencegahan penipuan Tidak Ya
Integrasi otentikasi multi-faktor Tidak Ya
Titik akhir verifikasi siteverify (gratis) recaptchaenterprise.googleapis.com
Kuota bulanan 1 juta penilaian gratis Bayar per penilaian
berkas JS api.js?render=KEY enterprise.js?render=KEY
Parameter CaptchaAI version=v3 version=v3 + enterprise=1

Kode alasan enterprise dijelaskan

Respons enterprise mencakup kode alasan yang menjelaskan mengapa skor diberikan. Kode-kode ini membantu pemilik situs menyempurnakan keamanan mereka — dan memahaminya membantu Anda membangun otomatisasi yang lebih baik.

Kode Artinya Dampak pada otomatisasi
AUTOMATION Perilaku otomatis terdeteksi Gunakan sinyal browser browser yang realistis
UNEXPECTED_ENVIRONMENT Lingkungan browser yang tidak biasa Periksa deteksi browser headless
TOO_MUCH_TRAFFIC Volume permintaan tinggi dari sumber Menerapkan pembatasan laju dan rotasi proxy
UNEXPECTED_USAGE_PATTERNS Pola interaksi yang tidak normal Tambahkan penundaan yang realistis di antara tindakan
LOW_CONFIDENCE_SCORE Data tidak cukup untuk penilaian percaya diri Kirimkan lebih banyak sinyal perilaku
SUSPECTED_CARDING Pola penipuan kartu kredit Tidak relevan untuk sebagian besar otomatisasi
SUSPECTED_CHARGEBACK Pola penipuan tagihan balik Tidak relevan untuk sebagian besar otomatisasi

Catatan: Anda tidak melihat kode ini saat menyelesaikan melalui CaptchaAI. Mereka dikembalikan ke backend situs web selama verifikasi token. Memahaminya membantu Anda mendiagnosis mengapa token mungkin ditolak.


Perbedaan penilaian enterprise

Standar v3 menggunakan model penilaian global tunggal. Enterprise v3 menambahkan lapisan:

Aspek penilaian Standar Enterprise
Model skor dasar Model global Google Model global + sinyal khusus Google
Ambang batas per tindakan Satu ambang batas untuk semua tindakan Ambang batas berbeda per tindakan (login=0,7, checkout=0,9)
Pembelajaran adaptif Dasar Belajar dari pola lalu lintas spesifik situs
Perincian skor 0,0-1,0 (dua desimal) Rentang yang sama, sinyal yang lebih bernuansa
Penanganan positif palsu Penyetelan ambang batas manual Otomatis dengan analisis kode alasan

Artinya bagi pengguna CaptchaAI: Situs enterprise mungkin memiliki ambang batas per tindakan yang lebih ketat atau lebih beragam. Mengirimkan parameter action yang benar bahkan lebih penting lagi dengan Enterprise karena setiap tindakan mungkin memiliki ambang batasnya sendiri.


Deteksi dan solve

Mendeteksi versi yang mana

import requests
import re

def detect_v3_version(url):
    html = requests.get(url).text

    if "enterprise.js" in html:
        version = "enterprise"
    elif "recaptcha/api.js" in html and "render=" in html:
        version = "standard"
    else:
        return None

    # Extract sitekey
    key_match = re.search(r'render[=:]\s*["\']?([A-Za-z0-9_-]{40})', html)
    sitekey = key_match.group(1) if key_match else None

    # Extract action
    action_match = re.search(r'action["\']?\s*[:=]\s*["\'](\w+)', html)
    action = action_match.group(1) if action_match else None

    return {"version": version, "sitekey": sitekey, "action": action}
const axios = require("axios");

async function detectV3Version(url) {
  const { data: html } = await axios.get(url);

  const version = html.includes("enterprise.js")
    ? "enterprise"
    : html.includes("recaptcha/api.js") && html.includes("render=")
      ? "standard"
      : null;

  const keyMatch = html.match(/render[=:]\s*['"]?([A-Za-z0-9_-]{40})/);
  const actionMatch = html.match(/action['"]?\s*[:=]\s*['"](\w+)/);

  return {
    version,
    sitekey: keyMatch?.[1],
    action: actionMatch?.[1],
  };
}

Memecahkan Standar v3

import requests
import time

resp = requests.get("https://ocr.captchaai.com/in.php", params={
    "key": "YOUR_API_KEY",
    "method": "userrecaptcha",
    "version": "v3",
    "googlekey": sitekey,
    "action": "login",
    "pageurl": page_url
})
task_id = resp.text.split("|")[1]

for _ in range(60):
    time.sleep(5)
    result = requests.get("https://ocr.captchaai.com/res.php", params={
        "key": "YOUR_API_KEY", "action": "get", "id": task_id
    })
    if result.text.startswith("OK|"):
        token = result.text.split("|")[1]
        break

Memecahkan Enterprise v3

import requests
import time

# Only difference: enterprise=1
resp = requests.get("https://ocr.captchaai.com/in.php", params={
    "key": "YOUR_API_KEY",
    "method": "userrecaptcha",
    "version": "v3",
    "enterprise": 1,
    "googlekey": sitekey,
    "action": "login",
    "pageurl": page_url
})
task_id = resp.text.split("|")[1]

for _ in range(60):
    time.sleep(5)
    result = requests.get("https://ocr.captchaai.com/res.php", params={
        "key": "YOUR_API_KEY", "action": "get", "id": task_id
    })
    if result.text.startswith("OK|"):
        token = result.text.split("|")[1]
        break

Pemecah deteksi otomatis

class V3AutoSolver:
    def __init__(self, api_key):
        self.api_key = api_key

    def solve(self, page_url, action=None):
        import re
        html = requests.get(page_url).text

        is_enterprise = "enterprise.js" in html
        key_match = re.search(r'render[=:]\s*["\']?([A-Za-z0-9_-]{40})', html)
        if not key_match:
            raise Exception("No v3 sitekey found")

        if not action:
            act_match = re.search(r'action["\']?\s*[:=]\s*["\'](\w+)', html)
            action = act_match.group(1) if act_match else "verify"

        params = {
            "key": self.api_key,
            "method": "userrecaptcha",
            "version": "v3",
            "googlekey": key_match.group(1),
            "action": action,
            "pageurl": page_url
        }
        if is_enterprise:
            params["enterprise"] = 1

        resp = requests.get("https://ocr.captchaai.com/in.php", params=params)
        if not resp.text.startswith("OK|"):
            raise Exception(f"Submit failed: {resp.text}")

        task_id = resp.text.split("|")[1]
        for _ in range(60):
            time.sleep(5)
            result = requests.get("https://ocr.captchaai.com/res.php", params={
                "key": self.api_key, "action": "get", "id": task_id
            })
            if result.text.startswith("OK|"):
                return result.text.split("|")[1]
            if result.text != "CAPCHA_NOT_READY":
                raise Exception(f"Solve error: {result.text}")
        raise Exception("Timed out")

Pemecahan Masalah

Masalah Kemungkinan penyebabnya Perbaiki
Token ditolak di situs Enterprise enterprise=1 tidak ada Periksa enterprise.js dan tambahkan benderanya
Skor rendah di Enterprise Parameter action salah Ekstrak tindakan yang tepat dari panggilan grecaptcha.enterprise.execute()
Token berfungsi dalam pengujian, gagal dalam produksi Pembelajaran adaptif enterprise menandai pola Anda Putar IP, tambahkan penundaan, variasikan pola permintaan
ERROR_WRONG_GOOGLEKEY v3 sitekey berasal dari param render, bukan data-sitekey Cari render=KEY di URL skrip

Pertanyaan Umum

Apakah Enterprise v3 memberikan skor yang berbeda dari standar?

Model penilaian dasar serupa, namun Enterprise dapat menggunakan sinyal tambahan dan ambang batas per tindakan khusus. Standar 0,7 mungkin lolos, sementara Enterprise mungkin memerlukan 0,9 untuk tindakan yang sama. CaptchaAI menangani keduanya secara identik — kualitas token yang dikembalikan sama.

Bagaimana cara mendeteksi Enterprise v3 di halaman?

Cari enterprise.js, bukan api.js di tag skrip, dan grecaptcha.enterprise.execute() di JavaScript. Kedua versi tersebut invisible — tidak ada perbedaan visual.

Apakah Enterprise v3 lebih mahal untuk dipecahkan?

Periksa harga CaptchaAI saat ini. Solve enterprise mungkin diberi harga berbeda, tetapi kode integrasi API sama kecuali untuk satu parameter.

Bisakah situs beralih dari standar ke enterprise?

Ya, dan mereka sering melakukannya. Google mendorong migrasi ke Enterprise untuk analisis yang lebih baik. Bangun deteksi Anda untuk memeriksa setiap permintaan, bukan melakukan hardcoding pada versinya.

Mengapa skor saya turun setelah situs bermigrasi ke Enterprise?

Enterprise menggunakan pembelajaran adaptif yang membangun model dari lalu lintas spesifik situs. Jika pola otomatisasi Anda menonjol sebelumnya, Enterprise mungkin dapat menangkapnya lebih cepat. Tingkatkan sinyal browser lebih dari sekadar CaptchaAI — tambahkan perilaku browser yang realistis.


Panduan terkait

Komentar dinonaktifkan untuk artikel ini.