Slide 1

Slide 1 text

cryptographic protocols for security and privacy on the internet of things mrinal wadhwa

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

Implicit trust in network boundaries Lack of mutual authentication Lack of end-to-end data integrity and confidentiality Poor management of keys and credentials

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

Implicit trust in network boundaries Lack of mutual authentication Lack of end-to-end data integrity and confidentiality Poor management of keys and credentials

Slide 7

Slide 7 text

end-to-end secure channels

Slide 8

Slide 8 text

Heart Rate Monitor Heart Rate Application

Slide 9

Slide 9 text

Heart Rate Monitor Heart Rate Application

Slide 10

Slide 10 text

Heart Rate Monitor Heart Rate Service Heart Rate Application

Slide 11

Slide 11 text

Heart Rate Monitor Heart Rate Service 80 bpm Heart Rate Application

Slide 12

Slide 12 text

Heart Rate Monitor Heart Rate Service 80 bpm Heart Rate Application

Slide 13

Slide 13 text

The phone may not be online all the time so the service also caches this data to deliver it later … Heart Rate Monitor Heart Rate Service 80 bpm Heart Rate Application

Slide 14

Slide 14 text

Initiator Responder Shared Secret Shared Secret M1 M2 M3 The shared secret is then used as a key in Symmetric Key Cryptography to maintain con fi dentiality and integrity of application data. Application Data - Authenticated Encryption The entities involved use Public Key Cryptography to authenticate each other and agree on a shared secret. Authenticated Key Exchange D Secure Channel

Slide 15

Slide 15 text

Coming back to our heart rate solution, for secure communication … Heart Rate Monitor Heart Rate Service Heart Rate Application

Slide 16

Slide 16 text

Heart Rate Monitor Heart Rate Service Secure Channel We setup a secure channel between the monitor and the service. Heart Rate Application

Slide 17

Slide 17 text

Heart Rate Monitor Heart Rate Service Secure Channel Secure Channel And another secure channel between the phone and the service. Heart Rate Application

Slide 18

Slide 18 text

Heart Rate Monitor Heart Rate Service Transport Layer Security Transport Layer Security Since these devices have direct access to the internet, with TLS … Heart Rate Application

Slide 19

Slide 19 text

Heart Rate Monitor Heart Rate Service 80 bpm Transport Layer Security Transport Layer Security Heart Rate Application

Slide 20

Slide 20 text

Heart Rate Monitor Heart Rate Service 80 bpm 0x217c5111… Transport Layer Security Transport Layer Security Heart Rate Application

Slide 21

Slide 21 text

Heart Rate Monitor Heart Rate Service 80 bpm 0x217c5111… 80 bpm Transport Layer Security Transport Layer Security Heart Rate Application

Slide 22

Slide 22 text

Heart Rate Monitor Heart Rate Service 80 bpm 0x217c5111… 80 bpm 0x8621f842… Transport Layer Security Transport Layer Security Heart Rate Application

Slide 23

Slide 23 text

Heart Rate Monitor Heart Rate Service 80 bpm 0x217c5111… 80 bpm 0x8621f842… 80 bpm This type of setup is industry best practice. Transport Layer Security Transport Layer Security Heart Rate Application

Slide 24

Slide 24 text

Heart Rate Monitor Heart Rate Service 80 bpm 0x217c5111… 80 bpm 0x8621f842… 80 bpm But even when we manage to setup the channels correctly the data is still exposed to the service. 
 The service doesn’t need to know the contents of the message to route and cache messages (its primary job). Transport Layer Security Transport Layer Security Heart Rate Application

Slide 25

Slide 25 text

Least Privilege. Principle of Every program and every privileged user of the system should operate using the least amount of privilege necessary to complete the job.” — Jerome Saltzer, Communications of the ACM, 1974

Slide 26

Slide 26 text

Heart Rate Monitor Heart Rate Application Heart Rate

Slide 27

Slide 27 text

Application Layer Routing in Ockam

Slide 28

Slide 28 text

https://github.com/ockam-network/ockam/tree/develop/documentation/guides/rust

Slide 29

Slide 29 text

Route on/off instructions. Connected Outlet Connected Outlet Application Connected Outlet Service

Slide 30

Slide 30 text

Route open/close instructions. Connected Lock Connected Lock Application Connected Lock Service

Slide 31

Slide 31 text

Route/Cache sensor data, alerts and videos. Camera Door Bell Camera Door Bell Application Camera Door Bell Service

Slide 32

Slide 32 text

Route Sensor Alerts Fire Alarm Application Fire Alarm Service Fire Alarm

Slide 33

Slide 33 text

Gateway Flood Warning Sensor Multiple transport protocols in the path of one message. TCP TCP Flood Monitoring System Sensors Vendor’s Service LPWAN

Slide 34

Slide 34 text

Gateway Flood Warning Sensor Flood Monitoring System Sensors Vendor’s Service Various protocols have various different secure channel designs. TLS TLS LPWAN

Slide 35

Slide 35 text

Gateway Flood Warning Sensor A secure channel that is decoupled from the transport layer connections. 
 The gateway and sensor vendor shouldn’t be exposed to application data. Flood Monitoring System Sensors Vendor’s Service

Slide 36

Slide 36 text

D D D … Devices … … Gateways … Lighting HVAC Water Monitoring Elevators Access Control Fire Safety Waste Parking … Vendor IoT Backends … System Integrator 1 Building Management System … SI IoT Backends … System Integrator 2 G G D D D D D D D D D D D D D D D D D D D D D G G G G G G G G G G G G G G Complexity & attack surfaces grow to be unmanageable. Proprietary data is leaked. Security becomes untenable.

Slide 37

Slide 37 text

D D D … Devices … … Gateways … Lighting HVAC Water Monitoring Elevators Access

Slide 38

Slide 38 text

end-to-end secure channels

Slide 39

Slide 39 text

Implicit trust in network boundaries Lack of mutual authentication Lack of end-to-end data integrity and confidentiality Poor management of keys and credentials

Slide 40

Slide 40 text

No content

Slide 41

Slide 41 text

ephemeral identities

Slide 42

Slide 42 text

selective disclosure

Slide 43

Slide 43 text

anonymous credentials

Slide 44

Slide 44 text

new protocols

Slide 45

Slide 45 text

zero knowledge proofs

Slide 46

Slide 46 text

federated learning

Slide 47

Slide 47 text

differential privacy

Slide 48

Slide 48 text

homomorphic encryption

Slide 49

Slide 49 text

Mrinal Wadhwa CTO, Ockam mrinal github.com/ockam-network/ockam