A Verifiable Secret-Sharing and Distance

advertisement
1
Outline
1. Background
1. Attacks on distance-bounding
2. Symmetric vs asymmetric protocol
3. Motivation: DBPK-Log
2. VSSDB
1. Building blocks
2. Protocol
3. Conclusion
2
Objective of distance-bounding
 Authentication protocol + proximity testing
Range
Legitimate
prover
Verifier
 Verifier is trusted, prover is untrusted.
3
Possible applications
Access control
Wireless payment
4
Distance fraud
 A malicious prover want to
cheat on the distance
computed by the verifier.
Range
R-A
Mafia fraud
 An attacker relay the
communication through
a proxy close to a
legitimate prover.
Range
Proxy
RelayR-A
Attack
Prover
is
unaware that an
attack is taking
place.
ATTACKER
Terrorist fraud
 A far away legitimate
prover colludes with an
adversary located close to
the verifier to enable him to
authenticate only once.
Range
Collusion of users
RelayAttack
R-A
Generic format of a DB protocol
1. Initialization phase (1st lazy phase),
2. Interactive phase (heart of the protocol),
Verifier
Prover
c
Ts
Tp
Tr
Distance =
Vc ´ (Tr - Ts - Tp )
2
3. Verification phase (2nd lazy phase).
8
Symmetric versus asymmetric
protocols
 Symmetric response function: secret shared between the
prover and verifier,
 R=fS(c).
 Examples of symmetric protocols : Swiss Knife [Kim et al.,
ICSC 2008], SKI [Boreanu et al, ISC’13], [Gambs et al,
AsiaCCS’13], …
 Asymmetric response function: the verifier has not access
to the prover’s secret.
 Verification of the challenges uses homomorphic property
of bit commitment.
 Only one protocol in the litterature: [Bussard and Bagga,
SEC 2005]
9
Bussard and Bagga protocol (B&B)
1. Initialization phase
Verifier
Y=F(x)
Prover
1. ai, bi
2. fast bit
exchange phase bi
m rounds
Deduce
Z=commit(x,v)
3. ZKProof(x)[Z⋀Y]
Prover:
•Selects k at random,
•Computes e = x ⨁ k
•Computes commitment :
• ai = commit(ki,ui)
• bi = commit(ei,vi)
2. Fast bit exchange phase
Verifier:
• Sends bit challenge {0,1},
• Prover replies with ki if 0 or ei if 1.
3. Final verification phase
•Z=
•ZKProof (x)[Z ⋀ y]
10
Contributions
 B&B-like distance bounding with better resistance to
terrorist attack,
 Introduction of mode during the fast phase,
 Security bounds formally proved.
11
VSSDB
12
Ingredients
 (3,3) secret sharing scheme:
 secret is encrypted using two strings k, l into e,
 each bit of the secret is shared in three parts,
 Verifiable secret sharing:
 each bit of the secret is verified separately,
 Homomorphic bit commitment [Brassard et al, 1988]:
P, Q primes;
N=P×Q and Jacobi(–1/N)= +1,
S = –1 mod N,
Commit(b,rand)= Sb × rand2 mod N,
Commit(b,rand2)× Commit(b,rand2)= Commit(b⨁a,rand3)
13
Registration phase
 Prover  Certification Authority (CA):
 PrivKey={Sksign,x} kept secret.
 Pubkey={Comi},PKSign sent to the verifier.

{Comi}, Comi=Commit(xi,vi), vi=Hi(x).
14
Initialization phase
2. Prover computes session
specific information.
1. Verifier replies with
a nonce.
3. Prover computes
fresh proof.
4. Verifier checks for the
freshness of the proof.
15
Fast bit exchange
5. Prover replies as
soon as possible.
5. Verifier starts the clock.
5. Verifier stops the clock.
16
Verification phase
1. Validity of the signature of the transcript,
2. Responses correspond to the commits,
3. Commitments corresponds to the secret key.
17
Security analysis
 Distance fraud
 Binding of HBCommit,
 mode are chosen by the verifier.
 Mafia fraud
 Hiding of HBCommit,
 Terrorist fraud ?
 GameTF [Fischlin et al., ACNS 2013].
18
GameTF security
 Definition: If an attacker succeeds in a terrorist fraud
then he can launch better mafia fraud attack.
 Trapdoor in the prover:
19
Terrorist VSSDB
20
Security bounds
21
Conclusion and future work
 We
designed an asymmetric distance-bounding
provably secure against distance, mafia and terrorist
frauds.
 Additional contribution: Introduction of mode in the
response function to avoid response of more than one
bit.
 Future work: privacy-preservation, other secret sharing
schemes.
22
Contact: mtraore@laas.fr
23
Attack of Bay and co-authors
Verifier
Y=F(S)
Prover
Attacker
1. ai’, b’i
2. fast bit
exchange phase
Deduce
Z=F(S)
3. ZKProof
Z
Initialization phase:
Attacker:
•Receives z form the malicious prover
•Selects k and e at random,
•Computes commitment (for the m-1 last
rounds) :
• a’i = commit (ki)
• b’i=commit (ei)
•Computes a’0 for k0 at random.
i-1
•b’0= a’0×∏ (a’i×b’i)2 × Z-1 mod N.
Challenge-response phase:
• The attacker wins if
challenge=0.
first
Final verification phase:
The verification phase is relayed to the
prover.
24 24
Opening function
25
Attacks on distance bounding
 Distance fraud
Range
T-A
R-A
Legitimate prover
Download