SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
‫م‬‫حی‬‫ر‬‫ل‬‫ا‬‫ن‬
‫حم‬
‫ر‬‫ل‬‫ا‬‫اهلل‬‫م‬
‫بس‬
‫م‬‫حی‬‫ر‬‫ل‬‫ا‬‫ن‬
‫حم‬
‫ر‬‫ل‬‫ا‬‫اهلل‬‫م‬
‫بس‬
Tarbiat Modares
University
Blockchain-based ApplicationsBlockchain-based Applications
E-Commerce SecurityE-Commerce Security
Instructor: Sadegh Dorri N.Instructor: Sadegh Dorri N.
http://www.modares.ac.ir/~dorrihttp://www.modares.ac.ir/~dorri
Spring 2019 (1398)Spring 2019 (1398)
Video: https://www.aparat.com/sdorri
Slides: https://www.slideshare.net/SadeghD1/
Podcast: https://shenoto.com/sdorri
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 2
OutlineOutline
· Blockchain as a ComponentBlockchain as a Component
- Storage, compute, communication, and asset management
- Suitability criteria and design process
· Blockchain PatternsBlockchain Patterns
- Oracle, off-chain storage, state channel, etc.
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 3
Blockchain as a ComponentBlockchain as a Component
· What can it provide?What can it provide?
- data storage, computation services, communication services
- asset management and control
· Key question:Key question: on-chainon-chain vs.vs. off-chainoff-chain
- On-chain
●
Functionality implemented inside the blockchain component using
the blockchain ledger and smart contracts
●
Limited computational power, data storage space, and access
control
- Off-chain
●
Offline data and application logic can be safely hosted off-chain
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 4
Blockchain in a SW ArchitectureBlockchain in a SW Architecture
[Patterns]
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 5
Blockchain as Storage ElementBlockchain as Storage Element
· FeaturesFeatures
- Authenticated, and append-only ledger
- History of all state changes are preserved.
- Transactions record authorized asset transfers.
- Distributed: all nodes store all data
- Con: Costly storage!
· Where is data stored?Where is data stored?
- Piggy-backed in transactions → Bitcoin (OP_RETURN)
- Contract storage
- Eitherway, data is available to the public!
· Alternative to…Alternative to…
- Conventional databases, cloud storage, P2P file sharing
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 6
Blockchain as Computational ElementBlockchain as Computational Element
· Smart contracts are codes which execute on the blockchainSmart contracts are codes which execute on the blockchain
- Bitcoin script is run by external entities → integrity of results is not guaranteed
- Ethereum and its smart contracts can be seen as a general computational platform
· What can be expectedWhat can be expected
- Reach agreements and solve common problems with minimal trust.
- Code can control cryptocurrency, and express triggers, conditions, or business logic
· LimitationsLimitations
- Practical limitations on computational complexity (e.g. max block gas limit in
Ethereum)
- Costly execution
· Alternative to…Alternative to…
- Traditional application platforms, cloud computing
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 7
Blockchain as Communication MechanismBlockchain as Communication Mechanism
· Data communicationData communication
- Blockchain plays the role of a
message queue
- Oracles can transfer external
data to the blockchain
· Computation communicationComputation communication
- Submit txs to invoke smart
contract functions
· Coordination facilityCoordination facility
- a distributed
registry/lock/rendezvous
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 8
Blockchain as an Asset Mngmnt MechanismBlockchain as an Asset Mngmnt Mechanism
· Tokens can represent either digital assets or physical assetsTokens can represent either digital assets or physical assets
- Fungible assets: interchangeable (e.g. cryptocurrencies, gasoline, and commodities)
- Non-fungible assets: unique and cannot be interchanged (e.g. CryptoKitties, artwork,
and land)
· Tokenization: representation of an asset using a cryptographic tokenTokenization: representation of an asset using a cryptographic token
- The control of this token aligns with the ownership of the corresponding asset.
- By using smart contracts, some conditions can be implemented and associated with
the transfer of ownership.
- Unless the blockchain is backed by legislation as an authoritative title of register, it
will not necessarily be authoritative.
· Standards:Standards: describe the functions and events that token smart contractsdescribe the functions and events that token smart contracts
should implement.should implement.
- ERC206: Ethereum-based fungible tokens
- ERC721: Ethereum-based non-fungible tokens (draft)
EvaluationEvaluation
ofof
SuitabilitySuitability
EvaluationEvaluation
ofof
SuitabilitySuitability
[Suitability]
DesignDesign
ProcessProcess
DesignDesign
ProcessProcess
[Taxonomy]
Source: https://spectrum.ieee.org/computing/networks/do-you-need-a-blockchain
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 12
Blockchain PatternsBlockchain Patterns
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 14
Oracle PatternOracle Pattern
· Introducing the state of external systems into the closedIntroducing the state of external systems into the closed
blockchain execution environment.blockchain execution environment.
- The state of external systems is not directly accessible to smart
contracts.
- Yet, function calls in smart contracts sometimes need to access
state of the external world.
· Oracle: a trusted third-party that provides smart contractsOracle: a trusted third-party that provides smart contracts
with information about the external world.with information about the external world.
- On-chain: a smart contract with external state being injected
into the oracle periodically by an off-chain injector.
- Off-chain: a server outside the blockchain
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 15
Off-Chain Data Storage PatternOff-Chain Data Storage Pattern
· Use hashing to ensure the integrity of arbitrarily large datasetsUse hashing to ensure the integrity of arbitrarily large datasets
which may not fit directly on the blockchain.which may not fit directly on the blockchain.
- Blockchain has limited and high cost storage for data.
- Data cannot take advantage of the immutability or integrity
guarantees without being stored on the blockchain.
· Solution: store a hash value (digest) of the raw data on chainSolution: store a hash value (digest) of the raw data on chain
- The raw data might be changed without authorization.
- This change will be detected but prevention/recovery is not possible.
· ExamplesExamples
- Proof-of-Existence (POEX.IO) on Bitcoin
- Chainy on Ethereum (smart contract)
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 16
State Channel PatternState Channel Pattern
· Transactions are performed off-chain with periodic recording of netTransactions are performed off-chain with periodic recording of net
transaction settlements on-chaintransaction settlements on-chain
- Cheap: too small in value w.r.t. transaction fee
- Timely: require much shorter latency
- E.g. Wi-Fi data usage, Utility bills, …
· Solution: establish an agreed off-chain protocol between two participants,Solution: establish an agreed off-chain protocol between two participants,
with a deposit from one or both locked up as security in a smart contractwith a deposit from one or both locked up as security in a smart contract
for the lifetime of the channel.for the lifetime of the channel.
- The state channel keeps the intermediate states of the small transactions off-chain
- Only the finalized aggregated (net) transaction is stored on-chain.
· Examples:Examples:
- The Lightning network for Bitcoin
- The Raiden Network, Orinoco, State channel, and Gnosis Go for Ethereum
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 17
Other PatternsOther Patterns
· HashlockHashlock
- Hash of an off-chain generated secret is stored in the transaction, and whoever
reveals the secret matching the hash, will be authorized to do sth.
· Contract RegistryContract Registry
- The address of the latest version of an smart contract is located by looking up its
name on a contract registry.
· Data ContractData Contract
- Store data in a smart contract separate from contract logic to allow for easier
code migration from one version to the other.
· Factory ContractFactory Contract
- An on-chain template contract is used as a factory that generates contract
instances from the template.
- No need to keep the template off-chain
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 18
Questions?Questions?
Sadegh Dorri N.Sadegh Dorri N.
dorri@modares.ac.ir
http://www.modares.ac.ir/~dorri
Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 19
ReferencesReferences
· The slides are mainly based on these three chapters ofThe slides are mainly based on these three chapters of
X. Xu et al.,X. Xu et al., Architecture for Blockchain ApplicationsArchitecture for Blockchain Applications, Springer Nature Switzerland, 2019, Springer Nature Switzerland, 2019
- Chapter 5: Blockchain in Software Architecture
- Chapter 6: Design Process for Applications on Blockchain
- Chapter 7: BlockchainPatterns
· [Taxonomy] X. Xu et al., “A Taxonomy of Blockchain-Based Systems for Architecture
Design,” in IEEE International Conference on Software Architecture (ICSA), Gothenburg,
Sweden, 2017, pp. 243–252.
· [Suitability] S. K. Lo, X. Xu, Y. K. Chiam, and Q. Lu, “Evaluating Suitability of Applying
Blockchain,” in 22nd International Conference on Engineering of Complex Computer
Systems (ICECCS), Fukuoka, Japan, 2017, pp. 158–161.
· [Patterns] X. Xu, C. Pautasso, L. Zhu, Q. Lu, and I. Weber, “A Pattern Collection for
Blockchain-based Applications,” in Proceedings of the 23rd European Conference on
Pattern Languages of Programs (EuroPLoP), Irsee, Germany, 2018, pp. 1–20.

Weitere ähnliche Inhalte

Was ist angesagt?

A framework for improving the efficiency of the transparency in financial dom...
A framework for improving the efficiency of the transparency in financial dom...A framework for improving the efficiency of the transparency in financial dom...
A framework for improving the efficiency of the transparency in financial dom...Dr. C.V. Suresh Babu
 
What is tokenization in blockchain - BCS London
What is tokenization in blockchain - BCS LondonWhat is tokenization in blockchain - BCS London
What is tokenization in blockchain - BCS LondonUlf Mattsson
 
Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ...
 Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ... Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ...
Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ...Hyperleger Tokyo Meetup
 
Blockchain: a disruptive technology, governance and usage, OW2con'18, June 7-...
Blockchain: a disruptive technology, governance and usage, OW2con'18, June 7-...Blockchain: a disruptive technology, governance and usage, OW2con'18, June 7-...
Blockchain: a disruptive technology, governance and usage, OW2con'18, June 7-...OW2
 
Ibm blockchain - Hyperledger 15.02.18
Ibm blockchain - Hyperledger 15.02.18Ibm blockchain - Hyperledger 15.02.18
Ibm blockchain - Hyperledger 15.02.18TelecomValley
 
Ibm system storage solutions handbook
Ibm system storage solutions handbook Ibm system storage solutions handbook
Ibm system storage solutions handbook Diego Alberto Tamayo
 
Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer Dr. Ketan Parmar
 
Blockchin architecture & use cases -part-2
Blockchin architecture & use cases -part-2Blockchin architecture & use cases -part-2
Blockchin architecture & use cases -part-2Mohammad Asif
 
Learn Basics & advances of Hyperledger - 101-Blockchains
Learn Basics & advances of Hyperledger - 101-BlockchainsLearn Basics & advances of Hyperledger - 101-Blockchains
Learn Basics & advances of Hyperledger - 101-BlockchainsJackSmith435850
 
Hyperledger Overview - 20181024
Hyperledger Overview - 20181024Hyperledger Overview - 20181024
Hyperledger Overview - 20181024Arnaud Le Hors
 
Blockchain based Security Architectures - A Review
Blockchain based Security Architectures - A ReviewBlockchain based Security Architectures - A Review
Blockchain based Security Architectures - A ReviewGokul Alex
 
Cisco on Distributed Ledgers & Blockchain
Cisco on Distributed Ledgers & BlockchainCisco on Distributed Ledgers & Blockchain
Cisco on Distributed Ledgers & BlockchainMatteo Masi
 
Hyperledger fabric 20180528
Hyperledger fabric 20180528Hyperledger fabric 20180528
Hyperledger fabric 20180528Arnaud Le Hors
 
Blockchain explained FIATA Congress 20180910
Blockchain explained FIATA Congress 20180910Blockchain explained FIATA Congress 20180910
Blockchain explained FIATA Congress 20180910Arnaud Le Hors
 
Code for America 2018 - Using Hyperledger Technologies to Deliver Government ...
Code for America 2018 - Using Hyperledger Technologies to Deliver Government ...Code for America 2018 - Using Hyperledger Technologies to Deliver Government ...
Code for America 2018 - Using Hyperledger Technologies to Deliver Government ...Tracy Kuhrt
 
TDC2018SP | Trilha Blockchain - BlockChain Casos de Usos alem das CryptoMoedas
TDC2018SP | Trilha Blockchain - BlockChain Casos de Usos alem das CryptoMoedasTDC2018SP | Trilha Blockchain - BlockChain Casos de Usos alem das CryptoMoedas
TDC2018SP | Trilha Blockchain - BlockChain Casos de Usos alem das CryptoMoedastdc-globalcode
 
From 7331 to legal : a selection of blockchain discussion topics
From 7331 to legal : a selection of blockchain discussion topicsFrom 7331 to legal : a selection of blockchain discussion topics
From 7331 to legal : a selection of blockchain discussion topicsKoen Vingerhoets
 

Was ist angesagt? (20)

A framework for improving the efficiency of the transparency in financial dom...
A framework for improving the efficiency of the transparency in financial dom...A framework for improving the efficiency of the transparency in financial dom...
A framework for improving the efficiency of the transparency in financial dom...
 
What is tokenization in blockchain - BCS London
What is tokenization in blockchain - BCS LondonWhat is tokenization in blockchain - BCS London
What is tokenization in blockchain - BCS London
 
Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ...
 Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ... Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ...
Practical Tools for Enterprise Uses of Hyperledger Fabric (Audit and System ...
 
Blockchain: a disruptive technology, governance and usage, OW2con'18, June 7-...
Blockchain: a disruptive technology, governance and usage, OW2con'18, June 7-...Blockchain: a disruptive technology, governance and usage, OW2con'18, June 7-...
Blockchain: a disruptive technology, governance and usage, OW2con'18, June 7-...
 
Ibm blockchain - Hyperledger 15.02.18
Ibm blockchain - Hyperledger 15.02.18Ibm blockchain - Hyperledger 15.02.18
Ibm blockchain - Hyperledger 15.02.18
 
Ibm system storage solutions handbook
Ibm system storage solutions handbook Ibm system storage solutions handbook
Ibm system storage solutions handbook
 
Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer
 
Introduction to Blockchain
Introduction to BlockchainIntroduction to Blockchain
Introduction to Blockchain
 
Blockchin architecture & use cases -part-2
Blockchin architecture & use cases -part-2Blockchin architecture & use cases -part-2
Blockchin architecture & use cases -part-2
 
Hyperledger Fabric Hands-On
Hyperledger Fabric Hands-OnHyperledger Fabric Hands-On
Hyperledger Fabric Hands-On
 
Learn Basics & advances of Hyperledger - 101-Blockchains
Learn Basics & advances of Hyperledger - 101-BlockchainsLearn Basics & advances of Hyperledger - 101-Blockchains
Learn Basics & advances of Hyperledger - 101-Blockchains
 
Hyperledger
HyperledgerHyperledger
Hyperledger
 
Hyperledger Overview - 20181024
Hyperledger Overview - 20181024Hyperledger Overview - 20181024
Hyperledger Overview - 20181024
 
Blockchain based Security Architectures - A Review
Blockchain based Security Architectures - A ReviewBlockchain based Security Architectures - A Review
Blockchain based Security Architectures - A Review
 
Cisco on Distributed Ledgers & Blockchain
Cisco on Distributed Ledgers & BlockchainCisco on Distributed Ledgers & Blockchain
Cisco on Distributed Ledgers & Blockchain
 
Hyperledger fabric 20180528
Hyperledger fabric 20180528Hyperledger fabric 20180528
Hyperledger fabric 20180528
 
Blockchain explained FIATA Congress 20180910
Blockchain explained FIATA Congress 20180910Blockchain explained FIATA Congress 20180910
Blockchain explained FIATA Congress 20180910
 
Code for America 2018 - Using Hyperledger Technologies to Deliver Government ...
Code for America 2018 - Using Hyperledger Technologies to Deliver Government ...Code for America 2018 - Using Hyperledger Technologies to Deliver Government ...
Code for America 2018 - Using Hyperledger Technologies to Deliver Government ...
 
TDC2018SP | Trilha Blockchain - BlockChain Casos de Usos alem das CryptoMoedas
TDC2018SP | Trilha Blockchain - BlockChain Casos de Usos alem das CryptoMoedasTDC2018SP | Trilha Blockchain - BlockChain Casos de Usos alem das CryptoMoedas
TDC2018SP | Trilha Blockchain - BlockChain Casos de Usos alem das CryptoMoedas
 
From 7331 to legal : a selection of blockchain discussion topics
From 7331 to legal : a selection of blockchain discussion topicsFrom 7331 to legal : a selection of blockchain discussion topics
From 7331 to legal : a selection of blockchain discussion topics
 

Ähnlich wie Blockchain Applications for E-Commerce Security

IRJET- Smart Contracts using Blockchain
IRJET- Smart Contracts using BlockchainIRJET- Smart Contracts using Blockchain
IRJET- Smart Contracts using BlockchainIRJET Journal
 
AN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAIN
AN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAINAN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAIN
AN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAINIRJET Journal
 
OVERVIEW OF SMART CONTRACT IN BLOCKCHAIN TECHNOLOGY
OVERVIEW OF SMART CONTRACT IN BLOCKCHAIN TECHNOLOGYOVERVIEW OF SMART CONTRACT IN BLOCKCHAIN TECHNOLOGY
OVERVIEW OF SMART CONTRACT IN BLOCKCHAIN TECHNOLOGYIRJET Journal
 
Varieties of Blockchains
Varieties of BlockchainsVarieties of Blockchains
Varieties of BlockchainsSadegh Dorri N.
 
Upgradability of smart contracts: A Review
Upgradability of smart contracts: A ReviewUpgradability of smart contracts: A Review
Upgradability of smart contracts: A ReviewIRJET Journal
 
OVERVIEW OF SMART CONTRACT & ADOPTION
OVERVIEW OF SMART CONTRACT  &  ADOPTIONOVERVIEW OF SMART CONTRACT  &  ADOPTION
OVERVIEW OF SMART CONTRACT & ADOPTIONLokesh Gupta
 
Decentralized Car Hailing Application
Decentralized Car Hailing ApplicationDecentralized Car Hailing Application
Decentralized Car Hailing ApplicationIRJET Journal
 
computerweekly.com 17-23 September 2019 16W hen people int.docx
computerweekly.com 17-23 September 2019 16W hen people int.docxcomputerweekly.com 17-23 September 2019 16W hen people int.docx
computerweekly.com 17-23 September 2019 16W hen people int.docxmccormicknadine86
 
Impact of Blockchain on IT AuditBlockchain Techn.docx
Impact of Blockchain on IT AuditBlockchain Techn.docxImpact of Blockchain on IT AuditBlockchain Techn.docx
Impact of Blockchain on IT AuditBlockchain Techn.docxsheronlewthwaite
 
Creating An E-Commerce web application using Blockchain
Creating An E-Commerce web application using BlockchainCreating An E-Commerce web application using Blockchain
Creating An E-Commerce web application using BlockchainIRJET Journal
 
The rise of cryptocurrency & smart contract in blockchain industry
The rise of cryptocurrency & smart contract in blockchain industryThe rise of cryptocurrency & smart contract in blockchain industry
The rise of cryptocurrency & smart contract in blockchain industryMoon Technolabs Pvt. Ltd.
 
IRJET- Secured Real Estate Transactions using Blockchain Technology
IRJET-  	  Secured Real Estate Transactions using Blockchain TechnologyIRJET-  	  Secured Real Estate Transactions using Blockchain Technology
IRJET- Secured Real Estate Transactions using Blockchain TechnologyIRJET Journal
 
Smart offload chain: a proposed architecture for blockchain assisted fog off...
Smart offload chain: a proposed architecture for blockchain  assisted fog off...Smart offload chain: a proposed architecture for blockchain  assisted fog off...
Smart offload chain: a proposed architecture for blockchain assisted fog off...IJECEIAES
 
IRJET- Blockchain Technology a Literature Survey
IRJET- Blockchain Technology a Literature SurveyIRJET- Blockchain Technology a Literature Survey
IRJET- Blockchain Technology a Literature SurveyIRJET Journal
 
A Robust finger Print Authentication Scheme viaBlockchain to retrieve Citizen...
A Robust finger Print Authentication Scheme viaBlockchain to retrieve Citizen...A Robust finger Print Authentication Scheme viaBlockchain to retrieve Citizen...
A Robust finger Print Authentication Scheme viaBlockchain to retrieve Citizen...IRJET Journal
 
IRJET- Secure Banking System using Block Chain Technology
IRJET-  	  Secure Banking System using Block Chain TechnologyIRJET-  	  Secure Banking System using Block Chain Technology
IRJET- Secure Banking System using Block Chain TechnologyIRJET Journal
 
Blockchain & Telecommunication Services Provider
Blockchain & Telecommunication Services ProviderBlockchain & Telecommunication Services Provider
Blockchain & Telecommunication Services ProviderSamuel Liu
 
Application Layer Security for IoT: The Case Study of a Smart Home
Application Layer Security for IoT: The Case Study of a Smart HomeApplication Layer Security for IoT: The Case Study of a Smart Home
Application Layer Security for IoT: The Case Study of a Smart HomeIRJET Journal
 
IoT security fresh thinking 2017 sep 9
IoT security fresh thinking 2017 sep 9IoT security fresh thinking 2017 sep 9
IoT security fresh thinking 2017 sep 9Arvind Tiwary
 
Navigating Crypto: Industry Map
Navigating Crypto: Industry MapNavigating Crypto: Industry Map
Navigating Crypto: Industry MapSarasotamug
 

Ähnlich wie Blockchain Applications for E-Commerce Security (20)

IRJET- Smart Contracts using Blockchain
IRJET- Smart Contracts using BlockchainIRJET- Smart Contracts using Blockchain
IRJET- Smart Contracts using Blockchain
 
AN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAIN
AN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAINAN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAIN
AN IDENTITY MANAGEMENT SYSTEM USING BLOCKCHAIN
 
OVERVIEW OF SMART CONTRACT IN BLOCKCHAIN TECHNOLOGY
OVERVIEW OF SMART CONTRACT IN BLOCKCHAIN TECHNOLOGYOVERVIEW OF SMART CONTRACT IN BLOCKCHAIN TECHNOLOGY
OVERVIEW OF SMART CONTRACT IN BLOCKCHAIN TECHNOLOGY
 
Varieties of Blockchains
Varieties of BlockchainsVarieties of Blockchains
Varieties of Blockchains
 
Upgradability of smart contracts: A Review
Upgradability of smart contracts: A ReviewUpgradability of smart contracts: A Review
Upgradability of smart contracts: A Review
 
OVERVIEW OF SMART CONTRACT & ADOPTION
OVERVIEW OF SMART CONTRACT  &  ADOPTIONOVERVIEW OF SMART CONTRACT  &  ADOPTION
OVERVIEW OF SMART CONTRACT & ADOPTION
 
Decentralized Car Hailing Application
Decentralized Car Hailing ApplicationDecentralized Car Hailing Application
Decentralized Car Hailing Application
 
computerweekly.com 17-23 September 2019 16W hen people int.docx
computerweekly.com 17-23 September 2019 16W hen people int.docxcomputerweekly.com 17-23 September 2019 16W hen people int.docx
computerweekly.com 17-23 September 2019 16W hen people int.docx
 
Impact of Blockchain on IT AuditBlockchain Techn.docx
Impact of Blockchain on IT AuditBlockchain Techn.docxImpact of Blockchain on IT AuditBlockchain Techn.docx
Impact of Blockchain on IT AuditBlockchain Techn.docx
 
Creating An E-Commerce web application using Blockchain
Creating An E-Commerce web application using BlockchainCreating An E-Commerce web application using Blockchain
Creating An E-Commerce web application using Blockchain
 
The rise of cryptocurrency & smart contract in blockchain industry
The rise of cryptocurrency & smart contract in blockchain industryThe rise of cryptocurrency & smart contract in blockchain industry
The rise of cryptocurrency & smart contract in blockchain industry
 
IRJET- Secured Real Estate Transactions using Blockchain Technology
IRJET-  	  Secured Real Estate Transactions using Blockchain TechnologyIRJET-  	  Secured Real Estate Transactions using Blockchain Technology
IRJET- Secured Real Estate Transactions using Blockchain Technology
 
Smart offload chain: a proposed architecture for blockchain assisted fog off...
Smart offload chain: a proposed architecture for blockchain  assisted fog off...Smart offload chain: a proposed architecture for blockchain  assisted fog off...
Smart offload chain: a proposed architecture for blockchain assisted fog off...
 
IRJET- Blockchain Technology a Literature Survey
IRJET- Blockchain Technology a Literature SurveyIRJET- Blockchain Technology a Literature Survey
IRJET- Blockchain Technology a Literature Survey
 
A Robust finger Print Authentication Scheme viaBlockchain to retrieve Citizen...
A Robust finger Print Authentication Scheme viaBlockchain to retrieve Citizen...A Robust finger Print Authentication Scheme viaBlockchain to retrieve Citizen...
A Robust finger Print Authentication Scheme viaBlockchain to retrieve Citizen...
 
IRJET- Secure Banking System using Block Chain Technology
IRJET-  	  Secure Banking System using Block Chain TechnologyIRJET-  	  Secure Banking System using Block Chain Technology
IRJET- Secure Banking System using Block Chain Technology
 
Blockchain & Telecommunication Services Provider
Blockchain & Telecommunication Services ProviderBlockchain & Telecommunication Services Provider
Blockchain & Telecommunication Services Provider
 
Application Layer Security for IoT: The Case Study of a Smart Home
Application Layer Security for IoT: The Case Study of a Smart HomeApplication Layer Security for IoT: The Case Study of a Smart Home
Application Layer Security for IoT: The Case Study of a Smart Home
 
IoT security fresh thinking 2017 sep 9
IoT security fresh thinking 2017 sep 9IoT security fresh thinking 2017 sep 9
IoT security fresh thinking 2017 sep 9
 
Navigating Crypto: Industry Map
Navigating Crypto: Industry MapNavigating Crypto: Industry Map
Navigating Crypto: Industry Map
 

Mehr von Sadegh Dorri N.

فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین (شانزدهمین کنفرانس مهندسی ص...
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین (شانزدهمین کنفرانس مهندسی ص...فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین (شانزدهمین کنفرانس مهندسی ص...
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین (شانزدهمین کنفرانس مهندسی ص...Sadegh Dorri N.
 
معرفی آزمایشگاه زنجیره بلوک و زمینه‌های پژوهشی
معرفی آزمایشگاه زنجیره بلوک و زمینه‌های پژوهشیمعرفی آزمایشگاه زنجیره بلوک و زمینه‌های پژوهشی
معرفی آزمایشگاه زنجیره بلوک و زمینه‌های پژوهشیSadegh Dorri N.
 
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمینفناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمینSadegh Dorri N.
 
ارزیابی سامانه‌های رایانه‌ای با کمک شبیه‌سازی
ارزیابی سامانه‌های رایانه‌ای با کمک شبیه‌سازیارزیابی سامانه‌های رایانه‌ای با کمک شبیه‌سازی
ارزیابی سامانه‌های رایانه‌ای با کمک شبیه‌سازیSadegh Dorri N.
 
Logic Programming and Prolog
Logic Programming and PrologLogic Programming and Prolog
Logic Programming and PrologSadegh Dorri N.
 
Trust in the Virtual World
Trust in the Virtual WorldTrust in the Virtual World
Trust in the Virtual WorldSadegh Dorri N.
 
Uncertainty in Probabilistic Trust Models
Uncertainty in Probabilistic Trust ModelsUncertainty in Probabilistic Trust Models
Uncertainty in Probabilistic Trust ModelsSadegh Dorri N.
 
حریم خصوصی در دنیای مدرن: خواسته‌ها، چالش‌ها، و راه‌حل‌ها
حریم خصوصی در دنیای مدرن: خواسته‌ها، چالش‌ها، و راه‌حل‌هاحریم خصوصی در دنیای مدرن: خواسته‌ها، چالش‌ها، و راه‌حل‌ها
حریم خصوصی در دنیای مدرن: خواسته‌ها، چالش‌ها، و راه‌حل‌هاSadegh Dorri N.
 
Lightweight Virtualization in Linux
Lightweight Virtualization in LinuxLightweight Virtualization in Linux
Lightweight Virtualization in LinuxSadegh Dorri N.
 
کنترل دسترسی بر مبنای اعتماد و آگاه از مخاطره در توری
کنترل دسترسی بر مبنای اعتماد و آگاه از مخاطره در توریکنترل دسترسی بر مبنای اعتماد و آگاه از مخاطره در توری
کنترل دسترسی بر مبنای اعتماد و آگاه از مخاطره در توریSadegh Dorri N.
 
مهندسی حریم خصوصی
مهندسی حریم خصوصیمهندسی حریم خصوصی
مهندسی حریم خصوصیSadegh Dorri N.
 

Mehr von Sadegh Dorri N. (13)

فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین (شانزدهمین کنفرانس مهندسی ص...
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین (شانزدهمین کنفرانس مهندسی ص...فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین (شانزدهمین کنفرانس مهندسی ص...
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین (شانزدهمین کنفرانس مهندسی ص...
 
معرفی آزمایشگاه زنجیره بلوک و زمینه‌های پژوهشی
معرفی آزمایشگاه زنجیره بلوک و زمینه‌های پژوهشیمعرفی آزمایشگاه زنجیره بلوک و زمینه‌های پژوهشی
معرفی آزمایشگاه زنجیره بلوک و زمینه‌های پژوهشی
 
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمینفناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین
فناوری زنجیره بلوک و کاربردهای آن در زنجیره تأمین
 
Bitcoin Mechanics
Bitcoin MechanicsBitcoin Mechanics
Bitcoin Mechanics
 
Introduction to Bitcoin
Introduction to BitcoinIntroduction to Bitcoin
Introduction to Bitcoin
 
ارزیابی سامانه‌های رایانه‌ای با کمک شبیه‌سازی
ارزیابی سامانه‌های رایانه‌ای با کمک شبیه‌سازیارزیابی سامانه‌های رایانه‌ای با کمک شبیه‌سازی
ارزیابی سامانه‌های رایانه‌ای با کمک شبیه‌سازی
 
Logic Programming and Prolog
Logic Programming and PrologLogic Programming and Prolog
Logic Programming and Prolog
 
Trust in the Virtual World
Trust in the Virtual WorldTrust in the Virtual World
Trust in the Virtual World
 
Uncertainty in Probabilistic Trust Models
Uncertainty in Probabilistic Trust ModelsUncertainty in Probabilistic Trust Models
Uncertainty in Probabilistic Trust Models
 
حریم خصوصی در دنیای مدرن: خواسته‌ها، چالش‌ها، و راه‌حل‌ها
حریم خصوصی در دنیای مدرن: خواسته‌ها، چالش‌ها، و راه‌حل‌هاحریم خصوصی در دنیای مدرن: خواسته‌ها، چالش‌ها، و راه‌حل‌ها
حریم خصوصی در دنیای مدرن: خواسته‌ها، چالش‌ها، و راه‌حل‌ها
 
Lightweight Virtualization in Linux
Lightweight Virtualization in LinuxLightweight Virtualization in Linux
Lightweight Virtualization in Linux
 
کنترل دسترسی بر مبنای اعتماد و آگاه از مخاطره در توری
کنترل دسترسی بر مبنای اعتماد و آگاه از مخاطره در توریکنترل دسترسی بر مبنای اعتماد و آگاه از مخاطره در توری
کنترل دسترسی بر مبنای اعتماد و آگاه از مخاطره در توری
 
مهندسی حریم خصوصی
مهندسی حریم خصوصیمهندسی حریم خصوصی
مهندسی حریم خصوصی
 

Kürzlich hochgeladen

Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingrknatarajan
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 

Kürzlich hochgeladen (20)

Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 

Blockchain Applications for E-Commerce Security

  • 1. ‫م‬‫حی‬‫ر‬‫ل‬‫ا‬‫ن‬ ‫حم‬ ‫ر‬‫ل‬‫ا‬‫اهلل‬‫م‬ ‫بس‬ ‫م‬‫حی‬‫ر‬‫ل‬‫ا‬‫ن‬ ‫حم‬ ‫ر‬‫ل‬‫ا‬‫اهلل‬‫م‬ ‫بس‬ Tarbiat Modares University Blockchain-based ApplicationsBlockchain-based Applications E-Commerce SecurityE-Commerce Security Instructor: Sadegh Dorri N.Instructor: Sadegh Dorri N. http://www.modares.ac.ir/~dorrihttp://www.modares.ac.ir/~dorri Spring 2019 (1398)Spring 2019 (1398) Video: https://www.aparat.com/sdorri Slides: https://www.slideshare.net/SadeghD1/ Podcast: https://shenoto.com/sdorri
  • 2. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 2 OutlineOutline · Blockchain as a ComponentBlockchain as a Component - Storage, compute, communication, and asset management - Suitability criteria and design process · Blockchain PatternsBlockchain Patterns - Oracle, off-chain storage, state channel, etc.
  • 3. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 3 Blockchain as a ComponentBlockchain as a Component · What can it provide?What can it provide? - data storage, computation services, communication services - asset management and control · Key question:Key question: on-chainon-chain vs.vs. off-chainoff-chain - On-chain ● Functionality implemented inside the blockchain component using the blockchain ledger and smart contracts ● Limited computational power, data storage space, and access control - Off-chain ● Offline data and application logic can be safely hosted off-chain
  • 4. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 4 Blockchain in a SW ArchitectureBlockchain in a SW Architecture [Patterns]
  • 5. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 5 Blockchain as Storage ElementBlockchain as Storage Element · FeaturesFeatures - Authenticated, and append-only ledger - History of all state changes are preserved. - Transactions record authorized asset transfers. - Distributed: all nodes store all data - Con: Costly storage! · Where is data stored?Where is data stored? - Piggy-backed in transactions → Bitcoin (OP_RETURN) - Contract storage - Eitherway, data is available to the public! · Alternative to…Alternative to… - Conventional databases, cloud storage, P2P file sharing
  • 6. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 6 Blockchain as Computational ElementBlockchain as Computational Element · Smart contracts are codes which execute on the blockchainSmart contracts are codes which execute on the blockchain - Bitcoin script is run by external entities → integrity of results is not guaranteed - Ethereum and its smart contracts can be seen as a general computational platform · What can be expectedWhat can be expected - Reach agreements and solve common problems with minimal trust. - Code can control cryptocurrency, and express triggers, conditions, or business logic · LimitationsLimitations - Practical limitations on computational complexity (e.g. max block gas limit in Ethereum) - Costly execution · Alternative to…Alternative to… - Traditional application platforms, cloud computing
  • 7. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 7 Blockchain as Communication MechanismBlockchain as Communication Mechanism · Data communicationData communication - Blockchain plays the role of a message queue - Oracles can transfer external data to the blockchain · Computation communicationComputation communication - Submit txs to invoke smart contract functions · Coordination facilityCoordination facility - a distributed registry/lock/rendezvous
  • 8. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 8 Blockchain as an Asset Mngmnt MechanismBlockchain as an Asset Mngmnt Mechanism · Tokens can represent either digital assets or physical assetsTokens can represent either digital assets or physical assets - Fungible assets: interchangeable (e.g. cryptocurrencies, gasoline, and commodities) - Non-fungible assets: unique and cannot be interchanged (e.g. CryptoKitties, artwork, and land) · Tokenization: representation of an asset using a cryptographic tokenTokenization: representation of an asset using a cryptographic token - The control of this token aligns with the ownership of the corresponding asset. - By using smart contracts, some conditions can be implemented and associated with the transfer of ownership. - Unless the blockchain is backed by legislation as an authoritative title of register, it will not necessarily be authoritative. · Standards:Standards: describe the functions and events that token smart contractsdescribe the functions and events that token smart contracts should implement.should implement. - ERC206: Ethereum-based fungible tokens - ERC721: Ethereum-based non-fungible tokens (draft)
  • 12. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 12 Blockchain PatternsBlockchain Patterns
  • 13.
  • 14. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 14 Oracle PatternOracle Pattern · Introducing the state of external systems into the closedIntroducing the state of external systems into the closed blockchain execution environment.blockchain execution environment. - The state of external systems is not directly accessible to smart contracts. - Yet, function calls in smart contracts sometimes need to access state of the external world. · Oracle: a trusted third-party that provides smart contractsOracle: a trusted third-party that provides smart contracts with information about the external world.with information about the external world. - On-chain: a smart contract with external state being injected into the oracle periodically by an off-chain injector. - Off-chain: a server outside the blockchain
  • 15. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 15 Off-Chain Data Storage PatternOff-Chain Data Storage Pattern · Use hashing to ensure the integrity of arbitrarily large datasetsUse hashing to ensure the integrity of arbitrarily large datasets which may not fit directly on the blockchain.which may not fit directly on the blockchain. - Blockchain has limited and high cost storage for data. - Data cannot take advantage of the immutability or integrity guarantees without being stored on the blockchain. · Solution: store a hash value (digest) of the raw data on chainSolution: store a hash value (digest) of the raw data on chain - The raw data might be changed without authorization. - This change will be detected but prevention/recovery is not possible. · ExamplesExamples - Proof-of-Existence (POEX.IO) on Bitcoin - Chainy on Ethereum (smart contract)
  • 16. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 16 State Channel PatternState Channel Pattern · Transactions are performed off-chain with periodic recording of netTransactions are performed off-chain with periodic recording of net transaction settlements on-chaintransaction settlements on-chain - Cheap: too small in value w.r.t. transaction fee - Timely: require much shorter latency - E.g. Wi-Fi data usage, Utility bills, … · Solution: establish an agreed off-chain protocol between two participants,Solution: establish an agreed off-chain protocol between two participants, with a deposit from one or both locked up as security in a smart contractwith a deposit from one or both locked up as security in a smart contract for the lifetime of the channel.for the lifetime of the channel. - The state channel keeps the intermediate states of the small transactions off-chain - Only the finalized aggregated (net) transaction is stored on-chain. · Examples:Examples: - The Lightning network for Bitcoin - The Raiden Network, Orinoco, State channel, and Gnosis Go for Ethereum
  • 17. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 17 Other PatternsOther Patterns · HashlockHashlock - Hash of an off-chain generated secret is stored in the transaction, and whoever reveals the secret matching the hash, will be authorized to do sth. · Contract RegistryContract Registry - The address of the latest version of an smart contract is located by looking up its name on a contract registry. · Data ContractData Contract - Store data in a smart contract separate from contract logic to allow for easier code migration from one version to the other. · Factory ContractFactory Contract - An on-chain template contract is used as a factory that generates contract instances from the template. - No need to keep the template off-chain
  • 18. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 18 Questions?Questions? Sadegh Dorri N.Sadegh Dorri N. dorri@modares.ac.ir http://www.modares.ac.ir/~dorri
  • 19. Spring 2019 (1398) E-Commerce Security - Blockchain-based Applications 19 ReferencesReferences · The slides are mainly based on these three chapters ofThe slides are mainly based on these three chapters of X. Xu et al.,X. Xu et al., Architecture for Blockchain ApplicationsArchitecture for Blockchain Applications, Springer Nature Switzerland, 2019, Springer Nature Switzerland, 2019 - Chapter 5: Blockchain in Software Architecture - Chapter 6: Design Process for Applications on Blockchain - Chapter 7: BlockchainPatterns · [Taxonomy] X. Xu et al., “A Taxonomy of Blockchain-Based Systems for Architecture Design,” in IEEE International Conference on Software Architecture (ICSA), Gothenburg, Sweden, 2017, pp. 243–252. · [Suitability] S. K. Lo, X. Xu, Y. K. Chiam, and Q. Lu, “Evaluating Suitability of Applying Blockchain,” in 22nd International Conference on Engineering of Complex Computer Systems (ICECCS), Fukuoka, Japan, 2017, pp. 158–161. · [Patterns] X. Xu, C. Pautasso, L. Zhu, Q. Lu, and I. Weber, “A Pattern Collection for Blockchain-based Applications,” in Proceedings of the 23rd European Conference on Pattern Languages of Programs (EuroPLoP), Irsee, Germany, 2018, pp. 1–20.