Crypto

action_crypto · action · Utility · Disponibile · v1.0.0

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, per FIRMARE le proprie callback in uscita e calcolare digest autenticati; (2b) HMAC-VERIFY — verifica le firme dei webhook in arrivo (Stripe `Stripe-Signature`, GitHub `X-Hub-Signature-256`, Shopify, PayPal): calcola l'HMAC del body e lo confronta con la firma attesa a TEMPO COSTANTE (timingSafeEqual) — l'unico modo sicuro, perché un confronto con `==` nel workflow esporrebbe a timing attack; ritorna `{ valid: boolean }`; (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).

⚙️ Parametri di configurazione

Campi mostrati nell’editor quando si configura il nodo. Generati direttamente dal NodeDefconfigFields.

CampoTipoRequiredDefaultDescrizione
operation
Operazione
enum
hashhmachmac-verifyencodedecoderandom
sihashhash = digest one-way · hmac = firma con chiave · hmac-verify = verifica firma webhook (timing-safe) · encode/decode = base64/hex · random = bytes sicuri.
value
Valore in ingresso
expressionnoinputTesto o espressione da elaborare. Vuoto = usa l'input del nodo.
algorithm
Algoritmo
enum
sha256sha512sha384sha1md5
nosha256SHA-256 raccomandato. MD5/SHA-1 solo per compatibilità legacy (NON sicuri per firme).
key
Chiave segreta (HMAC)
string (encrypted)noIl signing secret (es. webhook secret di Stripe/GitHub). Mai committare in chiaro.
expected
Firma attesa (da verificare)
expressionnoLa firma ricevuta (es. header X-Hub-Signature-256 / Stripe-Signature) da confrontare a tempo costante. Nella stessa codifica dell'output (hex/base64).
encoding
Codifica output
enum
hexbase64
nohex
targetFormat
Codifica destinazione
enum
base64base64urlhex
nobase64
sourceFormat
Codifica sorgente
enum
base64base64urlhex
nobase64
bytes
Numero di byte
numberno32Quanti byte casuali generare (1-1024). 32 = 256 bit, standard per secret/token.

💡 Esempio configurazione

Snippet JSON del nodo come compare nel workflow. I valori sono derivati daidefaultValue e dai parametri required.

{
  "id": "node-action_crypto-1",
  "defId": "action_crypto",
  "label": "Crypto",
  "config": {
    "operation": "hash",
    "value": "input",
    "algorithm": "sha256",
    "encoding": "hex",
    "targetFormat": "base64",
    "sourceFormat": "base64",
    "bytes": 32
  }
}

🔗 Nodi correlati nella stessa categoria

Pronto a usare Crypto?

Disponibile da subito in tutti i piani FlowForge. Provalo gratis senza carta di credito.

Inizia gratisSfoglia tutti i nodi