Changes between Version 12 and Version 13 of SCU


Ignore:
Timestamp:
Oct 6, 2010, 9:28:23 AM (14 years ago)
Author:
fornasiero
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SCU

    v12 v13  
    33TODO:
    44* Upload SCU software package
    5 * Test procedure on other environments
    65
    76This document includes instructions how to install and to run the Secure Code Update protocol.
     
    109
    1110== Introduction ==
     11
     12Updating the code running on Wireless Sensor Network (WSN) nodes is a necessary service, which can be used to remove bugs or to add new functionalities after the sensors have been deployed.
     13In open, public, untrusted, or even hostile environments, protecting the code update operation against adversarial interference is an essential requirement. Otherwise, an insecure code update may provide an adversary with a backdoor rendering any security mechanism useless, and may even become a serious risk for the owner.
     14There are mainly three security aspects to be considered in the desing of a Secure Code Update (SCU) mechanism. First, a SCU mechanism shall only allow the load of authentic code images into the nodes' memory. Second, a SCU mechanism must detect the dissemination of a modified or corrupted code image as early as possible. The need is to avoid unnecessary energy consumption due to the propagation of a corrupted image over multiple hops and to the re-transmission of its pages. Finally, a SCU mechanism must keep the secrecy of a code image being disseminated. The need is to prevent eavesdroppers from gaining information on the content of the code image.
    1215
    1316== Architectural Overview ==
     
    1821Installing the SCU protocol requires the following hardware tools and software packages:
    1922
    20  * [http://www.ubuntu.com/ Linux PC] This guide has been tested using Ubuntu 8.10 and 10.04
     23 * [http://www.ubuntu.com/ Linux PC (Ubuntu)]
    2124 * [http://docs.tinyos.net/index.php/Getting_started TinyOS-2.x SDK]
    2225 * SCU software package
    2326 * At least 2 TelosB sensor nodes
    2427
    25 
    26 Appunti:
    27 Config files in
    28 CONFIG_FILE=HOME_PATH+"/synapse-config.txt";
    29 SECRET_KEYS_FILE=HOME_PATH+"/synapse-secret-keys.xml";
    30 PUBLIC_KEYS_FILE=HOME_PATH+"/synapse-public-keys.bin";
    31 
    32 Security bits configured during deployment
     28We assume that the installation PC is running a '''Linux''' operating system  and the [http://docs.tinyos.net/index.php/Getting_started TinyOS-2.x] has been installed and configured properly on it. We skip the installation of TinyOS here and refer to [http://docs.tinyos.net/index.php/Getting_started TinyOS-2.x] if needed. We describe the installation and configuration steps in the following for the [http://www.ubuntu.com/ Ubuntu] operating system.
     29
     30These is the structure of the files contained in the SCU software package:
     31* scu
     32** lib: Contains Bouncy Castle java library
     33** scu-contrib: Contains developed TinyOS code for Secure Code Update
     34** tinyos-2.x: Contains a minimal TinyOS source tree, necessary for compilation and running of the developed software
     35** init_variables.sh: Inits environment variables
     36** quick_start.sh: Simple script that execute a guided step-by step deployment, followed by a Secure Code Update operation.
     37
    3338
    3439== Running a Secure Code Update session ==
    3540
    36 === Folder structure
    37 {{{
    38 scu
    39  |
    40  +-- lib
    41  |     Contains Bouncy Castle java library
    42  |
    43  +-- scu-contrib
    44  |     Contains developed TinyOS code for Secure Code Update
    45  |
    46  +-- tinyos-2.x
    47  |     Contains a minimal TinyOS source tree, necessary for compilation and running of the developed software
    48  |
    49  +-- init_variables.sh
    50  |      Inits environment variables
    51  +-- quick_start.sh
    52         Simple script that execute a guided step-by step deployment, followed by a Secure Code Update operation.
    53 }}}
     41
    5442=== Shortest HOWTO:
    5543