3 ms·
Chip and pin cards use public key cryptography. From my understanding, you would have to provide the PIN code to the device to first unlock it, and then you cou
by sargun 12y ago
Chip and pin cards use public key cryptography. From my understanding, you would have to provide the PIN code to the device to first unlock it, and then you could verify the authenticity of the card by reading a public key, which identifies the card (and is used in transactions), and providing some nonce for it to sign for offline verification.
They also require the pin code to start the process, so you would have to skim that as well.
In addition to this, in the online scenario it can interact with the payment provider's servers to provide security.
The combination of these methods make rapid stealing of EMV cards difficult.
More info here: http://www.emvco.com/download_agreement.aspx?id=653 http://www.emvco.com/download_agreement.aspx?id=653
- oceanofsolaris 12y agoCan you actually read the public key from the card? A secure system should sign the transaction on the chip, so even a manipulated machine could not steal the card data.
- dfox 12y agoCard's and issuer's public keys can be read from the chip, but these are not directly relevant to actual transaction signing. Even if these keys was relevant, the important part is that they are public keys, not private keys. You cannot get card's private key from the chip by normal means (ie. without doing something that is classified as attack, be it side-channel, physical inspection or exploiting some firmware bug/backdoor).
- dfox 12y agoIt is slightly more complex than that. EMV is designed as to allow configurable methods of card holder verification and to be backward compatible with back-end systems. This means that PIN is not required to unlock card and even not mandatory for successful transaction. This is configurable and whether PIN is actually required depends on both card's and terminal's configuration and current state, this allows for things like small payments without PIN (which is how NFC cards usually work). Because of backward compatibility, the transaction signature generated by the card has to fit into 8 BCD digits, which essentially precludes use of any kind of public key cryptography. Actual algorithm for how signatures are generated and verified is issuer defined and only card issuer can actually verify signatures (terminal just blindly trusts whatever was returned by card). Public key cryptography (ie. RSA) is used in EMV to verify that card was really issued by claimed issuer (card contains data structure that is signed by issuer's key) and to optionally encrypt PIN sent to card for offline verification (PIN is somehow regarded as super-sensitive by banking industry) One can certainly imagine better design than EMV (eg. without various implicit trust relationships), but in all, it is pretty reasonable mechanism nonetheless.