draft-urien-tls-psk-emv-00

Slides:



Advertisements
Similar presentations
Chapter 10 Encryption: A Matter of Trust. Awad –Electronic Commerce 1/e © 2002 Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic Algorithm.
Advertisements

1 IETF KEYPROV WG Protocol Basis and Characteristics IEEE P April 11, 2007 Andrea Doherty.
Doc.: IEEE /087 Submission May, 2000 Steven Gray, NOKIA Jyri Rinnemaa, Jouni Mikkonen Nokia Slide 1.
Achieving online trust through Mutual Authentication.
Transport Layer Security (TLS) IETF-76 Chairs Joe Salowey Eric Rescorla
ABFAB for Internet-of-Things Rhys Smith, Janet Sam Hartman & Margaret Wasserman, Painless Security.
SSL/TLS Protocol Network Security Gene Itkis. Basic paradigmatic application: on-line purchase Client contacts Server (possibly for the first time) Spontaneity.
Authentication Applications. will consider authentication functions will consider authentication functions developed to support application-level authentication.
A S I A P A C I F I C N E T W O R K I N F O R M A T I O N C E N T R E IEPG March 2000 APNIC Certificate Authority Status Report.
A S I A P A C I F I C N E T W O R K I N F O R M A T I O N C E N T R E APNIC Open Policy Meeting SIG: Whois Database October 2000 APNIC Certificate Authority.
External User Security Model (EUSM) for SNMPv3 draft-kaushik-snmp-external-usm-00.txt November, 2004.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
EAP Channel Bindings Charles Clancy Katrin Hoeper IETF 76 Hiroshima, Japan November 08-13, 2009.
Mutual OATH HOTP Variants 65th IETF - Dallas, TX March 2006.
CP3397 ECommerce.
SIP issues with S/MIME and CMS Rohan Mahy SIP, SIPPING co-chair.
Cryptography and Network Security
7-1 Chapter 7 – Web Security Use your mentality Wake up to reality —From the song, "I've Got You under My Skin“ by Cole Porter.
Internet Security CS457 Seminar Zhao Cheng. Security attacks interruption, interception, modification, fabrication passive attack, active attack.
1 Pertemuan 12 Authentication, Encryption, Digital Payments, and Digital Money Matakuliah: M0284/Teknologi & Infrastruktur E-Business Tahun: 2005 Versi:
IETF 76 – Hiroshima Internet Draft : EAP-BIO Pascal URIEN – Telecom ParisTech Christophe KIENNERT – Telecom ParisTech.
IPsec: Internet Protocol Security Chong, Luon, Prins, Trotter.
10/20/2011Pomcor 1 Deployment and Usability of Cryptographic Credentials Francisco Corella Karen Lewison Pomcor.
SKS – Secure Key Store KeyGen2 –Token Provisioning Protocol Executive Level Presentation.
Electronic Transaction Security (E-Commerce)
A Secure Remote User Authentication Scheme with Smart Cards Manoj Kumar 報告者 : 許睿中 日期 :
Cryptography and Network Security Chapter 17
A S I A P A C I F I C N E T W O R K I N F O R M A T I O N C E N T R E 36th RIPE Meeting Budapest 2000 APNIC Certificate Authority Status Report.
Introduction to PKI Mark Franklin September 10, 2003 Dartmouth College PKI Lab.
Chapter 16 AAA. AAA Components  AAA server –Authenticates users accessing a device or network –Authorizes user to perform specific activities –Performs.
Alcatel Identity Server Alcatel SEL AG. Alcatel Identity Server — 2 All rights reserved © 2004, Alcatel What is an Identity Provider?  
Chapter 8 Web Security.
Chapter 3 Mohammad Fozlul Haque Bhuiyan Assistant Professor CITI Jahangirnagar University.
Vilnius, October 21st, 2002 © eEurope SmartCards Securing a Telework Infrastructure: Smart.IS - Objectives and Deliverables Dr. Lutz Martiny Co-Chairman,
BZUPAGES.COM Electronic Payment Systems Most of the electronic payment systems on internet use cryptography in one way or the other to ensure confidentiality.
Chapter 14 Encryption: A Matter Of Trust. Awad –Electronic Commerce 2/e © 2004 Pearson Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic.
Confidential – For Discussion & General Information Purposes Only EMV to Card Not Present Fraud Gavin Levin, CTP eReceivables Consultant.
Helsinki Institute of Physics (HIP) Liberty Alliance Overview of the Liberty Alliance Architecture Helsinki Institute of Physics (HIP), May 9 th.
Cryptography and Network Security (CS435) Part Fourteen (Web Security)
Web Security : Secure Socket Layer Secure Electronic Transaction.
1 The Cryptographic Token Key Initialization Protocol (CT-KIP) KEYPROV BOF IETF-67 San Diego November 2006 Andrea Doherty.
Internet Security. 2 PGP is a security technology which allows us to send that is authenticated and/or encrypted. Authentication confirms the identity.
Electronic data collection system eSTAT in Statistics Estonia: functionality, authentication and further developments issues 4th June 2007 Maia Ennok,
1 SSL - Secure Sockets Layer The Internet Engineering Task Force (IETF) standard called Transport Layer Security (TLS) is based on SSL.
PAWS: Security Considerations Yizhuang WU, Yang CUI PAWS WG
McLean HIGHER COMPUTER NETWORKING Lesson 8 E-Commerce Explanation of ISP Description of E-commerce Description of E-sales.
draft-urien-tls-psk-emv-01
Enhanced Digest (draft-undery-sip-auth-00.txt) Sanjoy Sen, Nortel Networks James Undery, Ubiquity Vesa Torvinen, Ericsson.
1 /10 Pascal URIEN, IETF 80 th, Tuesday 29 th March 2011, Prague, Czech Republic draft-irtf-hiprg-rfid-02 HIP support for RFIDs
1 /10 Pascal URIEN, IETF 76 th, Monday November 9 th Hiroshima Japan draft-urien-hip-iot-00.txt HIP support for RFID
Alex Leifheit NETWORKS. NETWORK A number of interconnected computers, machines, or operations. Key Components Network components, Network Architecture,
1 The Cryptographic Token Key Initialization Protocol (CT-KIP) KEYPROV WG IETF-68 Prague March 2007 Andrea Doherty.
Encryption protocols Monil Adhikari. What is SSL / TLS? Transport Layer Security protocol, ver 1.0 De facto standard for Internet security “The primary.
1 Chapter 7 WEB Security. 2 Outline Web Security Considerations Secure Socket Layer (SSL) and Transport Layer Security (TLS) Secure Electronic Transaction.
Henric Johnson1 Chapter 7 WEB Security Henric Johnson Blekinge Institute of Technology, Sweden
1 Pascal URIEN, IETF 61th, Washington DC, 10th November 2004 draft-urien-eap-smartcard-06.txt “EAP-Support in Smartcard”
Cryptography and Network Security
Cryptography and Network Security
الانترنت والبريد الإلكتروني
Strong Password Authentication Protocols
Cryptography and Network Security
Presentation transcript:

draft-urien-tls-psk-emv-00 EMV support for TLS-PSK P.Urien, Telecom ParisTech L.Cogneau and P. Martin, Xiring Pascal.Urien@telecom-paristech.fr http://www.telecom-paristech.fr

Goal This draft describes an authentication protocol based on TLS pre shared key (TLS-PSK), RFC 4279. Identity and psk attributes, defined in TLS-PSK are extracted from EMV chips, which are widely deployed for payments transactions. The goal of this protocol is to provide a strong mutual authentication transparent for the end users and guarantying the confidentiality and the integrity of exchanged data over Internet network. This is a new step avoiding the use of static passwords for on-line services, such as electronic banking or electronic payment

Global architecture The user Holds an EMV device, whose card number is called PAN Works with TLS-PSK The EMV device is registered to the WEB site A database establishes a relation between the EMV-ID, used in TLS-PSK and the PAN (card number) The cryptogram (EMV-CTG) produced by the EMV-Device is checked by the EMV device issuer +-----------+ TLS-PSK +-------------+ +----------+ | |<------->| | (PAN,EMV-CTG) | ISSUER | | USER | EMV-ID | WEB | ------------> | AUTH. | | | EMV-CTG | SITE | OK | SERVER | | | EMV-PSK | | <----------- | | +----+------+ +------+------+ +-----+----+ ! ! ! +---v--+ ! DATABASE +--+--+ | EMV | +--------+-----+-------+ | HSM | |DEVICE| | EMV-ID | PAN | Other | +-----+ +------+ +--------+-----+-------+

RFC 4279, PSK PreMasterSecret 02 bytes (PSK length) N bytes NULL (0) N bytes (PSK value) struct { select (KeyExchangeAlgorithm) { case psk: opaque psk_identity_hint<0..2^16-1>; }; } ServerKeyExchange; opaque psk_identity<0..2^16-1>; } exchange_keys; } ClientKeyExchange;

RFC 4279, DHE-PSK PreMasterSecret 02 bytes (DH length) DH value 02 bytes (PSK Length) PSK value struct { select (KeyExchangeAlgorithm) { case diffie_hellman_psk: opaque psk_identity_hint<0..2^16-1>; }; } ServerKeyExchange; opaque psk_identity<0..2^16-1>; } exchange_keys; } ClientKeyExchange;

RFC 4279, RSA-PSK PreMasterSecret 02 bytes (0048) 02 bytes, version 46 bytes, random 02 bytes PSK Length N bytes (PSK value) struct { select (KeyExchangeAlgorithm) { case rsa_psk: opaque psk_identity_hint<0..2^16-1>; }; } ServerKeyExchange; Struct { opaque psk_identity<0..2^16-1>; EncryptedPreMasterSecret; } exchange_keys; } ClientKeyExchange;

EMV-Device structure An EMV smart card contains one or several EMV applications. An EMV application manages a set of information that can be freely read. These data are encoding according to the ASN.1 syntax. An EMV application produces cryptograms that authenticate payment transactions.  A Data Object List (DOL), is a list of tuples TAG value (one or two bytes) and object length (one byte)

EMV details1/2 Application Primary Account Number (PAN) The card number Tag 5A, Length 08, Value: 49 73 01 97 61 90 02 78 Application PAN Sequence Number (PSN) An additional identifier for the card Tag 34, Length 01, Value: 00 Signed Static Application Data (SSAD) A signature for a set of information stored in the card. Tag 93

EMV Details 2/2 Card Risk Management Data 1 (CDOL1) CDOL1 is the list of objects required for the generation of a transaction cryptogram Tag 8C, Length 1B, Value: 9F 02 06 9F 03 06 9F 1A 02 95 05 5F 2A 02 9A 03 9C 01 9F 37 04 9F 45 02 9F 4C 08 Card Risk Management Data 2 (CDOL2) CDOL2 is the list of objects required for the completion of a transaction. It is the concatenation of the Authorization Response Code (TAG 8A, length 02) and the CDOL1 value. Tag 8D, Length 1A, Value: 8A 02 9F 02 06 9F 03 06 9F 1A 02 95 05 5F 2A 02 9A 03 9C 01 9F 37 04 9F 4C 08

ARQC & AAC ARQC The Authorization Request Cryptogram (ARQC) starts an EMV transaction. A set of values, whose elements are listed by the CDOL1 object, and without TAG or length information, are pushed towards the card. The content of CDOL1 is noted xCDOL1 and the response to ARQC is noted yCDOL1. xCDOL1 comprises an Unpredictable Number (TAG 9F37, length 04), i.e. a random value of 32 bits. The response yCDOL1, includes an 8 bytes cryptogram and additional information. AAC The Application Authentication Cryptogram ends an EMV transaction. A set of values, whose elements are listed by the CDOL2 object, and without TAG or length information, are pushed towards the card. The content of CDOL2 is noted xCDOL2 and the response to AAC is noted xCDOL2.

ARQC & AAC example ARQC xCDOL1 yCDOL1 AAC xCDOL2 yCDOL2 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 00 00 00 01 01 01 00 00 00 00 00 = r32 = 32 bits random number 00 00 00 00 00 00 00 00 00 00 yCDOL1 77 21 9F 27 01 80 9F 36 02 01 2E 9F 26 08 3F 79 8C 12 3E F2 9A 51 = AC1 9F 10 0A 06 16 0A 03 A4 80 00 02 00 00 AAC xCDOL2 5A 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 00 00 00 01 01 01 00 00 00 00 00 = 32 bits random number 00 00 00 00 00 00 00 00 yCDOL2 77 21 9F 27 01 00 9F 36 02 01 2E 9F 26 08 82 8E 0A 3E 70 D4 4A D4 = AC2 9F 10 0A 06 16 0A 03 25 80 00 02 00 00

TLS-PSK-EMV The basic idea of this protocol is to used the PAN, i.e. the card number as a static PSK. However the PAN entropy is small, about 36 bits, so brute force attacks are possible. In order to avoid these issues, the PAN value is replaced by others parameters stored in the card and providing sufficient entropy, e.g. greater than 80 bits. The psk-identity is a list of information proving that the client holds the card associated with the PAN. This proof is based on an ARQC associated with a 32 bits random number, which is noted r32. 

TLS-PSK-EMV definitions EMV-ID EMV-ID = h(h(SSAD)), where SSAD is the Signed Static Application Data, and h is a digest function EMV-CPG The EMV cryptogram (emv-cpg) is the response (yCDOL1) to an ARQC associated with the r32 random number. The ARQC request is followed by an AAC operation that cancels the EMV transaction. Values used for ARQC and AAC (xCDOL1 and xCDOL2) are fix, apart from the unpredictable number set to r32. By convention, the R32 number is a concatenation of multiple r32i values (up to four), and EMV-CPG is the concatenation of associated emv-cpgi, with the index i ranging between 1 and R32-length/4. EMV-PSK EMV-PSK = h(SSAD), where

TLS-PSK & TLS-PSK-DH psk = EMV-PSK. psk-identity RH = h(ClientRandom | ServerRandom), where h is a digest function.  R32 is the 32 less significant bits of RH. The psk-identity is the concatenation of the following values: uint16(length) | R32 uint16(length) | EMV-ID unit16(length) | PSN uint16(length) | CDOL1 uint16(length) | EMV-CPG 

TLS-PSK-RSA psk = EMV-PSK psk-identity RH = h(ClientRandom | ServerRandom | ServerPublicKey), where h is a digest function. R32 is the 32 (or more) less significant bits of RH. The psk-identity is the concatenation of the following values: uint16(length) | R32 uint16(length) | EMV-ID unit16(length) | PSN uint16(length) | CDOL1 uint16(length) | EMV-CPG

Questions ?