» Home
» Publications
» Teaching
» Projects

 

Projects

  • TARDIS: Time and Remanence Decay in SRAM to Implement Secure Protocols on Embedded Devices without Clocks.
    The TARDIS maintain a sense of time without power and without special-purpose hardware. The TARDIS software computes the expiration state of a timer by analyzing the decay of existing on-chip SRAM memory. The TARDIS enables coarse-grained, hourglass-like timers such that cryptographic software can more deliberately decide how to throttle its response rate.
    Project webpage: TARDIS


  • Ekho: Bridging the Gap Between Simulation and Reality in Tiny Energy-Harvesting Sensors.
    Ekho is hardware tool that allows system designers to record and emulate energy harvesting conditions. The tool enables mere mortals to meaningfully conduct repeatable experiments on RFID-scale devices. Ekho uses the abstraction of I-V curves---curves that describe harvesting current with respect to supply voltage---to accurately and realistically represent harvesting conditions for a wide range of harvesting technologies. Our initial FPGA-based prototype emulates I-V curves with 0.1mA accuracy, and responds in 4.4us to changes in energy conditions. Ekho has been used by analogaphobic, digitalaphillic graduate students.
    Project webpage: Ekho


  • Half-Wits: Smarter Storage for Low-Power Devices
    This work analyzes the stochastic behavior of writing to embedded flash memory at voltages lower than recommended by a microcontroller's specifications to reduce energy consumption. Flash memory integrated within a microcontroller typically requires the entire chip to operate on common supply voltage almost double what the CPU portion requires. Our approach tolerates a lower supply voltage so that the CPU may operate in a more en- ergy efficient manner. Energy efficient coding algorithms then cope with flash memory that behaves unpredictably. Our software-only coding algorithms (in-place writes, multiple-place writes, RS-Berger codes) enable reliable storage at low voltages on unmodified hardware by exploiting the electrically cumulative nature of half-written data in write-once bits. For a sensor monitoring application using the MSP430, coding with in-place writes reduces the overall energy consumption by 34%. In-place writes are competitive when the time spent on computation is at least four times greater than the time spent on writes to flash memory. Our evaluation shows that tightly maintaining the digital abstraction for storage in embedded flash memory comes at a significant cost to energy consumption with minimal gain in reliability.
    Project webpage: Half-wits


  • CCCP: Secure Remote Storage for Computational RFID tags
    Passive RFID tags harvest their operating energy from an interrogating reader, but constant energy shortfalls severely limit their computational and storage capabilities.
    We propose Cryptographic Computational Continuation Passing (CCCP), a mechanism that amplifies programmable passive RFID tags' capabilities by exploiting an often overlooked, plentiful resource: low-power radio communication. While radio communication is more energy intensive than flash memory writes in many embedded devices, we show that the reverse is true for passive RFID tags. A tag can use CCCP to checkpoint its computational state to an untrusted reader using less energy than an equivalent flash write, thereby allowing it to devote a greater share of its energy to computation


  • WSN deployment in Zakynthos island
    The loggerhead sea turtle known as the Caretta-Caretta has become an endangered specie that can only be found in the Mediterranean Sea. The turtles where leading a peaceful existence in the waters and beaches of Zakynthos but the extension and growth of touristy industry has interrupted their natural rhythms: many of them disappeared and the specie is now under direct threat.

    AIT with the support of WWF Hellas will deploying in August a sensor network to monitor and protect an area close to the beach in Zakynthos from fire. WWF claims that the ashes from a possible fire will be transferred to the beach in case of a rain, and that will damage the sand quality, affecting future nesting attempts.


  • Securing Hierarchal Sensor Network
    Hierarchical processing in sensor networks offers a number of operational advantages that cannot be met by flat networks of sensors with their inherent limitations on power and processing capabilities. Using hierarchical architectures and in-network processing of information the communication overhead is minimized by combining data coming from different sources - thus eliminating redundancy, minimizing the number of transmissions and eventually saving network energy.
    The focus of this project is on securing such processing hierarchies. In particular security mechanisms must be developed that need to be adaptive to changes in the roles taken by the sensors. Hence the whole process of receiving/aggregating data and disseminating commands must be secured and explain how the security protocol can support changes to the roles of sensors in the network. This is necessary since the cooperative and collaborative nature of sensor networks may necessitate the use of configuration actions that lead to energy savings. Hence the protocol must support admission of new sensors and reorganization of existing clusters.


  • Providing Transparent Security Services to Sensor Networks
    We introduce a new approach for design and implementation of a security platform for wireless sensor networks. At the heart of this approach is a flexible and scalable post-distribution key establishment and management module which provides basic cryptographic services. This component can be easily merged with other components and used to secure different operations at different layers. We propose a new security platform based on this key management module providing various transparent security services.



  • Multiple and/or Directional Antennas for WSN nodes
    Overhearing the messages in the network impacts the sensor network lifetime dramatically. One solution to this problem is to employ different MAC protocols that are designed for Omni-directional antennas to sleep the motes periodically. However having a different point of view, we are going to design a new MAC protocol  using directional antennas. Study the effects of applying directional antennas on signal strength of sent and received messages as well as the analysis the effects of having different transmission power levels for different motes in the network are parts of our project.



  • LEE, light-weight energy efficient encryption
    To provide security in sensor networks light-weight and energy efficient key establishment should be considered as well as an energy efficient block cipher. In this project an energy efficient cipher is designed, implemented and analyzed to be used in sensor networks. As a basic need to design such a cipher, the secrecy and efficiency of current ciphers are studied.



  • .Sense, an end-to-end secure framework for sensor network data acquisition, monitoring and command
    .Sense is actually a distributed system which acts as a tool for sensor network data acquisition and command providing a transparent end-to-end security service. The goal is also to be simple and user-friendly enough to be used by non-advanced users. Overall, .Sense was designed with the following characteristics in mind:

    1. Security: System should provide data integrity, confidentiality and authentication
    2. Fault-tolerance: System should handle potential faults of its different components neatly.
    3. Distributed access to sensed information: System should allow concurrent access to sensed data according to user privileges.
    4. User friendliness: System should be easy to use for non advanced users.
    5. Scalability: The design should scale to a huge number of nodes and bear network changes.


  • Embedded System projects On X-Boards
    Different projects have been implemented in C and assembly using the 80200 Big Endian Evaluation Platform tools, including the CodeWarrior IDE & SDK (compiler, assembler, and linker), and Armulator (the simulator).

    Course Instructor: Rajeev Gandhi
    Platform: X-Scale ARM Processor, Armulator, C, Assembly
    Sub-Projects:
      Flash Programming, Memory Mapped I/O
    Whack-A-Mole Game on X-Board
      Concurrency and Interrupts
    TRON Game on X-Board
      Task Scheduling and Synchronization
    A real-time MyOS with rate-monotonic scheduler and highest locker priority protocol.

     

  • Morphing Images
    The term "morphing" is used to describe the combination of generalized image warping with a cross-dissolve between image elements. Morphing is an image processing technique typically used as an animation tool for the metamorphosis from one image to another. The idea is to specify a warp that distorts the first image into the second. Its inverse will distort the second image into the first. As the metamorphosis proceeds, the first image is gradually distorted and is faded out, while the second image starts out totally distorted toward the first and is faded in. Thus, the early images in the sequence are much like the first source image. The middle image of the sequence is the average of the first source image distorted halfway toward the second one and the second source image distorted halfway back toward the first one. The last images in the sequence are similar to the second source image. The middle image has a key role; if it looks good then probably the entire animated sequence will look good.  For morphs between faces, the middle image often looks strikingly life-like, like a real person, but clearly it is neither the person in the first nor second source images.

    Course Instructor: Tassos Dimitriou
    Language: C++

    Final Report [pdf]

     

  • Optimizing Non-Linear Planning Applying Neural Networks (Bachelor's thesis)
    A Non-Linear planer in the field of Artificial Intelligence decides Randomly about the goals and actions. In order to make the non-linear planning efficient, we employ Neural Networks to suggest  a decision for a goal or an action.

    By defining a set of actions, an initial state and a final goal, a usual planner finds a solution from the first state to the final state. Since the decisions about the intermediate goals and actions are random, it's very possible that the planner does not find the appropriate actions and be forced to back-track. However the planner will finally find the solution including the correct actions. Based on the final actions and corresponding intermediate goals, a back-propagation Artificial Neural Network(ANN) is trained.  In the next round, the ANN will suggest an action (instead of random decision). The results confirm the efficiency of this approach comparing to the traditional approach.
    Thesis Advisor: Ghassem Sani
    Language: C++