-
-
Donor Earnings from stem cell sale incentives
-
Chainlink Automation for unescrowing tokens from AminoChainMarketplace
-
IPFS and Web3 Storage for encrypted genome sequences
-
Our Delivery API deployed to GCP Compute Engine
-
A Cron Job that checks for delivery status updates every 5 minutes
-
Delivery API Architecture
Inspiration
Casen and Igor both had an interest in Healthcare and medicine since Casen’s older brother was in med school and Casen always had an interest in Stem Cells by doing a high school project on them. Igor’s girlfriend has come in touch with the topic of stem cells in the course of her medical studies and while doing research for her Ph.D.
Every 9 minutes someone in the US dies of blood cancer [1], and 186,000 patients are diagnosed with blood cancer every year [2]. The best way to save these patients is through a process known as Stem Cell Transplantation Therapy, a process in which you take stem cells from a healthy donor and engraft them into a sick patient. The matching criteria between a donor and a patient are very stringent, and they highly depend on matching individuals based on ancestry and ethnicity (i.e., HLA genetics). In over 70% of cases, donors cannot find a match in their immediate family and are forced to search national stem cell registries; these registries consist of a large database of volunteer donors that are called up on a case-by-case basis [3].
The US national stem cell registry finds donors for 79% of white blood cancer patients, 48% of Hispanic patients, 47% of Pacific Islander patients, and only 29% of African American patients [4]. Ethnic minority individuals are highly skeptical of the US healthcare system because of many prior instances of abuse and mistrust, and this causes thousands of patients to die needlessly every year. We are creating a platform that centers on transparency, ownership, and benefit sharing, such that donors can rebuild their trust in the healthcare system and no blood cancer patient dies too soon again. This platform is uniquely designed in a way that it can serve many further healthcare applications, and ultimately become the bedrock of the future of US healthcare.
There are numerous stem cell registries and advocacy groups in the US, but all these are managed by, and feed donor and patient transplant data into, the federally contracted National Marrow Donor Program (NMDP) or “Be the Match” [5]. The NMDP manages all requests for allogenic stem cells, and hence the current donor acquisition and search and match process is highly centralized; the NMDP takes stem cells from altruistic donors “for free” and sells them to patients in need for $40K, and the donor receives nothing. Aside from the lack of monetary incentives, this feeds into the larger issue that national research is based on “broad consent”, which means that donors sign off on the fact that the managing medical body can do whatever they like with the donated genetic material. This, among other things, has led to an increasing lack of trust in the US healthcare system; only 5% of clinical trial participants are black [6], African-Americans only make up 10% of COVID-19 vaccine recipients [7], and in the dawning era of precision medicine, the NIH is desperately looking for ways to build a firmer foundation of trust [8]
What it does
AminoChain is a decentralized and privacy-preserving blockchain protocol that centers on transparency and benefit sharing in the general population’s participation in scientific research and clinical medicine. There are 1000s of medical bodies and patient advocacy groups that have the same, if not better, capacity to do what the NMDP does, and using blockchain, we will empower these as nodes in our network to decentralize, streamline, and ultimately shift the economics of stem cell registries and other healthcare practices to a benefit-sharing model.
The AminoChain Platform consists of 2 predominant pillars:
- A suite of smart contracts that plug into lab inventory management software to store encrypted HLA data and tokenize donated bio-specimens
- A privacy-preserving HLA hashing mechanism that ties to donor medical/ blockchain wallets
In this system, donors can trace how their cells are used in a privacy-preserving manner, several KYC elements allow authorized individuals/ institutions to acquire data or bio-specimens (for a price), and medical bodies and donors are appropriately compensated whenever there is a transaction involving their data/ bio-specimens. The company will make money by taking 10% of all network transactions, and this system may require around 5 initial partner biobanks/ medical bodies, 5 patient advocacy groups, and as few as 500 donors/ participants. The opportunity to scale thereafter is endless: onboarding more biobanks, donors, and advocacy groups expanding into many more geographies, and expanding into an endless array of bio-specimens (blood, sperm, eggs, platelets, DNA, Cancer samples, other disease samples, data on disease biomarkers, full genome/ whole exome sequences, etc).
How we built it
We started off brainstorming ideas of how we would tackle building AminoChain. Then after brainstorming we used Figma to build out the user flow for both the Donor, Doctor, and Biobank. We then dispersed and started building separate parts for the several smart contracts we had and the web application.
Doctors and researchers search for donations by matching the genes of the donor's HLA haplotype (which is a combination of the donor's HLA-A, HLA-B, HLA-C, HLA-DPB, HLA-DRB gene alleles) to their desired haplotype. To protect the donor's identity and data, their HLA data cannot be stored unencrypted on the blockchain. Thus we store the donor's HLA data as a struct of hashes corresponding to each of their HLA genes. The match rate of a search is determined by matching the hashed genes to the hashes of a doctor/researcher's search inputs (E.G. If one gene hash matches the corresponding input hash then the match rate would be 1/5).
In addition to hashes, an encryption of the donors' HLA data is stored on-chain. Our backend can then decrypt the donor's HLA data at the request of a verified doctor/researcher. Encryption/decryption is handled by amino-backend with the AES-JS engine.
The full genetic sequence and health data of the donors are encoded and stored in IPFS. amino-backend handles the encoding, storing in IPFS, fetching from IPFS, and decoding of the data.
Doctors'/researchers' wallets also are required to be verified before they are permitted to purchase stem cells. For now, we handled this by assuming that all addresses are verified via the amino-backend endpoint /is-it-doctor-or-researcher-address/:address. By utilizing ChainLink Any API, we can whitelist addresses within the AminoChainMarketplace contract based on a call to our API. Thus simulating the verification process of a doctor/researcher. The full implementation of the verification process is outside of the scope of the current development phase, but a long term solution that we would be extremely interested in implementing would be Chainlink DECO to manage KYC checks [9].
The process of purchasing stem cells includes the physical tracking of donations as well as an escrow system to deter bad actors. The doctor/reseacher initiates a sale (with their whitelisted wallet) by sending payment (USDC tokens) to the AminoChainMarketplace contract. The contract then holds them in escrow until the delivery is complete. Durring this step, the specified tokenized donation (NFT) is also transferred from the AminoChainAuthenticator to the AminoChainMarketplace to be held in escrow. As the physical delivery is initiated and updated, it gets tracked by the delivery_client. After the stem cells are delivered, delivery_client sets the delivery status of the corresponding tokenId to DELIVERED. Upon this state change, Chainlink Automation detects that the payment and token need to be unescrowed. Chainlink Automation does this by calling completeItemSale which transfers the NFT to the buyer, an incentive to the donor wallet, the payment to the biobank wallet, and a protocol fee to AminoChainAuthenticator contract. In the case of a delivery not taking place within 30 days, Chainlink Automation will call refundSale which will unescrow and transfer payment back to the buyer and the NFT back to AminoChainAuthenticator contract.
Challenges we ran into
Hosting the Tracking API through google compute engine. Designing a system for dynamic on-chain stem cell image generation. Linking the front end to the backend shipping API that Alex built. Donor data privacy was our top priority throughout the project, and at the beginning, we had many different avenues to explore; choosing the best one was difficult. As we think about expanding the product in more geographies and jurisdictions, we also need to consider local laws - like GDPR in Europe for example.
Accomplishments that we're proud of
Building and hosting a backend that integrates our web3 contracts with real-world shipping data. Collaborating and iterating with engineers from all over the globe. Tokenizing stem cell donations in a way that corresponds to how they are physically stored by BioBanks and allowing for donations to be fractionalized. Collaborating on the development of smart contracts and frontend technology in the context of a larger project.
What we learned
Integrating web3 technology with web3 and utilizing sound architecture. We all learned about subnets and supernets; moving into the long-term vision of what’s to come for AminoChain, we discussed building this as an Polygon Supernet. HLA Haplotypes and the biology behind stem cell research. Hosting servers using NGINX. Learned how to connect multiple contracts. Became more familiar with how web3 technology such as the differences between L1& L2s.
What's next for AminoChain
For this hackathon, we have developed a PoC that demonstrates the baseline utilities of the product: Tokenization of donated biospecimens, permission-based acquisition systems of these biospecimens, and finally a royalty incentive structure that allows for benefit sharing. These are all very powerful applications of web3 within healthcare, and they build a strong foundation for future developments. Our vision for AminoChain is to create the system as an Polygon supernet; i.e. a private blockchain that specifically incorporates medical clinics and hospitals as validator nodes in the network. This system would add a layer of security in that the encrypted HLA data on-chain, as well as the transactions within the network, would only be available to those that have agreed to HIPAA compliance. Within this base-level layer of security and activity, the opportunities to scale are endless: expanding into all types of bio-specimens, into many more geographies, and many more benefit-sharing mechanisms. We have the vision to become the “Visa” of healthcare; where all data sharing and biospecimen acquisition activity is visible to those that deserve to see it, and where all those that contributed to scientific advancement are immutably and automatically compensated.
Built With
- chainlink
- docker
- google-cloud
- hardhat
- ipfs
- javascript
- next.js
- node.js
- polygon
- postgresql
- solidity
- thegraph
- typescript
- web3.storage
Log in or sign up for Devpost to join the conversation.