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.

10.1 Summary and Conclusions<br />

with other applications (if required), the next lifecycle stage is the application execution.<br />

The smart card runtime environment provides a secure and reliable plat<strong>for</strong>m <strong>for</strong> the executing<br />

applications. From an adversary's point of view, attacking an application while it<br />

is executing might yield desirable results, such as skipping any security checks (e.g. PIN<br />

verication). To achieve this, the runtime environment is subjected to dierent types of<br />

attacks, including fault injections. Most of the attacks proposed in the literature target an<br />

open smart card on which an adversary can install his application, which is dicult in the<br />

traditional ICOM framework. However, the open and dynamic nature of the UCOM allows<br />

such a facility. This opens up the UCOM proposal to attacks that are specically designed<br />

to target the reliable and safe execution of an application. We described the architecture<br />

of the Java Card runtime environment, which was followed by a discussion on how an<br />

adversary can aect the execution of an application. To harden the runtime environment<br />

from adversarial perturbations, we proposed protection mechanisms. We proposed that the<br />

TEM should take a vital role in providing dynamic protection by getting involved during<br />

the execution of an application. These mechanisms were then analysed <strong>for</strong> their latency<br />

and per<strong>for</strong>mance measurements. This discussion can be considered as a survey of the vulnerabilities<br />

of the smart card runtime environment that will have an adverse eect on the<br />

UCOM proposal, along with the limitations of the proposed protection mechanisms. We<br />

articulated that any protection mechanism built on top of the runtime environment would<br />

inadvertently introduce a per<strong>for</strong>mance penalty. We concluded from this survey that at the<br />

time when the Java Card virtual machine was designed, the focus was on reliability and<br />

per<strong>for</strong>mance. Their design did not take into account the fault injection and combined attacks.<br />

We recommend that a bottom-up approach should be taken rather than putting<br />

extra layers on top of the runtime environment, redesigning it might be a better option.<br />

Finally, we discussed the last lifecycle state of a smart card and an application in the<br />

UCOM framework. A user might lose and want to recover contents onto her new smart<br />

card, or want to upgrade to a feature-rich smart card. We proposed contents backup<br />

and migration mechanisms that support both of these scenarios without compromising the<br />

SP's security requirements. Furthermore, we detailed the application deletion mechanism<br />

deployed in both Java Card and Multos, illustrating that they may both be unsuitable<br />

<strong>for</strong> the UCOM architecture. The main issue was that if application dependencies are not<br />

resolvable, the application will not be deleted. To mitigate this, we proposed a cascade<br />

deletion process that supports the deletion of dependent application, if authorised by the<br />

user. This discussion completed the lifecycle <strong>for</strong> both a smart card and an application,<br />

supporting a dynamic and open framework that allows a user to have the choice to install<br />

or delete applications from their smart cards.<br />

228

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

Saved successfully!

Ooh no, something went wrong!