Skip to content

Tutorials: Biobank app

leonardotkimura edited this page Mar 23, 2023 · 3 revisions

Contents

1- Login

  1. Open the biobank-app, and go to http://127.0.0.1:3000 in your browser
  2. Insert the certificate and the password
  3. Click in Sign in

Login page

Figure 1: Amazon Biobank - login page

2 - Insert DNA data

  1. On Biobank-app homepage, click in "insert DNA", and then "Raw Data"
  2. Fill in the "name" and the "description" fields with information about the DNA data 2.1 In our case, we inserted Açaí (Euterpe oleracea) as name, and Collected in 26/ago/2022. Have nutritional qualities, antinflamatory and antioxidant agent as description
  3. Get the magnet link and the decryption key in Torrente, and copy+paste here
  4. Click on "add" to save the data on the blockchain

Create raw DNA data page

Figure 2: Inserting raw DNA data

Now, this genetic data and the associated metadata are registered on the blockchain. You can see the details by visiting http://amazonbiobank.duckdns.org:8080 -> transactions, and looking at the details.

Create raw DNA data page

Figure 3: Transaction details in Hyperledger Explorer. The data written on the blockchain is marked in red.

3 - Insert smart contract parameters

  1. After inserting raw DNA data, click on "create smart contract"
  2. Insert the selling conditions of DNA 2.1. Those include "raw data price", "processed data price", and the payment distribution 2.2. You can also include the royalty payment method that you accept. This will be presented to Buyers when buying access to your data.
  3. Click in "create" to save your parameters

Create a smart contract page

Figure 4: Creating smart contract for raw DNA data. Inserted parameters are: raw data price (1 biocoins); processed data price (3 biocoins); payment distribution (50% Collectors; 50% Processors); and royalt payment (fixed one-time fee of 10 biocoins)

4 - Buy raw DNA data

  1. Login in Biobank-app (possibly using another account)
  2. Before buying the data, we will test that you cannot access the data encryption key. Go to "list data", select the data you want to buy, and click on "see decryption key". You must get an error message. (Figure 5)

Accessing decryption key: denied

Figure 5: Denied attempt to access the data decryption key

  1. Now, let's buy the DNA data. On the home page, click on "buy data". Then, select the DNA data you want buy (Figure 6)

Create a smart contract page

Figure 6: List of DNA available for purchase

  1. After seeing the DNA data detail, click on "see Smart Contract"
  2. After seeing the buying conditions (including the raw data price), click in "Buy DNA"
  3. Click "buy" on the confirmation screen. (Figure 7)

Buying raw DNA

Figure 7: Buying raw DNA data - confirmation screen

  1. After the payment, you will see the "operation receipt", which contains your userID, the value in biocoins that were transferred, and the destination address (Figure 8)

Operation receipt screen

Figure 8: Details about the buying operation. Value that was transferred, destination userID, and DNA dataID

  1. On the operation receipt, click on the link with DNA ID
  2. In the DNA data detail page, note that your userID has been included on the "owner list" (Figure 9)

Updated list of owners

Figure 9: Updated list of owners. Note that your userID has been included

  1. Click on "See decryption key". Since you are now one of the DNA data owners, you have received access to it. (Figure 10)

DNA data decryption key

Figure 10: DNA data decryption key

You will use this decryption key to decrypt the DNA data in Torrente application

5 - Process DNA

  1. Login in biobank-app (possibly using another account)
  2. On home page, click on "process DNA"
  3. Choose the DNA data to process. Click on the "process icon"
  4. After seeing the DNA data, click on next
  5. After seeing the smart contract details (including the payment distribution reserved to Processors), click in "Process"
  6. A process request will be created. This is a declaration that you intend to work on this specific raw DNA data (Figure 11)

Process request details

Figure 11: Process request details. This process request proves that you intend to work on this data

DNA data processing is out of the scope of this work. To do this, interested users may employ third-party tools (e.g., nanopore). We will now describe how to insert the processing results

  1. On the "processing request details", click on "insert processed DNA".
  2. Insert details about the processed data on the form. DNA magnet link and the secret key can be obtained through Torrente (Figure 12)

Inserting a Process DNA data

Figure 12: Inserting a Process DNA data.

  1. Click on "create", to create data on the blockchain (Figure 13)

Inserted Process DNA details

Figure 13: Details about an inserted process DNA data.

  1. Click on endorse DNA. This operation submits this "processed data" to be accepted as the "official processed data". As a result, whenever this genetic data is bought, the Processor receives the payment share as described in "payment distribution". If another "processed data" is already accepted as "official", this endorsement will fail.
  2. If the endorsement is approved, your data will be included as "official". Note the "accepted processed data" field, which contains the processed data ID and other details.

DNA data decryption key

Figure 14: Smart contract details, updated with the "accepted processed data"