4386 Commits

Author SHA1 Message Date
J8k3
634c835dfd Rename payment ops to domain-prefix-first; remove upstream ops from Payments category
All 31 payment operation display names now lead with their domain prefix
(EMV, DUKPT, PIN Block, PAN, etc.) so they sort and scan by topic in the
UI list. 8 upstream CyberChef ops (AES Encrypt/Decrypt, Triple DES,
AES Key Wrap/Unwrap, HMAC, CMAC) removed from the Payments category.

Updated: op this.name fields, Categories.json, Payment.mjs tests,
PAYMENT_RECIPES.md, AWS_PAYMENT_CRYPTOGRAPHY_RECIPES.md, AGENTS.md.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18 09:29:52 -04:00
github-actions[bot]
32ef373485 Merge remote-tracking branch 'upstream/master' 2026-05-18 09:37:11 +00:00
J8k3
f246a7dcf9 Rename Derive DUKPT Key to Derive DUKPT TDES Key
Mirrors the naming convention of Derive DUKPT AES Key.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 21:56:03 -04:00
Jacob Marks
01f396d121 Fix #4: delete TranslatePaymentPINData (duplicate of TranslatePINBlock) 2026-05-17 20:34:52 -04:00
Jacob Marks
0aadfb94e3 Fix GenerateTestPAN: random fills, suppress cardType when unknown 2026-05-17 13:33:28 -04:00
Jacob Marks
c405326f03 Fix 3 test assertions: TR-31 compliance fields, PAN card-type fields 2026-05-17 08:24:13 -04:00
Jacob Marks
cd4442cc62 Fix 3 test assertions: TR-31 compliance fields, PAN card-type fields 2026-05-17 08:23:10 -04:00
Jacob Marks
6fc1c26b24 Fix Payment.mjs: correct 4 op names (payShield/Futurex uppercase C, TR-31 Key Block, TR-34 Key Transport) and TR-34 expected output 2026-05-17 08:16:56 -04:00
Jacob Marks
43d8a03a5b Fix Categories.json: add new ops, fix renamed op names, move ECDH to Ciphers 2026-05-16 23:42:29 -04:00
Jacob Marks
7081361db7 Fix Pan.mjs: add missing trailing newline (eol-last) 2026-05-16 23:38:20 -04:00
Jacob Marks
35e2f0a2d8 Fix ParseTR31KeyBlock lint: add constructor JSDoc 2026-05-16 23:35:52 -04:00
Jacob Marks
6bbafe7ff3 Fix ParseTR34B9Envelope lint: JSDoc on parseAsnLength, hexStr, constructor 2026-05-16 23:35:31 -04:00
Jacob Marks
0dda2fe08a Fix GenerateKey lint: JSDoc on helper functions and constructor 2026-05-16 23:35:27 -04:00
Jacob Marks
7a4b47fa6b Fix DeriveDUKPTAESKey lint: JSDoc on helpers, constructor, dot-notation 2026-05-16 23:35:24 -04:00
Jacob Marks
b2e3100886 Fix DeriveECDHKeyMaterial lint: brace-style, indentation, operator-linebreak, constructor JSDoc 2026-05-16 23:35:21 -04:00
Jacob Marks
718824a42f Fix Pan.mjs: operator-linebreak for cardTypeNote ternary 2026-05-16 23:35:01 -04:00
Jacob Marks
e08d401956 Add DeriveECDHKeyMaterial tests: P-256 raw secret, Concat KDF SHA-256, missing key error 2026-05-16 23:24:20 -04:00
Jacob Marks
550d0b7ec6 Fix DeriveECDHKeyMaterial: real test vectors, None KDF fix, P-521 comment, module=Ciphers 2026-05-16 23:21:51 -04:00
Jacob Marks
89e39a8642 Move DeriveECDHKeyMaterial from Payment to Ciphers module 2026-05-16 23:08:39 -04:00
Jacob Marks
2a5b1deb2e Add Payment Operation Maintenance rules to AGENTS.md 2026-05-16 23:04:55 -04:00
Jacob Marks
5e473899ea Update PAYMENT_RECIPES.md: fix stale names, add new operations, naming convention section 2026-05-16 23:04:54 -04:00
Jacob Marks
c32be5a5c5 Capitalise display name: "Parse TR-34 Key Transport" 2026-05-16 23:02:54 -04:00
Jacob Marks
ff90e41269 Capitalise display name: "Parse TR-31 Key Block" 2026-05-16 23:02:52 -04:00
Jacob Marks
c268dd3a1e Capitalise display name: "Parse Futurex Excrypt Command" 2026-05-16 23:02:51 -04:00
Jacob Marks
e19bfacd4d Capitalise display name: "Parse Thales payShield Command" 2026-05-16 23:02:49 -04:00
Jacob Marks
517a56e826 Add card type classification and MII description to parsePan 2026-05-16 22:50:41 -04:00
Jacob Marks
062b60e0c6 Revert "Encode PIN Block" back to "Build PIN Block" 2026-05-16 22:50:03 -04:00
Jacob Marks
340db6122d Revert "Decode PIN Block" back to "Parse PIN Block" 2026-05-16 22:49:53 -04:00
Jacob Marks
9590eccd41 Rename "Build PIN Block" to "Encode PIN Block" 2026-05-16 22:48:35 -04:00
Jacob Marks
91d8d0ec37 Rename "Parse PIN Block" to "Decode PIN Block" 2026-05-16 22:48:21 -04:00
Jacob Marks
dd7a26aa1f Broaden ParseTR34B9Envelope to TR-34 key transport: message type table, error codes, ASN.1 envelope peek 2026-05-16 22:45:40 -04:00
Jacob Marks
cf3023bc82 Add GenerateKey operation for random payment keys and IVs 2026-05-16 22:45:30 -04:00
Jacob Marks
4451ddbee3 Enhance ParseTR31KeyBlock with full X9.143 field decoding and compliance checks 2026-05-16 22:45:22 -04:00
Jacob Marks
9207d79356 Add Derive DUKPT AES Key operation (ANSI X9.24-3 AES-128) 2026-05-16 22:37:36 -04:00
J8k3
46228977d6 Update repo agent guidance 2026-05-16 10:39:46 -04:00
J8k3
17c004a66b Add Futurex Excrypt command parser 2026-05-16 10:38:09 -04:00
J8k3
5cc38496bd Allow overriding test timeout 2026-05-16 10:21:26 -04:00
J8k3
1aa54684d8 Add Thales payShield command parser 2026-05-16 10:18:33 -04:00
J8k3
9e9904870c Update payment metadata and restore Docker test baseline 2026-05-16 09:26:39 -04:00
J8k3
b76a0e99be Update README to reflect current payment extension scope
- Fix operations path: payment-crypto/ subdirectory never existed; ops live in src/core/operations/
- Fix UI category name: "Payment Cryptography" -> "Payments"
- Replace stale future-extensions list with accurate current coverage (DUKPT, PIN blocks, MAC/KCV, EMV, card validation, PAN tools all implemented)
- Keep only genuine remaining future work: TR-31 KBPK decryption and AES DUKPT

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-16 09:25:49 -04:00
dependabot[bot]
9803553b61
chore (deps): bump @codemirror/view from 6.41.1 to 6.43.0 (#2384)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-16 11:08:49 +01:00
dependabot[bot]
8f9a01ef33
chore (deps): bump globals from 17.5.0 to 17.6.0 (#2386)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-16 10:39:19 +01:00
dependabot[bot]
ebeb4f7d6a
chore (deps): bump the patch-updates group across 1 directory with 3 updates (#2388)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-16 10:34:24 +01:00
GCHQDeveloper581
0bb5472e50
[StepSecurity] Apply security best practices (#2378)
Signed-off-by: StepSecurity Bot <bot@stepsecurity.io>
Co-authored-by: StepSecurity Bot <bot@stepsecurity.io>
2026-05-14 14:59:07 +01:00
GCHQDeveloper581
3471731aaf
Build docker container for arm v7 as well (#2379) 2026-05-14 13:51:58 +01:00
Jacob Marks
e1b5ae50b4
Merge pull request #1 from J8k3/J8k3-patch-1
Revise README for CyberChef Payments updates
2026-05-12 15:27:04 -04:00
Jacob Marks
337457fa45
Revise README for CyberChef Payments updates
Updated links and descriptions for CyberChef Payments.
2026-05-12 15:20:47 -04:00
Jacob Marks
f7dcf46962
Install brotli and add decompression steps
Added steps to install brotli and decompress build files.
2026-05-12 14:57:24 -04:00
Jacob Marks
f93e7bbbf5
Update expected result length in chef.help test 2026-05-12 14:44:23 -04:00
Jacob Marks
0a544fb007
Delete .github/workflows/deploy.yml
Merged into a broader workflow that also does builds.
2026-05-12 14:39:46 -04:00