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.

7.6 Application Binding Protocol Distributed<br />

will then generate the session keys and long-term encryption and MAC keys in a similar<br />

manner to that used in message three of PBP (see section 7.5.2).<br />

ABPD-2. SE : h SE = h(SE i ||CL i ||SPi<br />

CL ||SPi SE ||g r SE||g r CL||N CL ||N SE )<br />

SE : cfs = Sign SE (CL i ||SE i ||h SE )<br />

SE : mE = e KSE−CL (V R||Req<strong>User</strong>ID||cfs||CertS SE )<br />

SE → CL : g r SE||N SE ||mE||f mKSE−CL (mE)||DH GroupSel<br />

The SE will generate a signature on the message containing the Die-Hellman exponential<br />

generated by both the SE and CL, and their identities along with those of the respective<br />

SP's concatenated with generated random numbers. The signed message is appended to the<br />

SE's certicate along with a request <strong>for</strong> the CL's state validation and user authentication.<br />

The user authentication is an optional parameter in the ABP D, which depends upon<br />

whether a server application allows application sharing with client applications that are<br />

issued to dierent users. If the SE allows application sharing with dierent user's CL then<br />

the parameter can be omitted. Otherwise, Req<strong>User</strong>ID will request the CL to provide the<br />

details of the registered owner of the SCA. The message is then encrypted and MACed<br />

using the session keys.<br />

On receipt of message two (ABPD-2), the application CL will generate the session and<br />

long-term encryption and MAC keys. After this, it will proceed with verifying the MAC<br />

and decrypt message two. Subsequently, it will validate the certicate CertS SE and then<br />

verify the signature.<br />

ABPD-3. SCB : aub = Sign SCA (h(CL)||SCA i ||U i ||N CL ||N SE )<br />

CL : h CL = h(CL i ||SE i ||g r CL||g r SE||N CL ||N SE )<br />

CL : auc = Sign CL (CL i ||SE i ||h CL )<br />

CL : mE = e KSE−CL (V R||aub||auc||CertS CL ||CertS SCB )<br />

CL → SE : mE||f mKSE−CL (mE)<br />

The CL will then ask the host smart card (SCA) to provide a validation proof. The<br />

SCA will generate the hash of the application and then sign it. The signed message<br />

also includes the identities of the smart card and its owner (if requested by the SE in<br />

message two), and random numbers generated by both applications. In addition, the CL<br />

generates a signature on the message containing Die-Hellman exponentials generated by<br />

communicating applications along with the identities of their respective SPs and generated<br />

random numbers. The signing of the message by the smart card provides security assurance<br />

and validation of the client application, and the signing of the message by the client<br />

application provides entity authentication to the server application.<br />

After the server application SE receives message three, it will rst verify whether the<br />

generated hash of the application is the same as that certied by either the SP of the SE<br />

180

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

Saved successfully!

Ooh no, something went wrong!