Oferta para nuevos clientes−20 %20 % de descuento los primeros 3 meses con pago mensualVer tarifas
SilentShield

SilentShield es una alternativa invisible al CAPTCHA, conforme al RGPD, para aplicaciones PHP. Añade un script de cliente a sus formularios y verifica cada envío en el servidor con una sola llamada HTTP y una clave API: nada que instalar, nada que mantener. Sin cookies, sin rastreo entre sitios web y con alojamiento en la UE de forma predeterminada.

CAPTCHA invisible para PHP

Una clave de API y unas pocas líneas de PHP — sin necesidad de paquetes. Funciona en Laravel, Symfony o PHP puro. Invisible y conforme al RGPD.

Integración de CAPTCHA en PHP

PHP Developer Features

Sin dependencia: cinco líneas de PHP puro
Compatible con PHP 8.1+
Independiente del framework — Laravel, Symfony o PHP puro
Basado en nonce — invisible, sin interacción del usuario
Una clave API, una llamada: POST /captcha/verify-nonce
Ante una caída de la API, usted decide: el ejemplo rechaza, una línea deja pasar los envíos

Ejemplos de código

Requisitos

# No package, no dependency.
# PHP 8.1 or newer with the cURL extension — that is all.
php -m | grep curl

Integración en el frontend

<!-- In <head> or before </body> of every page with a form -->
<script src="https://api.silentshield.io/client.js?k=YOUR_API_KEY" defer></script>

Verificación en el backend

<?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/api/v1/captcha/verify-nonce");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "Content-Type: application/json",
  "X-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']));
}

Cómo funciona SilentShield en PHP

SilentShield añade una comprobación invisible a sus formularios PHP y verifica cada envío en el servidor. El script de cliente se ejecuta en segundo plano mientras el visitante rellena el formulario, y el token generado se envía con la solicitud. Su backend PHP confirma el token antes de procesarlo, por lo que a los usuarios reales nunca se les muestra un rompecabezas.

Una llamada, una clave API

La verificación es un único POST a https://api.silentshield.io/api/v1/captcha/verify-nonce con su clave en la cabecera X-Api-Key. Lea ok en la respuesta y rechace el envío cuando sea false. Las mismas cinco líneas funcionan en PHP puro igual que en Laravel o Symfony: una llamada HTTP no tiene nada específico de framework.

Guía de configuración

Añada el script de cliente de SilentShield https://api.silentshield.io/client.js?k=YOUR_API_KEY a su formulario y copie su clave API desde el panel. Al enviar, lea el token de la solicitud, cree un SilentShield\Client y llame a verify. Cuando la comprobación es correcta, procese el formulario; de lo contrario, devuelva una respuesta 403 y rechace el envío.

Privacidad y accesibilidad de forma predeterminada

SilentShield no usa cookies ni rastreo entre sitios web; la dirección IP solo sirve para la verificación y no se almacena en texto plano. Así puede proteger sus formularios PHP conforme al RGPD. La verificación se ejecuta de forma predeterminada en nuestros servidores en Alemania. Como no hay rompecabezas de imagen ni de audio, la protección cumple con las WCAG 2.1 AA y sigue siendo accesible para usuarios de teclado y de lectores de pantalla.

Integre PHP ahora

Unas pocas líneas de PHP — añada el script y verifique en el servidor.

Preguntas frecuentes

¿Cómo añado un CAPTCHA a un sitio PHP?

Añada el script de cliente `https://api.silentshield.io/client.js?k=YOUR_API_KEY` a sus páginas y verifique después el nonce de prueba de trabajo en PHP con un único POST a `https://api.silentshield.io/api/v1/captcha/verify-nonce`, enviando su clave en la cabecera `X-Api-Key`. Una clave API cubre el frontend y el backend.

¿Hay un SDK de PHP para SilentShield?

No lo necesita. La verificación es una sola llamada HTTP, así que unas pocas líneas de PHP puro con cURL bastan en cualquier framework: Laravel, Symfony o ninguno. Añada el script de cliente y compruebe el campo `ok` de la respuesta antes de aceptar el formulario. Si prefiere un paquete, la guía de Agent Enforce muestra la instalación directamente desde GitHub.

¿Cómo verifico un nonce de SilentShield en PHP?

Envíe el `behavior_nonce` que remitió su formulario mediante POST a `https://api.silentshield.io/api/v1/captcha/verify-nonce`, con su clave API en la cabecera `X-Api-Key`. La respuesta incluye `ok`, `verdict` y `confidence`; rechace el envío cuando `ok` sea false.

¿Funciona SilentShield con Laravel o PHP puro?

Sí. Como la verificación es una llamada HTTP corriente, funciona en cualquier aplicación PHP: Laravel, Symfony o PHP puro. Añada el script de cliente a sus formularios y verifique el nonce en el servidor antes de procesar el envío.

¿Cumple SilentShield el RGPD en un backend PHP?

Sí. Sea cual sea su backend, SilentShield guarda los datos en nuestros servidores en Alemania, no establece cookies, no realiza seguimiento entre sitios web y almacena la dirección IP solo como hash. Su servidor PHP verifica el nonce con una única llamada HTTPS.

¿Tienen que resolver un acertijo los usuarios de PHP?

No en el modo predeterminado. El script del cliente verifica a los usuarios reales en segundo plano mediante señales de comportamiento y un nonce de prueba de trabajo; solo cuando el resultado no es claro aparece una breve tarea aritmética. El widget está evaluado según WCAG 2.1 AA, y su backend rechaza a los bots tras la comprobación en el servidor.