Descrizione
Coltellino svizzero crittografico enterprise basato esclusivamente su `node:crypto` (zero dipendenze esterne, nessuna superficie d'attacco supply-chain) per tutte le operazioni di integrità, autenticazione e codifica dei dati nei workflow. Cinque operazioni in un solo nodo, ognuna selezionabile da dropdown con i parametri che appaiono/scompaiono in UI in base alla scelta (zero campi inutili a schermo): (1) HASH — digest a senso unico (SHA-256/384/512, SHA-1, MD5) di qualsiasi stringa o dell'input del nodo, output in hex o base64, per fingerprint di documenti, idempotency-key deterministiche da payload, ETag, integrity check di file scaricati, deduplica per contenuto; (2) HMAC — hash autenticato con chiave segreta, l'operazione fondamentale per VERIFICARE le firme dei webhook in arrivo (Stripe `Stripe-Signature`, GitHub `X-Hub-Signature-256`, Shopify, PayPal) e per FIRMARE le proprie callback in uscita — confronto a tempo costante (timing-safe) implementato a valle per evitare timing attack sulla verifica; (3) ENCODE / (4) DECODE — conversione tra utf8 ↔ base64 / hex / base64url, per preparare Basic Auth headers, data-URI, payload binari in JSON, token; (5) RANDOM — bytes crittograficamente sicuri (CSPRNG) per generare secret, salt, nonce, token di reset, state OAuth anti-CSRF. Output: { result, operation, algorithm, encoding } — sempre osservabile e loggabile. Use case: verifica firma webhook Stripe prima di processare il pagamento (HMAC-SHA256 del raw body con il signing secret, confronto con l'header); idempotency key SHA-256 del payload ordine per non creare fatture duplicate sui retry; generazione token di reset password sicuro (RANDOM 32 byte → hex); Basic Auth header (ENCODE "user:pass" → base64); fingerprint deduplica articoli scraped (HASH del titolo+url).
