• Nem Talált Eredményt

Electronic payments

N/A
N/A
Protected

Academic year: 2022

Ossza meg "Electronic payments"

Copied!
26
0
0

Teljes szövegt

(1)

Electronic payments

(2)

Outline

credit card payments over the Internet

using SSLusing SET

electronic cash

Chaum’s untraceable e-cash based on blind signatures

detection of double spending

micropayments

the PayWord scheme

probabilistic payment schemes of Micali and

Rivest

(3)

Credit card payment using SSL

the user visits the merchant’s web site and selects goods/services to buy

state information may be encoded in cookies or in specially constructed URLs

or state information may be stored at the merchant and referenced by cookies or specially constructed URLs

the user fills out a form with his credit card details

the form data is sent to the merchant’s server via an SSL connection

merchant’s server is authenticatedtransmitted data is encrypted

the merchant checks the solvency of the user

if satisfied, it ships the goods/services to the user

clearing happens later

S S L

(4)

Problems

eavesdropping credit card numbers is not the real risk

the real risk is that credit card numbers are stolen from the merchant

they might be obtained by breaking in the

merchant’s computer on which the numbers are stored

this happened with CD Universe in ????

who should care about this?

the users are liable only for a fixed amountthe issuer bank pays for the fraud

 banks (and indirectly credit card companies) should care

S S L

(5)

SET – Secure Electronic Transactions

a protocol designed to protect credit card transactions on the Internet

initiated and promoted by MasterCard and Visa

many companies were involved in the development of the specifications (IBM, Microsoft, Netscape, RSA, VeriSign, …)

the SET specification consists of three books:

1. Business Description 2. Programmer’s Guide

3. Formal Protocol Definitionaround 1000 pages

S E T

(6)

SET services

confidentiality

cardholder account and payment information is secured as it travels across the network

cardholder account and payment information (e.g., credit card number) is hidden from the merchant too !

integrity

messages cannot be altered in transit in an undetectable way

based on digital signatures

cardholder account authentication

merchant can verify that the client is a legitimate user of the card

based on X.509 certificates

merchant authentication

client can authenticate the merchant and check if it is authorized to accept payment cards

based on X.509 certificates

S E T

(7)

Model

Internet

payment network cardholder

merchant

payment gateway

issuer acquirer

order info + payment instruction

authorization request

authorization response + capture token ack + services

authorization processing capture processing

capture

request capture response

money transfer

S E T

(8)

SET participants

cardholder

wants to buy something from a merchant on the Internet authorized holder of payment card issued by an issuer

merchant

sells goods/services via a Web site or by e-mail has a relationship with an acquirer

issuer

issues payment cards

responsible for the payment of the dept of the cardholders

acquirer

maintains accounts for merchants

processes payment card authorizations and payments

transfers money to the merchant account, reimbursed by the issuer

payment gateway

interface between the Internet and the existing bankcard payment network for authorization and payment functions

CAs

S E T

(9)

Dual signature

links two messages that are intended for two different recipients

data1

data2

hashhash

hashhash

hashhash signsign

K-1X

data1 data2

S E T

(10)

Payment processing overview

cardholder (C) merchant (M) payment gtw (P)

OI C C

PI

KP Auth.Req. M

KP

PI C

KP

Auth.Res. P

KM

Cap.Token P

KP

Ack M

Cap.Token P

KP

Cap.Req. M

KP

Cap.Res. P

KM

*

*

*

C

OI Order Info.

PI Payment Inst.

signature

dual signature digital envelop

M

S E T

K

(11)

11

Untraceable e-cash

electronic coins: ( serial_number, Sig

K- 1bank

(serial_number) )

problem of traceability

user merchant

bank

withdraw coin sn (user is identified in order to debit her account)

deposit coin sn (merchant is identified in order to credit his account) spend coin sn

bank can link the withdrawal (identity of the user) and the deposit (identity of the merchant) via

the serial number sn

e -c as h

(12)

12

Untraceable e-cash cont’d

making it untraceable: blinded RSA signatures

U generates a random number r

U computes h(coin_data) * r

PK(B)

and sends it to BB signs the blinded coin by computing

( h(coin_data) * r

PK(B)

)

SK(B)

= h(coin_data)

SK(B)

* rwhen U receives the blindly signed coin it

removes the blinding

h(coin_data)

SK(B)

* r * r

-1

= h(coin_data)

SK(B)

the rest of the protocol (spending and deposit) is the same as before

the bank cannot link r * h(coin_data)

SK(B)

and h(coin_data)

SK(B)

together (r is random)

e -c as h

(13)

13

Micropayments

special payment protocols developed for very low value transactions

usual examples include

paying for web pages visited

paying for downloaded fragments of a song, movie

paying for news, articles from a digital journalencourage sharing in peer-to-peer networks

not very successful so far

people are used to get these kind of things free of charge

if they have to pay, they prefer the subscription model

m ic ro pa ym en ts

(14)

14

PayWord

representative member of the big family of hash chain based micropayment schemes

players

user (U)

vendor (V)

broker (B)

credit based

payment tokens are redeemed off-line

uses public key crypto, but very efficiently (in case of many consecutive payments to the same vendor)

user signs a single message at the beginning

this authenticates all the micropayments to the

same vendor that will follow

developed by Rivest and Shamir in 1996

m ic ro pa ym en ts

(15)

15

Registration phase

U registers with a broker B

B issues a certificate for U

C

U

= { B, U, addr

U

, K

U

, exp, more_info }

KB-1

the certificate is a statement by B to any vendor that B will redeem authentic

paywords (micropayment tokens) produced by U turned in before the expiration date

m ic ro pa ym en ts

(16)

16

Payment phase

commitment

when U is about to contact a new vendor, she computes a fresh payword chain

w

n

, w

n-1

= h(w

n

), w

n-2

= h(w

n-1

) = h

(2)

(w

n

), … , w

0

= h

(n)

(w

n

)

where

n is chosen by the user

wn is picked randomly

U computes a commitment

M = { V, C

U

, w

0

, date, more_info }

KU-1

the commitment authorizes B to pay V for any of the paywords w

1

, …, w

n

that V redeems with B before the given date

note: paywords are vendor specific, they have no value to another vendor

m ic ro pa ym en ts

(17)

17

Payment phase cont’d

payment tokens

the i-th payment from U to V consists of the i-th payword and its index

(wi, i)

when V receives wi, it can verify it by checking that it hashes into wi-1 (received earlier or in the commitment in case of i = 1)

since the hash function is one-way (preimage resistant) the next payment wi+1 cannot be computed from wi

V needs to store only the last received payword and its index

variable size payments can be supported by skipping the appropriate number of paywords

let’s assume that the value of each payword is 1 cent

and the last payword that U sent is (wk, k)

if U wants to perform a payment of 10 cents, then she sends (wk+10, k+10)

m ic ro pa ym en ts

(18)

18

Redemption phase

at the end of each day, the vendor redeems the paywords for real money at the broker

V sends B a redemption message that

contains (for each user that contacted V) the commitment and the last received

payword w

k

with its index k

B verifies the commitment and checks that iteratively hashing w

k

k times results in w

0

if satisfied, B pays V k units and charges the account of U with the same amount

m ic ro pa ym en ts

(19)

19

Efficiency

user U

needs to generate one signature per “session”

needs to perform one hash computation per payword (hash chains can be pre-computed)

needs to store the hash chain and her current position in the chain (time-memory trade-off is possible)

vendor V

needs to verify one signature per “session”

needs to perform one hash computation per paymentneeds to store only the last received payword with its

index, and the commitment

broker B

needs to verify signatures and compute lot of hashes but all these are done off-line

m ic ro pa ym en ts

(20)

20

PayWord’s problem

the vendor cannot aggregate

micropayments of different users

if the user spent only a few paywords, then the cost of the redemption procedure exceeds the value of the payment

e.g., typical value of a payword is 1 cent,

whereas processing a credit card transaction costs about 25 cents

m ic ro pa ym en ts

(21)

21

MR1 scheme

preliminaries

check based, the user simply signs the transaction

T – encoding of the transaction (IDs of user, merchant, bank, transaction time, value, etc.)

F – fixed public function that maps an arbitrary bit string to a number between 0 and 1

s – fixed selection rate of payable checks

setup

everyone establishes his own public key and

corresponding private key for a digital signature scheme

the merchants signature scheme must be deterministic

payment

the user U pays by sending C = (T | SigU(T)) to the merchant M

M verifies if C is payable by checking if F(SigM(C)) < s

m ic ro pa ym en ts

(22)

22

MR1 scheme cont’d

selective deposit

M sends only payable checks to the bank for deposit

after verification, B credits M’s account with 1/s cents and debits U’s account with the same

amount

m ic ro pa ym en ts

(23)

23

Some properties of MR1

Sig

M

(C) is unpredictable for both U and M

practically F(SigM(C)) is a random number with close to uniform distribution over [0, 1]

the probability that F(SigM(C)) < s is sexpected value of a check is 1 cent

the bank essentially processes macropayments of value 1/s

e.g., if s = 1/1000, then the value is 10$

potential “psychological” problem

possibility of user’s excessive payments (in the short term)

e.g., it has a positive probability that the first 10 checks sent by the user are all payable

value of the goods/service received by the user is 10 cent

but her account is debited 100$

in the long run it will work, but users may not tolerate the risk of short term overpaying

m ic ro pa ym en ts

(24)

24

MR2 scheme

preliminaries and setup

same as for MR1

payment

U pays by sending C = (T | SigU(T)) to the merchant MT contains a serial number SN (assigned sequentially

to transactions)

M verifies if C is payable by checking if F(SigM(C)) < s

selective deposit

M sends only payable checks to the bank for depositmaxSNU denotes the highest serial number of a

payable check of U processed by B so far

if B receives a new payable check, then B credits M’s account with 1/s

in addition, if SN > maxSNU, then it debits U’s account with SN-maxSNU and sets maxSNU to SN

m ic ro pa ym en ts

(25)

25

Example

1 2 3 4 5 6 7 8 9

issued checks with serial numbers

time

deposit (1) deposit (3) deposit (2)

3 = SN > maxSN = 0 SN-maxSN = 3

total debit of user is 3 maxSN := SN = 3

5 = SN < maxSN = 8

8 = SN > maxSN = 3 SN-maxSN = 5

total debit of user is 8 maxSN := SN = 8

note: total debit of the user is always less than or equal to the highest serial number signed by the user so far

m ic ro pa ym en ts

(26)

26

Large scale cheating can be detected

cheating is possible

the same serial number can be used with different merchants

if only one of the two checks is payable than the cheating will not be detected

large scale cheating can be detected with statistical auditing

example:

assume the user uses every serial number twice

number of payments made by the user is N

highest serial number used is N/2, users is charged at most N/2 cents

the joint credit of the merchants is approximately N

this can be detected by the bank !

m ic ro pa ym en ts

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

The findings of the 2017 survey indicate that credit transfer is by far the most widespread payment instrument among the ones (cash payments, credit transfer, card payments, other)

d Material and Solution Structure Research Group, Institute of Chemistry, University of Szeged, Aradi Vértanúk tere 1, H-6720 Szeged, Hungary.. e MTA-SZTE Reaction Kinetics

The geometric k-planar crossing number of a graph G, denoted gcr k (G), is the minimum number of crossings between edges of the same color over all k-edge-colorings of G and

Retail payments market is a two-sided market. Most of the payment schemes nowadays follow the 4 party payments scheme. One side of the market consists of the

The 5 th Article ensures the effect of the principle of independence and exactly clarifies the nature of a letter of credit, stating that the payment

The optimal pebbling π opt (G) and rubbling number % opt (G) of a graph G is the size of a distribution with the least number of pebbles from which every vertex is reachable

Using exponential inequality of large deviation type, we bound the rate of convergence of the average growth rate to the optimum growth rate both for memoryless and for Markov

– transaction costs of credit-card, check, and cash based payments may be higher than the value of the transaction. – need solutions optimized for very low value transactions (perhaps