applying pre payments - iacr

27
Applying Proxy-Re-Encryption to Payments Sivanarayana Gaddam, Rohit Sinha, Atul Luykx Visa Research, 2019 ©2019 Visa. All rights reserved.

Upload: others

Post on 07-Feb-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Applying PRE Payments - IACR

Applying Proxy-Re-Encryption to PaymentsSivanarayana Gaddam, Rohit Sinha, Atul Luykx

Visa Research, 2019

©2019 Visa. All rights reserved.

Page 2: Applying PRE Payments - IACR

Disclaimer

Case studies, comparisons, statistics, research and recommendations areprovided “AS IS” and intended for informational purposes only and should notbe relied upon for operational, marketing, legal, technical, tax, financial orother advice. Visa Inc. neither makes any warranty or representation as tothe completeness or accuracy of the information within this document, norassumes any liability or responsibility that may result from reliance on suchinformation. The Information contained herein is not intended as investmentor legal advice, and readers are encouraged to seek the advice of acompetent professional where such advice is required

©2019 Visa. All rights reserved.

Page 3: Applying PRE Payments - IACR

Global Payments Stack

PaymentNetwork

Merchant

MerchantBank

ConsumerBank

Consumer

Point of Sale

PartnerPaymentGateway

©2019 Visa. All rights reserved.

Page 4: Applying PRE Payments - IACR

Transaction Flow

PaymentNetwork

MerchantBank

ConsumerBank

Point ofSale

Partner

PaymentGateway

Consumer swipesSend transaction

Forward tomerchant bank

MapAuthRoute Authorize

Forward topayment network

©2019 Visa. All rights reserved.

Page 5: Applying PRE Payments - IACR

Network Functions

MerchantBank

ConsumerBank

TransactionMap Auth Route

Transaction’

Cryptographic operations(CVV/CVV2, Chip, PIN etc.)

©2019 Visa. All rights reserved.

Page 6: Applying PRE Payments - IACR

Sample Transactions

Card Verification Value(CVV/CVV2)

AuthPAN data, CVV 1 or 0

https://www.cs.ru.nl/E.Poll/papers/EMVtechreport.pdf

AuthPAN data, ARQC 1 or 0

PaymentNetwork

AuthPAN data, PIN 1 or 0

Authorization Request Cryptogram(ARQC)

PIN Verification

©2019 Visa. All rights reserved.

Page 7: Applying PRE Payments - IACR

Cryptographic Operations at Scale

https://s1.q4cdn.com/050606653/files/doc_financials/2018/q4/Visa-Inc.-Q4-2018-Operational-Performance-Data.pdf

Credit

Debit

#No Of Transactions

2018-Q4

99Bn

61.4Bn

≅3000

≅2000Debit

Credit

≅5000/sec

©2019 Visa. All rights reserved.

Page 8: Applying PRE Payments - IACR

PCI Compliance

PaymentGateway

PaymentNetwork

MerchantBank

ConsumerBank

HSM HSM HSM HSM

https://www.pcisecuritystandards.org/documents/PCI%20HSM%20Security%20Requirements%20v1.0%20final.pdf©2019 Visa. All rights reserved.

Page 9: Applying PRE Payments - IACR

Top Hitters

Auth1 or 0Transaction

HSM

CVV/CVV2

ARQC

PIN verification

©2019 Visa. All rights reserved.

Page 10: Applying PRE Payments - IACR

PIN Verification Modes

©2019 Visa. All rights reserved.

Online

ConsumerBank

Offline

Page 11: Applying PRE Payments - IACR

Chip & PIN Transaction

ATCTrack Data

Online PIN counter(16-bit)

PAN, Name, Exp, etc.

Amount, Nonce, Currency …

EMV-Book-2_Security And Key Management

= KDF( , ATC)ARQC = {MAC( , {PoS data, ATC} ), ATC}

ARQC, Track data, PoS data

PaymentGateway

{ARQC, EPB}

PaymentNetwork

PIN Confidentiality

HSM HSMHSM

PIN Translation

3DES.Dec3DES.Enc

CT CT’

©2019 Visa. All rights reserved.

PIN Translation

PIN Translation

PIN Translation(PTS)

EPB: Encrypted PIN Block ARQC: Authorization Request Cryptogram

Page 12: Applying PRE Payments - IACR

Key Sharing Setup

EMV-Book-2_Security And Key Management

PaymentGateway

PaymentNetwork

PoSPartners

MerchantBank

ConsumerBank

Key custodianKey custodian

Generate keys

Share key

Generate keys

©2019 Visa. All rights reserved.

Share key

Share key Share key

O(|MB| + |CB|) keysO(|PP| + |MB|) keys

Page 13: Applying PRE Payments - IACR

PIN Confidentiality

EMV-Book-2_Security And Key Management

PaymentGateway

PaymentNetwork

PoSPartner

MerchantBank

ConsumerBank

{ARQC, PIN}

EPB = 3DES( ,PIN)

EPB

PIN = 3DES( , EPB)EPB1 = 3DES( , PIN)

EPB1

PIN = 3DES( , EPB1)EPB2 = 3DES( , PIN)

EPB2

PIN = 3DES( , EPB2)EPB3 = 3DES( , PIN)

EPB3

PIN = 3DES( , EPB3)Authorize

PTS PTS PTS

©2019 Visa. All rights reserved.

EPB: Encrypted PIN Block ARQC: Authorization Request Cryptogram

Page 14: Applying PRE Payments - IACR

PIN Confidentiality Problem

EMV-Book-2_Security And Key Management

Payment

Gateway

Payment

Network

MerchantBank

ConsumerBank

Hard to scale

Simultaneous key-refresh issuesError prone/Transaction declines

PoS

Partner

©2019 Visa. All rights reserved.

Page 15: Applying PRE Payments - IACR

Requirements

ü Support for all payment types(chip/mag-stripe, apple pay etc.)

ü Incur minimal changes to the ecosystem

ü Reduce HSM reliance

©2019 Visa. All rights reserved.

Page 16: Applying PRE Payments - IACR

Strawman Solution#1

PaymentNetwork

ConsumerBank

PoSPartner

PaymentGateway

MerchantBank

©2019 Visa. All rights reserved.

(PK, SK)

Share public key

Not enough space

Which public key?

Share map table

Requires online serviceChange in transaction flow

Share network public keys

Payment network still need HSMLooses routing flexibility

Page 17: Applying PRE Payments - IACR

Strawman Solution#2

ATCTrack Data

( , )

Increases cost of personalization

No PKI on mag-stripe

©2019 Visa. All rights reserved.

Online PIN counter(16-bit)

PAN, Name, Exp, etc.

http://www.uspaymentsforum.org/wp-content/uploads/2018/10/Dual-Interface-Card-Personalization-WP-FINAL-Oct-2018.pdf

ODA

ODA is optional

ODA: Offline Data Authentication

ODA

Page 18: Applying PRE Payments - IACR

Our Solution: Proxy-Re-Encryption based PIN Confidentiality

©2019 Visa. All rights reserved.

PRE

PRE.KeyGenPRE.Enc

PRE.Re-KeyPRE.Re-Enc

PRE.DecBobProxy

RKAlice->Bob

Alice

PRE.Enc(M, PKAlice)

PRE.Re-Enc(M, RKAlice->Bob)

Uni/Bi-Directional Collusion-Safe Non-Interactive

Non-Transitive A à Proxy1 à B à Proxy2 à C

(RKA->B) (RKB->C)

(RKA->C)

Page 19: Applying PRE Payments - IACR

Our Solution: Proxy-Re-Encryption based PIN Confidentiality

PaymentGateway

PaymentNetwork

PIN

EPB

PIN = 3DES( , EPB)EPB1 = 3DES( , PIN)

EPB1

PIN = 3DES( , EPB1)EPB2 = 3DES( , PIN)

EPB2

PIN = 3DES( , EPB2)EPB3 = 3DES( , PIN)

EPB3

PIN = 3DES( , EPB3)Authorize

PTS PTS PTS

©2019 Visa. All rights reserved.

PoSPartner

PRE.Re-EncPRE.Enc PRE.Re-Enc PRE.DecForward

Page 20: Applying PRE Payments - IACR

Desired PRE Scheme

Matt Blaze, Gerrit Bleumer, and Martin Strauss. Divertible protocols and atomic proxy cryptography. In Kaisa Nyberg, editor, EUROCRYPT’98 ©2019 Visa. All rights reserved.

Non-Interactive

Transitive [Blaze, Bleumer, Strauss98]

Page 21: Applying PRE Payments - IACR

Key Setup

PaymentGateway

PaymentNetwork

PoSPartner

©2019 Visa. All rights reserved.Matt Blaze, Gerrit Bleumer, and Martin Strauss. Divertible protocols and atomic proxy cryptography. In Kaisa Nyberg, editor, EUROCRYPT’98

share key

sharekey

Share key

Trusted Party

Share public key

RKRK

RK

O(|MB| * |CB|) re-enc keys

O(|PP| * |MB|) re-enc keys

Page 22: Applying PRE Payments - IACR

Transaction Flow

PaymentGateway

PaymentNetwork

PoSPartner

©2019 Visa. All rights reserved.

EPB = PRE.Enc ( , PIN)EPB

EPB1 = PRE.Re-Enc ( , EPB)

EPB1

No burden on merchant bank

No HSM needed No HSM needed

No frequent key refresh

EPB1 EPB2

EPB2 = PRE.Re-Enc ( , EPB1)RK RK

PIN = PRE.Dec ( , EPB2)

Collusion-safe

Page 23: Applying PRE Payments - IACR

Benchmarks*

©2019 Visa. All rights reserved.

PaymentGateway

PaymentNetwork

PoSPartner

1.14 ms 0.56 ms 0.56 ms 0.67 ms

Latency

# Transactions

#Nodes1

≅3000

O(|MB| * |CB|) re-keys

Space Overhead

O(|PP| + |MB|) keys O(|PP| * |MB|) re-keys

O(|MB| + |CB|) keys

4

≅10k

BBS-secp256k1Intel 4 [email protected]

* Representative results based on the configuration shown

Page 24: Applying PRE Payments - IACR

Solution Summary

Supports all payment types(chip/mag-stripe, token-based etc..)

©2019 Visa. All rights reserved.

Reduced HSM reliance during online phase

Incurs minimal change [Domestic Card Processing Network]

Page 25: Applying PRE Payments - IACR

Problem: Cart-Abandonments

https://baymard.com/lists/cart-abandonment-rateLexisNexis-True-Cost-Of-Fraud-Study, 2017

69.23%

Cart Abandonments

©2019 Visa. All rights reserved.

37%Site wanted me to create account

19%

8%Not enough paymentmethods

Don’t trust site with creditcard info

Help merchants accept unknown payment types?

PaymentGatewayCheckout

MerchantConsumer

App1CT

App2CT

CTProvider

CT

CT

CT <PII, PAN data>

AuthChain(PRE + Intel SGX + Blockchain)

Page 26: Applying PRE Payments - IACR

Conclusion

PIN Translation: PRE reduces HSM burden on intermediaries

©2019 Visa. All rights reserved.

E-Commerce: PRE helps consumers choose any preferred mobileapp for checkout

Page 27: Applying PRE Payments - IACR

?

©2019 Visa. All rights reserved.