diff --git a/README.md b/README.md index f85918f6..a3d0d202 100755 --- a/README.md +++ b/README.md @@ -19,16 +19,22 @@ The extensions are designed to help inspect, parse, validate, and construct comm They are also intended to support software emulation of common HSM-style payment workflows for development, QA, interoperability, and integration testing. -Initial focus areas include: -- TR-31 key block parsing and encoding +Current coverage includes: +- TR-31 key block parsing and TR-34 B9 envelope inspection - Key metadata inspection and structural validation +- DUKPT (TDES) key derivation +- PIN block format parsing, construction, and translation (ISO 9564 formats 0, 1, 3) +- Payment-specific MAC and KCV utilities (HMAC, AES-CMAC, TDES-CMAC, ISO 9797-1, AS2805, DUKPT variants) +- EMV ARQC/ARPC generation and verification +- EMV issuer-script MAC generation and verification +- Card validation data (CVV/CVC, CVV2/CVC2, iCVV) generation and verification +- IBM 3624 PIN offset and VISA PVV issuer-verification helpers +- Test PAN generation and PAN parsing across major card networks - Deterministic, test-vector-driven transformations suitable for offline analysis Future extensions may include: -- TR-31 key block validation and decryption (with provided KBPKs) -- DUKPT (3DES and AES) derivation helpers -- PIN block format parsing and construction -- Payment-specific MAC and KCV utilities +- TR-31 key block decryption with provided KBPKs +- AES DUKPT derivation ### Non-goals These extensions are not intended to: @@ -41,9 +47,9 @@ All operations are designed to be explicit, inspectable, and composable, consist ### Organization Custom operations live under: -src/core/operations/payment-crypto/ +src/core/operations/ -They appear in the CyberChef UI under the **Payment Cryptography** category. +They appear in the CyberChef UI under the **Payments** category. Recipe starter docs: - [PAYMENT_RECIPES.md](PAYMENT_RECIPES.md)