Aggregation and Secure Aggregation Learning Objectives Understand why
Aggregation and Secure Aggregation
Learning Objectives • Understand why we need aggregation in WSNs • Understand aggregation protocols in WSNs • Understand secure aggregation protocols in WSNs
Prerequisites • Module 7 • Basic concepts of computer networks • Basic concepts of network security
Why do we need Aggregation? • Sensor networks – Event-based Systems • Example Query: – What is the maximum temperature in area A between 10 am and 11 am? – Redundancy in the event data • Individual sensor readings are of limit use • Forwarding raw information too expensive – Scarce energy – Scarce bandwidth • Solution – Combine the data coming from different sources • Eliminate redundancy • Minimize the number of transmissions • Aggregation: Summary [Aggre_1] Section 1 4
What is Aggregation?
One Example of Aggregation - Count • Example: consider a query that counts the number of motes in a network of indeterminate size
Sensor # 1 2 3 4 5 Goal: Count the number of nodes in the network. 1 2 3 4 5 - - - - - - - - - Time Number of children is unknown. Scenario: Count adopted from slides from S. Madden 7
Sensor # 1 2 3 Goal: Count the number of nodes in the network. Number of children is unknown. Scenario: Count 1 2 3 4 5 1 - - - - - - - - - Time
Sensor # 1 2 3 4 Goal: Count the number of nodes in the network. Number of children is unknown. Scenario: Count 1 2 3 4 5 1 - - 1 1 1 - - 1+2 1 1 - - - - - - Time
Sensor # 1 2 3 4 5 Goal: Count the number of nodes in the network. Number of children is unknown. Scenario: Count 1 2 3 4 5 1 - - 1 1 1 - - 1+2 1 1 1 - 1+2 1+½ - - - - Time
Sensor # 1 2 3 4 5 Goal: Count the number of nodes in the network. Number of children is unknown. Scenario: Count 1 2 3 4 5 1 - - 1 1 1 - - 1+2 1 1 1 - 1 1 1+2 1+½ 1+3 1+ ½ 1+1 1 - - - - - Time
Sensor # 1 2 3 4 5 Goal: Count the number of nodes in the network. Number of children is unknown. Scenario: Count 1 2 3 4 5 1 - - 1 1 1 - - 1+2 1 1 1 - 1 1 1+2 1+½ 1+3 1+ ½ 1+1 1 1+3 1+2/2 1+1 1 - - - Time
Sensor # 1 2 3 4 5 Goal: Count the number of nodes in the network. Number of children is unknown. Scenario: Count 1 2 3 4 5 1 - - 1 1 1 - - 1+2 1 1 1 - 1 1 1+2 1+½ 1+3 1+ ½ 1+1 1 1+3 1+2/2 1+1 1 1+4 1+2/2 1+1 1 Time
Count Example – A Better Scheme • Each leaf node in the tree reports a count of 1 to their parents • Interior nodes sum the count of their children, add 1 to it, and report that value to their parent
Data Aggregation Process • Sensor nodes are organized into a tree hierarchy rooted at the Base Station • Non-leaf nodes act as the aggregators
Example Aggregation • • Max, Min Count, Sum Average Median
Tiny Aggregation • Distribution phase – Aggregate queries are pushed down into the network • Collection phase – Aggregate values are continuously routed up from children to parents
Energy Consumption
Declarative Queries for Sensor Networks • Examples: 1 SELECT nodeid, light FROM sensors WHERE light > 400 EPOCH DURATION 1 s Sensors Epoch Nodeid Light Temp Accel Sound 0 1 455 x x x 0 2 389 x x x 1 1 422 x x x 1 2 405 x x x • Time is partitioned into epochs of duration i A single aggregate value is produced to combine the readings of all devices during the epoch
Aggregation Queries SELECT AVG(sound) Epoch 0 AVG(sound) 440 FROM sensors 1 445 2 EPOCH DURATION 10 s FROM sensors Epoch room. No AVG(sound) 0 1 360 0 2 520 GROUP BY room. No 1 1 370 HAVING AVG(sound) > 200 1 2 520 3 SELECT room. No, AVG(sound) EPOCH DURATION 10 s Rooms w/ sound > 200
Illustration: Aggregation SELECT COUNT(*) FROM sensors Sensor # 1 1 2 3 Slot 1 1 4 5 1 2 3 Slot # 2 3 4 4 1 1 Section 4. 1 of TAG 5
Illustration: Aggregation SELECT COUNT(*) FROM sensors Sensor # 1 2 3 Slot # 3 1 4 1 2 Slot 2 5 1 2 3 2 2 4 4 1 5
Illustration: Aggregation SELECT COUNT(*) FROM sensors Sensor # 1 2 3 1 5 1 2 Slot # 1 4 1 3 Slot 3 3 2 1 3 4 4 1 5
Illustration: Aggregation SELECT COUNT(*) FROM sensors Sensor # 1 2 3 Slot # 2 3 1 5 1 2 Slot 4 1 4 5 1 3 4 5 5
Illustration: Aggregation SELECT COUNT(*) FROM sensors Sensor # 1 2 3 Slot # 5 1 2 2 3 1 1 4 Slot 1 1 3 4 5 1 1 5
Flow Up the tree during an epoch How parents choose the duration of the interval in which they will receive values?
Topology Maintenance and Recovery • How to address the unreliable nature of WSNs in TAG? – Each node maintains a fixed size of its neighbors – Select a better parent node – If a node does not hear from its parent for some time, it assumes that its parent has failed Section 7. 1 of [Aggre_1]
Secure Aggregation
Secure Aggregation • It is challenging to design suitable security mechanisms for Wireless Sensor Networks (WSNs) – Stringent resource constraints on energy, processing power, memory, bandwidth, etc. • WSNs need lightweight secure mechanisms • We introduce an LCG-based secure aggregation scheme – Efficiency and simplicity
Security Goals • Security Goals – Confidentiality • Sensor data/readings cannot be disclosed to attackers – Integrity • If an adversary modifies a data message, the receiver should be able to detect this tampering – Authenticity • Ensures that data messages come from the intended sender • Assumptions – The existence of a key management scheme – WSN nodes can negotiate the key and trust setup
LCG-based Security Protocols • Basic Hop by Hop Message Transmission • Notations – A, B, C…: Sensor Nodes – E(P, K): Encryption of plaintext message P using key K – P 1|P 2: Concatenation of message P 1 and P 2 – MAC(K, P): Message Authentication Code (MAC) of message P using key K – X 0: seed of the LCG – a, b, m: Parameters of the LCG
Integrity and Authenticity • CBC: Cipher Block Chaining
Assignment • 1. Why do we need aggregation in wireless sensor networks? • 2. What is the basic idea of TAG? • 3. What is the basic idea of LCG-based secure aggregation in wireless sensor networks?
- Slides: 33