mance requirements of security algorithms is of ut-
most relevance for embedded systems (Chandramouli
et al., 2006). As discussed above, each adopted se-
curity solution should be a good compromise among
factors that are conflicting in nature such as, for ex-
ample, power consumption and performances. This
optimization is a complex task, especially when per-
formed run-time (Chigan et al., 2005; Lighfoot et al.,
2007).
In this paper we concentrate on systems that are
able to change their configurationsat run-time. In par-
ticular, we propose a run-time mechanism to deal with
the optimization of security and of system workload
in accordance both with application security require-
ments and with system dynamic energy constraints.
Our work is based on the “Adequate Protection Prin-
ciple” (Pfleeger and Pfleeger, 2006) which states that
security should be adequately applied to a given con-
text. We implemented such principle by adopting a
gradual adaptation of application security and of sys-
tem workload: security is adapted by moving between
adjacent configurations that are compatible with ap-
plication requirements. System workload can be re-
duced by modifying task periodicity or by suspending
some of them.
In WSNs composed of nodes that can be
recharged (e.g., by using local generators such as so-
lar cells), our solution increases WSN nodes lifetime
in between recharges. Different strategies are used to
favor either security or system workload. The strat-
egy to be used and the way in which it will be applied
depends on specific node energy conditions and ap-
plicative scenario. The solution proposed in this pa-
per has been implemented on Sun SPOT nodes (Mi-
crosystems, 2008).
In Section 2 we discuss a number of relevant re-
lated works; in Section 3 we introduce our framework
and in Section 4 we describe a number of adaptation
policies that we propose; in 5 we introduce the energy
models used by the framework. In Section 6 we dis-
cuss a case study and we show the results obtained
when applying the framework on a sensor network
based on Sun SPOT nodes.
2 RELATED WORK
The principle of gradual adaptation described in this
paper can recall the graceful degradation techniques
used in fault tolerant systems; in this kind of systems,
in fact, performance may be degraded to keep the sys-
tem operational even in presence of faults (Herlihy
and Wing, 1991; Li et al., 2006). Typically this ap-
proach does not address the optimization of security.
The challenge of selecting the best set of cryp-
tographic algorithms that optimizes the trade-off be-
tween resource requirements and security provided
has been tackled in many works. Techniques to
minimize the energy consumed by secure wireless
sessions have been proposed in (Karri and Mishra,
2002). The authors investigated the selection of en-
cryption algorithms and of key exchange protocols.
However, they did not provide explicitly a run-time
self-adaptation mechanism; instead, they shown tech-
niques to minimize energy consumption by matching
block sizes of message compression algorithms with
data cache sizes. In (Chandramouli et al., 2006) a bat-
tery power optimizer for wireless networks has been
presented. Authors have performed experiments to
model the relationship between power consumption
and security of cryptographic algorithms. Such infor-
mation have been used to formulate a knapsack prob-
lem and to find the optimal level of vulnerability by
changing the number of rounds in cryptographic al-
gorithms. In contrast with our work, neither appli-
cation requirements nor the possibility of managing
changes in cryptographicalgorithms were considered.
In (Chigan et al., 2005) the authors describe a self-
adaptive security framework at protocol level. The
mechanism proposed provides the ability to select the
optimal set of security protocols with the best se-
curity/performance ratio depending on the malicious
level of a node neighbors. However, their adaptation
is not triggered by an energy consumption constraint,
rather on intrusion detection and peer trust evaluation.
On the other hand, their systematic approach to secu-
rity evaluation can be replicated in our framework in
order to better define each security level.
Adaptation of cryptographic primitives is instead
presented in (El-Hennawy et al., 2004), where the ba-
sic idea is to change the AES cryptography key length
according to the confidentiality level required by the
user. The matching between confidentiality level and
key length is done statically and is not changeable at
run-time. Moreover, they mainly lead to improve the
overall system performances in terms of encryption
rate rather than energy consumption.
In (Taddeo et al., 2010) an approach for gradual
adaptation is described; the system considered is a
sensor node that may be used in multimedia appli-
cations. In this paper we propose a more complete
and dynamic framework for gradual adaptation of se-
curity along with a set of policies for the system. This
includes, as explained in the following of this paper:
adaptation of sample period for periodic tasks; dy-
namic energy budget computation; dynamic monitor-
ing period; adaptation decisions policies specified for
each task by means of its requirements.
A FRAMEWORK FOR SECURITY AND WORKLOAD GRADUAL ADAPTATION
179