boltx-crypto

n8n community node — AES-CBC decrypt (aes-128/192/256) + bcrypt hash/compare, key/data động per-item (multi-tenant). Khớp type với goworker custom executor.

Package Information

Released: 3 mo ago
Downloads: 319 weekly / 319 monthly
Latest Version: 0.2.0
Author: BoltX

Documentation

n8n-nodes-boltx-crypto

Node cộng đồng n8n: giải mã AES-CBC (aes-128/192/256) với key / iv / data động per-item.

Khớp type n8n-nodes-boltx-crypto.crypto với custom executor BoltXCryptoNode trong goworker
(worker/internal/engine/node_boltx_crypto.go) — chạy native bằng Go, không cần goja Code node.

Operation

  • AES Decrypt (aesDecrypt): giải mã AES-CBC, unpad PKCS7.

Tham số

Field Mặc định Ghi chú
algorithm aes-128-cbc aes-128/192/256-cbc (key 16/24/32 byte sau decode)
data — ciphertext, vd ={{ $json.body.data }}
inputEncoding base64 encoding của data
key — key, vd hằng base64 hoặc đọc từ DB row
keyEncoding base64
iv — initialization vector
ivEncoding base64
jsonParse true parse plaintext thành JSON object làm output; tắt → { data: plaintext }
outputEncoding utf8 chỉ khi jsonParse=false

Use case: giải mã payload eKYC VNPay

Thay Code node crypto.createDecipheriv('aes-128-cbc', key, iv):

  • data = ={{ $('ekyc/i/update-customer-info').first().json.body.data }}
  • key = nZ23RYcu2u1fposjpgbCCw== (base64, GLOBAL — khớp Java aes.aes-key)
  • iv = EvaSqYFLYbyUzJszpE3Tag== (base64, GLOBAL — khớp Java aes.aes-iv)
  • jsonParse = true → output trực tiếp object eKYC (customerCode, partnerCode, cardNumber, …)

Validate nghiệp vụ (step=liveness, isSuccess=true, field bắt buộc) đặt ở node sau.

Build

npm install && npm run build   # tsc + copy icon → dist/

Parity giải mã được test trong goworker: worker/internal/engine/node_boltx_crypto_test.go.

Discussion