This commit is contained in:
iceman1001 2021-12-31 10:55:16 +01:00
parent 04d7f18e55
commit bd8a40716c
2 changed files with 41 additions and 5 deletions

View file

@ -1,7 +1,25 @@
# EMV commands # EMV commands
<a id="top"></a> <a id="top"></a>
### EMV Implemented parts: Notes on EMV works on Proxmark3
# Table of Contents
- [EMV commands](#emv-commands)
- [Table of Contents](#table-of-contents)
- [EMV Implemented parts](#emv-implemented-parts)
- [Working parts of qVSDC](#working-parts-of-qvsdc)
- [`not implemented` parts of EMV](#not-implemented-parts-of-emv)
- [Commands](#commands)
- [VISA(r) transactions](#visar-transactions)
- [Mastercard(r) transactions](#mastercardr-transactions)
- [all commands](#all-commands)
- [Useful links](#useful-links)
- [EMV kernels](#emv-kernels)
### EMV Implemented parts
^[Top](#top)
- Get ATR|ATS - Get ATR|ATS
- Get AID by PSE (`emv pse`) - Get AID by PSE (`emv pse`)
@ -22,7 +40,7 @@
- Check ARQC cryptogram (`not implemented`) - Check ARQC cryptogram (`not implemented`)
- Issuer scripts processing (`not implemented`) - Issuer scripts processing (`not implemented`)
### Working parts of qVSDC: ### Working parts of qVSDC
^[Top](#top) ^[Top](#top)
- Get ATR|ATS - Get ATR|ATS
@ -58,7 +76,7 @@ command `emv exec` executes EMV transaction. it have parameters:
``` ```
It works for VISA(r) and Mastercard(r) transactions. It may work with other EMV payment system's card (and it works in general cases that is described in EMV). It works for VISA(r) and Mastercard(r) transactions. It may work with other EMV payment system's card (and it works in general cases that is described in EMV).
### VISA(r) transactions: ### VISA(r) transactions
^[Top](#top) ^[Top](#top)
MSD - Magnetic Stripe mode MSD - Magnetic Stripe mode
@ -74,7 +92,7 @@ M/Chip - contact and contactless transaction
Different cards have different modes on/of and different behavior in them. So needs to check card in all this modes. Different cards have different modes on/of and different behavior in them. So needs to check card in all this modes.
MSD - compatibility mode. Now it work always. But it less secure and in near future it will be slowly) disabled. MSD - compatibility mode. Now it work always. But it less secure and in near future it will be slowly) disabled.
### all commands: ### all commands
^[Top](#top) ^[Top](#top)
``` ```
@ -101,7 +119,7 @@ All main commands are parts of EMV specification. Commands than not described th
`emv test` - test all crypto code from emv part of proxmark. `emv test` - test all crypto code from emv part of proxmark.
### Useful links: ### Useful links
^[Top](#top) ^[Top](#top)
EMV specifications EMV specifications

View file

@ -1,8 +1,21 @@
# External flash # External flash
<a id="Top"></a>
External 256kbytes flash is a unique feature of the RDV4 edition. External 256kbytes flash is a unique feature of the RDV4 edition.
# Table of Contents
- [External flash](#external-flash)
- [Table of Contents](#table-of-contents)
- [Addresses](#addresses)
- [Layout](#layout)
- [Page3 Layout](#page3-layout)
- [RSA signature](#rsa-signature)
- [backup first!](#backup-first)
## Addresses ## Addresses
^[Top](#top)
Flash memory is Flash memory is
@ -19,6 +32,7 @@ Therefore a flash address can be interpreted as such:
``` ```
## Layout ## Layout
^[Top](#top)
Page 0: Page 0:
* available for user data * available for user data
@ -44,6 +58,7 @@ Page 3:
* Updating keys dictionaries doesn't require to erase page 3. * Updating keys dictionaries doesn't require to erase page 3.
## Page3 Layout ## Page3 Layout
^[Top](#top)
Page3 is used as follows by the Proxmark3 RDV4 firmware: Page3 is used as follows by the Proxmark3 RDV4 firmware:
@ -69,6 +84,7 @@ Page3 is used as follows by the Proxmark3 RDV4 firmware:
* offset should have been 0x3FF80 but historically it's one byte off and therefore the last byte of the flash is unused * offset should have been 0x3FF80 but historically it's one byte off and therefore the last byte of the flash is unused
## RSA signature ## RSA signature
^[Top](#top)
To ensure your Proxmark3 RDV4 is not a counterfeit product, its external flash contains a RSA signature of the flash unique ID. To ensure your Proxmark3 RDV4 is not a counterfeit product, its external flash contains a RSA signature of the flash unique ID.
You can verify it with: `mem info` You can verify it with: `mem info`
@ -105,6 +121,8 @@ Here below is a sample output of a RDV4 device.
``` ```
# backup first! # backup first!
^[Top](#top)
To make a backup of the signature to file: To make a backup of the signature to file:
`mem dump p f flash_signature_dump o 262015 l 128` `mem dump p f flash_signature_dump o 262015 l 128`