{"id":12429999,"url":"https://github.com/pnyda/zkjson","last_synced_at":"2025-10-26T21:30:48.470Z","repository":{"id":174685957,"uuid":"652629424","full_name":"pnyda/zkjson","owner":"pnyda","description":"JSON parser written in Lurk","archived":false,"fork":false,"pushed_at":"2023-06-17T04:54:20.000Z","size":29,"stargazers_count":29,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-07-11T20:38:08.510Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pnyda.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-06-12T13:18:12.000Z","updated_at":"2024-07-11T20:38:08.510Z","dependencies_parsed_at":null,"dependency_job_id":"10ecaf69-3df8-42cb-aebf-e07c686c6e07","html_url":"https://github.com/pnyda/zkjson","commit_stats":null,"previous_names":["chokermaxx/zkjson","pnyda/zkjson"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pnyda%2Fzkjson","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pnyda%2Fzkjson/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pnyda%2Fzkjson/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pnyda%2Fzkjson/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pnyda","download_url":"https://codeload.github.com/pnyda/zkjson/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219862058,"owners_count":16555959,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":"2024-07-11T20:03:57.473Z","updated_at":"2025-10-26T21:30:43.202Z","avatar_url":"https://github.com/pnyda.png","language":null,"funding_links":[],"categories":["Misc"],"sub_categories":[],"readme":"# zkJSON\nJSON parser written in Lurk\n\n# Description\nLet's say there's Alice and Bob. Both know a poseidon hash $H$, a path $P$, and a value $V$. Only Alice knows the preimage of $H$ called $J$. zkJSON lets Alice prove to Bob without disclosing $J$ that\n\n- $J$ is a valid JSON.\n- $J$ contains $V$ under the path $P$.\n\n# Usage\nCopy and paste [put-it-all-together.lurk](put-it-all-together.lurk) into [clutch](https://github.com/lurk-lab/lurk-rs/tree/master/clutch).\n\n# TODO\n## Make it faster\nCurrently the proof verification can be done in seconds. But the proof generation takes hours. Possible optimizations might be:\n\n- Hide only values. Make keys of an object public. This approach makes the proving significantly faster at the expense of privacy, according to [Chainlink Blog](https://blog.chain.link/deco-parsing-the-response/).\n- [simdjson](https://github.com/simdjson/simdjson) style parallelization. This approach needs Lurk to support parallel proving upstream.\n\n## Write tests\nI need a better testing framework for Lurk.\n\n## Better interface\nCLI command to generate a proof / verify a proof would be nice.\n\n## Secure cryptography\nAccording to an audit, the commitment scheme used in Nova, a dependency of Lurk, is not completely hiding. I'm no cryptography expert but I guess we can't use this repository in production until [this issue](https://github.com/microsoft/Nova/issues/174) gets resolved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpnyda%2Fzkjson","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpnyda%2Fzkjson","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpnyda%2Fzkjson/lists"}