国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于區(qū)塊鏈技術(shù)的個人信息管理

2018-12-21 01:56黃小菊徐文起章濤宮學(xué)慶
軟件工程 2018年10期
關(guān)鍵詞:智能合約區(qū)塊鏈

黃小菊 徐文起 章濤 宮學(xué)慶

摘 要:現(xiàn)有的個人私密信息管理工具一般基于獨立的軟件或云服務(wù),存在著數(shù)據(jù)難以共享、易被泄露等問題。區(qū)塊鏈技術(shù)具有去中心化、數(shù)據(jù)難以篡改、可追溯等特點,能用于數(shù)據(jù)管理,但目前缺乏成熟的應(yīng)用模式。本文對利用以太坊智能合約存儲和管理數(shù)據(jù)的特點進行了分析,設(shè)計了一個基于區(qū)塊鏈技術(shù)的個人信息管理系統(tǒng)。其不依賴于任何服務(wù)商實現(xiàn)個人信息數(shù)據(jù)的存儲和分享,能夠有效解決數(shù)據(jù)丟失、數(shù)據(jù)泄露和數(shù)據(jù)濫用的問題,同時也為區(qū)塊鏈技術(shù)應(yīng)用于數(shù)據(jù)管理提供了一種可行的解決方案。

關(guān)鍵詞:區(qū)塊鏈;智能合約;個人信息管理

中圖分類號:TP3 文獻標識碼:A

Abstract:The existing personal private information management tools are generally based on independent software or cloud services,and there are problems such as difficulty in sharing data and being easily leaked.Blockchain technology has the characteristics of decentralization,falsified data prevention,and traceability.It can be used for data management,but currently there is no mature application mode.We analyze the characteristics of using Ethereum smart contracts to store and manage data,and design a block-chain-based personal information management system.It does not rely on any service provider to store and share personal information,and can effectively solve the issues of data loss,data leakage,and data abuse.Furthermore,it provides a feasible solution for blockchain technology applied to data management.

Keywords:blockchain;smart contract;personal information management

1 引言(Introduction)

隨著互聯(lián)網(wǎng)和智能手機應(yīng)用的普及,大量的數(shù)字化個人信息已經(jīng)成為人們最重要的個人資產(chǎn),如個人聯(lián)系方式、通訊錄,以及在各種APP中的用戶名和密碼等?,F(xiàn)有用于個人信息管理的工具難以在保證數(shù)據(jù)安全性的前提下實現(xiàn)便利的數(shù)據(jù)共享。

區(qū)塊鏈是基于P2P網(wǎng)絡(luò)、共識機制和加密算法等技術(shù)的新型應(yīng)用模式,具有去中心化、數(shù)據(jù)難以篡改和可追溯等特點。區(qū)塊鏈技術(shù)的研究是當(dāng)前學(xué)術(shù)界和工業(yè)界共同關(guān)注的一個熱點問題,相關(guān)研究工作不僅包括共識算法[1]和智能合約[2]等區(qū)塊鏈實現(xiàn)技術(shù),還包括如何將區(qū)塊鏈技術(shù)應(yīng)用于各個領(lǐng)域,如物聯(lián)網(wǎng)[3]、金融[4]和醫(yī)療[5]等。作為一種新興的技術(shù),其應(yīng)用模式還沒有公認的成熟方案,有待于進一步研究。

本文設(shè)計了一個基于以太坊[6]的個人信息管理解決方案,將個人信息數(shù)據(jù)通過以太坊的智能合約保存到區(qū)塊鏈中,不僅能夠?qū)崿F(xiàn)數(shù)據(jù)的可靠存儲、同步和分享,還能夠避免數(shù)據(jù)泄露和數(shù)據(jù)濫用的問題。

2 區(qū)塊鏈技術(shù)(Blockchain technology)

區(qū)塊鏈技術(shù)是綜合共識機制、加密算法、智能合約、P2P網(wǎng)絡(luò)等技術(shù)的新興技術(shù)框架,應(yīng)用范圍廣泛,但目前尚沒有公認的成熟應(yīng)用模式。以太坊作為最主流的去中心化區(qū)塊鏈應(yīng)用開發(fā)平臺,現(xiàn)有的開發(fā)框架和開發(fā)語言都相對較成熟,并且支持智能合約。本文構(gòu)建的個人信息管理系統(tǒng)基于以太坊實現(xiàn)。

以太坊網(wǎng)絡(luò)是由運行著以太坊客戶端的節(jié)點組成的P2P網(wǎng)絡(luò),結(jié)構(gòu)如圖1所示。以太坊客戶端中存儲著以太坊區(qū)塊鏈和以太坊的狀態(tài),同時也運行著EVM(Ethereum Virtual Machine)。以太坊區(qū)塊鏈是按鏈表結(jié)構(gòu)組織的區(qū)塊集合,區(qū)塊中存儲著時間戳、隨機數(shù)、前一區(qū)塊數(shù)據(jù)的Hash值,以及大量的交易。交易中記錄著以太坊賬戶發(fā)生的狀態(tài)變化。以太坊狀態(tài)是區(qū)塊鏈中特定時間點上所有賬戶和數(shù)據(jù)的快照[7]。賬戶分為外部賬戶和合約賬戶兩類,賬戶地址為20字節(jié)的16進制字符串。外部賬戶類似現(xiàn)實世界的銀行卡賬戶,其中存儲著賬戶余額等信息。合約賬戶即智能合約,存儲著合約數(shù)據(jù)和合約代碼。EVM是能執(zhí)行交易、修改以太坊狀態(tài),其為智能合約提供了完全隔離的運行環(huán)境。

智能合約是一段運行在以太坊網(wǎng)絡(luò)中的腳本,可通過變量賦值、函數(shù)調(diào)用來存儲、操作數(shù)據(jù)。其中的數(shù)據(jù)存儲在以太坊節(jié)點中,具有四個重要特點:(1)公開性。任何連接到以太坊網(wǎng)絡(luò)的節(jié)點均可自由讀取以太坊區(qū)塊鏈中的所有數(shù)據(jù)。(2)數(shù)據(jù)管理成本較高。調(diào)用智能合約來存儲、操作數(shù)據(jù)會消耗交易發(fā)起者一定的以太幣。同時,以太坊網(wǎng)絡(luò)中的所有節(jié)點都需要執(zhí)行該合約,消耗了大量的計算資源。(3)數(shù)據(jù)操作是異步的。執(zhí)行合約過程中需要向網(wǎng)絡(luò)發(fā)送交易、產(chǎn)生新區(qū)塊。只有在這些過程完成后數(shù)據(jù)操作才算成功。(4)不易丟失、難以篡改。智能合約中的數(shù)據(jù)存儲在以太坊網(wǎng)絡(luò)中,使得數(shù)據(jù)難以篡改。以太坊網(wǎng)絡(luò)中每個節(jié)點均存儲著智能合約數(shù)據(jù)副本,保證了數(shù)據(jù)不易丟失。

3 系統(tǒng)設(shè)計(System design)

為解決現(xiàn)有個人信息管理工具存在的問題,提出基于以太坊的個人信息管理系統(tǒng)。該系統(tǒng)具有以下特點:(1)能存儲大量的個人數(shù)字化信息;(2)能提供可靠的數(shù)據(jù)存儲;(3)能靈活控制數(shù)據(jù)的訪問權(quán)限;(4)能實現(xiàn)數(shù)據(jù)共享。同時,該系統(tǒng)的實現(xiàn)也是對以太坊應(yīng)用模式的探索。

3.1 系統(tǒng)總體架構(gòu)

系統(tǒng)可以分為以太坊智能合約、系統(tǒng)節(jié)點兩個部分,架構(gòu)如圖2所示。智能合約負責(zé)管理用戶重要數(shù)據(jù)、控制數(shù)據(jù)訪問權(quán)限;系統(tǒng)節(jié)點包含本地存儲、以太坊客戶端、數(shù)據(jù)管理服務(wù)、云存儲服務(wù)四個組件,分別負責(zé)存儲數(shù)據(jù)、連接以太坊網(wǎng)絡(luò)、數(shù)據(jù)處理和云存儲服務(wù),由此管理、維護用戶所有數(shù)據(jù)。

3.2 以太坊智能合約的設(shè)計

我們設(shè)計了用于用戶個人信息存儲、訪問控制的UPC(User Profile Contract)和用于共享數(shù)據(jù)的GPC(Group Profile Contract)兩種合約,實現(xiàn)語言選用Solidity。GPC的數(shù)據(jù)共享類似QQ的群文件共享,以下認為有權(quán)限訪問同一個GPC數(shù)據(jù)的用戶處于一個群,群主為該GPC的創(chuàng)建者。

UPC、GPC及本地存儲的關(guān)系如圖3所示,UPC、GPC存儲在以太坊網(wǎng)絡(luò)中,本地存儲為系統(tǒng)節(jié)點的重要模塊。本地存儲中的數(shù)據(jù)和合約中的數(shù)據(jù)需要進行同步,用于保證數(shù)據(jù)的一致性;UPC中會記錄用戶所加入群的GPC地址,便于查找群內(nèi)成員分享的數(shù)據(jù);UPC中還會記錄好友的UPC地址,使得合約之間互相關(guān)聯(lián),便于信息的訪問。

3.2.1 UPC

UPC由用戶創(chuàng)建,用于存儲和管理用戶關(guān)鍵數(shù)據(jù),從而可保證用戶數(shù)據(jù)的可靠存儲、安全共享。結(jié)合加密算法后UPC可用于控制數(shù)據(jù)的訪問權(quán)限。

UPC的數(shù)據(jù)結(jié)構(gòu)如圖3所示,包含版本、數(shù)據(jù)項信息、以太坊賬戶地址、數(shù)據(jù)列表和配置信息。版本存儲特定區(qū)塊的時間戳,該區(qū)塊中包含最近修改合約狀態(tài)的交易,由此來標記數(shù)據(jù)的更新時間;數(shù)據(jù)項信息是一個字符串,其中包含數(shù)據(jù)列表中存儲的所有數(shù)據(jù)項名,由此可從數(shù)據(jù)列表中獲取到所有數(shù)據(jù)值;以太坊賬戶地址即為用戶登錄系統(tǒng)的賬戶地址;數(shù)據(jù)列表中存儲著用戶所有個人數(shù)據(jù);配置信息中記錄了好友列表信息、GPC地址列表、用戶 地址,以及用戶加密自身數(shù)據(jù)的所有密鑰列表。其中好友列表中包括好友的UPC地址、用戶提供給好友的密鑰名稱列表、好友提供給用戶的密鑰列表,由此即可查詢到用戶所有好友的信息、好友對用戶信息的訪問權(quán)限。配置信息在UPC中以加密字符串形式存儲,用于系統(tǒng)節(jié)點初始化、獲取合約數(shù)據(jù)。

存儲用戶數(shù)據(jù)時可以自主選擇加密策略:不加密、僅加密數(shù)據(jù)值或數(shù)據(jù)項與數(shù)據(jù)值均加密,由此可平衡數(shù)據(jù)處理效率和數(shù)據(jù)安全性的要求。

UPC中主要包括兩個方法:①setData(string_key,string_value)用于添加、更新、刪除數(shù)據(jù)。setData()中設(shè)置了自定義的onlyOwner Modifier,用于保證方法調(diào)用者只能是合約創(chuàng)建者。執(zhí)行該方法需要向以太坊網(wǎng)絡(luò)發(fā)送交易,消耗以太幣;②getData(string_key)用于獲取數(shù)據(jù),不需要向以太坊網(wǎng)絡(luò)發(fā)送交易,因此不消耗以太幣。

3.2.2 GPC

GPC主要用于群內(nèi)成員互相分享數(shù)據(jù)。集中存儲分享給特定群的數(shù)據(jù)能減少用戶對大量無關(guān)數(shù)據(jù)的讀取、解析,提高分享效率;針對同一數(shù)據(jù)項,GPC可向不同群分享不同的數(shù)據(jù)值,由此可簡化合約中的數(shù)據(jù)存儲,并實現(xiàn)靈活的數(shù)據(jù)分享。

GPC的數(shù)據(jù)結(jié)構(gòu)如圖3所示,包含版本、數(shù)據(jù)項信息、創(chuàng)建該GPC的用戶賬戶地址、數(shù)據(jù)列表和用戶列表。版本、數(shù)據(jù)項信息含義與UPC中的相同;以太坊賬戶地址即為創(chuàng)建該GPC的用戶賬戶地址;數(shù)據(jù)列表中存儲著群內(nèi)成員分享的所有信息,它們的數(shù)據(jù)值均使用群密鑰加密。該密鑰由GPC創(chuàng)建者指定;用戶列表中存儲群內(nèi)所有成員的賬戶地址及它們所對應(yīng)的密鑰字符串。該密鑰字符串由GPC創(chuàng)建者使用用戶公鑰對群密鑰加密得到,群內(nèi)成員可從自己的密鑰字符串中解析出群密鑰,并用該密鑰解密GPC中的數(shù)據(jù)或存儲希望分享給其他成員的數(shù)據(jù)。

GPC中的主要方法包括setData(string_key, string_value)、getData(string_key)、setUser(address_friend,string_keystring)、getKeyString(address_friend)。其中setData()向Mapping寫入數(shù)據(jù)時會在參數(shù)_key前加上調(diào)用者的賬戶地址,由此確定數(shù)據(jù)所有者。getData()和getKeyString()和UPC中的實現(xiàn)基本相同。

3.3 系統(tǒng)節(jié)點

由于以太坊智能合約中數(shù)據(jù)管理成本高,系統(tǒng)中較復(fù)雜的數(shù)據(jù)運算、大量數(shù)據(jù)的存儲和處理都需在系統(tǒng)節(jié)點中完成,其開發(fā)使用Truffle框架完成。

3.3.1 數(shù)據(jù)管理服務(wù)

數(shù)據(jù)管理服務(wù)負責(zé)維護系統(tǒng)中的所有數(shù)據(jù),實現(xiàn)安全、可靠的數(shù)據(jù)管理,其三個功能模塊之間的交互如圖2所示。具體功能如下:

(1)用戶交互模塊負責(zé)為用戶提供數(shù)據(jù)管理界面,由此向用戶展示有訪問權(quán)限的數(shù)據(jù)、收集用戶提交的新數(shù)據(jù)。

(2)數(shù)據(jù)處理模塊負責(zé)數(shù)據(jù)的加密、解密,以保證數(shù)據(jù)安全存儲和共享。根據(jù)UPC中對數(shù)據(jù)類型的分類,對數(shù)據(jù)采用不同的加密算法處理。私密數(shù)據(jù)要求較高的安全性,需要使用非對稱加密方法進行加密;對于模式公開數(shù)據(jù),綜合考慮安全性和數(shù)據(jù)處理效率,一般使用對稱加密方法加密,使得用戶向好友分享密鑰即可實現(xiàn)分享數(shù)據(jù)。

當(dāng)用戶選擇啟用云存儲服務(wù)時,對于部分安全性要求高且有共享需求的數(shù)據(jù),可選用代理重加密方法進行加密。好友在線下向用戶提出數(shù)據(jù)共享請求,用戶即可使用重加密密鑰生成算法產(chǎn)生重加密密鑰,并通過云存儲服務(wù)提交給云服務(wù)器。云服務(wù)器對數(shù)據(jù)密文完成重加密后,好友即可用自己的私鑰解密獲取的數(shù)據(jù)密文。由此可提供更高的數(shù)據(jù)安全性,并提高數(shù)據(jù)處理效率。

(3)用戶數(shù)據(jù)管理模塊提供了getData(string_key)、setData(string_key,string_value)兩個數(shù)據(jù)訪問接口,由此向本節(jié)點或其他節(jié)點的用戶交互模塊提供數(shù)據(jù),由此實現(xiàn)數(shù)據(jù)的共享。同時,用戶數(shù)據(jù)管理模塊通過調(diào)用智能合約、本地存儲的數(shù)據(jù)操作方法來存取、更新數(shù)據(jù),以保證系統(tǒng)中所有數(shù)據(jù)的一致性。

數(shù)據(jù)管理模塊中對于數(shù)據(jù)的加密粒度,以及加密方式都給了用戶較大的選擇空間,使得用戶可以根據(jù)自身的需要在數(shù)據(jù)安全性和處理效率間權(quán)衡,帶來較高的數(shù)據(jù)處理靈活性。

3.3.2 以太坊客戶端

以太坊客戶端將系統(tǒng)節(jié)點連接到以太坊網(wǎng)絡(luò),從而完成發(fā)送交易、部署合約、調(diào)用合約函數(shù)等功能,本文使用的是go-ethereum客戶端和MetaMask。

以太坊客戶端會在用戶首次登錄時對用戶提供的以太坊賬戶地址、密鑰對進行檢查,以此實現(xiàn)身份認證。之后,用戶從系統(tǒng)節(jié)點發(fā)出的所有交易都由該賬戶發(fā)起,并由該賬戶提供發(fā)起交易所需的以太幣。

3.3.3 本地存儲

本地存儲用于在本地存儲用戶數(shù)據(jù),從而提高系統(tǒng)數(shù)據(jù)管理效率。為實現(xiàn)與智能合約數(shù)據(jù)的同步且保證數(shù)據(jù)查詢、更新效率,我們選用鍵值數(shù)據(jù)庫HBase實現(xiàn)。

將存儲在UPC和GPC上的數(shù)據(jù)分別存放在userProfileTable和groupProfileTable表中,并在合約地址、賬戶地址列上設(shè)置索引以便于查找。userProfileTable包含兩個列族:contractInfo用于存儲合約地址、版本、配置信息等合約相關(guān)信息;dataInfo用于存儲用戶個人數(shù)據(jù)。groupProfileTable包括contractInfo、dataInfo、userInfo三個列族,前兩個內(nèi)容與userProfileTable中的相同,userInfo中存儲GPC的用戶列表信息。

以上數(shù)據(jù)庫模式的設(shè)計使得本地存儲與智能合約進行交互時能快速實現(xiàn)數(shù)據(jù)的同步,同時支持大量數(shù)據(jù)的存儲、查詢、更新。

3.3.4 云存儲服務(wù)

云存儲服務(wù)為可選功能模塊,主要負責(zé)云服務(wù)器數(shù)據(jù)的管理,保證數(shù)據(jù)的可靠存儲和安全共享。其三個功能模塊的關(guān)系如圖2所示。具體功能如下:

(1)云數(shù)據(jù)存取模塊可連接云服務(wù)器,為數(shù)據(jù)管理服務(wù)提供管理云端數(shù)據(jù)的標準接口,包括getDataHash(string_key)、getData(string_key)、setData(string_key,string_value)、reEncrypto(string_key,string_encrptokey),分別用于獲取數(shù)據(jù)Hash值、獲取完整數(shù)據(jù)、更新數(shù)據(jù)、重加密數(shù)據(jù)。

(2)數(shù)據(jù)驗證模塊負責(zé)對從云服務(wù)器中獲取的數(shù)據(jù)進行驗證,以減少無效數(shù)據(jù)的傳輸。使用云數(shù)據(jù)存取提供的getDataHash()從云服務(wù)器中獲取數(shù)據(jù)Hash值,確定和數(shù)據(jù)管理服務(wù)提供的Hash值相同時,再調(diào)用getData()請求完整數(shù)據(jù),并返回給數(shù)據(jù)管理服務(wù)。

(3)本地數(shù)據(jù)同步模塊用于檢查云服務(wù)器和本地存儲中數(shù)據(jù)的一致性,以防止云服務(wù)器或本地存儲中的數(shù)據(jù)被篡改。同步在系統(tǒng)節(jié)點空閑時進行,通過驗證數(shù)據(jù)Hash值的一致性來實現(xiàn)。

該模塊的引入能在保證數(shù)據(jù)安全性的同時保證數(shù)據(jù)存儲、分享的效率。

4 場景分析(Scenario analysis)

為完整描述利用智能合約完成數(shù)據(jù)存儲、分享的過程,假設(shè)場景:A、B為好友,分別使用系統(tǒng)節(jié)點A和系統(tǒng)節(jié)點B將他們的個人數(shù)據(jù)存儲在智能合約上。A、B均未啟用云存儲服務(wù)功能。B可訪問A的“辦公電話”“學(xué)習(xí)經(jīng)歷”等信息。現(xiàn)假設(shè)系統(tǒng)節(jié)點A發(fā)生故障,本地數(shù)據(jù)全部丟失,用戶A僅記錄了以太坊賬戶、密鑰、UPC地址。系統(tǒng)節(jié)點B在本地存儲了所有可訪問的數(shù)據(jù),且用戶B記錄了、、。在此場景下進行實驗,以驗證系統(tǒng)的有效性,圖4描述了用戶A,B使用系統(tǒng)進行數(shù)據(jù)管理的實驗流程。

系統(tǒng)節(jié)點初始化:圖4中第①到③步描述的是用戶A初始化系統(tǒng)節(jié)點、獲取數(shù)據(jù)的三個關(guān)鍵步驟。

①用戶A向系統(tǒng)節(jié)點提供和,由系統(tǒng)節(jié)點對其進行驗證,確認正確之后進入第二步,否則初始化失敗。

②系統(tǒng)節(jié)點使用可訪問A的UPC由此讀取A的所有數(shù)據(jù),并將其解密。解密后的數(shù)據(jù)包含A的個人信息列表、好友B的UPC地址,以及對應(yīng)的密鑰等,被存儲到節(jié)點的本地存儲中。

③根據(jù)上一步得到的合約地址可讀取出其他用戶分享給A的所有數(shù)據(jù),并將其存儲到本地。系統(tǒng)節(jié)點讀取的數(shù)據(jù)展示給用戶,初始化過程結(jié)束。

該初始化過程保證了用戶在不丟失合約地址的情況下,關(guān)鍵數(shù)據(jù)不會丟失。

更新數(shù)據(jù):用戶A的“學(xué)習(xí)經(jīng)歷”信息中數(shù)據(jù)量較大,完整數(shù)據(jù)存儲在本地存儲中,智能合約中僅存儲了該信息的Hash值。現(xiàn)需更新該數(shù)據(jù),流程如圖4中第④到⑥步所示。

④系統(tǒng)節(jié)點調(diào)用函數(shù)將加密的新數(shù)據(jù)同步到合約中。合約執(zhí)行成功后,將最新的數(shù)據(jù)Hash更新到本地存儲中。

⑤系統(tǒng)節(jié)點B定期從中讀取A的版本信息,當(dāng)發(fā)現(xiàn)其本地版本低于UPC中的版本時,重新讀取合約數(shù)據(jù),并進行解密。

⑥對于“學(xué)習(xí)經(jīng)歷”等存儲在A節(jié)點中的數(shù)據(jù),B向A節(jié)點的數(shù)據(jù)管理服務(wù)發(fā)送獲取數(shù)據(jù)的請求。得到的數(shù)據(jù)密文由B使用解密,并更新到系統(tǒng)節(jié)點B的本地存儲中。

通過監(jiān)控合約狀態(tài),用戶可獲取到好友的實時最新數(shù)據(jù);通過標準的數(shù)據(jù)訪問接口可以實現(xiàn)數(shù)據(jù)的分享。

群內(nèi)共享數(shù)據(jù):B希望向A分享“地址”“郵箱”等信息,但他不想分享中存儲的私人地址和郵箱。因此,他使用GPC來向A分享數(shù)據(jù),具體流程如圖4中第⑦到⑧步所示。

⑦用戶B通過系統(tǒng)節(jié)點的以太坊客戶端新建GPC,得到的地址為,并指定群密鑰為中。B使用調(diào)用addUser()將、使用加密的群密鑰添加到GPC的用戶列表中。

⑧用戶B在線下向A發(fā)送。用戶A即可使用該地址創(chuàng)建GPC實例,從而讀取B分享的數(shù)據(jù),并能使用GPC提供的方法管理數(shù)據(jù)。

上述分享過程使得用戶訪問好友數(shù)據(jù)時不需讀取、解析好友UPC中的所有的信息,提高了數(shù)據(jù)訪問效率。同時,對群成員來說,獲取群內(nèi)其他成員分享的信息僅需讀取一個合約數(shù)據(jù)即可實現(xiàn),數(shù)據(jù)分享、訪問更加便利。

收回共享權(quán)限:A不希望再向B分享自己的“辦公電話”信息,收回訪問權(quán)限過程如圖4中⑨所示。

⑨A將“辦公電話”信息使用新的密鑰進行加密,并更新到合約中。成功后,A向其他對“辦公電話”信息有訪問權(quán)限的好友發(fā)送。由此,數(shù)據(jù)訪問權(quán)限被收回。

上述過程中被更新的合約數(shù)據(jù)量較少且過程簡單,實現(xiàn)成本較低,并且能保證數(shù)據(jù)訪問權(quán)限被徹底收回。

5 結(jié)論(Conclusion)

互聯(lián)網(wǎng)及手機應(yīng)用的普及為人們帶來大量的數(shù)字化個人信息,而現(xiàn)有的個人信息管理工具存在著數(shù)據(jù)難以分享、易被泄露等問題。區(qū)塊鏈技術(shù)具有去中心化、數(shù)據(jù)難以篡改、可追溯等特點,能為解決個人信息管理中的問題提供新思路。本文提出的基于以太坊的個人信息管理解決方案將個人信息數(shù)據(jù)存儲到以太坊智能合約上,并由系統(tǒng)節(jié)點對數(shù)據(jù)進行組織和維護,由此可實現(xiàn)大量的個人數(shù)字化信息的可靠存儲、安全共享,并確保用戶對數(shù)據(jù)訪問權(quán)限的控制。

參考文獻(References)

[1] Mingxiao D,Xiaofeng M,Zhe Z,et al.A review on con-sensus algorithm of blockchain[C].Systems,Man,and Cy-bernetics(SMC),2017 IEEE International Conference on.IEEE,2017:2567-2572.

[2] Delmolino K,Arnett M,Kosba A,et al.Step by step to-wards creating a safe smart contract:Lessons and insights from a cryptocurrency lab[C].International Conference on Financial Cryptography and Data Security.Springer,Berlin,Heidelberg,2016:79-94.

[3] Huh S,Cho S,Kim S.Managing IoT devices using block-chain platform[C].Advanced Communication Technology(ICACT),2017 19th International Conference on.IEEE,2017:464-467.

[4] Porru S,Pinna A,Marchesi M,et al.Blockchain-oriented software engineering:challenges and new directions[C].Proceedings of the 39th International Conference on Software Engineering Companion.IEEE Press,2017:169-171.

[5] Azaria A,Ekblaw A,Vieira T,et al.Medrec:Using blockchain for medical data access and permission management[C].Open and Big Data(OBD),International Conference on.IEEE,2016:25-30.

[6] 李赫,孫繼飛,楊泳,等.基于區(qū)塊鏈2.0的以太坊初探[J].中國金融電腦,2017(6):57-60.

[7] Saito K,Yamada H.What's So Different about Blockchain?—Blockchain is a Probabilistic State Machine[C].IEEE,International Conference on Distributed Computing Systems Workshops.IEEE,2016:168-175.

作者簡介:

黃小菊(1995-),女,碩士生.研究領(lǐng)域:區(qū)塊鏈技術(shù),分布式數(shù)據(jù)管理系統(tǒng).

徐文起(1995-),男,碩士生.研究領(lǐng)域:區(qū)塊鏈技術(shù),分布式數(shù)據(jù)管理系統(tǒng).

章 濤(1995-),男,碩士生.研究領(lǐng)域:區(qū)塊鏈技術(shù),分布式數(shù)據(jù)管理系統(tǒng).

宮學(xué)慶(1974-),男,博士,教授.研究領(lǐng)域:區(qū)塊鏈技術(shù),分布式數(shù)據(jù)管理系統(tǒng).

猜你喜歡
智能合約區(qū)塊鏈
農(nóng)產(chǎn)品供應(yīng)鏈金融信用體系框架設(shè)計
區(qū)塊鏈技術(shù)在互聯(lián)網(wǎng)保險行業(yè)的應(yīng)用探討
保險企業(yè)的區(qū)塊鏈技術(shù)應(yīng)用方向選擇研究
區(qū)塊鏈技術(shù)在金融領(lǐng)域的應(yīng)用與前景研究
區(qū)塊鏈技術(shù)的應(yīng)用價值分析
“區(qū)塊鏈”的茍且、詩和遠方
基于區(qū)塊鏈技術(shù)的數(shù)字貨幣與傳統(tǒng)貨幣辨析
智能合約與金融合約
用“區(qū)塊鏈”助推中企走出去
淳化县| 兴化市| 临清市| 肇庆市| 宜兴市| 兴义市| 邵东县| 泰来县| 贺兰县| 乐安县| 隆安县| 高州市| 沐川县| 扶绥县| 张家界市| 南溪县| 越西县| 旬阳县| 黄龙县| 仲巴县| 贵南县| 宣汉县| 邵阳县| 太和县| 内丘县| 禄丰县| 巴林右旗| 晴隆县| 宝丰县| 东乌| 黎川县| 新兴县| 锡林浩特市| 谢通门县| 乌拉特前旗| 新宁县| 阳西县| 潮州市| 扶沟县| 依安县| 达尔|