| Literature DB >> 32693835 |
Shuaicheng Ma1, Yang Cao2, Li Xiong3.
Abstract
BACKGROUND: Genomic data have been collected by different institutions and companies and need to be shared for broader use. In a cross-site genomic data sharing system, a secure and transparent access control audit module plays an essential role in ensuring the accountability. A centralized access log audit system is vulnerable to the single point of attack and also lack transparency since the log could be tampered by a malicious system administrator or internal adversaries. Several studies have proposed blockchain-based access audit to solve this problem but without considering the efficiency of the audit queries. The 2018 iDASH competition first track provides us with an opportunity to design efficient logging and querying system for cross-site genomic dataset access audit. We designed a blockchain-based log system which can provide a light-weight and widely compatible module for existing blockchain platforms. The submitted solution won the third place of the competition. In this paper, we report the technical details in our system.Entities:
Keywords: Access log audit; Blockchain; Cross-site genomic datasets; Genome
Mesh:
Year: 2020 PMID: 32693835 PMCID: PMC7372873 DOI: 10.1186/s12920-020-0725-y
Source DB: PubMed Journal: BMC Med Genomics ISSN: 1755-8794 Impact factor: 3.063
Fig. 1Overview of the logging system
The Sample Logs
| Timestamp | Node | ID | Ref-ID | User | Activity | Resource |
|---|---|---|---|---|---|---|
| 152202801 | 1 | 1 | 1 | 1 | REQ_RESOURCE | MOD_FlyBase |
| 152208352 | 1 | 2 | 1 | 1 | VIEW_RESOURCE | MOD_FlyBase |
| 152216966 | 1 | 3 | 3 | 6 | FILE_ACCESS | GTEx |
| 152237149 | 1 | 9 | 9 | 10 | REQ_RESOURCE | MOD_SGD |
Insertion and Queries Examples
| Insertion |
| ∙ |
| Queries |
| ∙ |
| ∙ |
| ∙ |
Multichain APIs Used in Our Methods
| Multichain APIs | Description |
|---|---|
| create a stream(table) in database | |
| Insert key-value pair to specific stream(table) | |
| Retrieve all items with the given key |
Fig. 2Log Record to Transaction Conversion
Fig. 3Transaction with empty values
Simple Hierarchical Timestamp Structure
| L0 | [100,200) | ||||||||
| L1 | [100,110) | [110,120) | [120,..) | ||||||
| L2 | 100 | ... | 109 | 110 | ... | 119 | 120 | ... | ... |
Fig. 4Transaction with Hierarchical Timestamp Structure
Fig. 5Scalability Test: Queries
Fig. 6Scalability Test: Insertion
Fig. 7Scalability Test: Storage
Fig. 8Point Query
Fig. 9Range Query
Fig. 10AND Query