Source: Computers and Electrical Engineering, Vol. 76, pp , Jun. 2019

Slides:



Advertisements
Similar presentations
104年網路攻防演練辦理情形 行政院資通安全辦公室 周智禾 諮議 中華民國104年12月21日.
Advertisements

智能电力系统与智能电网 (Smarter Power Systems and Smart Grid)
基於WiFi Direct實作具自我組織能力之跨群組訊息傳遞系統
第2章 資料庫系統 2-1 資料庫環境的四大組成元件 2-2 ANSI/SPARC的三層資料庫系統架構
软件工程实践 软件学院 高海昌 作业提交 课件下载
现代农业创业指导 广西省兴安县农广校.
門神 在傳統觀念中,門是居住環境中與外界相通的出入口,具有重要的屏障作用。門神顧名思義就是護宅守門的神仙,每逢過年,上至天子百官下至普通百姓,家家戶戶必在門上張貼門神,以保一家平安。 門神種類主要有宅第大門上將軍武門神、內室門戶上祈福文門神,還有童子門神、仙子門神等,形象豐富多樣,皇家貴戚還往往在畫上瀝粉貼金,十分吉祥喜慶。
數位芝麻網路公司( 軟體工程師
人工智能 Artificial Intelligence 第十一章
前言 1.课程安排: 第一章 操作系统引论(7学时) 第二章 进程管理(14学时) 第三章 处理机调度与死锁(10学时)
第8章 系統架構.
欢迎各位 Nice to Meet U.
教育部教育管理信息中心 教育卡标准化研究所 二00九年七月
Subversion (SVN) Presented by 李明璋 R /2/21
An Introduction to Database System
內容大綱.
九思易自动化软件 ControlEase Automation Software
Blind dual watermarking for color images’ authentication and copyright protection Source : IEEE Transactions on Circuits and Systems for Video Technology.
Lab312.
Rate and Distortion Optimization for Reversible Data Hiding Using Multiple Histogram Shifting Source: IEEE Transactions On Cybernetics, Vol. 47, No. 2,February.
計算機概論 蘇木春 中央大學資工系.
程式語言的基礎 Input Output Program 世代 程式語言 第一世代 Machine language 第二世代
第六章 应用程序结构.
RFID技術研究 及在校園植物導覽為應用 指導教授: 賴阿福 教授 學生: 張靖裕 張庭瑋.
如何促進即時路況資訊傳播以利導航應用產業發展
Source: IEEE Access, vol. 5, pp , October 2017
Concepts Methods Practice Design Implementation
軟體工程 -物件導向程式設計與UML系統分析實作
Chap 3 資料庫模型與處理架構.
圖形溝通大師 Microsoft Visio 2003
單元3:軟體設計 3-2 順序圖(Sequence Diagrams)
Cloud Computing(雲端運算) 技術的現況與應用
32位元處理器之定點數MFCC演算法的改進與探討 Improvement and Discussion of MFCC Algorithm on 32-bit Fixed-point Processors 學生:陳奕宏 指導教授:張智星.
Flash数据管理 Zhou da
创建型设计模式.
A novel blockchain-based product ownership management system (POMS) for anti-counterfeits in the post supply chain Source: IEEE Access, Vol. 5, pp ,
九思易自动化软件 ControlEase Automation Software
Source: IEEE Transactions on Image Processing, Vol. 25, pp ,
设计题目(中文) 英文 姓名 单位 ___年___月___日.
資料結構 Data Structures Fall 2006, 95學年第一學期 Instructor : 陳宗正.
Version Control System Based DSNs
A standard for developing secure mobile applications
Guide to a successful PowerPoint design – simple is best
A Big Data Framework for u-Healthcare Systems Utilizing Vital Signs
虚 拟 仪 器 virtual instrument
第15章 系統分析與設計.
Controllable and Trustworthy Blockchain-based Cloud Data Management
Source: Journal of Network and Computer Applications, Vol. 125, No
Speaker : Chang Kai-Jia Date : 2010/04/26
第二章 軟體測試概論.
SoC 與微控制器的發展 朱亞民.
An Efficient MSB Prediction-based Method for High-capacity Reversible Data Hiding in Encrypted Images 基于有效MSB预测的加密图像大容量可逆数据隐藏方法。 本文目的: 做到既有较高的藏量(1bpp),
Compute System Administration Homework 2: Shell Script
Chapter 10 Mobile IP TCP/IP Protocol Suite
求職防騙面面觀 不累生活文化有限公司 行政總監 賴永洲.
谁在审判?谁能审判? ——网络舆论对司法判案的影响
國金期末報告 股價指數與匯率之間的動態關係: 以台灣、日本、韓國為例 授課老師:楊奕農 學生:郭俊旻.
熊博安 嵌入式系統實驗室 國立中正大學資訊工程學系
第10章 Z-变换 The Z-Transform.
11 Overview Cloud Computing 2012 NTHU. CS Che-Rung Lee
醫工所碩士二年級 R 葉昱甫 電子所碩士一年級 R 謝博鈞 電信所碩士一年級 R 王欣平
Reversible Data Hiding in Color Image with Grayscale Invariance
Fast Image Dehazing Algorithm using Morphological Reconstruction
UML ISKM Lab.
Introduction to Computer Security and Cryptography
利用衛星定位與智慧號誌控制技術針對救險車輛之大眾避讓系統設計
Experimental Analysis of Distributed Graph Systems
“ 插画 ” 是一种结合艺术创作与文字,非语言和语言的艺术表现,有着 “ 叙说 ” 内在思维的传播性本质。 “ 亚洲插画艺术节 ” 透过每年主题式策展,向国内外插画创作者、艺术家邀请与征集作品展出。打造了一個插画 的平台来串连亚洲不同的城市与国际接轨。 第一屆 “ 亚洲插画艺术节 ” 主题:「森林,
第三章 计算机体系结构.
Presentation transcript:

Decentralized document version control using ethereum blockchain and IPFS Source: Computers and Electrical Engineering, Vol. 76, pp.183-197, Jun. 2019 Authors: Nishara Nizamuddin, Khaled Salah, Muhammad Ajmal Azad, Junaid Arshad, Muhammad Habib ur Rehman Speaker: Kai-Fan Chien Date: 4/27/2019 1.2位/阿拉伯聯合大公國/哈利法大學 3.英國/德比大學 4.英國/西倫敦大學 5.巴基斯坦/國立計算機與新興科學大學

Outline Introduction Related work Proposed blockchain-based solution Implementation design and testing Security and vulnerability analysis Conclusion

Decentralized systems Introduction(1/2) Integrative collaboration Version control Centralized systems Logs Decentralized systems 共同作業開發環境 有版本問題與紀錄或檔案可能受攻擊 Can be tampered

Introduction(2/2) Bitcoin's blockchain 1MB size limit per block InterPlanetary File System (IPFS) Most popular and well-established platform Content addressable, peer-to-peer, open source, a globally distributed file system Bitcoin‘s blockchain無法儲存大型文件 IPFS可以/點對點/內容可尋址/開源/分散式

Related work(1/4) InterPlanetary File System (IPFS) Content addressable Peer-to-peer QmYf56srJ24cB64 http://website.com/cat.jpg

Related work(2/4) InterPlanetary File System (IPFS) Decentralized storage system 256KB IPFS Object Data ‘‘Hello World’’ Links [] IPFS Object Data Links [] IPFS Object Data Links [] IPFS Object Data Links [ ] IPFS Object Data Links [] IPFS Object Data Links []

Related work(3/4) InterPlanetary File System (IPFS) Cannot changed Photo.jpg Data Links [ ] Script.txt Data Links [ ] My Videos Photo.jpg My Videos Data Links [ , ] Data Video.mp4 Data Links [ ] Script/劇本 轉變成IPFS/物件、結構 丟上IPFS就不能改,類似區塊鏈 Data Links [ , ] Script.txt Video.mp4

Related work(4/4) InterPlanetary File System (IPFS) Versioning … Commit Parent none Object Commit Parent Object Commit Parent Object My Data v1 My Data v2 My Data v3 支援版本更新 要分享時IPFS生成Commit,指向檔案更新時加入新檔,生成新Commit並聯結先前檔案

Proposed blockchain-based solution(1/2) System overview and design Developers (D) and Approvers (A) Off chain 1檔案有1SC 1.Data所有者=SC所有者 版本確認由其他批准者以共識方式完成(全部or2/3)

Proposed blockchain-based solution(2/2) System overview and design Smart contract Methods Modifiers Variables Data type Functions 智慧合約內容包含 方法:函式 修飾符:存取控制 變數:資料型態 Access control

Implementation design and testing (1/9) Functions Events Off-chain messages Message sequence diagram for document approval Developer Smart Contract Approvers createContract() uploadDocumentToIPFS() DocumentUploaded requestForApproval(IPFS hash) ApprovalRequested provideApprovalToUpload(yes/no) ApprovalGranted(for new version Vi if yes from 2/3 approvers) Off chain 流程 版本更新的流程(分為函式跟動作)

Implementation design and testing (2/9) Functions Events Registration of new developers/approvers Developer Smart Contract Approvers New Approver / Developer Restration requestNewRegistration() NewRegistrationRequested voteToApprove(at least75%) NewRegistrationRequestGranted New registration request granted by all approvers 新開發者或審核者加入

Implementation design and testing (3/9) Approving document version of request made by developers 提出版本更新請求 合約狀態從Created變成WaitForApproversSignature, 開發者狀態變成SubmittedForApproval,等2/3人承認

Implementation design and testing (4/9) Providing consent by Approvers for uploaded documents Agree 審核人員同意更新 若同意:合約狀態變成SignatureProvided、開發人員狀態變ApprovalProvided、審核者狀態變ApprovalSuccess 若失敗:合約狀態變成SignatureDenied、開發人員狀態變ApprovalNotProvided、審核者狀態變ApprovalFailed Disagree

Implementation design and testing (5/9) Processing new registration requests 一開始狀態為WaitToRegister 2/3同意後修改合約狀態為NewRegRequested、註冊狀態改為NewRegistrationRequested、並廣播此消息

Implementation design and testing (6/9) Log after executing provideApprovalToUpload() function successfully 同意版本更新

Implementation design and testing (7/9) Logs showing event SignatureNotProvided and ApprovalRejected 拒絕版本更新

Implementation design and testing (8/9) Log showing event ApprovedSuccess triggered 成功註冊

Implementation design and testing (9/9) Logs showing event DenyRequest triggered 拒絕註冊

Security and vulnerability analysis (1/2) Code vulnerability The DAO (Decentralized autonomous organization) DAO遭駭客攻擊事件 智慧合約中的漏洞分類

Security and vulnerability analysis (2/2) Verified smart contract code for popular security vulnerabilities ChainSecurity and Oyente

Conclusion Decentralized solution for version control and sharing of documents