Saltar al contenido principal
Version: Guardian v0.1.0

Guardian SDK

Surt Guardian es un SDK de inteligencia de dispositivos para aplicaciones móviles y web. Recopila señales del dispositivo, ejecuta verificaciones de integridad del dispositivo cuando está disponible y envía todo al backend de Surt para la evaluación de riesgo. Todas las decisiones de seguridad se toman del lado del servidor.

1
Instalar
Agrega el SDK a tu proyecto
2
Inicializar
Configura al inicio de la aplicación
3
Generar JWT + Verificar
Obtén un JWT desde tu backend y luego llama a verify()

Cómo funciona​

  1. Instala el SDK en tu proyecto
  2. Inicializa el SDK al arrancar la aplicación (sin clave de API en el cliente)
  3. Tu backend genera un JWT de corta duración llamando al endpoint de preflight de Surt con tu clave de API sp_live_* y el contexto de la transacción
  4. Llama a verify(jwt) con un JWT fresco para obtener una decisión de riesgo directa, o collect(jwt?) para el flujo servidor a servidor
  5. Recibe una decisión de riesgo de verify(), o un payload cifrado de collect() que tu backend envía a Surt

El SDK gestiona internamente las huellas digitales del dispositivo y la recopilación de datos. La clave de API sp_live_* nunca sale de tu backend; el cliente solo maneja JWTs de corta duración.

Dos rutas de verificación​

  • verify(jwt): el SDK llama a Surt directamente y devuelve allowed: true/false a tu aplicación. Requiere un JWT fresco por cada llamada (el JWT es de un solo uso). Solo SDKs nativos.
  • collect(jwt?): el SDK recopila y cifra los datos localmente, y tu backend llama al endpoint de evaluación de Surt. El JWT es opcional; pásalo solo si deseas incrustar la IP pública del dispositivo en el payload. Compatible con todas las plataformas, incluyendo web.

Compatibilidad de plataformas​

PlataformaPaqueteDistribuciónverify()collect()
Web (Navegador)@surtai/guardian-webnpmn/d✓
React Native@surtai/guardian-rnnpm✓✓
iOS (Swift)SurtGuardianSDKSwift Package Manager✓✓
Android (Kotlin)com.surt.guardian:securitysdkMaven (GitHub Packages)✓✓

Las plataformas nativas comparten la misma superficie de API y se versionan de forma sincronizada. El SDK web es solo de recopilación: no tiene verify() ni inicialización a nivel de aplicación.

Qué recopila​

Sin permisos: Información de hardware, indicadores de seguridad (root/jailbreak, emulador, depurador, VPN, Frida, Xposed, Magisk), información de software, batería, tipo de red.

Con permisos (opt-in): Ubicación GPS, detalles de WiFi, información de SIM/operador, información de cámara.

Enlaces rápidos​