SlideShare a Scribd company logo
Towards a novel privacy-preserving access control model based on blockchain
technology in IoT
CADI AYYAD UNIVERSITY
FACULTY OF SCIENCES AND TECHNOLOGIES MARRAKECH
COMPUTER SCIENCE DEPARTMENT
Optimization of Advanced Communications Systems,
Networking and Security
Laboratory ( OSCARS)
Presented by: Aafaf OUADDAH
Supervised by : Mr Anas ABOU ELKALAM
&
Mr Abdellah AIT OUAHMAN
Europe, Middle East and North Africa Conference on Technology and Security to Support Learning. Saïdia, Morocco October 3-5,2016
Contents
WHAT
WHY
How
Access control challenges in IoT ?
blockchain technology as solution to face
access control issues in IoT ?
FairAccess: a crypthocurency blockchain
based access control framework
Existing access control architectures in IoT : Centralized &/or decentralized
approach ( trusted third party model)
AUTHORIZATION
and ACM FUNCTION
( local access control
policies)
IDENTITY &
Authentication
function
wearables
Identity & Access
management provider
End user/End Device ( object to be accessed)
SERVICE OR UTILITY PROVIDER ( Requester) UCON
XACML
RBAC CAPBAC
OAuth
UMA
ABAC …
1. Send Access request
2. Make an authorization decision based
On local policies
3. Access or deny
Access control challenges in IoT :
PROS
1. Possibility to reuse and expand the access
management experience protecting web
resources to IoT environement
2. save huge effort and time
CONS
1. IoT devices are treated as dumb devices
which is in contradiction with the essence of
IoT.
2. Their is always a need to trust an eventual
third party
Security breaches: a single point of
failure!
• Users don’t own their data (lack of
ownership)!
• Users can’t audit (lack of
transparency)!
Centralized &/or decentralized approach ( trusted third party model)
Distributed approach ( trustless model)
1. Send Access request
2. Make an authorization
decision preconfigured
policies and local
parameters
3. Access or deny
Identity & Access
management provider
End user/End Device ( object to be accessed)
SERVICE OR UTILITY PROVIDER ( Requester)
PROS
1. fit the real IoT vision: smart devices are
autonomous to take access control decisions
2. Real time decisions
3. Resource owners are able to control way access
to their own resources.
4. Do not need to trust any third party
CONS
Current access control technologies
are not supported by IoT constrained
devices
Goal
a balance solution that solves the dilemma of :
decentralized approach (possibility to reuse alredy exsiting access
control technologies with No need to trust any third )
&
centralized approach (end user transparency and anonimity ,
contextual access control decisons taken by smart devices)
FairAccess : using blockchain
technology as access control
infrastructure
Contents
What
Why
How
Access control challenges in IoT ?
blockchain technology as solution to face
access control issues in IoT ?
FairAccess: a crypthocurency blockchain
based access control framework
Traditional Trusted Third Party
system
Decentralised and trustless
system
• Enables parties to directly
transfer a digital currency
(Bitcoins) without a TTP (i.e.,
banks).!
• Instead, a network of untrusted
peers ensures the validity of all
transactions.!
• All correct transactions are
publicly verifiable through a public
ledger (the blockchain).!
Internet of
ThingsVoting HealthcareBanking Web Domain
More
are
comin
g
Crypthocurrency
2.0
Blockchain in a nutshell
Smart
Contract
CryptographyShared Ledger
Consensus
Ensuring secure,
authenticated & verifiable
transactions
conditions embedded in
transaction database &
executed with transactions
All users in the network can
come to collectively agree on
the validity of the data
recorded
Append-only distributed
system of record shared
across the network
Contents
What
Why
How
Access control challenges in IoT ?
blockchain technology as solution to face
access control issues in IoT ?
FairAccess: a cryptocurrency blockchain
based access control framework
FairAccess: building blocks
Fairness, user driven, lightweight, trustless
FairAcess
building
blocks
Pseudonymous
Identification &
Ownership
SmartContract
(access control
policies)
Transactions
&
Authorization
token
Blockchain
( PRP)
FairAccess: building blocks
• Ownership and identification in FairAccess is established through digital
keys, bitcoin-like addresses, and digital signatures.
• Keys enable many of the interesting properties of FairAccess including:
1. Thing to thing interaction
2. Pseudonymity and Unlikability (no real-world name or identifying
information are required )
FairAcess
building blocks
Identification
& Ownership
Transactions &
Authorization
token
Blockchain ( PRP)
SmartContract(
Access control
policies)
FairAccess: building blocks
𝑇𝑥=(𝑚,𝑠𝑖𝑔 𝑟𝑠(𝑚)) 𝑤ℎ𝑒𝑟𝑒
𝑚= (𝐼𝐷𝑥,𝑖𝑛𝑝𝑢𝑡 ( 𝑟𝑠),𝑜𝑢𝑡𝑝𝑢𝑡(𝑟𝑞,𝜋𝑥,𝑇𝐾𝑁𝑟𝑠,𝑟𝑞)
• IDx The index of the current transaction Tx where x = H (Tx) , H is a
hash function
• rs The address of requested resource.
• rq The address of the requester who is the receiver of the current
transaction
• πx Locking script (access control policies written in scripting
language)
• 𝑇𝐾𝑁𝑟𝑞,𝑟𝑠 Encrypted "access token associated to couple (rs,rq).
FairAcess building
blocks
Identification &
Ownership
Transactions &
Authorization
token
Blockchain ( PRP)
SmartContract(
Access control
policies)
Grant Access GetAccess Allow access
update/revoke
Access
FairAccess: building blocks
Fine grained access control policies :
A policy is a set of rules and conditions (based on a specific
context or attribute, etc) that a requester entity has to fulfill in
order to obtain the Access Token and gets access to the specific
resource.
This rules could be expressed by any access control model but
must be transformed to a script language considered as locking
script placed on the output of a transaction.
• scripting languages : Multisig, pay to public key
• Smart contract: ethereum programming language ( turning
complete language)
FairAcess
building blocks
Identification &
Ownership
Transactions &
Authorization
token
Blockchain ( PRP)
SmartContract(
Access control
policies)
FairAccess: building blocks
The blockchain :
• Database or policy retrieval point ( PRP) (access control
policies= SmartContracts).
• logging databases ( auditing functions).
• Detecting token reuse (double spending detection mechanism)
• Lightweight
FairAcess
building blocks
Identification &
Ownership
Transactions &
Authorization
token
Blockchain
( PRP)
SmartContract(
Access control
policies)
Policy management block
Token Authorization management block
RO-Wallet= PEP
Resource
Owner (RO)
BLOCCKCHAIN = (PRP)
PDP
PDP
PDP
PDP
PDP
5.broadcasts
transcation to the
network
IF VALID
YES
6. Reloads policy to the blockchian
in form of SmartContract
N
O
Rejects
transaction and
notify the sender
Access
Policy
<Transaction>
000012DF545
FFF55000012
DF545FFF550
00012DF545F
FF55000012D
F545F
TKN
database
getting
update
1. The RO defines for
the couple
(Resource, Requester)
an access control
policy 𝑃𝑂𝐿𝐼𝐶𝑌𝑟𝑠,𝑟𝑞
2. The wallet transforms
this access control policy
to a SmartContract
𝑃𝑂𝐿𝐼𝐶𝑌𝑟𝑠,𝑟𝑞 →𝜋𝑥
3. The wallet generates a
GrantAccess Transaction
in the following form:
𝑇𝑥=(𝑚,𝑠𝑖𝑔𝑟𝑠(𝑚)) 𝑤ℎ𝑒𝑟𝑒
𝑚= (𝐼𝐷𝑥,𝑓𝑟𝑜𝑚 ( 𝑟𝑠),𝑡𝑜( 𝜋
𝑥)
4. Each node verifies the transaction within the transaction
validation process.
Phase 1: reload access control policy in form of smart contract to the blockchain trough: Grant access transaction
Target Device A
AMP= PEP
PDP
PDP
PDP
PDP
PDP 4) Execute the
SmartContract
validate
transactions
AMP= PEP
Requester Device
3) calls the
SmartContract
in GetAccess
transcation
blockchain
blockchain
blockchain
blockchain
blockchain
IF VALID
Rejects
transaction and
notify the sender
7) The SmartContra
Sends en
encrypted Token to
the requester in an
AllowAccess
TRansaction type
BLOCCKCHAIN = (PRP)
blockchain
FairAccess:Phase 2: Get Access
1. The requester device sends a request access
2. The target device redirects the requester to the address of
The SmartContract to get the token
3. The wallet gets the
SmartContract address 𝜋𝑥
4. The requester fulfills access
control
condition placed in 𝜋𝑥
The wallet generates a GetAccess
transaction to
the SmartContract
6. The wallet broadcasts the
transaction to the network
Blockchain – not for all . . .
Fullfiled items
• Pseudonymity and Unlikability
• Identification enabling thing to thing
interaction.
• Lightweight
• User driven & transparency
• Distributed nature and the lack of a
central authority
• Fine-granularity
Disscussed issues
• Realtime ( 10 min to validate transcations)
• The public aspect of blockchain:
 Secure MultyParty Computetion
(sMPC) (enigma MIT PROJECT)
 Succinct Non-interactive
ARguments of Knowledge (SNARKs).
(zerocash and HAWK)
 Private Blockchain solution or
permissioned blockchain (Mijin)
Thank you for your attention !
Any questions

More Related Content

PPTX
SGX: Improving Privacy, Security, and Trust Across Blockchain Networks
PPTX
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
PPTX
Blockchain technology
PPTX
Blockchain
PDF
Blockchain a-new-disruption-in-financial-servies - IBM
DOC
Block Chain Report By Abhishek Patel
PDF
Blockchain Security and Demonstration
PPTX
A Zero-Knowledge Proof: Improving Privacy on a Blockchain
SGX: Improving Privacy, Security, and Trust Across Blockchain Networks
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Blockchain technology
Blockchain
Blockchain a-new-disruption-in-financial-servies - IBM
Block Chain Report By Abhishek Patel
Blockchain Security and Demonstration
A Zero-Knowledge Proof: Improving Privacy on a Blockchain

What's hot (20)

PDF
Brief Introduction to Blockchain Security
PPTX
Deja vu Security - Blockchain Security Summit - Navneet Suman
PDF
IRJET- Transaction based Block Chain Cryptocurrency
PPTX
Deja vu Security - Blockchain Security Summit - Akshay Aggarwal
PDF
Blockchain technology application in drones and cybersecurity
PDF
03 - An introduction to hyperledger composer
PDF
Privacy Preserving Paradigms of Blockchain Technology
PPTX
Distributed Intelligence
PDF
Blockchain Scalability - Architectures and Algorithms
PPTX
Secure interoperation across cyber physical systems in smart societies with i...
PPTX
Security best practices for hyperledger fabric
PPTX
Blockchain Security and Demonstration
PPTX
Blockchain
PDF
IRJET- Different Blockchain Platforms and Algorithms
PDF
IRJET- Blockchain-A Secure Mode for Transaction
PDF
IRJET- Security Threats on Blockchain and its Countermeasures
PDF
A Secure Account-Based Mobile Payment Protocol with Public Key Cryptography
DOCX
Hyper ledger febric
PPTX
The Blockchain and the Future of Cybersecurity
PDF
Role of hyperledger fabric in blockchain
Brief Introduction to Blockchain Security
Deja vu Security - Blockchain Security Summit - Navneet Suman
IRJET- Transaction based Block Chain Cryptocurrency
Deja vu Security - Blockchain Security Summit - Akshay Aggarwal
Blockchain technology application in drones and cybersecurity
03 - An introduction to hyperledger composer
Privacy Preserving Paradigms of Blockchain Technology
Distributed Intelligence
Blockchain Scalability - Architectures and Algorithms
Secure interoperation across cyber physical systems in smart societies with i...
Security best practices for hyperledger fabric
Blockchain Security and Demonstration
Blockchain
IRJET- Different Blockchain Platforms and Algorithms
IRJET- Blockchain-A Secure Mode for Transaction
IRJET- Security Threats on Blockchain and its Countermeasures
A Secure Account-Based Mobile Payment Protocol with Public Key Cryptography
Hyper ledger febric
The Blockchain and the Future of Cybersecurity
Role of hyperledger fabric in blockchain
Ad

Viewers also liked (17)

PDF
社群新生代的小故事
PDF
Native hook mechanism in Android Bionic linker
PDF
IoT+Blockchain & Decentralized Apps
PDF
Ibm과 nvidia가 제안하는 딥러닝 플랫폼
DOCX
24th taipei international machine tool show held in nangang exhibition cen…
PDF
Gypsy chic issue 3 editor lorraine stylianou
PDF
Schutz brand
PDF
Desarrollo de habilidades gerenciales para mandos medios
PPT
Test
PDF
Worlds Most InDemand Employers
PPTX
Guide dogs for the blind powerpoint
PPTX
Explore DC
PDF
Tyyni vai ärjyvä Satakunta 2030?
PDF
Simple Revolution
PPTX
DURF (Dell'Aquila) v4
PDF
Predictive profile example.
社群新生代的小故事
Native hook mechanism in Android Bionic linker
IoT+Blockchain & Decentralized Apps
Ibm과 nvidia가 제안하는 딥러닝 플랫폼
24th taipei international machine tool show held in nangang exhibition cen…
Gypsy chic issue 3 editor lorraine stylianou
Schutz brand
Desarrollo de habilidades gerenciales para mandos medios
Test
Worlds Most InDemand Employers
Guide dogs for the blind powerpoint
Explore DC
Tyyni vai ärjyvä Satakunta 2030?
Simple Revolution
DURF (Dell'Aquila) v4
Predictive profile example.
Ad

Similar to Fairaccess (20)

PDF
Adoption Blockchain Smart Contracts in Developing Information Systems.pdf
PDF
Fair and trustworthy: Lock-free enhanced tendermint blockchain algorithm
PDF
The Microsoft vision for Blockchain
PPTX
chapter 4 Selected Topics in computer.pptx
PPTX
chapter 4 Selected Topics in computer.pptx
PDF
Blockchain for AML: A next-gen AML solution ready for today’s complex financi...
PPTX
Blockchain Technology: Empowering the Decentralized Future
PPTX
Blockchain for Digital Transformation in Banking
PPTX
Blockchain in the Heart of Digital Transformation
PDF
Blockchain and BPM - Reflections on Four Years of Research and Applications
PDF
Securing FIWARE Architectures
PPTX
A Technological Perspective of Blockchain Security
PPTX
Blockchain on Azure and Use Cases
PDF
IRJET- Blockchain Technology
PPTX
Blockchain Technology ,Architecture and its Structure
PDF
FIWARE Global Summit - The Role of Blockchain in “Powered by FIWARE” Architec...
DOCX
Blockchain Glossary.docx
PPTX
BlockChain Technology A Game Changer For Transportation & Logistics sector
PDF
DataPorts Blockchain Overview
PDF
IRJET - Consortium Blockchain Application for Agriculture and Food Supply Cha...
Adoption Blockchain Smart Contracts in Developing Information Systems.pdf
Fair and trustworthy: Lock-free enhanced tendermint blockchain algorithm
The Microsoft vision for Blockchain
chapter 4 Selected Topics in computer.pptx
chapter 4 Selected Topics in computer.pptx
Blockchain for AML: A next-gen AML solution ready for today’s complex financi...
Blockchain Technology: Empowering the Decentralized Future
Blockchain for Digital Transformation in Banking
Blockchain in the Heart of Digital Transformation
Blockchain and BPM - Reflections on Four Years of Research and Applications
Securing FIWARE Architectures
A Technological Perspective of Blockchain Security
Blockchain on Azure and Use Cases
IRJET- Blockchain Technology
Blockchain Technology ,Architecture and its Structure
FIWARE Global Summit - The Role of Blockchain in “Powered by FIWARE” Architec...
Blockchain Glossary.docx
BlockChain Technology A Game Changer For Transportation & Logistics sector
DataPorts Blockchain Overview
IRJET - Consortium Blockchain Application for Agriculture and Food Supply Cha...

Recently uploaded (20)

PDF
August Patch Tuesday
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
The various Industrial Revolutions .pptx
PDF
A comparative study of natural language inference in Swahili using monolingua...
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
Getting started with AI Agents and Multi-Agent Systems
PPTX
OMC Textile Division Presentation 2021.pptx
PPT
What is a Computer? Input Devices /output devices
PPTX
Chapter 5: Probability Theory and Statistics
PDF
project resource management chapter-09.pdf
PPTX
Tartificialntelligence_presentation.pptx
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
WOOl fibre morphology and structure.pdf for textiles
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
August Patch Tuesday
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
The various Industrial Revolutions .pptx
A comparative study of natural language inference in Swahili using monolingua...
Group 1 Presentation -Planning and Decision Making .pptx
A contest of sentiment analysis: k-nearest neighbor versus neural network
O2C Customer Invoices to Receipt V15A.pptx
Getting started with AI Agents and Multi-Agent Systems
OMC Textile Division Presentation 2021.pptx
What is a Computer? Input Devices /output devices
Chapter 5: Probability Theory and Statistics
project resource management chapter-09.pdf
Tartificialntelligence_presentation.pptx
cloud_computing_Infrastucture_as_cloud_p
gpt5_lecture_notes_comprehensive_20250812015547.pdf
A novel scalable deep ensemble learning framework for big data classification...
NewMind AI Weekly Chronicles – August ’25 Week III
NewMind AI Weekly Chronicles - August'25-Week II
WOOl fibre morphology and structure.pdf for textiles
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx

Fairaccess

  • 1. Towards a novel privacy-preserving access control model based on blockchain technology in IoT CADI AYYAD UNIVERSITY FACULTY OF SCIENCES AND TECHNOLOGIES MARRAKECH COMPUTER SCIENCE DEPARTMENT Optimization of Advanced Communications Systems, Networking and Security Laboratory ( OSCARS) Presented by: Aafaf OUADDAH Supervised by : Mr Anas ABOU ELKALAM & Mr Abdellah AIT OUAHMAN Europe, Middle East and North Africa Conference on Technology and Security to Support Learning. Saïdia, Morocco October 3-5,2016
  • 2. Contents WHAT WHY How Access control challenges in IoT ? blockchain technology as solution to face access control issues in IoT ? FairAccess: a crypthocurency blockchain based access control framework
  • 3. Existing access control architectures in IoT : Centralized &/or decentralized approach ( trusted third party model) AUTHORIZATION and ACM FUNCTION ( local access control policies) IDENTITY & Authentication function wearables Identity & Access management provider End user/End Device ( object to be accessed) SERVICE OR UTILITY PROVIDER ( Requester) UCON XACML RBAC CAPBAC OAuth UMA ABAC … 1. Send Access request 2. Make an authorization decision based On local policies 3. Access or deny
  • 4. Access control challenges in IoT : PROS 1. Possibility to reuse and expand the access management experience protecting web resources to IoT environement 2. save huge effort and time CONS 1. IoT devices are treated as dumb devices which is in contradiction with the essence of IoT. 2. Their is always a need to trust an eventual third party Security breaches: a single point of failure! • Users don’t own their data (lack of ownership)! • Users can’t audit (lack of transparency)! Centralized &/or decentralized approach ( trusted third party model)
  • 5. Distributed approach ( trustless model) 1. Send Access request 2. Make an authorization decision preconfigured policies and local parameters 3. Access or deny Identity & Access management provider End user/End Device ( object to be accessed) SERVICE OR UTILITY PROVIDER ( Requester) PROS 1. fit the real IoT vision: smart devices are autonomous to take access control decisions 2. Real time decisions 3. Resource owners are able to control way access to their own resources. 4. Do not need to trust any third party CONS Current access control technologies are not supported by IoT constrained devices
  • 6. Goal a balance solution that solves the dilemma of : decentralized approach (possibility to reuse alredy exsiting access control technologies with No need to trust any third ) & centralized approach (end user transparency and anonimity , contextual access control decisons taken by smart devices) FairAccess : using blockchain technology as access control infrastructure
  • 7. Contents What Why How Access control challenges in IoT ? blockchain technology as solution to face access control issues in IoT ? FairAccess: a crypthocurency blockchain based access control framework
  • 8. Traditional Trusted Third Party system Decentralised and trustless system • Enables parties to directly transfer a digital currency (Bitcoins) without a TTP (i.e., banks).! • Instead, a network of untrusted peers ensures the validity of all transactions.! • All correct transactions are publicly verifiable through a public ledger (the blockchain).! Internet of ThingsVoting HealthcareBanking Web Domain More are comin g Crypthocurrency 2.0
  • 9. Blockchain in a nutshell Smart Contract CryptographyShared Ledger Consensus Ensuring secure, authenticated & verifiable transactions conditions embedded in transaction database & executed with transactions All users in the network can come to collectively agree on the validity of the data recorded Append-only distributed system of record shared across the network
  • 10. Contents What Why How Access control challenges in IoT ? blockchain technology as solution to face access control issues in IoT ? FairAccess: a cryptocurrency blockchain based access control framework
  • 11. FairAccess: building blocks Fairness, user driven, lightweight, trustless FairAcess building blocks Pseudonymous Identification & Ownership SmartContract (access control policies) Transactions & Authorization token Blockchain ( PRP)
  • 12. FairAccess: building blocks • Ownership and identification in FairAccess is established through digital keys, bitcoin-like addresses, and digital signatures. • Keys enable many of the interesting properties of FairAccess including: 1. Thing to thing interaction 2. Pseudonymity and Unlikability (no real-world name or identifying information are required ) FairAcess building blocks Identification & Ownership Transactions & Authorization token Blockchain ( PRP) SmartContract( Access control policies)
  • 13. FairAccess: building blocks 𝑇𝑥=(𝑚,𝑠𝑖𝑔 𝑟𝑠(𝑚)) 𝑤ℎ𝑒𝑟𝑒 𝑚= (𝐼𝐷𝑥,𝑖𝑛𝑝𝑢𝑡 ( 𝑟𝑠),𝑜𝑢𝑡𝑝𝑢𝑡(𝑟𝑞,𝜋𝑥,𝑇𝐾𝑁𝑟𝑠,𝑟𝑞) • IDx The index of the current transaction Tx where x = H (Tx) , H is a hash function • rs The address of requested resource. • rq The address of the requester who is the receiver of the current transaction • πx Locking script (access control policies written in scripting language) • 𝑇𝐾𝑁𝑟𝑞,𝑟𝑠 Encrypted "access token associated to couple (rs,rq). FairAcess building blocks Identification & Ownership Transactions & Authorization token Blockchain ( PRP) SmartContract( Access control policies) Grant Access GetAccess Allow access update/revoke Access
  • 14. FairAccess: building blocks Fine grained access control policies : A policy is a set of rules and conditions (based on a specific context or attribute, etc) that a requester entity has to fulfill in order to obtain the Access Token and gets access to the specific resource. This rules could be expressed by any access control model but must be transformed to a script language considered as locking script placed on the output of a transaction. • scripting languages : Multisig, pay to public key • Smart contract: ethereum programming language ( turning complete language) FairAcess building blocks Identification & Ownership Transactions & Authorization token Blockchain ( PRP) SmartContract( Access control policies)
  • 15. FairAccess: building blocks The blockchain : • Database or policy retrieval point ( PRP) (access control policies= SmartContracts). • logging databases ( auditing functions). • Detecting token reuse (double spending detection mechanism) • Lightweight FairAcess building blocks Identification & Ownership Transactions & Authorization token Blockchain ( PRP) SmartContract( Access control policies)
  • 16. Policy management block Token Authorization management block RO-Wallet= PEP Resource Owner (RO) BLOCCKCHAIN = (PRP) PDP PDP PDP PDP PDP 5.broadcasts transcation to the network IF VALID YES 6. Reloads policy to the blockchian in form of SmartContract N O Rejects transaction and notify the sender Access Policy <Transaction> 000012DF545 FFF55000012 DF545FFF550 00012DF545F FF55000012D F545F TKN database getting update 1. The RO defines for the couple (Resource, Requester) an access control policy 𝑃𝑂𝐿𝐼𝐶𝑌𝑟𝑠,𝑟𝑞 2. The wallet transforms this access control policy to a SmartContract 𝑃𝑂𝐿𝐼𝐶𝑌𝑟𝑠,𝑟𝑞 →𝜋𝑥 3. The wallet generates a GrantAccess Transaction in the following form: 𝑇𝑥=(𝑚,𝑠𝑖𝑔𝑟𝑠(𝑚)) 𝑤ℎ𝑒𝑟𝑒 𝑚= (𝐼𝐷𝑥,𝑓𝑟𝑜𝑚 ( 𝑟𝑠),𝑡𝑜( 𝜋 𝑥) 4. Each node verifies the transaction within the transaction validation process. Phase 1: reload access control policy in form of smart contract to the blockchain trough: Grant access transaction
  • 17. Target Device A AMP= PEP PDP PDP PDP PDP PDP 4) Execute the SmartContract validate transactions AMP= PEP Requester Device 3) calls the SmartContract in GetAccess transcation blockchain blockchain blockchain blockchain blockchain IF VALID Rejects transaction and notify the sender 7) The SmartContra Sends en encrypted Token to the requester in an AllowAccess TRansaction type BLOCCKCHAIN = (PRP) blockchain FairAccess:Phase 2: Get Access 1. The requester device sends a request access 2. The target device redirects the requester to the address of The SmartContract to get the token 3. The wallet gets the SmartContract address 𝜋𝑥 4. The requester fulfills access control condition placed in 𝜋𝑥 The wallet generates a GetAccess transaction to the SmartContract 6. The wallet broadcasts the transaction to the network
  • 18. Blockchain – not for all . . . Fullfiled items • Pseudonymity and Unlikability • Identification enabling thing to thing interaction. • Lightweight • User driven & transparency • Distributed nature and the lack of a central authority • Fine-granularity Disscussed issues • Realtime ( 10 min to validate transcations) • The public aspect of blockchain:  Secure MultyParty Computetion (sMPC) (enigma MIT PROJECT)  Succinct Non-interactive ARguments of Knowledge (SNARKs). (zerocash and HAWK)  Private Blockchain solution or permissioned blockchain (Mijin)
  • 19. Thank you for your attention ! Any questions

Editor's Notes

  • #9: Current digital economy is based on the reliance on a certain trusted authority. Our all online transactions rely on trusting someone to tell us the truth—it can be an email service provider telling us that our email has been delivered; it can be a certification authority telling us that a certain digital certificate is trustworthy; or it can be a social network such as Facebook telling us that our posts regarding our life events have been shared only with our friends or it can be a bank telling us that our money has been delivered reliably to our dear ones in a remote country. The fact is that we live our life precariously in the digital world by relying on a third entity for the security and privacy of our digital assets. The fact remains that these third party sources can be hacked, manipulated or compromised. This is where the blockchain technology comes handy. It has the potential to revolutionize the digital world by enabling a distributed consensuss ​where each and every online transaction, past and present, involving digital assets can be verified at any time in the future. It does this without compromising the privacy of the digital assets and parties involved. The distributed consensus​ and anonymity​ are two important characteristics of blockchain technology. Cryptocurrencies are a new form of virtual currency, first introduced with creation of Bitcoin, developed by Satoshi Nakamoto in [11]. A cryptocurrency is a decentralized digital currency built on cryptographic protocols providing an open, self-regulating alternative to classical currencies managed by central authorities such as banks. It is the first technology to successfully overcome the problem related to how consensus can be reached in a group of anonymous participants, some of whom may be behaving with malicious intent without the intervention of any centralized party. Actually, specific nodes known as miners are responsible for collecting transactions, solving challenging computational puzzles (proof-of-work) to reach consensus, and adding the transactions in form of blocks to a distributed public ledger known as the blockchain. In October 2015, the 1st Global Blockchain Summit was held in Shanghai. Geeks, entrepreneurs, academic experts, investors, corporate executives, and regulatory policy makers gathered and discussed the business applications and opportunities of blockchain technology in industry, such as Payment, Internet of Things, securities trading, digital assets management. Over 200 guests from the financial industry, including banking, payments, securities and commodities attended the summit
  • #10: Bitcoin has no central authority, yet somehowe very full node has a complete copy of a public ledger that it can trust as the authoritative record. The blockchain is not created by a central authority, but is assembled independently by every node in the network. Somehow, every node in the network, acting on information transmitted across insecure network connections, can arrive at the same conclusion and assemble a copy of the same public ledger as everyone else Satoshi Nakamoto’s main invention is the decentralized mechanism for emergent consensus. Emergent, because consensus is not achieved explicitly—there is no election or fixed moment when consensus occurs. Instead, consensus is an emergent artifact of the asynchronous interaction of thousands of independent nodes, all following simple rules. All the properties of bitcoin, including currency, transactions, payments, and the security model that does not depend on central authority or trust, derive from this invention.
  • #12: User: can be either a Resource Owner (RO), belonging to supplier organization, who exposes his resources and control access over it, or a Requestor, belonging to a requesting organization. He is considered as the owner of the requester resource aiming to access to a supplier resource. Each of those entities: RO, Requestor and their resources are identified with bitcoin-like addresses, interacting between each other through transactions. Wallet: every user has a wallet that stores his credentials, addresses and the transactions related to them. It contains all the keys needed to register and identify his resources, sign his transactions, ask for access. In our framework, we consider a wallet as authorization management point (AMP), it could be a web or mobile application, through the wallet, the RO could register his resources need to be protected and define his access control policies. Then, the main functionalities of a wallet are: 1) generating keys and addresses. 2) Transforming the access control policies to a transactions and broadcast those later to the network.3) validating received transactions from the network. In our proposed framework, in order to fulfill the P&SP objectives, we will use the following mechanisms: In FairAccess, we use, Bitcoin-like addresses: to identify all interacting entities. Smart contract to express fine-grained and contextual access control policies enveloped inside transactions. We opt for authorization tokens as access control model distributed by the blockchain. We use blockchain firstly to ensure evaluating and enforcing access policies and secondly to ensure token integrity and detect token double spending. The detail of each mechanism is described below:
  • #13: A private key A.sk is a number, picked at random. From the private key, an elliptic curve multiplication and a one-way cryptographic function is used to generate a public key A.pk From the public key A.pk, a one-way cryptographic hash function H is used to generate an address. The private key is used to create signatures that are required to prove ownership of a resource Identification enabling pseudonymous thing to thing interaction: as state in [20], the Identity of Things is a growing outcome of the Internet of Things. FairAccess identity establishment method meet this requirement. Actually, in FairAccess, users either a Resource Owner or a Requester and their resources are identified through cryptographic identities, called addresses. An address is basically the hash of an ECDSA public key and a user in possession of the corresponding private key is said to own the address. We believe, this identity establishment model will have strong impact on IoT for these reasons: Bitcoin-like addresses can be assigned to all IoT resources either persons or devices alike. Fridges, houses and lamps can have a Bitcoin-like address, effectively enabling a thing to thing communication, furthermore transactions can be carried out equally well by machines and humans enabling direct machine-to-machine interaction.
  • #15: The use of scripts to lock outputs and unlock inputs means that through use of the programming language, transactions can contain an infinite number of conditions. This enables our framework to express fine grained access control policies. Actually, a policy is a set of rules and conditions (based on a specific context or attribute, etc) that a requester entity has to fulfill in order to obtain the Access Token and gets access to the specific resource. This rules could be expressed by any access control model but must be transformed to a script language considered as locking script placed on the output of a transaction. Fortunately, new blockchain protocols are being developed including full Turing completeness capability, allowing anyone to write smart contracts and decentralized applications with their own arbitrary rules for ownership, transaction formats and state transition functions [21]. The use of those advanced language such as Etherum, will certainly enable our FairAccess framework to express fine-grained context-aware access control policies. We believe that Smart contracts are a promising emergent field to express, granular, contextual and contractual access control model in general and in IoT in particular.
  • #16: in FairAccess, the blockchain is considered as a database or, a policy retrieval point, where all access control policies for each pair (resource, requester) , are stored in form of SmartContracts, it serves also as logging databases that ensures auditing functions. Furthermore, it prevents forgery of token through transactions integrity checks and detects token reuse through the double spending detection mechanism The block chain is a database that stores all processed transactions and Smart contract in chronological order shared by all users or nodes participating. We assume this memory to be tamperproof under the same adversarial model used in Bitcoin and other cryptocurrencies. The block chain technology provides everyone with a working proof of a decentralized trust. FairAccess provides several useful mechanisms using the blockchain. In fact, policy retrieval point, where all access control policies for each pair (resource, requester) , are stored in form of transactions, it serves also as logging databases that ensures auditing functions. Furthermore, it prevents forgery of token through transactions integrity checks and detects token reuse through the double spending detection mechanism
  • #17: The peer to peer nodes verify the transaction and record it in the block chain in case of success validation. At this stage, the network witnesses that the RO has entitled the Requester to get access to the specific service provided by a protected Resource. But the Requester could not get yet access to the target service till he meets the access control policy and execute the SmartContract to get the token. The sequence of GrantAccess transactions can be shown as follows: At the end of this phase, if the transaction appears in the blockchain, it means that the network witnesses that the Resource owner had entitled the requester to access that resource but the requester could not access yet till he unlocks the access condition by successfully executing the SmartContract and get the access token 𝑇𝐾𝑁𝑟𝑞,𝑟𝑠 To do so, the requester has to prove to the network that he fulfills really the access conditions in a new transaction called GetAccess transaction which is the objective of the second phase. 1. The RO defines for the couple (Resource, Requester) an access control policy 𝑃𝑂𝐿𝐼𝐶𝑌𝑟𝑠,𝑟𝑞 2. The wallet transforms this access control policy to a SmartContract 𝑃𝑂𝐿𝐼𝐶𝑌𝑟𝑠,𝑟𝑞 →𝜋𝑥 3. The wallet generates a GrantAccess Transaction in the following form: 𝑇𝑥=(𝑚,𝑠𝑖𝑔𝑟𝑠(𝑚)) 𝑤ℎ𝑒𝑟𝑒 𝑚= (𝐼𝐷𝑥,𝑓𝑟𝑜𝑚 ( 𝑟𝑠),𝑡𝑜( 𝜋𝑥) 5. Each node verifies the transaction within the transaction validation process. 6. If the transaction is valid the access control policy is recorded in the blockchain in form of SmartContract. Else, the transaction will be rejected. At the end of this phase, if the transaction appears in the blockchain, it means that the network witnesses that the Resource owner had entitled the requester to access that resource but the requester could not access yet till he unlocks the access condition by successfully executing the SmartContract and get the access token 𝑇𝐾𝑁𝑟𝑞,𝑟𝑠 To do so, the requester has to prove to the network that he fulfills really the access conditions in a new transaction called GetAccess transaction which is the objective of the second phase.
  • #18: In this phase, the device A will create a new transaction, that we call a GetAccess transaction. The GetAccess transaction is send to the SmartContract to get the token and access to a service being hosted on the device B. The sequence of GetAccess transactions can be shown as follows: 1. The requester device sends a request access 2. The target device redirects the requester to the address of The SmartContract to get the token 3. The wallet gets the SmartContract address 𝜋𝑥 4. The requester fulfills access control condition placed in 𝜋𝑥 and generates an unlocking data considered as input to the SmartContract. 𝑀𝑒𝑒𝑡𝐴𝑐𝑐𝑒𝑠𝑠𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑃𝑜𝑙𝑖𝑐𝑦( 𝜋𝑥𝑥)→ 𝜓 5. The wallet generates a GetAccess transaction type in the following form: 𝑇𝑥= (𝐼𝐷𝑥,𝑓𝑟𝑜𝑚 ( 𝑟𝑞,𝜓),𝑡𝑜 (𝜋𝑥) 6. The wallet broadcasts the transaction to the network 7. The network nodes verify and validate the transaction if it was valid it will be included in the blockchain else it will be rejected and a notification is sent to its sender. 8. Once the transaction appears in the blockchain. It means the network witnesses that the requester has full filled the access condition (execution of the SmartContract) then the SmartContract will generates and delivers an access token to the requester in another transaction called AllowAccessTransaction
  • #19: POSITIVE Indicators Pseudonymity and Unlikability: The use of pseudonymous Bitcoin-like addresses that are publicly verifiable yet unlinkable to user identities enables privacy-preserving access control achievement since no real-world name or identifying information are required. Lightweight: Actually, enforcing access control policies by the blockchain relieves IoT constrained devices from the burden of handling a vast amount of access control-related information and at the same time mitigate the need for outsourcing these functionalities to a trusted powerful entity. In fact, devices only need to easily verify the validity of the access token securely held on the blockchain. Moreover, using digital keys as identification and authentication at once reduces communication cost, since no further authentication mechanisms are required to get the token. Only signatures are sufficient. User driven & transparency: In FairAccess, user is the only one who is responsible to define a granular access control policies over his own data. Distributed nature and the lack of a central authority: Each node in the network shares his data with others nodes directly, without the intervention of any third or trusted entity Fine-granularity: we argue that FairAccess is generic and not restricted to the use of any specific access control model. Actually, the use of smart contact enables Fair Access to implement an expressive and granular access control policies, expressed by any access control model as soon as this model could be transcoded to a script language. dentification enabling pseudonymous thing to thing interaction: as state in [10], the Identity of Things is a growing outcome of the Internet of Things. FairAccess identity establishment method meet this requirement. Actually, in FairAccess, users either a Resource Owner or a Requester and their resources are identified through cryptographic identities, called addresses. An address is basically the hash of an ECDSA public key and a user in possession of the corresponding private key is said to own the address. We believe, this identity establishment model will have strong impact on IoT for these reasons: Bitcoin-like addresses can be assigned to all IoT resources either persons or devices alike. Fridges, houses and lamps can have a Bitcoin-like address, effectively enabling a thing to thing communication, furthermore transactions can be carried out equally well by machines and humans enabling direct machine-to-machine interaction.