Back to 0fee
0fee

Cifrado y gestión de credenciales para proveedores de pago

Cómo 0fee.dev cifra las credenciales de proveedores de pago con Fernet/AES, gestiona secretos por app y qué encontró la auditoría de seguridad. Por Juste Thales Gnimavo y Claude.

Juste Thales Gnimavo & Claude | March 27, 2026 2 min 0fee
EN/ FR/ ES
encryptionsecuritycredentialsfernetaespayment-providers

Cuando un comerciante conecta su cuenta de Stripe a 0fee.dev, envía su clave secreta de Stripe. Cuando conecta PaiementPro, envía su ID de comerciante y clave API. Estas credenciales son las llaves a la capacidad de procesamiento de pagos del comerciante. Si se filtran, un atacante puede iniciar pagos, ver datos de transacciones o robar fondos. Cifrar estas credenciales en reposo no es opcional -- es el requisito mínimo de seguridad para un orquestador de pagos.

El servicio de cifrado usa la biblioteca cryptography de Python con cifrado simétrico Fernet, que está construido sobre AES-128-CBC con autenticación HMAC-SHA256. Fernet fue elegido sobre AES crudo porque maneja vectores de inicialización, autenticación y relleno internamente, eliminando categorías enteras de errores de implementación criptográfica.

La clave maestra de cifrado de la variable de entorno se procesa a través de PBKDF2 con 100.000 iteraciones antes de usarse, proporcionando estiramiento de clave y normalización.

Las credenciales se almacenan como un diccionario JSON, cifradas como un blob único. Cuando se inicia un pago, el motor de enrutamiento determina qué proveedor usar y el sistema recupera y descifra las credenciales de ese proveedor. Los comerciantes gestionan sus credenciales a través del panel, y las credenciales cifradas nunca se devuelven al listar -- solo metadatos.

Una auditoría de seguridad identificó mejoras: salt aleatorio por cifrado (en lugar del salt fijo original), enmascaramiento de claves API en logs, un endpoint de validación de credenciales y un mecanismo de rotación de claves como trabajo futuro.


Este artículo es parte de la serie "Cómo construimos 0fee.dev". 0fee.dev es un orquestador de pagos que cubre más de 53 proveedores en más de 200 países, construido por Juste Thales Gnimavo y Claude desde Abiyán sin ningún ingeniero humano. Sigue la serie para conocer la historia completa de construcción.

Share this article:

Responses

Write a response
0/2000
Loading responses...

Related Articles

Thales & Claude deblo

El prompt decía que lo anunciara. El modelo no lo hizo. Así que lo hizo el worker: cerrar un silencio de 15 segundos en Déblo Voice

Déblo Voice se quedaba en silencio unos 15 segundos cada vez que una pregunta difícil activaba una búsqueda profunda. El prompt ya exigía un anuncio, pero el modelo de audio nativo emite la llamada a la función como su primer token. Además, el silencio tenía dos partes, la ejecución de la herramienta y la latencia de la respuesta, así que ningún prompt podía cerrarlo. Llevamos la garantía al worker de LiveKit: un anuncio pregrabado con la voz y el idioma de la sesión, y un suave sonido de tecleo mientras el agente piensa. Probado en producción el 16 de octubre de 2026: 14 y 17,5 segundos de silencio del lado del modelo, unos 0,4 segundos percibidos por el usuario.

13 min Oct 16, 2026
deblodeblo-voicevoice-aigemini-live +17
Thales & Claude zerosuite

El servidor que no dimos de baja: vaciar una máquina de producción en una noche, y cada número que comprobamos

Una noche, seis aplicaciones migradas fila por fila, tres copias de seguridad vacías, una sin destino y un servidor cuyo futuro cambió tres veces.

19 min Oct 2, 2026
caspclaude-codeclaude-opus-5.5infrastructure +10
Thales & Claude zerosuite

El orquestador no programa: trece sesiones en un día, un navegador que verifica y saber cuándo parar

Un día, una plataforma privada de un cliente, trece sesiones headless de Claude encadenadas por un orquestador que nunca escribe código. Verificar en el navegador del CEO, agrupar correcciones sin soltar la gate y escribir cuándo cerrar una sesión.

19 min Sep 30, 2026
caspclaude-codeclaude-opus-5.5multi-session +12