SlideShare a Scribd company logo
OAUTHING:
ANONYMOUS INDIVIDUALINTEGRATION FOR IOT
Paul Fremantle
School of Computing
University of Portsmouth
Agenda
• Motivation and background
• Previous iterations
• Model and architecture
• Prototype and results
• Comparison with related work and conclusions
MOTIVATION
Growth of IoT devices
2016 Mirai
620Gbps
botnet attack based on IoT devices
5 minutes
from On to Pwned
Anonymous Individual Integration for IoT
Problem statement
• Today many IoT devices are
inherently tied to the manufacturer
• I want to share data under my own control with
trust
• Threats include:
• Lack of individual credentials
• Hacking of data and passwords
• Trust in the company to behave well
• Data sharing and privacy
• Going out of business
Privacy By Design
• 7 key principles
• Proactive not Reactive; Preventative not Remedial
• Privacy as the Default Setting
• Privacy Embedded into Design
• Full Functionality – Positive-Sum, not Zero-Sum
• End-to-End Security – Full Lifecycle Protection
• Visibility and Transparency – Keep it Open
• Respect for User Privacy – Keep it User-Centric
Cavoukian, Ann, Scott Taylor, and Martin E. Abrams. "Privacy by Design: essential for
organizational accountability and strong business practices."Identity in the Information Society 3.2
(2010): 405-413.
Three layer privacy model
User
Sphere
Recipient
Sphere
Joint
Sphere
Spiekermann, Sarah, and Lorrie Faith Cranor. "Engineering privacy.”
IEEE Transactions on software engineering 35.1 (2009): 67-82.
Overall approach and timeline
• First iteration: FIOT
• Tokens on devices, user consent to data sharing
• Fremantle, Paul, et al. "Federated identity and access management for the
internet of things." Secure Internet of Things (SIoT), 2014 International
Workshop on. IEEE, 2014.
• Second iteration - IGNITE
• Unique identifiers per device, Initial performance data
• Fremantle, Paul, Jacek Kopecký, and Benjamin Aziz. "Web API management meets
the internet of things." European Semantic Web Conference. Springer International
Publishing, 2015.
• Third iteration: OAUTHING
• Device and User Registration processes
• Anonymous identities
• Cloud based “personal middleware”
• Improved testing and performance data
• CIOT
Contributions of this work
• OAuthing: a new model for federated identity, access
control and data sharing in IoT
• A clear manufacturing and user registration process for OAuth2
credentials with IoT devices
• An approach for using anonymous identities in IoT while allowing
users to share data effectively
• Personal Cloud Middleware to ensure trust in the server model
• A working prototype of the OAuthing model
• Experimental results demonstrating scaling in a cloud
environment
MODELAND
ARCHITECTURE
Scoping
• In Scope
• Directly Internet-connected devices
• Sample device is based on ESP8266 with wifi
• IoT Hub (e.g. Smart Home gateway, Connected Car)
• Treat individual sensors as attached to the hub
• Treat the hub as a Device
• Out of scope in the current model
• Implicit Data Transfer
• Privacy infringement through scanning
• e.g. MAC scanning attacks, ambient devices
• Devices with multiple owners
• This may be extended in future research
• Devices that are not directly connected to the Internet
• This may be extended in future research
IoT today
The
OAuthing
Model
Device Identity Provider (DIdP)
• Provides secure anonymous identities to devices and
issues tokens that authorize devices or services
• Allows users to register their devices
• Allows users to consent to share data or commands
• Offers the Identity Broker pattern
Personal Cloud Middleware (PCM)
• Each user has a server running on their behalf
• Originally proposed in Webinos
• Personal Zone Hub (PZH) and Personal Zone Proxy (PZP)
• Webinos does not deal with running these in a cloud, locating them, etc
• A cloud shadow of the user’s devices
• Does not persistently store data
• Performs summarization and filtering*
• Only distributes data according to user consent
• Enhances Trust in the Cloud
* Not yet implemented!
Intelligent Gateway (IG)
• Validates tokens against the DIdP
• Routes requests based on anonymous identities
• Applies dynamic authorization policies
• As consented by users
• Instantiates PCMs in Docker
Device
Device Lifecycle
and Bootloader
• The device bootloader
implements a well-defined
lifecycle
• Secure device identity is
embedded at manufacture time
• User registration process based
on QR codes
Information sharing matrix
User
Profil
e
MAC
HW ID
Device
ID
Device
Secret
Pseud
o-nym
Bearer
Token
Device
Data
UIdP ✔
DIdP ✔ ✔ ✔ ✔ ✔
Manu-
facturer
✔ ✔
Device ✔ ✔ ✔ ✔ ✔
IG ✔ ✔ ✔
Data
Recipie
nt
✔
Analysis of the sharing matrix
• In order to steal data an attacker needs to attack both the
DIdP and IG/PCM
• The DIdP doesn’t see any device data
• The IG/PCM do not see any real identities
• Third-party services don’t inherently know any identities
• Users may leak it in other ways
• The manufacturer and other services only see data that
has consent to share
• All third-party services / data recipients are equal
Addressing the security and privacy
problems of IoT
• Default passwords
• Each device is configured at manufacturing with a secure id
• User control
• Clear user registration and ownership model
• User’s choice of provider
• Personal middleware
• Fingerprinting and identification
• Anonymous Identities
• Device/User shadow protects metadata
• Summarising and filtering
• Consent
• No data is shared without consent
IMPLEMENTATION
Implementation
• OAuthing (DIdP)
• OAuth2 support, onbound support for popular UIdPs (Google, FB,
Twitter), embedded MQTT broker
• IGNITE (IG)
• Performant MQTT gateway, with pluggable intermediation, launching
of PCMs in Docker, OAuth2 scope validation
• RSMB Docker (PCM)
• Lightweight containers running in Docker
• Device Bootloader and Sample Device
• Based on ESP8266 low-cost device chip, implements
MQTT/TLS, Device and User registration flows
• Third-Party App (TPA)
• Simple application to demonstrate consent-based data sharing using
MQTT / WebSockets / TLS
https://github.com/pzfreo/oauthing
https://github.com/pzfreo/ignite
Digital Ocean LON1 region
Device IdP:
OAuthing
DIdP
Database:
Cassandra
oauthing.io
2Gb Droplet
Cloud
Service
Provider:
IGNITE
Docker
Controller:
dproxy
ignite-iot.net
2Gb Droplet
Personal
RSMB
Brokers
Personal
RSMB
Brokers
Personal
RSMB
Brokers
Personal
RSMB
Brokers
Personal
RSMB
Brokers
Personal
RSMB
Brokers
Personal
Zone Hub:
RSMB
MQTT
collector
Test Manager
4Gb Droplet
Stats analyser
Test Load Driver
4Gb Droplet
50 virtual
clients
Up to 10 TLDs
per test
Key
Datacenter
Droplet/cloud
instance
Docker Container
Test Environment and Harness
Live demo?
2 minute demonstration video
Individual anonymous integration
• On a 2Gb Digital Ocean droplet
• 400 MQTT brokers
• Handling 10 messages / second each
• Based on pseudonyms
• With OAuth2 based consent
Memory and code usage
on ESP8266
One Second Client results
Stress test results
Introspection performance
Connect latency
Analysis of results
• The model can be implemented effectively
• The additional latency on data messages is ~1ms
• Not noticeable compared to average mobile Internet latencies of 100-1000ms
• The “first connect” performance is also acceptable (it takes the device
3-10 secs to associate to Wifi)
• The additional memory usage of the bootloader on the device is
acceptable
• 400 PZH servers can be run on a $20/month cloud server
• $0.60/year/user cost can be further reduced with optimization
• Supporting each user with 100 devices each communicating every 10 seconds
Potential Use Cases
• Wide: Supporting the EU GDPR
• Ensuring full consent for all IoT data sharing
• Specific: Connected Medical Devices
• Only sharing specific data or averages
• Avoiding sharing all data with the manufacturer
• Better compliance with regulatory systems
• Specific: Industrial IoT
• High security and privacy required around smart production lines
Comparison with related work
• OAuth for Devices
• Previous work offers OAuth2 models for devices:
• FIOT [8], IGNITE [9], IOT-OAS [1], COMPOSE[14], OAuth1 for MQTT[13], IBM
Watson, AWS IoT
• None of these provide:
• Anonymous Identities
• Clear automated registration processes or
• Personal Cloud Middleware
• Webinos
• Concept of Personal Zone Hub – personal middleware
• Does not address usability of PZH, how to configure and run in a cloud
• Does not support federated identity to the device
• IoT@Work [16]
• A model for anonymous identities for IoT
• No separation of identity management and data sharing systems
• No federated identity models
[n] References refer to the bibliography in the paper
Further Work
• Formal models
• In one of CSP/Event-B/Tamarin
• Implementation of updated model “OAuthing 2”
• Detailed threat analysis and threat modeling
• Intersection with Blockchains and Distributed Ledgers
• Use of blockchain to validate identity, ownership, manage consent,
provide an audit trail of IoT lifecycles
Questions?

More Related Content

PDF
IoT and Blockchains - enhancing security and privacy
PPTX
Applicability of Machine learning in computer networks
PPTX
Devising a practical approach to the Internet of Things
PPTX
blockchain and iot: Opportunities and Challanges
PPTX
Securing the Internet of Things
PPTX
Blockchain for IoT Security and Privacy: The Case Study of a Smart Home
PDF
Blockchain for IoT
PDF
CAN BLOCKCHAIN BE A SOLUTION TO IOT TECHNICAL AND SECURITY ISSUES
IoT and Blockchains - enhancing security and privacy
Applicability of Machine learning in computer networks
Devising a practical approach to the Internet of Things
blockchain and iot: Opportunities and Challanges
Securing the Internet of Things
Blockchain for IoT Security and Privacy: The Case Study of a Smart Home
Blockchain for IoT
CAN BLOCKCHAIN BE A SOLUTION TO IOT TECHNICAL AND SECURITY ISSUES

What's hot (20)

PPTX
IoT World - creating a secure robust IoT reference architecture
PDF
Connecting to the internet of things (IoT)
PPTX
Null mumbai-iot-workshop
PDF
1 importance of light weight authentication in iot
PDF
Ibm_IoT_Architecture_and_Capabilities
PPTX
IoT Security: Cases and Methods [CON5446]
PPTX
Blockchain+IOT
PDF
Federated Identity for IoT with OAuth2
PPTX
A Secure Model of IoT Using Blockchain
PDF
What is an IoT Agent
PDF
WoT framework and use cases
PDF
A Pragmatic Reference Architecture for The Internet of Things
PPTX
IoT Security: Cases and Methods
PDF
IoT on Blockchain Solution Overview
PDF
Web-of-Things and Services Security
PDF
IoT Security in Action - Boston Sept 2015
PPTX
IoTSummit - Introduction to IoT Hub
PPTX
Blockchains and the IoT
PDF
Blockchain IoT Night / 25th Oct 2017
PPTX
Using an Open Source RESTful Backend for IoT Applications
IoT World - creating a secure robust IoT reference architecture
Connecting to the internet of things (IoT)
Null mumbai-iot-workshop
1 importance of light weight authentication in iot
Ibm_IoT_Architecture_and_Capabilities
IoT Security: Cases and Methods [CON5446]
Blockchain+IOT
Federated Identity for IoT with OAuth2
A Secure Model of IoT Using Blockchain
What is an IoT Agent
WoT framework and use cases
A Pragmatic Reference Architecture for The Internet of Things
IoT Security: Cases and Methods
IoT on Blockchain Solution Overview
Web-of-Things and Services Security
IoT Security in Action - Boston Sept 2015
IoTSummit - Introduction to IoT Hub
Blockchains and the IoT
Blockchain IoT Night / 25th Oct 2017
Using an Open Source RESTful Backend for IoT Applications
Ad

Viewers also liked (11)

PDF
IBM Streams IoT Integration
PDF
Building Services with WSO2 Microservices framework for Java and WSO2 AS
PPTX
IOT Success depends on Integration
PDF
Microintegration
PPTX
Bitcoin A Peer-to-Peer Electronic Cash System
PDF
Microservices in Practice
PPTX
Blockchain Singularities
PPTX
An Introduction to Blockchain
PPTX
The Role of Enterprise Integration in Digital Transformation
PDF
An introduction to M2M / IoT technologies
PPTX
Peer To Peer Networking
IBM Streams IoT Integration
Building Services with WSO2 Microservices framework for Java and WSO2 AS
IOT Success depends on Integration
Microintegration
Bitcoin A Peer-to-Peer Electronic Cash System
Microservices in Practice
Blockchain Singularities
An Introduction to Blockchain
The Role of Enterprise Integration in Digital Transformation
An introduction to M2M / IoT technologies
Peer To Peer Networking
Ad

Similar to Anonymous Individual Integration for IoT (20)

PDF
May 2023: Top 10 Read Articles in Network Security and Its Applications
PDF
January 2023: Top 10 Read Articles in Network Security and Its Applications
PDF
April 2025 - Top 10 Read Articles in Network Security & Its Applications.pdf
PPTX
Cloud and Edge: price, performance and privacy considerations in IOT, by Tsvi...
PDF
June 2023: Top 10 Read Articles in Network Security and Its Applications
PDF
February 2025 - Top 10 Read Articles in Network Security & Its Applications.pdf
PDF
December 2021: Top 10 Read Articles in Network Security and Its Applications
PDF
April 2023: Top 10 Read Articles in Network Security and Its Applications
PDF
March 2023: Top 10 Read Articles in Network Security and Its Applications
PDF
November 2021 - Top 10 Read Articles in Network Security & Its Applications
PDF
February 2023: Top 10 Read Articles in Network Security and Its Applications
PDF
May 2025 - Top 10 Read Articles in Network Security and Its Applications
PDF
October 2023 - Top 10 Read Articles in Network Security & Its Applications.pdf
PDF
December 2023 - Top 10 Read Articles in Network Security & Its Applications
PDF
November 2023 - Top 10 Read Articles in Network Security & Its Applications
PDF
April 2022 - Top 10 Read Articles in Network Security and Its Applications
PDF
March 2025 - Top 10 Read Articles in Network Security & Its Applications
PDF
March 2024 - Top 10 Read Articles in Network Security & Its Applications
PDF
May 2022: Top 10 Read Articles in Network Security and Its Applications
PDF
May 2024 - Top 10 Read Articles in Network Security & Its Applications.pdf
May 2023: Top 10 Read Articles in Network Security and Its Applications
January 2023: Top 10 Read Articles in Network Security and Its Applications
April 2025 - Top 10 Read Articles in Network Security & Its Applications.pdf
Cloud and Edge: price, performance and privacy considerations in IOT, by Tsvi...
June 2023: Top 10 Read Articles in Network Security and Its Applications
February 2025 - Top 10 Read Articles in Network Security & Its Applications.pdf
December 2021: Top 10 Read Articles in Network Security and Its Applications
April 2023: Top 10 Read Articles in Network Security and Its Applications
March 2023: Top 10 Read Articles in Network Security and Its Applications
November 2021 - Top 10 Read Articles in Network Security & Its Applications
February 2023: Top 10 Read Articles in Network Security and Its Applications
May 2025 - Top 10 Read Articles in Network Security and Its Applications
October 2023 - Top 10 Read Articles in Network Security & Its Applications.pdf
December 2023 - Top 10 Read Articles in Network Security & Its Applications
November 2023 - Top 10 Read Articles in Network Security & Its Applications
April 2022 - Top 10 Read Articles in Network Security and Its Applications
March 2025 - Top 10 Read Articles in Network Security & Its Applications
March 2024 - Top 10 Read Articles in Network Security & Its Applications
May 2022: Top 10 Read Articles in Network Security and Its Applications
May 2024 - Top 10 Read Articles in Network Security & Its Applications.pdf

More from Paul Fremantle (15)

PPTX
Web API Management meets the Internet of Things
PPTX
Apache Stratos - Building a PaaS using OSGi and Equinox
PDF
Beyond Economics - Cloud as a Business Enabler
PDF
Evolution of PaaS
PDF
The Evolution of Integration
PPTX
High Volume Web API Management with the WSO2 ESB
PDF
Stratos Open PaaS OSCON 2011
PPT
Stratos and PaaS for London Java Community
PPT
Understanding Platform as a Service
PPT
Making Apache Tomcat Multi-tenant, Elastic and Metered
PPT
Building Cloud Native Software
PPT
Building Innovation with Open Source Approaches
PPT
Three SOA Case Studies
PPT
Fast SOA with Apache Synapse
PPT
REST vs WS-*: Myths Facts and Lies
Web API Management meets the Internet of Things
Apache Stratos - Building a PaaS using OSGi and Equinox
Beyond Economics - Cloud as a Business Enabler
Evolution of PaaS
The Evolution of Integration
High Volume Web API Management with the WSO2 ESB
Stratos Open PaaS OSCON 2011
Stratos and PaaS for London Java Community
Understanding Platform as a Service
Making Apache Tomcat Multi-tenant, Elastic and Metered
Building Cloud Native Software
Building Innovation with Open Source Approaches
Three SOA Case Studies
Fast SOA with Apache Synapse
REST vs WS-*: Myths Facts and Lies

Recently uploaded (20)

PDF
Empathic Computing: Creating Shared Understanding
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Cloud computing and distributed systems.
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Spectroscopy.pptx food analysis technology
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Empathic Computing: Creating Shared Understanding
Advanced methodologies resolving dimensionality complications for autism neur...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
20250228 LYD VKU AI Blended-Learning.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Chapter 3 Spatial Domain Image Processing.pdf
Cloud computing and distributed systems.
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Programs and apps: productivity, graphics, security and other tools
Reach Out and Touch Someone: Haptics and Empathic Computing
Understanding_Digital_Forensics_Presentation.pptx
Spectroscopy.pptx food analysis technology
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows

Anonymous Individual Integration for IoT

  • 1. OAUTHING: ANONYMOUS INDIVIDUALINTEGRATION FOR IOT Paul Fremantle School of Computing University of Portsmouth
  • 2. Agenda • Motivation and background • Previous iterations • Model and architecture • Prototype and results • Comparison with related work and conclusions
  • 4. Growth of IoT devices
  • 5. 2016 Mirai 620Gbps botnet attack based on IoT devices 5 minutes from On to Pwned
  • 7. Problem statement • Today many IoT devices are inherently tied to the manufacturer • I want to share data under my own control with trust • Threats include: • Lack of individual credentials • Hacking of data and passwords • Trust in the company to behave well • Data sharing and privacy • Going out of business
  • 8. Privacy By Design • 7 key principles • Proactive not Reactive; Preventative not Remedial • Privacy as the Default Setting • Privacy Embedded into Design • Full Functionality – Positive-Sum, not Zero-Sum • End-to-End Security – Full Lifecycle Protection • Visibility and Transparency – Keep it Open • Respect for User Privacy – Keep it User-Centric Cavoukian, Ann, Scott Taylor, and Martin E. Abrams. "Privacy by Design: essential for organizational accountability and strong business practices."Identity in the Information Society 3.2 (2010): 405-413.
  • 9. Three layer privacy model User Sphere Recipient Sphere Joint Sphere Spiekermann, Sarah, and Lorrie Faith Cranor. "Engineering privacy.” IEEE Transactions on software engineering 35.1 (2009): 67-82.
  • 10. Overall approach and timeline • First iteration: FIOT • Tokens on devices, user consent to data sharing • Fremantle, Paul, et al. "Federated identity and access management for the internet of things." Secure Internet of Things (SIoT), 2014 International Workshop on. IEEE, 2014. • Second iteration - IGNITE • Unique identifiers per device, Initial performance data • Fremantle, Paul, Jacek Kopecký, and Benjamin Aziz. "Web API management meets the internet of things." European Semantic Web Conference. Springer International Publishing, 2015. • Third iteration: OAUTHING • Device and User Registration processes • Anonymous identities • Cloud based “personal middleware” • Improved testing and performance data • CIOT
  • 11. Contributions of this work • OAuthing: a new model for federated identity, access control and data sharing in IoT • A clear manufacturing and user registration process for OAuth2 credentials with IoT devices • An approach for using anonymous identities in IoT while allowing users to share data effectively • Personal Cloud Middleware to ensure trust in the server model • A working prototype of the OAuthing model • Experimental results demonstrating scaling in a cloud environment
  • 13. Scoping • In Scope • Directly Internet-connected devices • Sample device is based on ESP8266 with wifi • IoT Hub (e.g. Smart Home gateway, Connected Car) • Treat individual sensors as attached to the hub • Treat the hub as a Device • Out of scope in the current model • Implicit Data Transfer • Privacy infringement through scanning • e.g. MAC scanning attacks, ambient devices • Devices with multiple owners • This may be extended in future research • Devices that are not directly connected to the Internet • This may be extended in future research
  • 16. Device Identity Provider (DIdP) • Provides secure anonymous identities to devices and issues tokens that authorize devices or services • Allows users to register their devices • Allows users to consent to share data or commands • Offers the Identity Broker pattern
  • 17. Personal Cloud Middleware (PCM) • Each user has a server running on their behalf • Originally proposed in Webinos • Personal Zone Hub (PZH) and Personal Zone Proxy (PZP) • Webinos does not deal with running these in a cloud, locating them, etc • A cloud shadow of the user’s devices • Does not persistently store data • Performs summarization and filtering* • Only distributes data according to user consent • Enhances Trust in the Cloud * Not yet implemented!
  • 18. Intelligent Gateway (IG) • Validates tokens against the DIdP • Routes requests based on anonymous identities • Applies dynamic authorization policies • As consented by users • Instantiates PCMs in Docker
  • 20. Device Lifecycle and Bootloader • The device bootloader implements a well-defined lifecycle • Secure device identity is embedded at manufacture time • User registration process based on QR codes
  • 21. Information sharing matrix User Profil e MAC HW ID Device ID Device Secret Pseud o-nym Bearer Token Device Data UIdP ✔ DIdP ✔ ✔ ✔ ✔ ✔ Manu- facturer ✔ ✔ Device ✔ ✔ ✔ ✔ ✔ IG ✔ ✔ ✔ Data Recipie nt ✔
  • 22. Analysis of the sharing matrix • In order to steal data an attacker needs to attack both the DIdP and IG/PCM • The DIdP doesn’t see any device data • The IG/PCM do not see any real identities • Third-party services don’t inherently know any identities • Users may leak it in other ways • The manufacturer and other services only see data that has consent to share • All third-party services / data recipients are equal
  • 23. Addressing the security and privacy problems of IoT • Default passwords • Each device is configured at manufacturing with a secure id • User control • Clear user registration and ownership model • User’s choice of provider • Personal middleware • Fingerprinting and identification • Anonymous Identities • Device/User shadow protects metadata • Summarising and filtering • Consent • No data is shared without consent
  • 25. Implementation • OAuthing (DIdP) • OAuth2 support, onbound support for popular UIdPs (Google, FB, Twitter), embedded MQTT broker • IGNITE (IG) • Performant MQTT gateway, with pluggable intermediation, launching of PCMs in Docker, OAuth2 scope validation • RSMB Docker (PCM) • Lightweight containers running in Docker • Device Bootloader and Sample Device • Based on ESP8266 low-cost device chip, implements MQTT/TLS, Device and User registration flows • Third-Party App (TPA) • Simple application to demonstrate consent-based data sharing using MQTT / WebSockets / TLS https://github.com/pzfreo/oauthing https://github.com/pzfreo/ignite
  • 26. Digital Ocean LON1 region Device IdP: OAuthing DIdP Database: Cassandra oauthing.io 2Gb Droplet Cloud Service Provider: IGNITE Docker Controller: dproxy ignite-iot.net 2Gb Droplet Personal RSMB Brokers Personal RSMB Brokers Personal RSMB Brokers Personal RSMB Brokers Personal RSMB Brokers Personal RSMB Brokers Personal Zone Hub: RSMB MQTT collector Test Manager 4Gb Droplet Stats analyser Test Load Driver 4Gb Droplet 50 virtual clients Up to 10 TLDs per test Key Datacenter Droplet/cloud instance Docker Container Test Environment and Harness
  • 29. Individual anonymous integration • On a 2Gb Digital Ocean droplet • 400 MQTT brokers • Handling 10 messages / second each • Based on pseudonyms • With OAuth2 based consent
  • 30. Memory and code usage on ESP8266
  • 31. One Second Client results
  • 35. Analysis of results • The model can be implemented effectively • The additional latency on data messages is ~1ms • Not noticeable compared to average mobile Internet latencies of 100-1000ms • The “first connect” performance is also acceptable (it takes the device 3-10 secs to associate to Wifi) • The additional memory usage of the bootloader on the device is acceptable • 400 PZH servers can be run on a $20/month cloud server • $0.60/year/user cost can be further reduced with optimization • Supporting each user with 100 devices each communicating every 10 seconds
  • 36. Potential Use Cases • Wide: Supporting the EU GDPR • Ensuring full consent for all IoT data sharing • Specific: Connected Medical Devices • Only sharing specific data or averages • Avoiding sharing all data with the manufacturer • Better compliance with regulatory systems • Specific: Industrial IoT • High security and privacy required around smart production lines
  • 37. Comparison with related work • OAuth for Devices • Previous work offers OAuth2 models for devices: • FIOT [8], IGNITE [9], IOT-OAS [1], COMPOSE[14], OAuth1 for MQTT[13], IBM Watson, AWS IoT • None of these provide: • Anonymous Identities • Clear automated registration processes or • Personal Cloud Middleware • Webinos • Concept of Personal Zone Hub – personal middleware • Does not address usability of PZH, how to configure and run in a cloud • Does not support federated identity to the device • IoT@Work [16] • A model for anonymous identities for IoT • No separation of identity management and data sharing systems • No federated identity models [n] References refer to the bibliography in the paper
  • 38. Further Work • Formal models • In one of CSP/Event-B/Tamarin • Implementation of updated model “OAuthing 2” • Detailed threat analysis and threat modeling • Intersection with Blockchains and Distributed Ledgers • Use of blockchain to validate identity, ownership, manage consent, provide an audit trail of IoT lifecycles

Editor's Notes

  • #21: @startuml start :**Manufacture** (the device is created); :**Client Registration** (the device is registered with OAuThing as a OAuth2 client); :**Purchase** (the device is physically in the hands of a user); repeat :**User Registration** (the user takes ownership of the device and allocates it permissions); :**Use** (the device is now publishing data and acting on user commands); repeat while (reset ownership) @enduml