06.11.2014 Views

A User Centric Security Model for Tamper-Resistant Devices

A User Centric Security Model for Tamper-Resistant Devices

A User Centric Security Model for Tamper-Resistant Devices

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

B.6 Application Binding Protocol Local<br />

SKey : Agent -> SecretKey<br />

realAgent : Server -> Bool<br />

{math}InverseKeys = (ksc, ksc), (abKsc, abKsc), (ServerKey, ServerKey),(VKey, SKey)<br />

emph{}<br />

#Actual variables<br />

CApp, SApp, MAppl : Agent<br />

TM : Server<br />

Nc, Ns, Nm : Nonce<br />

Ksc, ABKsc : SessionKey<br />

InverseKeys = (Ksc, Ksc), (ABKsc, ABKsc)<br />

emph{}<br />

#Processes<br />

INITIATOR(C, TPM, S, nc) knows f(S), ServerKey(C), SKey(C), VKey<br />

RESPONDER(S, TPM, C, ns, abKsc) knows f(C), ServerKey(S), SKey(S), VKey<br />

SERVER(TPM, ksc) knows ServerKey<br />

emph{}<br />

#System<br />

INITIATOR(CApp,TM, SApp, Nc)<br />

RESPONDER(SApp,TM, CApp, Ns, ABKsc)<br />

SERVER(TM, Ksc)<br />

emph{}<br />

#Protocol description<br />

0. -> C : S<br />

1. C -> S : C, S, {C, S, nc, {C, S, nc}{ServerKey(C)} % mTPM}{SKey(C)}<br />

2. S -> TPM : S, TPM, C, {S, C, ns}{ServerKey(S)}, mTPM % {C,S,nc}{ServerKey(C)}<br />

[realAgent(TPM)]<br />

3. TPM -> S : TPM, S, {f(S), ksc, nc}{ServerKey(C)} % tpmC<br />

[realAgent(TPM)]<br />

3a. TPM -> S : TPM, {f(C), ksc, ns}{ServerKey(S)}<br />

4. S -> C : S, C, tpmC % {f(S), ksc, nc}{ServerKey(C)}<br />

4a. S -> C : {abKsc, nc, ns}{ksc},{S, C, nc(+)ns}{abKsc}<br />

5. C -> S : C, S, {nc(+)ns}{abKsc}<br />

emph{}<br />

#Specification<br />

StrongSecret(TPM, ksc, [S,C])<br />

Aliveness(S, C)<br />

Aliveness(C, S)<br />

StrongSecret(S, abKsc, [C])<br />

Agreement(S, C, [abKsc])<br />

Agreement(C, S, [abKsc])<br />

emph{}<br />

#Inline functions<br />

symbolic ServerKey<br />

symbolic VKey, SKey<br />

realAgent(TM)=true<br />

realAgent(_)=false<br />

emph{}<br />

#Intruder In<strong>for</strong>mation<br />

Intruder = MAppl<br />

IntruderKnowledge = {CApp, SApp, MAppl, Nm, ServerKey(MAppl), SKey(MAppl),VKey}<br />

248

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!