A health record is a sensitive information , and the patient should be the owner of his records. For this reason we built a decentralized electronic health record tracker.
A health record is a sensitive information , and the patient should be the owner of his records. For this reason we built a decentralized electronic health record tracker. Electronic Health Records are set of data and digital documents of health and socio-sanitary type generated by present and past clinical events, concerning the patient, also referring to services provided outside the National Health Service. It is like a drawer where all your health documentation is stored and organised. In the EHR, your health-related documents are protected and confidential, but you can decide whether to make them visible to the health professionals who care for you, but the storage of these documents and information is done in a centralized traditional manner. What documents does the electronic health record contain? Normally the electronic health record contains the holder's personal data (name, surname, date of birth, tax code, address, chosen family doctor or paediatrician) and is fed with the health data and documents issued by the public and private accredited structures - reports of examinations and tests issued by the public facilities emergency room reports; - discharge letters after admission to public hospitals; - specialist and pharmaceutical prescriptions; - shopping vouchers for coeliacs (in some Local Health Units); - summary health profile - -excetera. In summary , a health record is a sensitive information , and the patient should be the owner of his records. We are proposing a decentralized health record tracker. We use of IPFS, Ceramic , Lit protocol and Optimism, we try to replicate the existing centralized model. We imagined the demo hackaton project from two points of view. The doctor can add documents encrypting them with Lit protocol and storing them on Ceramic network storage. Then we have the patient, as user, which can access its file and can decide through a smart contract what doctors (or hospitals if the wallet is managed by an organization ) are autorized to access a certain set of encrypted files. If a doctor has the authorization from a user , certified by a transaction on chain, the doctor can download a document from Ceramic network decrypting it with Lit Protocol.
How it's made
For this application we used the following tecnologies: - Optimism - Lit protocol - Ipfs with Ceramic network - Hardhat to test the contract with the frontend - Deployed on optimism and rinkeby - scaffolding project for the frontend: https://github.com/moonshotcollective/scaffold-moonshot-starter - chakraui We created a solidity function that can check if a wallet is autorized by another wallet. If isAutorized function return true , the doctor wallet can decrypt the document owned by patient wallet. We stored encrypted base64 strings on Ceramic. The encryption and the decryption process is managed by Lit Protocol that decrypts only if the msg.sender is authorized.