SilentShield는 PHP 애플리케이션을 위한 보이지 않는 GDPR 준수 CAPTCHA 대안입니다. 양식에 클라이언트 스크립트를 추가하고, 모든 제출을 서버에서 단 한 번의 HTTP 호출과 하나의 API 키로 검증합니다 — 설치할 것도, 관리할 것도 없습니다. 쿠키 없음, 추적 없음, 개인정보 없음이며 호스팅은 기본적으로 EU 내에서만 이루어집니다.
보이지 않는 CAPTCHA — PHP
API 키 하나와 PHP 몇 줄이면 됩니다 — 패키지도, 의존성도 없습니다. Laravel, Symfony, 순수 PHP 모두에서 동작합니다. 보이지 않고, GDPR을 준수하며, 몇 분이면 연동됩니다.

PHP Developer Features
코드 예제
요구 사항
# No package, no dependency.
# PHP 8.1 or newer with the cURL extension — that is all.
php -m | grep curl프런트엔드 삽입
<!-- Add to <head> with SRI for security -->
(function () {
var KEY = "YOUR_API_KEY";
var SITE = location.hostname;
var V = "2025.09.1";
var s = document.createElement('script');
s.src = "https://api.silentshield.io/client.js?k=" + encodeURIComponent(KEY)
+ "&v=" + encodeURIComponent(V)
+ "&site=" + encodeURIComponent(SITE);
s.async = true;
s.crossOrigin = "anonymous";
document.head.appendChild(s);
})();백엔드 검증
<?php
$api_key = "YOUR_API_KEY";
$nonce = $_POST['behavior_nonce'] ?? ''; // hidden input injected by client.js
$payload = json_encode(['nonce' => $nonce]);
$ch = curl_init("https://api.silentshield.io/v1/verify");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json",
"api-key: " . $api_key,
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$response = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($http_code !== 200) {
error_log("SilentShield API error: " . $http_code);
// Fail secure: reject on API errors
exit(json_encode(['error' => 'Verification failed']));
}
$data = json_decode($response, true);
$is_human = $data['ok'] && $data['verdict'] === 'human' && $data['confidence'] >= 0.7;
if (!$is_human) {
error_log("Bot detected. Nonce: " . ($data['requested_nonce'] ?? 'unknown'));
exit(json_encode(['error' => 'Bot detected']));
}PHP에서 SilentShield가 작동하는 방식
SilentShield는 PHP 양식에 보이지 않는 검사를 추가하고 각 제출을 서버에서 검증합니다. 방문자가 양식을 작성하는 동안 클라이언트 스크립트가 백그라운드에서 실행되고, 생성된 토큰이 요청과 함께 전송됩니다. PHP 백엔드가 처리 전에 토큰을 확인하므로 실제 사용자에게는 퍼즐이 표시되지 않습니다.
한 번의 호출, 하나의 API 키
검증은 https://api.silentshield.io/api/v1/captcha/verify-nonce 로의 단일 POST이며, 키는 X-Api-Key 헤더에 넣습니다. 응답에서 ok를 읽고 false이면 제출을 거부하세요. 동일한 다섯 줄이 순수 PHP는 물론 Laravel과 Symfony에서도 동작합니다 — HTTP 호출에 프레임워크 고유의 것은 없습니다.
설정 안내
SilentShield 클라이언트 스크립트 https://api.silentshield.io/client.js?k=YOUR_API_KEY 를 양식에 추가하고 대시보드에서 API 키를 복사하세요. 제출 시 요청에서 토큰을 읽고 SilentShield\Client를 생성한 다음 verify를 호출하세요. 검사에 통과하면 양식을 처리하고, 그렇지 않으면 403 응답을 반환하여 제출을 거부하세요.
기본적으로 제공되는 개인정보 보호 및 접근성
SilentShield는 쿠키, 추적, 개인 데이터를 사용하지 않으므로 PHP 양식이 GDPR을 준수하도록 유지합니다. 모든 검증은 기본적으로 EU 내에서만 운영되는 인프라에서 실행됩니다. 이미지나 오디오 퍼즐이 없으므로 이 보호 기능은 WCAG 2.1 AA를 충족하며 키보드 및 스크린 리더 사용자가 계속 접근할 수 있습니다.