Blockchain Query Notary Service

Summary

Biomedical research and clinical decision support depend increasingly on a number of authoritative databases, mostly public and continually enriched via peer scientific contributions. Given the dynamic nature of data and their usage in the sensitive domain of biomedical science, it is important to ensure retrieved data integrity and non-repudiation, that is, ensure that retrieved data cannot be modified after retrieval and that the database cannot validly deny that the particular data has been provided as a result of a specific query. In this work, we present a blockchain-based notarization service that uses smart digital contracts to seal the query and the respective results each time a third-party requests knowledge from a biomedical database. The feasibility of the proposed notarization approach is demonstrated using a real blockchain infrastructure and is tested on a publicly available medical CARRE risk factor reference repository and on the PubMed database.

Demonstration of the Basic Scheme

In this video the user submits a query to CARRE risk factor repository. The submitted query is “DESCRIBE <http://carre.kmi.open.ac.uk/risk_factors/RF_1>” and it is given in SPARQL language. After the submission of the query, he waits few seconds until the transaction to be accepted by the miners in the Ethereum Ropsten testnet. Afterward, the results are shown to the user’s front page. The results are:
1. The data address of the new smart contract that is created
2. The hash of the data that it is stored in the contract
3. The transaction hash (tx) that proves that a transaction has been made with the Ethereum Blockchain
4. The answer for the submitted query as it is returned from the CARRE repository

The user stores these results so at any point later he can prove that these were the results that he retrieved.

In the final part of the video the user uses the verification process. He enters the address of the contract in the specified field and he retrieves the data hash that is stored in the contract as it is returned from the Ethereum blockchain. Then, he compares the returned hash with the data hash was retrieved when he had submitted the query. The two hash values are equal, so the data consumer can have a proof of the data he retrieved from the database at a given point in time as a result of a specific query.

Demonstration of the Versioning (Enhanced) Scheme

In this video the user submits the query “asthma” to PubMed MEDLINE database. After the submission of the query, he waits few seconds until the transaction to be accepted by the miners in the Ethereum Ropsten testnet. Afterward, the results are returned to the user’s front page. The results are:
1. The index key, that is a hash value calculated from the question
2. The hash of the answer, that is a hash value calculated from the answer and a server’s timestamp
3. The answer for the submitted query as it is returned from the PubMed database

The user stores these results so that later he can prove that these were the results that he retrieved.

In the final part of the video the user uses the verification process. There are three different field that he needs to fill. In the first one, he enters the query that he had made and selects the database where he had submitted the query. The retrieved results show the latest hash of the answer that is stored in the smart contract for the specific query. In the second field he enters the query, the hash value of the answer and selects the desired database. The returned results show when the hash of the answer was inserted to the smart contract and when it was updated. Finally, in the third field, the user enters the query and selects the desired database and as a result the service returns to him all the hash values of the answers that correspond to the specific query and are stored in the smart contract. So, the user can have a proof of the data he retrieved from the database at a given point in time as a result of a specific query.

Research Team

  • Athina-Styliani Kleinaki (Undergraduate EECE Student)
  • Petros Mytis-Gkometh (Computer Engineer)
  • George Drosatos (Research Associate/Privacy Engineer)
  • Pavlos S. Efraimidis (Associate Professor in Algorithms, EECE, DUTH)
  • Eleni Kaldoudi (Associate Professor in Physics of Medical Imaging & Telemedicine, MEDICINE, DUTH)

If you like to cite this work, please use the following references:

  • Athina-Styliani Kleinaki, Petros Mytis-Gkometh, George Drosatos, Pavlos S. Efraimidis and Eleni Kaldoudi. A Blockchain-based Notarization Service for Biomedical Knowledge Retrieval, accepted for publication in Computational and Structural Biotechnology Journal.
  • Petros Mytis-Gkometh, George Drosatos, Pavlos S. Efraimidis and Eleni Kaldoudi. Notarization of Knowledge Retrieval from Biomedical Repositories using Blockchain Technology. In proceedings of the 3rd International Conference on Biomedical and Health Informatics (ICBHI 2017), pages 69-73, IFMBE Vol. 66, Springer, Thessaloniki, Greece, 18-21 Nov. 2017. (Online BibTex)

Notary Live Demo