{"id":25649898,"url":"https://github.com/kryptocodes/rizz_risk","last_synced_at":"2026-06-20T05:32:13.545Z","repository":{"id":263208499,"uuid":"889559028","full_name":"kryptocodes/rizz_risk","owner":"kryptocodes","description":null,"archived":false,"fork":false,"pushed_at":"2024-11-17T01:31:03.000Z","size":174,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-23T14:38:40.456Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kryptocodes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-16T16:28:46.000Z","updated_at":"2024-11-17T01:31:07.000Z","dependencies_parsed_at":"2024-11-17T02:15:36.196Z","dependency_job_id":null,"html_url":"https://github.com/kryptocodes/rizz_risk","commit_stats":null,"previous_names":["kryptocodes/rizz_risk"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kryptocodes/rizz_risk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kryptocodes%2Frizz_risk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kryptocodes%2Frizz_risk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kryptocodes%2Frizz_risk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kryptocodes%2Frizz_risk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kryptocodes","download_url":"https://codeload.github.com/kryptocodes/rizz_risk/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kryptocodes%2Frizz_risk/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34558894,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-20T02:00:06.407Z","response_time":98,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-23T14:35:17.723Z","updated_at":"2026-06-20T05:32:13.531Z","avatar_url":"https://github.com/kryptocodes.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rizz_Risk\n\nSecurely shared a medical report using zero-knowledge proofs—verifying the information without exposing personal details. A new standard for privacy and trust in sensitive conversations. It’s time to normalize secure and respectful health disclosures\n\n![zkTLS](https://img.shields.io/badge/Security-zkTLS-blue)\n![TEE](https://img.shields.io/badge/Privacy-TEE-green)\n![SignProtocol](https://img.shields.io/badge/Protocol-Sign-orange)\n\n\n## How it's Made\nPrivacy-Centric Medical Report Management System\n\nOur project is designed with a strong focus on privacy at every stage: data collection, processing, and sharing. Below is a structured breakdown of our approach:\n\n1. Data Collection\nMedical reports are commonly shared via two primary methods: email and online portals. To ensure these reports originate from legitimate sources, we employ the following:\n\nzkFetch Integration:\nUsing zkFetch (https://docs.reclaimprotocol.org/zkfetch), we verify that data is fetched from private and authentic sources. This ensures the reports come from trusted entities.\n\nZkEmail Integration (In Progress):\nWe are integrating ZkEmail (https://prove.email/), which enables users to submit reports directly from their email inbox while preserving privacy.\n\nWhile these measures confirm the authenticity of the source, we also need to ensure the reports belong to the intended user and not someone else.\n\n2. Sybil Resistance\nTo verify that users are submitting their own reports, we are integrating the Reclaim Protocol (https://reclaimprotocol.org/) along with a nation-level identity provider:\n\nGovernment ID Verification:\nUsers authenticate their identity through a government ID portal. The verified name is then cross-checked to ensure that uploaded reports belong to the correct user.\nThis mechanism prevents users from uploading reports that do not belong to them, ensuring data integrity and privacy.\n\n3. Document Processing\nOnce we verify both the user’s authenticity and the data source, the next step is processing the report to extract its content securely:\n\nChallenges with zkVMs:\nAfter evaluating options like zkVM (https://github.com/succinctlabs/sp1) and ezkl (https://ezkl.xyz/), we found they faced limitations in handling large models or multiple model scenarios.\n\nSolution – Verifiable API Calls:\nTo overcome these limitations, we use a verifiable API call to OpenAI, which generates a cryptographic proof about the document's content. This ensures the integrity of the processing stage.\n\n4. Verifying Compute and Enabling Private Sharing\nAfter generating proofs for all steps, users can privately share their attested proofs with others. Here's how we ensure privacy in this process:\n\nProof Verification in a TEE:\nUsing a Trusted Execution Environment (TEE) provided by Phala Network (https://github.com/Phala-Network):\n\nProofs are verified to ensure the data processed matches the original data fetched from the portal.\nThe TEE confirms that the uploaded report belongs to the verified user.\nEncrypted Proof Sharing:\nThe TEE encrypts the result and generates an attestation, which can only be decrypted by the recipient using their private key. This ensures:\n\nNo private information, such as the user's name or health records, is exposed.\nData remains secure and inaccessible to unauthorized parties.\nOn-Chain Privacy via Sign Protocol:\nUsing Sign Protocol (https://docs.sign.global/), attestations are recorded on-chain. However:\n\nThe public key of the sharer is not exposed.\nOnly a \"proof request\" event is publicly visible.\n\n5. Privacy-Preserving Experience\nBy combining these elements, we create a system where users can share attestations of medical reports securely and privately. The key highlights include:\n\nVerifiable data authenticity and user identity.\nCryptographic proof of document content.\nPrivate sharing mechanisms that safeguard sensitive information.\nMinimal public on-chain exposure.\nThis end-to-end privacy-focused workflow enables a seamless and secure experience for managing and sharing sensitive medical reports.\n\n\n\n## Requirements\n- [Node](https://nodejs.org/en) \u003e= v18.18\n- [yarn](https://yarnpkg.com/)\n- Docker\n\n## Getting Started\n\nWe are using the Tappd Simulator and Reclaim Protocol for this project\n\n\u003e NOTE: You will need to set the environment variables in the .env file\n\n## Frontend Setup \n\n \nhttps://github.com/predatorx7/medverify.git\n\n## Install dependencies\n\n\n```bash\nyarn\n```\n\n\nFirst, run the TEE Attestation Simulator:\n```bash\ndocker run --rm -p 8090:8090 phalanetwork/tappd-simulator:latest\n```\n\n\n\nBuild the docker image\n```shell\ndocker build -t your-dapp:latest .\n```\n\nAfter the build is successful, run your docker image to connect to the TEE Attestation Simulator\n\u003e NOTE: Your docker image hash will be different than the one listed below.\n```shell\ndocker run --rm -p 3000:3000 your-dapp:latest\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkryptocodes%2Frizz_risk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkryptocodes%2Frizz_risk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkryptocodes%2Frizz_risk/lists"}