我們構建了一個框架,通過公有鏈技術–乙太坊來簡化資料分享的應用開發並改進我們的食品安全追蹤服務。當人們開始關心資料的存儲方式時,會浮現出一些問題,它們往往成為基於區塊鏈系統推廣的障礙。我們在本文中的工作是重新思考並實作系統,以滿足以下三個要求: 1. 資料隱私是我們正在促進的關鍵概念,也是擁有者的基本權利。當應用程式在公開環境上運行時,人們可以透明地驗證執行中產生的每個塊,並可以輕鬆訪問託管的資料。因此,我們引入了代理重加密技術,以在管理共用存儲上加密資料的對稱金鑰時提高金鑰分發的效率。 2. 區塊鏈服務需要增強持久資料的可用性。我們使用分散式檔案系統 IPFS(星際檔案系統)作為我們的資料後端,並提出了一種結合 IPFS 和區塊鏈帳本的基於文件的資料庫設計。 3. 存取控制是多租戶資料共用方案中的必要功能。我們的系統使用通用的智慧合約來執行資料所有者定義的策略,用戶可以靈活地控制基於 ACL 模型中每個資料集的許可權。 最後,我們通過一個管理應用程式演示了該系統,並以解耦的架構將其集成到一個現有食品安全追蹤服務中,這表明在考慮構建可信混合架構時,它可以適應許多開放資料服務。本文還在實驗部分以通過安全性測試工具的智能合約實作提供了一些可擴展性及效能的分析結果。
We design a framework to simplify sharing data and improve our food traceability system through Ethereum, a public chain technology. Some questions emerge when people are concerned about how the data is protected, and they often become obstacles to promoting blockchain-based systems. Our work in this paper is to rethink and implement a system to meet the three requirements below: 1. Privacy to sensitive data is the critical concept we are facilitating and the right to the data owner. In a public environment, people can transparently verify every block produced in the execution and easily access the data hosted in shared storage without authorization. Thus, we introduced a proxy re-encryption scheme to improve key distribution’s efficiency when managing symmetric keys to the encrypted data on the shared storage. 2. A blockchain service needs to enhance the availability of persistent data. We use IPFS (Interplanetary File System), a distributed file system, as our storage backend, and propose a file-based database design that combines IPFS and blockchain ledger. 3. Access control is the necessary functionality in a multiple tenants’ data-sharing scheme. Our system uses the generic smart contract to enforce the policies defined by the owner of the data, and users have the flexibility to control the permissions of each dataset in an ACL-based model. At last, we demonstrate the system through an application for administration and integrate it into the existing food traceability system with a decoupled architecture that shows it can adapt to an open data service when considering building a trustful hybrid architecture. This paper also analyzes the benchmarks of scalability and performance of the implementation that passes the test of a smart contract analysis tool in the experiment.