Simula el ciclo completo: solicitud → 402 challenge → pago Lightning → acceso con token L402
Diagrama visual de los 5 pasos que componen una transaccion L402 completa:
GET /ruta a un recurso protegido sin incluir credenciales.HTTP 402 Payment Required y un header WWW-Authenticate: L402 que contiene un macaroon (token criptografico HMAC-SHA256) y una invoice Lightning Network.SHA256(preimage) == payment_hash).Authorization: L402 macaroon:preimage. El servidor verifica el HMAC del macaroon con su root_key y comprueba que el preimage coincide con el payment_hash.200 OK con el contenido protegido.Este flujo es atomico y sin confianza: el pago y la autorizacion estan vinculados criptograficamente. No hay cuentas, registros ni sesiones.
Panel de control para ejecutar el flujo L402 completo de forma automatizada:
/introduccion), un precio en satoshis, y una descripcion. Los servicios se cargan via GET /api/services.Nodo Lightning secundario configurado exclusivamente para testing:
insufficient_balance.POST /api/testpay envia la invoice al LND-Client (puerto gRPC 10010) que ejecuta el pago via Lightning Network.Registro en tiempo real de cada paso del flujo L402. Cada linea esta codificada por colores:
GET o POST que el cliente envia al servidor.WWW-Authenticate, Authorization, y el body de las peticiones.402 Payment Required, 200 OK, confirmacion de pago.Datos clave que aparecen en el log:
root_key secreta. Incluye el payment_hash, service_id y expiracion.lntb en testnet). Contiene el payment_hash y el importe en satoshis.SHA256(preimage) == payment_hash. Solo se revela al completar el pago.macaroon:preimage que se guarda en localStorage y puede reutilizarse hasta que expire.