SlideShare a Scribd company logo
Authorization
for Internet of Things
using OAuth 2.0
Samuel Erdtman
samuel.erdtman@nexusgroup.com
Hannes Tschofenig
hannes.tschofenig@arm.com
© TechCon20152
Agenda
 Design Patterns
 Architecture
 Technology Big Picture
 Demo
 Summary
© TechCon20153
Design Patterns
 A design pattern is a general reusable solution to a commonly
occurring problem.
 A few design patterns have emerged in the IoT space, as
described in RFC 7452 and recent Internet Society IoT
whitepaper.
© TechCon20154
Backend Data Portability
 Devices upload data to the cloud operated by a specific vendor.
 Backend data sharing of protected data via OAuth-alike mechanisms and
RESTful APIs.
https://developer.carvoyant.com/page
http://www.mapmyfitness.com/
© TechCon20155
 Device talks directly to other device (often smart phone).
Security based on direct relationship between the device
(pairing).
Vendor A Vendor BE.g. Bluetooth Smart,
Thread
Device-to-Device Communication
© TechCon20156
Examples
Wahoo Heart-Rate
Monitor
Beacons
Cadence Sensor
Parrot
Hearing Aid
© TechCon20157
What if?
 IoT devices need to be accessed by multiple users
securely?
 Access rights dynamically change?
 Access rights are fine-grained?
 Number of IoT devices is large?
 Access policies need to be managed centrally?
 Access rights can be delegated?
 System has to be integrated in a larger context
(e.g., other, existing identity management
infrastructures)
Architecture
© TechCon20159
Client
Authorization
Server
Resource
Device
Management
Server
Response
Request
Token
Token
Client Info
© TechCon201510
HMAC-SHA256 (AS-RS Key)HMAC-SHA256 (PoP Key)
Request Example
Head
Body
{
“action” : “open”
}
Head
{
“alg” : “HMAC-SHA256”
“exp” : “1300819380”
“iv” : “<iv>”
}
Body
{
“scope” : “open”,
“audience” : “door lock foo-bar”,
“key” : “<encrypted key”>
}
{
“alg” : “HMAC-SHA256”,
“token” : “<access token>”,
“timestamp” : “1300919380”
}
Request Access Token
Technology Big Picture
© TechCon201512
ACE WG
 Authentication and Authorization for Constrained Environments
(ace) aims to standardize solutions for interoperable security for
IoT.
 Relevant documents:
 IoT Use Cases – draft-ietf-ace-usecases
 OAuth 2.0 Profile for IoT – draft-seitz-ace-oauth-authz
 Charter: http://datatracker.ietf.org/wg/ace/charter/
© TechCon201513
OAuth WG
 Authorization protocol widely used on the Web and on smart
phones.
 Core OAuth 2.0 functionality specified in RFC 6749
 Charter: https://tools.ietf.org/wg/oauth/
 Proof of Possession Security Extension
 Architecture – draft-ietf-oauth-pop-architecture
 Key Distribution – draft-ietf-oauth-pop-key-distribution
 JSON Web Token (JWT) – RFC 7519
 JWT Key Claim – draft-ietf-oauth-proof-of-possession
 Browser views allow for a secure browser context inside the native
app now available for Android and IOS
(described in draft-wdenniss-oauth-native-apps).
Example code available for Android and IOS.
© TechCon201514
COSE WG
 Concise Binary Object Representation (CBOR), RFC 7049,
defines an efficient binary encoding based on the JSON data
model.
 CBOR Object Signing and Encryption (COSE) offers security
services for CBOR-based structures.
 Functions:
 Signing, Encryption, Key Exchange, and Key Representation
 Charter: https://datatracker.ietf.org/wg/cose/charter/
© TechCon201515
OpenID Connect
 Builds on OAuth 2.0 and provides support for federated login
and the ability to convey authentication information.
 Organization offers self-certification program.
 Work done in working groups, such as the Heart working group.
 Main specifications can be found at
http://openid.net/developers/specs/
 Additional information about the organization can be found at
http://openid.net
© TechCon201516
UMA
 User Managed Access (UMA)
 OAuth-based protocol designed to give users a unified control
point for authorizing who and what can get access to their data
and devices.
 Separates resource owner from requesting party.
 More information available at:
http://kantarainitiative.org/confluence/display/uma/Home
© TechCon201517
OMA LWM2M
 Lightweight Machine-to-Machine Communication (LWM2M)
 http://openmobilealliance.org
 Specification available for download at
http://technical.openmobilealliance.org/Technical/technical-
information/release-program/current-releases/oma-
lightweightm2m-v1-0
 Functionality:
 Device management
 Key Provisioning
 Firmware Updates
© TechCon201518
FIDO
 The FIDO (Fast IDentity Online) Alliance was formed in July
2012 to address the lack of interoperability among strong
authentication technologies, and remedy the problems users
face with creating and remembering multiple usernames and
passwords.
 Specifications at https://fidoalliance.org/specifications
 Universal Second Factor (U2F) protocol
 Universal Authentication Framework (UAF) protocol
 More info about the alliance, certification programs and tutorials
at https://fidoalliance.org
Demo
© TechCon201520
Technologies used in Demo Setup
 OAuth 2.0 & Extensions
 OAuth 2.0 Proof of Possession
 OAuth 2.0 IoT profile
 JSON Web Token (JWT)
 Bluetooth Smart
 ARM mbed
 Android app
Nordic nRF51-DK
© TechCon201521
© TechCon201522
Summary
 There are ongoing standardization efforts. Help us make the
specifications better.
 Technologies and eco-systems can be re-used to solve IoT
security challenges.
 Code is available. We are planning to add more to make
development easier.

More Related Content

PDF
Performance of State-of-the-Art Cryptography on ARM-based Microprocessors
PPTX
The Role of Standards in IoT Security
PPTX
Crypto Performance on ARM Cortex-M Processors
PPTX
Advancing IoT Communication Security with TLS and DTLS v1.3
PPTX
Comparison of MQTT and DDS as M2M Protocols for the Internet of Things
PPTX
Workshop 16 october 2015 paris
PDF
Effective IoT System on Openstack
PPTX
OPC UA Security: Native and Add-on Solutions
Performance of State-of-the-Art Cryptography on ARM-based Microprocessors
The Role of Standards in IoT Security
Crypto Performance on ARM Cortex-M Processors
Advancing IoT Communication Security with TLS and DTLS v1.3
Comparison of MQTT and DDS as M2M Protocols for the Internet of Things
Workshop 16 october 2015 paris
Effective IoT System on Openstack
OPC UA Security: Native and Add-on Solutions

What's hot (20)

PDF
IoT Seminar (Oct. 2016) Juan Perez - Microsoft
PPTX
Catching the Internet of Things (IoT) Wave
PPTX
Creator IoT Framework
PPTX
The Inside Story: How OPC UA and DDS Can Work Together in Industrial Systems
PDF
Building the Internet of Things
PPTX
From IoT Central to IoT Hub
PDF
Device Management for OSGi IoT Gateways
PDF
What's the Right Messaging Standard for the IoT?
PDF
Architectural Patterns in IoT Cloud Platforms
PPTX
IoT, Demystified
PDF
FIWARE Global Summit - Real-time Media Stream Processing Using Kurento
ODP
Using open source for IoT
PDF
Identity for IoT: An Authentication Framework for the IoT
PDF
AuthentiThings: The Pitfalls and Promises of Authentication in the IoT
PDF
Artificial Intelligence in the Network
PDF
How do you manage Internet of Things (IoT) devices at scale
PDF
IoT Seminar (Oct. 2016) Jong Young Lee - MDS Technology
PDF
IRJET- Revisiting Security Aspects of Internet of Things for Self-Managed...
PDF
Iot gateways march 2015
PPTX
Elements of IoT connectivity technologies
IoT Seminar (Oct. 2016) Juan Perez - Microsoft
Catching the Internet of Things (IoT) Wave
Creator IoT Framework
The Inside Story: How OPC UA and DDS Can Work Together in Industrial Systems
Building the Internet of Things
From IoT Central to IoT Hub
Device Management for OSGi IoT Gateways
What's the Right Messaging Standard for the IoT?
Architectural Patterns in IoT Cloud Platforms
IoT, Demystified
FIWARE Global Summit - Real-time Media Stream Processing Using Kurento
Using open source for IoT
Identity for IoT: An Authentication Framework for the IoT
AuthentiThings: The Pitfalls and Promises of Authentication in the IoT
Artificial Intelligence in the Network
How do you manage Internet of Things (IoT) devices at scale
IoT Seminar (Oct. 2016) Jong Young Lee - MDS Technology
IRJET- Revisiting Security Aspects of Internet of Things for Self-Managed...
Iot gateways march 2015
Elements of IoT connectivity technologies
Ad

Similar to Authorization for Internet of Things using OAuth 2.0 (20)

PDF
What is WebRTC and How does it work?
PPTX
Open Source Edge Computing Platforms - Overview
PDF
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
PDF
SECURITY IMPLEMENTATION IN MEDIA STREAMING APPLICATIONS USING OPEN NETWORK AD...
PPTX
Developers’ mDay 2019. - Dejan Bosanac, Red Hat – Cloud scale IoT connectivity
PDF
Webinar WebRTC HTML5 (english)
PDF
Choreo: Empowering the Future of Enterprise Software Engineering
PDF
Pkewebrtc
PDF
Open Source Predictive Analytics Pipeline with Apache NiFi and MiniFi Princeton
PDF
Open platform communication
PPTX
S01 gae and_hybrid_app_v1.0
PPTX
Hyperledger Project Overview - January 2018.pptx
PPTX
Html5 RTC - 1
PPTX
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
PPTX
IoT Gateway Introduction
PPTX
IoT digest. March 2018
PDF
OAuth2 for IoT Security: Why OpenID Connect & UMA Are They Key
PDF
Dart on Arm - Flutter Bangalore June 2021
PDF
FIWARE Overview of Generic Enablers
PDF
FIWARE Generic Enablers introduction
What is WebRTC and How does it work?
Open Source Edge Computing Platforms - Overview
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
SECURITY IMPLEMENTATION IN MEDIA STREAMING APPLICATIONS USING OPEN NETWORK AD...
Developers’ mDay 2019. - Dejan Bosanac, Red Hat – Cloud scale IoT connectivity
Webinar WebRTC HTML5 (english)
Choreo: Empowering the Future of Enterprise Software Engineering
Pkewebrtc
Open Source Predictive Analytics Pipeline with Apache NiFi and MiniFi Princeton
Open platform communication
S01 gae and_hybrid_app_v1.0
Hyperledger Project Overview - January 2018.pptx
Html5 RTC - 1
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
IoT Gateway Introduction
IoT digest. March 2018
OAuth2 for IoT Security: Why OpenID Connect & UMA Are They Key
Dart on Arm - Flutter Bangalore June 2021
FIWARE Overview of Generic Enablers
FIWARE Generic Enablers introduction
Ad

More from Hannes Tschofenig (6)

PPTX
Measuring the Performance and Energy Cost of Cryptography in IoT Devices
PPTX
Device Management with OMA Lightweight M2M
PPTX
Smart Object Architecture
PDF
UMA for ACE
PDF
How to Select Hardware for Internet of Things Systems?
PPT
A guide to make your research less successful
Measuring the Performance and Energy Cost of Cryptography in IoT Devices
Device Management with OMA Lightweight M2M
Smart Object Architecture
UMA for ACE
How to Select Hardware for Internet of Things Systems?
A guide to make your research less successful

Recently uploaded (20)

DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
Strings in CPP - Strings in C++ are sequences of characters used to store and...
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
Digital Logic Computer Design lecture notes
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
Construction Project Organization Group 2.pptx
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
Lecture Notes Electrical Wiring System Components
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
composite construction of structures.pdf
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PDF
Well-logging-methods_new................
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
DOCX
573137875-Attendance-Management-System-original
PPTX
web development for engineering and engineering
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Strings in CPP - Strings in C++ are sequences of characters used to store and...
CYBER-CRIMES AND SECURITY A guide to understanding
OOP with Java - Java Introduction (Basics)
Foundation to blockchain - A guide to Blockchain Tech
Digital Logic Computer Design lecture notes
bas. eng. economics group 4 presentation 1.pptx
Construction Project Organization Group 2.pptx
Embodied AI: Ushering in the Next Era of Intelligent Systems
Lecture Notes Electrical Wiring System Components
UNIT-1 - COAL BASED THERMAL POWER PLANTS
composite construction of structures.pdf
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Well-logging-methods_new................
Operating System & Kernel Study Guide-1 - converted.pdf
573137875-Attendance-Management-System-original
web development for engineering and engineering
Model Code of Practice - Construction Work - 21102022 .pdf

Authorization for Internet of Things using OAuth 2.0

  • 1. Authorization for Internet of Things using OAuth 2.0 Samuel Erdtman samuel.erdtman@nexusgroup.com Hannes Tschofenig hannes.tschofenig@arm.com
  • 2. © TechCon20152 Agenda  Design Patterns  Architecture  Technology Big Picture  Demo  Summary
  • 3. © TechCon20153 Design Patterns  A design pattern is a general reusable solution to a commonly occurring problem.  A few design patterns have emerged in the IoT space, as described in RFC 7452 and recent Internet Society IoT whitepaper.
  • 4. © TechCon20154 Backend Data Portability  Devices upload data to the cloud operated by a specific vendor.  Backend data sharing of protected data via OAuth-alike mechanisms and RESTful APIs. https://developer.carvoyant.com/page http://www.mapmyfitness.com/
  • 5. © TechCon20155  Device talks directly to other device (often smart phone). Security based on direct relationship between the device (pairing). Vendor A Vendor BE.g. Bluetooth Smart, Thread Device-to-Device Communication
  • 7. © TechCon20157 What if?  IoT devices need to be accessed by multiple users securely?  Access rights dynamically change?  Access rights are fine-grained?  Number of IoT devices is large?  Access policies need to be managed centrally?  Access rights can be delegated?  System has to be integrated in a larger context (e.g., other, existing identity management infrastructures)
  • 10. © TechCon201510 HMAC-SHA256 (AS-RS Key)HMAC-SHA256 (PoP Key) Request Example Head Body { “action” : “open” } Head { “alg” : “HMAC-SHA256” “exp” : “1300819380” “iv” : “<iv>” } Body { “scope” : “open”, “audience” : “door lock foo-bar”, “key” : “<encrypted key”> } { “alg” : “HMAC-SHA256”, “token” : “<access token>”, “timestamp” : “1300919380” } Request Access Token
  • 12. © TechCon201512 ACE WG  Authentication and Authorization for Constrained Environments (ace) aims to standardize solutions for interoperable security for IoT.  Relevant documents:  IoT Use Cases – draft-ietf-ace-usecases  OAuth 2.0 Profile for IoT – draft-seitz-ace-oauth-authz  Charter: http://datatracker.ietf.org/wg/ace/charter/
  • 13. © TechCon201513 OAuth WG  Authorization protocol widely used on the Web and on smart phones.  Core OAuth 2.0 functionality specified in RFC 6749  Charter: https://tools.ietf.org/wg/oauth/  Proof of Possession Security Extension  Architecture – draft-ietf-oauth-pop-architecture  Key Distribution – draft-ietf-oauth-pop-key-distribution  JSON Web Token (JWT) – RFC 7519  JWT Key Claim – draft-ietf-oauth-proof-of-possession  Browser views allow for a secure browser context inside the native app now available for Android and IOS (described in draft-wdenniss-oauth-native-apps). Example code available for Android and IOS.
  • 14. © TechCon201514 COSE WG  Concise Binary Object Representation (CBOR), RFC 7049, defines an efficient binary encoding based on the JSON data model.  CBOR Object Signing and Encryption (COSE) offers security services for CBOR-based structures.  Functions:  Signing, Encryption, Key Exchange, and Key Representation  Charter: https://datatracker.ietf.org/wg/cose/charter/
  • 15. © TechCon201515 OpenID Connect  Builds on OAuth 2.0 and provides support for federated login and the ability to convey authentication information.  Organization offers self-certification program.  Work done in working groups, such as the Heart working group.  Main specifications can be found at http://openid.net/developers/specs/  Additional information about the organization can be found at http://openid.net
  • 16. © TechCon201516 UMA  User Managed Access (UMA)  OAuth-based protocol designed to give users a unified control point for authorizing who and what can get access to their data and devices.  Separates resource owner from requesting party.  More information available at: http://kantarainitiative.org/confluence/display/uma/Home
  • 17. © TechCon201517 OMA LWM2M  Lightweight Machine-to-Machine Communication (LWM2M)  http://openmobilealliance.org  Specification available for download at http://technical.openmobilealliance.org/Technical/technical- information/release-program/current-releases/oma- lightweightm2m-v1-0  Functionality:  Device management  Key Provisioning  Firmware Updates
  • 18. © TechCon201518 FIDO  The FIDO (Fast IDentity Online) Alliance was formed in July 2012 to address the lack of interoperability among strong authentication technologies, and remedy the problems users face with creating and remembering multiple usernames and passwords.  Specifications at https://fidoalliance.org/specifications  Universal Second Factor (U2F) protocol  Universal Authentication Framework (UAF) protocol  More info about the alliance, certification programs and tutorials at https://fidoalliance.org
  • 19. Demo
  • 20. © TechCon201520 Technologies used in Demo Setup  OAuth 2.0 & Extensions  OAuth 2.0 Proof of Possession  OAuth 2.0 IoT profile  JSON Web Token (JWT)  Bluetooth Smart  ARM mbed  Android app Nordic nRF51-DK
  • 22. © TechCon201522 Summary  There are ongoing standardization efforts. Help us make the specifications better.  Technologies and eco-systems can be re-used to solve IoT security challenges.  Code is available. We are planning to add more to make development easier.