마이그레이션 가이드

Arkose FunCAPTCHA에서 CaptchaLa로 마이그레이션

SDK 무게를 덜어내고, 엔터프라이즈 계약을 끝내며, 적응형 봇 방어는 그대로 유지하세요. 마이그레이션은 스크립트 한 번 교체와 검증 엔드포인트 한 번 변경입니다.

AArkose / FunCAPTCHACurrent setup~10 minCaptchaLaDrop-in target

코드 변경 예시

Before — Arkose / FunCAPTCHA
<script src="https://YOUR_PUBLIC_KEY.arkoselabs.com/v2/YOUR_PUBLIC_KEY/api.js" data-callback="onSuccess" async defer></script>
<script>
  function onSuccess(token) {
    document.getElementById('arkose-token').value = token
  }
</script>
<input type="hidden" id="arkose-token" name="arkose-token" />
After — CaptchaLa
<button id="login-btn">Sign in</button>
<script src="https://cdn.captcha-cdn.net/captchala-loader.js"></script>
<script>
  loadCaptchala(() => Captchala.init({ appKey: 'YOUR_APP_KEY', action: 'login' })
    .onSuccess(res => onToken(res.token))
    .bindTo('#login-btn'));
</script>
Before — Arkose server verify (Node)
const res = await fetch('https://verify-api.arkoselabs.com/api/v4/verify/', {
  method: 'POST',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  body: new URLSearchParams({
    private_key: process.env.ARKOSE_PRIVATE_KEY,
    session_token: req.body['arkose-token'],
  }),
})
const data = await res.json()
if (data.session_details?.solved !== true) return res.status(400).json({ error: 'bot' })
After — CaptchaLa server verify (Node)
const res = await fetch('https://apiv1.captcha.la/v1/validate', {
  method: 'POST',
  headers: {
    'X-App-Key': process.env.CAPTCHALA_APP_KEY,
    'X-App-Secret': process.env.CAPTCHALA_APP_SECRET,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ pass_token: req.body['captchala-token'] }),
})
const { data } = await res.json()
if (!data || !data.valid) return res.status(400).json({ error: 'bot' })

마이그레이션 단계

  1. 1

    가입하고 App Key + Secret 받기

    무료 CaptchaLa 계정을 만드세요. Arkose와 달리 PoC도 구매 절차도 없습니다. 가격은 공개되어 있고 셀프서비스입니다. 무료 등급으로 초기 테스트를 커버합니다.

  2. 2

    Arkose SDK와 콜백 연결 제거

    Arkose script 태그, 콜백 함수, 콜백에서 채우던 숨김 입력을 삭제하세요. CaptchaLa는 간단한 div 자리표시자를 사용하며 콜백 연결이 필요 없습니다.

  3. 3

    CaptchaLa 위젯 추가

    Arkose 위젯이 있던 자리에 당사 div와 script 태그를 넣으세요. 숨김 토큰 필드는 captchala-token으로 자동 채워지며 직접 관리할 필요가 없습니다.

  4. 4

    서버 검증 업데이트

    Arkose의 session_details.solved 검사를 당사 valid 플래그(data.valid)로 교체하세요. 엔드포인트는 apiv1.captcha.la/v1/validate로 변경됩니다. 본문은 form-urlencoded 대신 JSON이 됩니다.

  5. 5

    계약 종료 계획

    Arkose 계약은 보통 자동 갱신되는 연간 계약입니다. 계약서의 해지 기한을 확인하고 법무/구매 부서에 통지하세요. 대부분의 팀은 종료 기간 동안 30일간 두 시스템을 병행합니다.

자주 묻는 질문

전환하면 봇 탐지 정확도를 잃게 되나요?

대부분의 워크로드에서는 측정 가능한 차이가 없습니다. Arkose의 챌린지는 기본적으로 의도적으로 당사보다 어렵지만, 그들이 잡는 봇 집단과 당사가 잡는 봇 집단은 일반적인 제품 트래픽에서 크게 겹칩니다. Roblox / Microsoft 규모에서 특정 적대 세력을 상대한다면 답은 더 미묘합니다. 먼저 상담해 주세요.

계약 중복 기간은 어떻게 처리하나요?

종료 기간 동안 두 시스템을 나란히 운영하세요. 폼 A는 Arkose를 유지하고, 폼 B는 CaptchaLa로 전환합니다. 전환율과 봇 비율을 비교하세요. 대부분의 팀은 봇 비율이 유지되고 사용자 마찰 비율이 떨어지는 것을 확인합니다. 그런 다음 계약 갱신 시점에 Arkose를 폐기하세요.

Arkose의 위험 텔레메트리 / 분석 대시보드는 어떻게 되나요?

CaptchaLa에는 챌린지 비율, 성공률, 위험 점수 분포, 지역별 분석 등 비슷한 텔레메트리를 제공하는 자체 대시보드가 있습니다. Arkose Insights에서 넘어온다면 익숙한 형태일 것입니다.