Published on

Data Sensing and secured Data forwarding in WSN
using MICAz motes

Published in: Education, Technology
1 Comment
1 Like
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Data Sensing & Secured Data Forwarding in multi-hop Wireless Sensor Network using MICAz based motes<br />Presented by<br />JayantPathak (2006ECS22)<br />Kumar Vikramjeet (2006ECS50) <br /> <br />Under the Supervision of<br />Mrs. Sonika Gupta <br />
  2. 2. Introduction to WSN<br /> A wireless sensor network (WSN) is a wireless network consisting of spatially distributed autonomous devices using sensors to cooperatively monitor physical or environmental conditions, such as temperature, sound, vibration, pressure, motion or pollutants at different locations.<br />Characteristics of WSN <br /> Very Limited Resources<br /> Unreliable Communication<br /> Unattended Operation<br />
  3. 3. Wireless Sensor Networks<br />Sensor nodes sense the data & send it upward in the network hierarchy<br />Base Station logs the collective data. <br />Sensor nodes/motes may act as router & perform data aggregation <br />
  5. 5. Benefits of Multi-hop network<br />Access Point based Network<br />Multi-hop network<br />AP-based topology with maximum coverage and throughput environment is challenging.<br />Range & data transfer is affected by<br /> - node location<br /> - type of house<br />Multi-hop topology - design of future home wireless networks and requirements for future wifi-enabled consumer electronic devices<br />Advantages <br /> - wide coverage attained by nodes location <br /> - implementation of mesh <br />
  6. 6. Security threats in Sensor Networks<br />Adversaries can easily sniff on, intercept, inject and alter transmitted data.<br />Adversaries can Interact with networks from a distance by inexpensive radio transceivers and powerful workstations.<br />Resource consumption attacks - Adversaries can repeatedly send packets to drain nodes battery and waste network bandwidth, can steal nodes.<br />
  7. 7. Example of Intruder<br />Attacks<br />Type 1<br />Type 2<br />Battery consumed<br />Bandwidth loss<br />Data packet<br />Data packet<br />A<br />B<br />Attacked(packet spoofed)<br />IN<br />False packet<br />False packet<br />False packet<br />
  8. 8. Solutions of threat<br />A specific frequency channel is allocated to WSN at a time which is designated by RF_Channel<br />Group_id should be altered manually <br />RF_Channel altered manually after regular interval<br />Each pair of motes share different symmetric keys.<br />All communication are encrypted symmetric keys between motes.<br />
  9. 9. Diffie-Hellman Key Exchange Algorithm <br /><ul><li>each side of the communication generates a private key(letter A).
  10. 10. Each side then generates a public key (letter B), which is a derivative of the private key.
  11. 11. The two systems then exchange their public keys. Each side of the communication now has their own private key and the other systems public key (letter C).
  12. 12. The Diffie-Hellman protocol generates “shared secrets” – identical cryptographic key shared by each side of the communication.</li></li></ul><li>Cont..<br />Prime Numbers P=3 Q=353 f:PkmodQ<br />97<br />233<br />A<br />B<br />397mod 353=40<br />3233mod 353=248<br />40<br />248<br />24897mod 353=160<br />40233mod 353=160<br />160<br />
  13. 13. Sensor node Architecture<br /><ul><li>performs tasks,
  14. 14. processes data and controls the functionality of other components in the sensor node.
  15. 15. The functionality of both transmitter and receiver are combined into a single device know as transceivers
  16. 16. Sensors sense or measure physical data of the area to be monitored.
  17. 17. The continual analog signal sensed by the sensors is digitized by an Analog-to-digital converter and sent to controllers for further processing.
  18. 18. Power consumption in the sensor node is for the Sensing, Communication and Data Processing.
  19. 19. kinds of memory are on-chip memory of a microcontroller and Flash memory
  20. 20. Micro-controller:ATMEGA 128
  21. 21. Transceiver: TI CC2420 802.15.4/ZigBee compliant radio 2.4-2.48 GHz (250 kbps data rate)
  22. 22. External Memory: 128K Flash
  23. 23. Program + Data Memory: 4K RAM
  24. 24. Programming : nesC
  25. 25. Platforms: TinyOS, SOS, MantisOS and Nano-RK Support
  26. 26. 2.6-3.3 V power supply</li></ul>In Context of MICAz motes<br />
  27. 27. Appropriate encryption for WSN<br />Encryption security depends on Key size & No. of rounds <br />Key length is limited by the limited processing power of motes<br />Keysize Processing energy Battery life<br />Skipjack is probable candidate <br />Block size = 64 bits<br />Key length = 80 bits No. of Rounds = 32 <br />More No. of Rounds <br />More time needed to crack the key <br />
  28. 28. TinySec: a link layer encryption mechanism<br /> four main aims – Access Control, Integrity, Confidentiality, Easy of use.<br />Implements Skipjack in CBC mode.<br /> Link layer <br /> Encryption<br />A<br /> B<br />
  29. 29. SKIPJACK Encryption<br />SKIPJACK is a 64-bit codebook utilizing an 80-bit cryptovariable (Key)<br />SKIPJACK encrypt/decrypt 4-word (64-bit) data blocks by alternating between the two stepping rules (A and B)<br />The algorithm requires 32 steps (rounds)<br />
  30. 30. Data sensing and Data forwarding<br />Temperature<br />Temperature<br />Temperature<br />
  31. 31. Software and Hardware <br /><ul><li> Software :</li></ul>1: Moteworks - end-to-end enabling platform <br />2: Moteview - WSN viewer<br />3 : TinyOS-1.x – WSN development environment<br />4: Tossim For simulation<br /><ul><li>Hardware:
  32. 32. 1: micaz Motes
  33. 33. 2: MTS 400/420 Sensor Board
  34. 34. 3: MIB 520 gateway
  35. 35. 4: PC</li></li></ul><li> What is TinyOS?<br />Operating system developed by UC Berkeley<br />Open Source development environment<br />System, library and applications written in nesC<br />nesC (network embedded system C) a component-based C<br />Event-driven architecture<br />High concurrency, interrupt driven <br />never poll, never block<br />Single shared stack<br />NO kernel, process/memory management<br />Sleep as often as possible to save power<br />
  36. 36. Components<br />A component is a black box specified by interface(s)<br />Interfaces define a set of logically related I/O functions calledcommands and events <br />Components use and provide interfaces <br />Components are statically wired together based on their interfaces<br /> <br />interface StdControl {<br /> command result_t init();<br /> command result_t start();<br /> command result_t stop();<br />}<br /> <br />interface Clock {<br /> command result_tsetRate( char <br /> interval, char scale);<br /> event result_t fire();<br />}<br />
  37. 37. Commands and Events<br />commands<br />deposit request parameters into the frame<br />are non-blocking<br />need to return status <br />postpone time consuming work by posting a task<br />can call lower level commands<br />events<br />can call commands, signal events, post tasks<br />can Not be signaled by commands<br />preempt tasks, not vice-versa<br />interrupt trigger the lowest level events<br />deposit the information into the frame<br />{<br />...<br />status =callCmdName(args)<br />...<br />}<br />commandCmdName(args) {<br />...<br />return status;<br />}<br />event EvtName(args) {<br />...<br />return status;<br />}<br />{<br />...<br />status =signalEvtName(args)<br />...<br />}<br />
  38. 38. Events and Tasks<br />Tasks:<br />Time flexible<br />Longer background processing jobs …<br />Hardware event handlers<br />Time critical<br />Shorter duration (hand off to task if need be)<br />Interrupts task and other hardware handler.<br />Last-in first-out semantics (no priority among events)<br />executed in response to a hardware interrupt<br />
  39. 39. Data Memory Model<br />• STATIC memory allocation!<br />– No heap (malloc)<br />– No function pointers<br />• Global variables<br />– Available on a per-frame basis<br />• Local variables<br />– Saved on the stack<br />– Declared within a method<br />
  40. 40. Inter-Node Communication General Idea<br /> -Sender<br />
  41. 41. Header (5)<br />Payload (29)<br />CRC (2)<br />Sync<br />TOS Active Messages<br />typedefstructTOS_Msg{<br />// the following are transmitted<br /> uint16_t addr;<br /> uint8_t type;<br /> uint8_t group;<br /> uint8_t length;<br /> int8_t data[TOSH_DATA_LENGTH];<br /> uint16_t crc;<br />// the following are not transmitted<br /> uint16_t strength;<br /> uint8_t ack;<br /> uint16_t time;<br /> uint8_t sendSecurityMode;<br /> uint8_t receiveSecurityMode;<br />} TOS_Msg;<br />Message is “active” because it contains the destination address, group ID, and type.<br />‘group’: group IDs create a virtual network<br />The address is a 16-bit value specified by “make”<br />“length” specifies the size of the message .<br />“crc” is the check sum<br />
  42. 42. Working <br />StdControl.init()<br />StdControl.start()<br />Timer.start(REPEAT, 100)<br />Timer.fired()<br />Post Task Filldata()<br />Timer.Stop()<br />
  43. 43. MIB520 USB INTERFACE BOARD<br />The MIB520 provides USB connectivity to the IRIS and MICA family of Motes for communication and in-system programming. It supplies power to the devices through USB bus. <br />
  44. 44. Hardware Setup<br />