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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

B.3 Secure and Trusted Channel Protocol Service Provider<br />

3. SC -> CM : {ns,nm,nsp,response}{sKey}<br />

4. CM -> SC : {ns,{CM,SC,ns,nsp}{Skey{CM}}}{sKey}<br />

#Actual variables<br />

SmartCard, CardManufacturer, MAppl : Agent<br />

Ns, Nsp, Nt, Nm, Challenge, Response : Nonce<br />

SIDOne, SIDTwo : Num<br />

#Processes<br />

INITIATOR(SC, CM, ns, nsp, response) knows sKey, VKey<br />

RESPONDER(CM, SC, nm, challenge) knows sKey, SKey(CM), VKey<br />

#System<br />

INITIATOR(SmartCard, CardManufacturer, Ns, Nsp, Response)<br />

RESPONDER(CardManufacturer, SmartCard, Nm, Challenge)<br />

#Functions<br />

symbolic VKey, SKey<br />

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

Intruder = MAppl<br />

IntruderKnowledge = {SmartCard, CardManufacturer, MAppl, MAppl, Nm, Nsp, SKey(MAppl),<br />

VKey}<br />

#Specification<br />

StrongSecret(SC, sKey, [CM])<br />

StrongSecret(SC, response, [CM])<br />

Aliveness(SC, CM)<br />

Aliveness(CM, SC)<br />

B.3 Secure and Trusted Channel Protocol Service Provider<br />

The Casper script in this section corresponds to the Secure and Trusted Channel Protocol<br />

Service Provider (STCP SP ) described in section 6.3.<br />

#Free variables<br />

datatype Field = Gen | Exp(Field, Num) unwinding 2<br />

halfkeySP, halfkeyTPM, sessionKey : Field<br />

SP, TPM : Agent<br />

ns, nt, nm, scos, app : Nonce<br />

s, t : Num<br />

VKey: Agent -> PublicKey<br />

SKey: Agent -> SecretKey<br />

EKey: Agent -> PublicKey<br />

DKey: Agent -> SecretKey<br />

InverseKeys = (sessionKey, sessionKey),(VKey, SKey),(EKey, DKey),(Exp, Exp),(Gen, Gen)<br />

#Protocol description<br />

0. -> SP : TPM<br />

1. SP -> TPM : SP, VKey(SP)<br />

2. TPM -> SP : {TPM, SP, nt}{VKey(SP)}<br />

2a. TPM -> SP : {Exp(Gen, t) % halfkeyTPM}{VKey(SP)}<br />

<br />

243

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

Saved successfully!

Ooh no, something went wrong!