Professional Documents
Culture Documents
TTDT - 06 Credit Card Protocols and Application Updated
TTDT - 06 Credit Card Protocols and Application Updated
3-D Secure
authentication without certificates
Fraud
Pay with VISA
Participants
Processor Processor
Card
Association
Merchant
• Issuing Bank Consumer • Merchant Bank (Acquirer)
• Issues card • Sets up merchant
• Extends credit • Extends credit
• Assumes risk of card • Assumes risk of merchant
RAPID
EXPANSION
SSL (Secure Sockets Layer) Concept
PURPOSE: ALLOW A USER WITHOUT A CERTIFICATE TO SEND
SECRET INFORMATION (A CREDIT CARD NUMBER) EFFICIENTLY
Merchant
Non-Internet (telephone) line
Credit Card
Secure Acquirer
“tunnel”
through the Consumer must trust
Internet merchant with card
Similar to ordinary Acquirer
phone order
notifies
High transaction
Internet costs
Issuer
Credit Card
Consumer Issuer bills Consumer Issuer
private keys
Merchant sends its certificate; client now has
MERCHANT
CLIENT merchant’s public key SERVER
Client can send encrypted data to merchant
sends it to merchant
Now both can communicate secretly and fast
Internet
Credit Card
Acquirer
Credit Card
Issuer bills Consumer Issuer
Consumer
SOURCE: MARVIN SIRBU, CMU
Parties in SET
CARD-
Internet payment info, authorization capture capture
HOLDER authorization response + request response
CERT request capture token + token
AT PURCHASE AT END OF DAY
r oc e ssing payment
p GATEWAY
o r i zation CERT
auth r o cessin
g gateway
re p
captu
payment network
money transfer
issuer acquirer
(cardholder’s bank) (merchant’s bank)
SET Message Flow
Payment
Card Issuer
Gateway
9. 5. Auth. Request
Payment Capture 6.
10.Auth. Response
Payment Capture
Request Response
SET
1.
7.
3. Init
Inquiry
Request
PurchaseRequest
Request
Card 2. Init Response
Response Merchant
8.
4. Inquiry
Purchase Response
Holder
SET
SOURCE: HUTTER/STEPHAN
Dual Signature
Links two messages intended for different recipients
SENDER’S
PRIVATE KEY
data1 hash
hash sign
DUAL
SIGNATURE
data2 hash
RECIPIENT 1 RECIPIENT 2
RECEIVES: RECEIVES:
data1 data2
HASH OF HASH OF
DATA 2 DATA 1
DUAL
SIGNATURE
Using the Dual Signature
Bank
PI Hash
PIMD
Merchant
Internet
Merchant
Cardholder
eMerchant Server
Wallet Server
Issuer Acquirer
Payment
Association
Issuer Domain Interoperability Domain Acquirer Domain
SOURCE: MASTERCARD
3-D Secure Process Flow
Cardholder 2. Determine
issuer
MPI
SSL Merchant Plug-In
3. Check user
participation Global 5. Verify user
participation
Directory
SSL
Issuer 4. Verify user
participation Payment Gateway
ACS Acquirer
Access Control Server
SOURCE: MASTERCARD
3-D Secure Process Flow
10. Payer Authentication Response
Merchant
SSL
Cardholder
Global
Directory
Issuer
Payment Gateway
SOURCE: MASTERCARD
3-D Secure (1)
1. Customer enters details at merchant site
Active Merchant Merchant
Customer 3-D Secure
Acquirer Plug-in
Merchant Plug-in
3-D Secure
Access Control Payment
Server Visanet Gateway
Issuer Acquirer
SOURCE: KMIS
3-D Secure (2)
6. Merchant Plug-in redirects customer’s
browser to issuer’s Access Control Server
with transaction details Active Merchant Merchant
Customer 3-D Secure
Acquirer Plug-in
Merchant Plug-in
3-D Secure
Access Control Payment
Server Visanet Gateway
Issuer Acquirer
SOURCE: KMIS
3-D Secure (3)
8. Customer presents
password into issuer system Visa
Directory
9. Issuer’s Access Control
Server validates password,
signs response and redirects
customer to Merchant Plug-in
3-D Secure
Access Control Payment
Server Visanet Gateway
Issuer Acquirer
SOURCE: KMIS
3-D Secure (4)
14. Merchant confirms transaction and issues
receipt to customer Active Merchant Merchant
Customer 3-D Secure
Acquirer Plug-in
Merchant Plug-in
13. Acquirer
sends transaction
response back to
merchant
10. Merchant
Visa submits normal
Directory transaction to
acquirer
HANDLES COMMUNICATION
WITH THE APPLICATION
Protocols
INITIALIZES COMMUNCATION
BETWEEN CLIENT & SERVER
HANDLES DATA
COMPRESSION
SSL Handshake Messages
CLIENT SIDE SERVER SIDE
OFFER CIPHER SUITE SELECT A CIPHER SUITE
MENU TO SERVER
SEND CERTIFICATE AND
CHAIN TO CA ROOT
ACTIVATE
ENCRYPTION
CLIENT PORTION ( SERVER CHECKS OPTIONS )
DONE ACTIVATESERVER
ENCRYPTION
( CLIENT CHECKS OPTIONS ) SERVER PORTION
DONE
NOW THE PARTIES CAN USE SYMMETRIC ENCRYPTION
SOURCE: VISA
3-D Secure Transaction Flow
Cardholder visits merchant site
2 Merchant Plug-in queries
1 and selects “Buy” Directory for account
participation
MERCHANT
Cardholder
Merchant
Plug-in
Directory
Issuer 3
Directory
response
5
Access
Control indicates
Merchant verifies the signature
4 Server CH is/not
and sends an Authorization
enrolled
Authentication Request with selected
Issuer prompts for password (and chip card History authentication data (ECI and
insertion), validates password (and Server CAVV) to the Acquirer
cryptogram), calculates CAVV, digitally
signs response to Merchant, sends copy to
Authentication History Server
ISSUER
Visa Acquirer
Net Payment
Processor
8
Acquirer formats
Issuer verifies CAVV (or 7 6 message with ECI
interrogates VisaNet and CAVV
codes), authorizes the VisaNet verifies CAVV, forwards to Issuer
transaction, sends
response to the Acquirer
SPA (1)
3. SPA Applet requests
authentication information from
the user 1. SPA Applet detects SPA-enabled merchant
page
Customer Merchant
SPA Applet Acquirer Plug-in
2. SPA Applet reads information from
merchant’s websites
SPA Payment
Server Banknet Gateway
Issuer Acquirer
SOURCE: KMIS
SPA (2)
7. Merchant sends
authorization request
and authentication
token to acquirer
Issuer Acquirer
9. Issuer sends authorization response to acquirer
Using Dual Signatures
Alice wants to send Message 1 to Bob and Message 2 to Carol
Message 1 is order info; Message 2 is payment info
Alice encrypts Message 1 with Bob’s public key; Message 2 with
Carol’s public key
Both Bob and Carol must be convinced that the messages are
linked and unaltered
Alice sends { PKBOB(Message 1), PKCAROL (Message 2), DualSig}
to both Bob and Carol
Bob hashes PKBOB(Message 1), concatenates with PKCAROL
(Message 2), and hashes again to give the dual hash
Bob decrypts the dual signature with Alice’s public key
If the new hash and the decrypted signature match, all is OK
Dual Signatures on Plaintext
Alice wants to send Message 1 to Bob and Message 2 to Carol
in plaintext
Bob can’t see Message 2; Carol can’t see Message 1
Both Bob and Carol must be convinced that the messages are
linked and unaltered
Alice sends Bob { Message 1, Digest 2, Dual Signature}
Bob hashes Message 1, concatenates with Digest2 and hashes
Bob decrypts the dual signature with Alice’s public key
If the new hash and the decrypted signature match, all is OK
Now Bob can send Carol Digest 2 and ask if she got the
message corresponding to it!
(Carol got { Message 2, Digest 1, Dual Signature} )
SET in Practice
SOURCE: http://www.software.ibm.com/commerce/payment/specsheetetill.html
MasterCard Banknet
Closed TCP/IP network
Payment authorization in 130 milliseconds avg.
Capacity: 2.5M transactions/hour, 700/second
Busiest day: 36M authorizations, 40M debits
210 countries (more than SWIFT!)
25,000 issuing banks
650 service delivery points
13 global hubs
32 country hubs
SOURCE: MASTERCARD