1
1
Anonymity Application Example: e-Cash
Conventional Everyday Cash
- Counterfeit-able
- Slow
- Costly
- Vulnerable
- Bad for Remote Transactions
- DIRTY!
Anonymity Application Example: e-Cash 1 Conventional Everyday Cash - - PDF document
Anonymity Application Example: e-Cash 1 Conventional Everyday Cash Counterfeit-able Slow Costly Vulnerable Bad for Remote Transactions DIRTY! 1 Credit Cards, Bank Cards, Checks, other cards: Easy Fraud Little Privacy
1
1
2
3
4
Deposit to bank
Withdrawal from bank
3
5
“OK”
6
4
7
8
5
9
❖ Tamper-resistant hardware (as in smartcards)
❖ Tracing over-spenders ❖ Blacklisting over-spenders ❖ Putting a bound on value of off-line transactions
10
Heart of each e-coin is a digital signature by the Mint
Secret Minting Key to Create Coins (Signatures)
Mint’s public key needed to verify coins
6
11
e-Cash withdrawer (Alice)
SN= 12345 SN = 12345 BankSig SN= 12345 SN = 12345 BankSig
The Mint
12
NOTE: need distinct signing key for each denomination, e.g., $5, $1, $10
One Dollar
SN 12345
the Mint e-Cash withdrawer $10 signing key
7
13
e-Cash User (Alice) The Mint
SN= 12345 SN = 12345 BankSig BankSig BankSig
14
One Dollar
The Mint $10 signing key e-Cash Withdrawer
NOTE: need distinct signing key for each denomination, e.g., $5, $1, $10
8
Given composite N=pq, find primes p and q (of at least 1024 bits)
Given exponent e and me mod N, find m
Given prime p (at least 1024 bits), a generator g, and gx mod p, find x
16
Public Information: N - large composite H() - cryptographic hash function Private Minting Information: Key = (p, q) - prime numbers: N=pq
e - small integer
9
17
e-Cash User (Alice) The Mint
x,H(x)
x,H(x)d
x,H(x)
x,H(x)d
18
10
ECash User The Mint
chooses random: x, r x,H(x)
x,H(x)d
reH(x) [reH(x)]d
rH(x)d rH(x)d
20
*
Coin = [ ga mod p1, gb mod p1, H(ga,gb)d mod N ] where I = ab mod p2
11
21
Buyer (Alice)
ga mod p1, gb mod p1, H(ga,gb)d
Seller (Bob) verifies Bank’s signature sends random challenge k verifies: gr=(ga)kgb
22
Two payments with the same coin yield buyer’s identity
But, one payment yields no information