Descrizione
Nodo JWT (JSON Web Token) completo — firma, verifica e decodifica — implementato su `node:crypto` HMAC (HS256/384/512) senza dipendenze esterne, con verifica della firma a TEMPO COSTANTE (timingSafeEqual) per neutralizzare i timing attack e controllo automatico della scadenza (claim `exp`). Tre operazioni da dropdown, campi condizionali in UI: (1) SIGN — crea un token firmato da un payload JSON: aggiunge automaticamente `iat` (issued-at) e, se specifichi una durata, `exp` (scadenza) — per emettere token di sessione, magic-link di accesso, inviti, API key temporanee a servizi a valle, handoff sicuro tra sistemi; (2) VERIFY — valida un token in arrivo: controlla la firma con il secret E la scadenza, restituendo `{ verified, signatureValid, expired, payload }` — il check da fare SEMPRE prima di fidarsi del contenuto di un token (es. webhook firmati JWT, callback OAuth, richieste autenticate da un altro tenant); (3) DECODE — legge header e payload SENZA verificare la firma (output `verified:false` esplicito per non illudere) — utile solo per ispezione/debug o per leggere claim non sensibili (es. quale `kid` usare). NB: il decode NON è una verifica — non fidarti mai del payload di un token non verificato. Output: token firmato, oppure { verified, payload, ... }. Use case: verifica un JWT in arrivo da un partner prima di accettare la richiesta (VERIFY); emetti un magic-link di accesso valido 15 minuti (SIGN con exp=900); ispeziona un token per estrarre il claim `sub`/`email` in debug (DECODE); genera un service-token per chiamare un'API interna.
