250px, A Gemalto EZIO CAP device with Barclays PINsentry styling
The Chip Authentication Program (CAP) is a
MasterCard initiative and technical specification for using
EMV
EMV is a payment method based on a technical standard for smart card, smart payment cards and for payment terminals and automated teller machines which can accept them. EMV stands for "Europay International, Europay, Mastercard, and Visa Inc., ...
banking
smartcards
A smart card (SC), chip card, or integrated circuit card (ICC or IC card), is a card used to control access to a resource. It is typically a plastic credit card-sized card with an Embedded system, embedded integrated circuit (IC) chip. Many smart ...
for
authenticating users and transactions in online and telephone banking. It was also adopted by
Visa as Dynamic Passcode Authentication (DPA). The CAP specification defines a handheld device (''CAP reader'') with a smartcard slot, a numeric keypad, and a display capable of displaying at least 12 characters (e.g., a
starburst display). Banking customers who have been issued a CAP reader by their bank can insert their
Chip and PIN (
EMV
EMV is a payment method based on a technical standard for smart card, smart payment cards and for payment terminals and automated teller machines which can accept them. EMV stands for "Europay International, Europay, Mastercard, and Visa Inc., ...
) card into the CAP reader in order to participate in one of several supported
authentication protocol
An authentication protocol is a type of computer communications protocol or cryptographic protocol specifically designed for transfer of authentication data between two entities. It allows the receiving entity to authenticate the connecting entity ...
s. CAP is a form of
two-factor authentication
Multi-factor authentication (MFA; two-factor authentication, or 2FA) is an electronic authentication method in which a user is granted access to a website or Application software, application only after successfully presenting two or more distin ...
as both a smartcard and a valid PIN must be present for a transaction to succeed. Banks hope that the system will reduce the risk of unsuspecting customers entering their details into fraudulent websites after reading so-called
phishing
Phishing is a form of social engineering and a scam where attackers deceive people into revealing sensitive information or installing malware such as viruses, worms, adware, or ransomware. Phishing attacks have become increasingly sophisticate ...
emails.
Operating principle
The CAP specification supports several authentication methods. The user first inserts their smartcard into the CAP reader and enables it by entering the PIN. A button is then pressed to select the transaction type. Most readers have two or three transaction types available to the user under a variety of names. Some known implementations are:
;Code/identify: Without requiring any further input, the CAP reader interacts with the smartcard to produce a decimal
one-time password
A one-time password (OTP), also known as a one-time PIN, one-time passcode, one-time authorization code (OTAC) or dynamic password, is a password that is valid for only one login session or transaction, on a computer system or other digital dev ...
, which can be used, for example, to log into a banking website.
;Response: This mode implements
challenge–response authentication
In computer security, challenge-response authentication is a family of protocols in which one party presents a question ("challenge") and another party must provide a valid answer ("response") to be authentication, authenticated.
The simplest exa ...
, where the bank's website asks the customer to enter a "challenge" number into the CAP reader, and then copy the "response" number displayed by the CAP reader into the web site.
;Sign: This mode is an extension of the previous, where not only a random "challenge" value, but also crucial transaction details such as the transferred value, the currency, and recipient's account number have to be typed into the CAP reader.
The above noted transaction types are implemented using one of two modes. One of these modes has two forms in which it can operate, creating three distinct modes, though they are not named this way in the specification.
;Mode1: This is the mode for normal monetary transactions such as an online purchase through a merchant. A transaction value and currency are included in the computation of the cryptogram. If the card does not require it or the terminal does not support it, then both amount and currency are set to zero.
;Mode2: This mode may be useful for authenticating a user in which no transaction is taking place, such as logging into an Internet banking system. No transaction value, currency, or other data are included, making these responses very easy to precompute or reuse.
Mode1 sounds very much like a specific use of Mode2 with TDS, but there is a critical difference. In Mode1 operation, the transaction data (amount and currency type) are used in the cryptogram calculation in addition to all the values used in Mode2 without TDS, whereas Mode2 includes its transaction data in a successive step rather than including it in the cryptogram calculation step. If it were not for this difference, then all operations could be generalized as a single operation with varying optional transaction data.
Protocol details
In all three modes, the CAP reader asks the EMV card to output a data packet that confirms the cancellation of a fictitious EMV payment transaction, which involves the details entered by the user. This confirmation message contains a
message authentication code
In cryptography, a message authentication code (MAC), sometimes known as an authentication tag, is a short piece of information used for authentication, authenticating and Data integrity, integrity-checking a message. In other words, it is used t ...
(typically
CBC-MAC
In cryptography, a cipher block chaining message authentication code (CBC-MAC) is a technique for constructing a message authentication code (MAC) from a block cipher. The message is encrypted with some block cipher algorithm in cipher block ch ...
/
Triple DES
In cryptography, Triple DES (3DES or TDES), officially the Triple Data Encryption Algorithm (TDEA or Triple DEA), is a symmetric-key block cipher, which applies the DES cipher algorithm three times to each data block. The 56-bit key of the Dat ...
) that is generated with the help of a card-specific secret key stored securely in the smartcard. Such cancellation messages pose no security risk to the regular EMV payment application, but can be cryptographically verified and are generated by an EMV card only after the correct PIN has been entered. It provided the CAP designers a way to create strong cryptographic evidence that a PIN-activated EMV card is present and has seen some given input data, without having to add any new software functions to EMV cards already in use.
An EMV smartcard contains a (typically 16-bit) transaction counter that is incremented with each payment or CAP transaction. The response displayed by a CAP reader essentially consists of the various parts of the card's response (Application Transaction Counter, MAC, etc.) which is then reduced to specific bits as determined by the Issuer Authentication Indicator (IAI) record stored in the card (this is set on a per-issuer basis, although should an issuer desire, it could be set randomly for each card providing a database of each card's IAI is kept), finally, after unwanted bits are discarded (essentially the absolute position of bits is irrelevant, a bit in the IAI that is 0 means the corresponding bit in the card response will be dropped rather than merely being set to 0). Finally the value is converted from binary into a decimal number and displayed to the user. A truncated example is provided below:
# CAP device selects EMV application, reads IAI info from card and the user selects an action to perform (in this example, IAI will be 111011011000
2).
# After successful PIN entry, CAP device sends challenge of 011100111010
2 as an Authorization Request Cryptogram (ARQC) transaction.
# Smartcard gives a response of 110101110110
2 and CAP device cancels the fake transaction.
# CAP device uses the IAI mask: 111011011000
2 to drop bits; those bits that correspond to a 0 in the mask are dropped.
# Hence the final response is 1100110
2 or 102 in decimal.
The real world process is of course somewhat more complex as the card can return the ARQC in one of two formats (either the simple Response Message Template Format type 1 (id. 80) or the more complex Response Message Template Format 2 (id. 77) which splits the ARQC data into separate TLV values that need to be reassembled sequentially to match that of the type 1 format.
In the identify mode, the response depends only on the required bits from the IAI as the amount and reference number are set to zero; this also means that selecting respond and entering a number of 00000000 will in fact generate a valid identify response. More concerningly however, if a respond request is issued by a bank, using the sign mode with the same number and an amount of ¤0.00 will again generate a valid result which creates a possibility for a fraudster to instruct a customer to do a "test" challenge response for an amount of ¤0.00 which is in fact going to be used by the fraudster to verify a respond command in order for them to add themselves as a payee on the victim's account; these attacks were possible to carry out against banks that used strong authentication devices that were not canceling activities until an amount of at least 0.01 was entered.
The likelihood of these kinds of attacks was addressed in 2009 when new generations of devices were rolled out, implementing secure domain separation functionality that is compliant with the MasterCard Application note dated October 2010. Similarly of course; a bank that implements the identify command makes it possible for a fraudster to request a victim to do a "test" respond transaction using 00000000 as the reference, and will then be able to successfully login to the victim's account.
The same on-card PIN retry counter is used as in other EMV transactions. So just like at an ATM or POS terminal, entering an incorrect PIN three times in a row into a CAP reader will block the card.
Incompatibility
The original CAP specification was designed to use normal EMV transactions, such that the CAP application could be deployed without updating the firmware of existing EMV cards if necessary. The preferred implementation uses a separate application for CAP transactions. The two applications may share certain data, such as PIN, while other data is not shared in instances where it is only applicable to one application (i.e., terminal risk management data for EMV) or advantages to have separate (i.e., transaction counter, so that EMV and CAP transactions increment separate counters which can be verified more accurately). The reader also carries implementation specific data, some of which may be overridden by values in the card. Therefore, CAP readers are generally not compatible with cards from differing issuing banks.
However, most UK banks that issue card readers conform to a CAP subset defined by
APACS, meaning that, in most cases, cards issued by a UK bank can be used in a card reader issued by a different bank.
Vulnerabilities
University of Cambridge
The University of Cambridge is a Public university, public collegiate university, collegiate research university in Cambridge, England. Founded in 1209, the University of Cambridge is the List of oldest universities in continuous operation, wo ...
researchers Saar Drimer,
Steven Murdoch, and
Ross Anderson conducted research
into the implementation of CAP, outlining a number of vulnerabilities in the protocol and the UK variant of both readers and cards. Numerous weaknesses were found.
Radboud University
Radboud University (abbreviated as RU, , formerly ) is a public research university located in Nijmegen, Netherlands. RU has seven faculties and more than 24,000 students.
Established in 1923, Radboud University has consistently been included in ...
researchers found a vulnerability in the Dutch
ABN AMRO e.dentifier2, allowing an attacker to command a
USB
Universal Serial Bus (USB) is an industry standard, developed by USB Implementers Forum (USB-IF), for digital data transmission and power delivery between many types of electronics. It specifies the architecture, in particular the physical ...
connected reader to sign malicious transactions without user approval.
[Designed to Fail: A USB-Connected Reader for Online Banking](_blank)
/ref>
Users
Belgium
Most majors banks of Belgium (including Belfius, BNP Paribas Fortis, ING
Ing, ING or ing may refer to:
Art and media
* '' ...ing'', a 2003 Korean film
* i.n.g, a Taiwanese girl group
* The Ing, a race of dark creatures in the 2004 video game '' Metroid Prime 2: Echoes''
* "Ing", the first song on The Roches' 199 ...
, KBC Bank) provide such a card reader. It is used for two main purposes:
* Authenticating to the bank eBanking website. In order to access private information like balance checking.
* Signing a transaction. For example in eCommerce (3DS) to buy goods or service on an online merchant, or to perform a bank transfer. The merchant would ask for the bank card information, then redirect the user to the bank website where a webpage is displayed with instructions to follow to verify the transaction. Then the bank redirects the user to the merchant page with a success or a failure.
The device is equipped with an optional USB port, those two operations can be used without connecting the cable on a computer.
It was the most used method to pay online, offering a verification method similar to PIN in POS. Since the wide acceptation of smartphones, the banks offer an alternative using a local application on the phone, using a QR-Code to scan, or using the popular app.
The device is also compatible with the Belgian eID card to access government services like tax declaration, medical insurance information, unemployement, etc. Those services are also generally available using Itsme.
Sweden
* Nordea
Nordea Bank Abp, commonly referred to as Nordea, is a Nordic financial services group operating in northern Europe with headquarters in Helsinki, Finland. The name is a blend of the words "Nordic" and "idea". The Nordic countries are considered ...
using CAP in November 2007. The Nordea solution is used by Nordea both for eBanking, eCommerce (3DS) and also with eID. The reader which has some more advanced functionality that extends CAP, makes Nordea's CAP implementations more secure against trojans and man-in-the-middle attack
In cryptography and computer security, a man-in-the-middle (MITM) attack, or on-path attack, is a cyberattack where the attacker secretly relays and possibly alters the communications between two parties who believe that they are directly communi ...
s. When used for eID, the user is able to file his "tax declaration" online, or any implemented e-government functions. The device is also equipped with a USB-port, that enables the bank to perform Sign-What-You-See for approval of sensitive transactions.
United Kingdom
*The UK Payments Administration defined a CAP subset for use by UK banks. It is currently used by:
** Barclays Bank
**Ulster Bank
Ulster Bank is one of the traditional Big Four Irish clearing banks. The Ulster Bank Group was subdivided into two separate legal entities: National Westminster Bank Plc, trading as Ulster Bank (registered in England and Wales and operating i ...
**NatWest
National Westminster Bank, trading as NatWest, is a major Retail banking, retail and commercial bank in the United Kingdom based in London, England. It was established in 1968 by the Corporate merger, merger of National Provincial Bank and We ...
** Co-operative Bank and Smile
A smile is a facial expression formed primarily by flexing the muscles at the sides of the mouth. Some smiles include a contraction of the muscles at the corner of the eyes, an action known as a Duchenne smile.
Among humans, a smile expresses d ...
**Royal Bank of Scotland
The Royal Bank of Scotland Public Limited Company () is a major retail banking, retail and commercial bank in Scotland. It is one of the retail banking subsidiaries of NatWest Group, together with NatWest and Ulster Bank. The Royal Bank of Sco ...
**Lloyds Bank
Lloyds Bank plc is a major British retail banking, retail and commercial bank with a significant presence across England and Wales. It has traditionally been regarded one of the "Big Four (banking)#England and Wales, Big Four" clearing house ...
** Nationwide
*The CAP readers of Barclays, Lloyds Bank, Nationwide, NatWest, Co-operative Bank/Smile and RBS are all compatible.
*Barclays
Barclays PLC (, occasionally ) is a British multinational universal bank, headquartered in London, England. Barclays operates as two divisions, Barclays UK and Barclays International, supported by a service company, Barclays Execution Services ...
began issuing CAP readers (called ''PINsentry'') in 2007. Their online-banking website uses the ''identify'' mode for login verification and the ''sign'' mode for transaction verification. The ''respond'' mode is used as part of the new PingIt Mobile Payment application for authenticating the account details. The device is also now used in branches, replacing traditional chip and pin devices in order to further prevent attempted fraud.
*Bank cards issued by HBOS
HBOS plc is a banking and insurance company in the United Kingdom, a wholly owned subsidiary of the Lloyds Banking Group, having been taken over in January 2009. It was the holding company for Bank of Scotland, Bank of Scotland plc, which ...
are technically compatible with the system, though HBOS has not (yet) introduced CAP readers for use with their online banking.
Software implementations
There exists[{{Cite web, title=Application, url=https://sites.uclouvain.be/EMV-CAP/Application/, access-date=2021-04-30, website=sites.uclouvain.be] a software implementation written in Python supporting Mode 1, Mode 2 and Mode 2 with TDS to be used for educational purposes only.
The identify function (without challenge) corresponds to the m1 function with the challenge "00000000".
Note that using this software for real financial operations can lead to some risks. Indeed, the advantage of using a standalone reader is to isolate the banking card from malware potentially located on the PC. Using it in a non-secured reader is taking the risk that a keylogger intercepts the PIN, and point of sale malware gains access to the card details, or even intercepts a transaction to modify it or operates its own transaction.
See also
* 3-D Secure
References
Payment cards
Smart cards