{"version":1,"pages":[{"id":"kVqpBn5PdhHlYFKUnSa7","title":"Introduction","pathname":"/zkpass/zkpass-developers-guide","siteSpaceId":"sitesp_KXUso","emoji":"26e9","description":""},{"id":"4paltNjE9QqDMUZ8zjhw","title":"Architecture","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/architecture","siteSpaceId":"sitesp_KXUso","emoji":"1f3db","description":"To address the limitations of the client-based proof system architecture, we introduce zkPass, a service-based proof system operating as a Proof-as-a-Service platform.","breadcrumbs":[{"label":"ZKPASS OVERVIEW"}]},{"id":"5UDEEnydGUEct1GHG9Cz","title":"zkPass Components","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/zkpass-components","siteSpaceId":"sitesp_KXUso","emoji":"1f9f1","description":"The zkPass is a cloud-based infrastructure composed of three main components: zkPass Service, zkPass Modules, and zkPass Client Library.","breadcrumbs":[{"label":"ZKPASS OVERVIEW"}]},{"id":"hPQJ6GSVnVLN8hnznH5I","title":"Trust Models","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/trust-models","siteSpaceId":"sitesp_KXUso","emoji":"1f91d","description":"The zkPass Service employs different trust models with regard to data privacy, data integrity, and computation integrity.","breadcrumbs":[{"label":"ZKPASS OVERVIEW"}]},{"id":"EP5v4mHg2exaBIeRmpHB","title":"Deployment","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/deployment","siteSpaceId":"sitesp_KXUso","emoji":"1f69a","breadcrumbs":[{"label":"ZKPASS OVERVIEW"}]},{"id":"RMWiwdvatSg3Uo1ShYUt","title":"Public-Cloud Hosting","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/deployment/public-cloud-hosting","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"ZKPASS OVERVIEW"},{"label":"Deployment","emoji":"1f69a"}]},{"id":"Qj1O40oLJO6D5GabUrmn","title":"Private-Cloud Hosting","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/deployment/private-cloud-hosting","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"ZKPASS OVERVIEW"},{"label":"Deployment","emoji":"1f69a"}]},{"id":"hMVzCym4CaV6jFxJrvEQ","title":"On-Premise Hosting","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/deployment/on-premise-hosting","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"ZKPASS OVERVIEW"},{"label":"Deployment","emoji":"1f69a"}]},{"id":"amiRlWI57TOg00iJVsZ4","title":"SDK Objectives","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/sdk-objectives","siteSpaceId":"sitesp_KXUso","emoji":"1f3af","breadcrumbs":[{"label":"ZKPASS OVERVIEW"}]},{"id":"wnR1I1O9gIhjnUovVbO4","title":"API Key","pathname":"/zkpass/zkpass-developers-guide/zkpass-overview/api-key","siteSpaceId":"sitesp_KXUso","emoji":"1f511","breadcrumbs":[{"label":"ZKPASS OVERVIEW"}]},{"id":"fd6qOevUDFjbjFXIoqF8","title":"DVR","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr","siteSpaceId":"sitesp_KXUso","emoji":"2601","description":"Data Verification Request","breadcrumbs":[{"label":"zkPass Modules"}]},{"id":"EEgOWfAxWS570UWEdj4H","title":"High Level View","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/high-level-view","siteSpaceId":"sitesp_KXUso","emoji":"1f5fb","description":"Data Verification Request (DVR) is the main zkPass module running within the framework of the zkPass Service.","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"}]},{"id":"CA8u1KiblF1lWV98xkYT","title":"Key Concepts","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/key-concepts","siteSpaceId":"sitesp_KXUso","emoji":"1f5dd","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"}]},{"id":"u7bsr3YZ4jnenwsYq13c","title":"User Data","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/key-concepts/user-data","siteSpaceId":"sitesp_KXUso","description":"User data encapsulates a spectrum of sensitive and confidential attributes, credentials, or claims, ranging from driver's licenses and passports to financial credentials such as bank account details.","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"Key Concepts","emoji":"1f5dd"}]},{"id":"nJxJbNdGSxE4abw0ENUc","title":"DVR Info","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/key-concepts/dvr-info","siteSpaceId":"sitesp_KXUso","description":"Data Verification Request Info","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"Key Concepts","emoji":"1f5dd"}]},{"id":"6SJtHR4UqVuwwMxmFFIv","title":"zkPass Proof","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/key-concepts/zkpass-proof","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"Key Concepts","emoji":"1f5dd"}]},{"id":"2eqMW7lmih6iZPBZYLag","title":"DVR Client Roles","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles","siteSpaceId":"sitesp_KXUso","emoji":"1f465","description":"The DVR follows a robust trust model inspired by the W3C Decentralized Identifiers (DID) standards. Within the zkPass ecosystem, we define three client roles which participate in the zkPass ecosystem.","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"}]},{"id":"M54vifFx21GAalVipnRZ","title":"Data Issuer","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/data-issuer","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"}]},{"id":"8rj1yDj8xENnrMIFEl1I","title":"Providing User Data Retrieval API","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/data-issuer/providing-user-data-retrieval-api","siteSpaceId":"sitesp_KXUso","description":"Providing a REST API to retrieve the user data","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"},{"label":"Data Issuer"}]},{"id":"O9zioMStz5uc3IEAZuo7","title":"Data Holder","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/data-holder","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"}]},{"id":"IglDjTHE4NMTyTgK0C6z","title":"1. Retrieving the DVR","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/data-holder/1.-retrieving-the-dvr","siteSpaceId":"sitesp_KXUso","description":"Retrieving the Data Verification Request (DVR) from the Proof Verifier","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"},{"label":"Data Holder"}]},{"id":"Wl1XS7ZFmspALoNntWXE","title":"2. Retrieving the User Data","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/data-holder/2.-retrieving-the-user-data","siteSpaceId":"sitesp_KXUso","description":"Retrieving the User Data from the Data Issuer","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"},{"label":"Data Holder"}]},{"id":"OXt23ZVpNMI5REuerBX0","title":"3. Generating the Proof","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/data-holder/3.-generating-the-proof","siteSpaceId":"sitesp_KXUso","description":"Calling zkPass Service's generate_zkpass_proof REST API to create the ZkPass Proof","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"},{"label":"Data Holder"}]},{"id":"B84wIeZ4yvH2P1jbPIPu","title":"4. Verifying the Proof","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/data-holder/4.-verifying-the-proof","siteSpaceId":"sitesp_KXUso","description":"Sending the ZkpassProof object to the Proof Verifier for verification","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"},{"label":"Data Holder"}]},{"id":"DfGzvgLsLNp2VUY5DGBP","title":"Proof Verifier","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/proof-verifier","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"}]},{"id":"KFphDByO1ihes6t3AcVb","title":"1. Providing DVR Retrieval API","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/proof-verifier/1.-providing-dvr-retrieval-api","siteSpaceId":"sitesp_KXUso","description":"Providing a REST API to retrieve the DVR","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"},{"label":"Proof Verifier"}]},{"id":"vitmdq0EgAWnyHuuQWpR","title":"2. Providing Proof Verification API","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-client-roles/proof-verifier/2.-providing-proof-verification-api","siteSpaceId":"sitesp_KXUso","description":"Providing a REST API to verify ZkPass Proof","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Client Roles","emoji":"1f465"},{"label":"Proof Verifier"}]},{"id":"CMMAc6k1LjVYbyYa0pz5","title":"DVR Query","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-query","siteSpaceId":"sitesp_KXUso","emoji":"1f50e","description":"DVR defines a JSON query language that allows the Proof Verifier to check if the user has data that meets specific requirements, conditions, or constraints.","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"}]},{"id":"mdMqisSgQ5NNZNTvOeuV","title":"Building Query Engine","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-query/building-query-engine","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Query","emoji":"1f50e"}]},{"id":"jaHoqLLvIh5j20YCeIlz","title":"Processing Query","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-query/processing-query","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Query","emoji":"1f50e"}]},{"id":"O4RJgXBnLLM0zjXnGftu","title":"Query Grammar","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-query/query-grammar","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"},{"label":"DVR Query","emoji":"1f50e"}]},{"id":"rc4iogl1xUTGoeuJHl31","title":"Integration Guidelines","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/integration-guidelines","siteSpaceId":"sitesp_KXUso","emoji":"1f3d7","description":"For successful integration into the DVR application workflow, each client stakeholder is advised to follow the guidelines specified in this documentation.","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"}]},{"id":"58SJ8TpVQEl1abm9DXT0","title":"DVR Workflows","pathname":"/zkpass/zkpass-developers-guide/zkpass-modules/dvr/dvr-workflows","siteSpaceId":"sitesp_KXUso","emoji":"1f30a","breadcrumbs":[{"label":"zkPass Modules"},{"label":"DVR","emoji":"2601"}]},{"id":"4oJEbTl6RaNZWPfeBW73","title":"Typescript","pathname":"/zkpass/zkpass-developers-guide/sdk-tutorial/typescript","siteSpaceId":"sitesp_KXUso","icon":"terminal","breadcrumbs":[{"label":"SDK Tutorial"}]},{"id":"2LV6D078OftyHnkdNkUl","title":"Running Code","pathname":"/zkpass/zkpass-developers-guide/sdk-tutorial/typescript/running-code","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"SDK Tutorial"},{"label":"Typescript","icon":"terminal"}]},{"id":"2IstKK24RpHi9sLGu1BO","title":"Code Snippet","pathname":"/zkpass/zkpass-developers-guide/sdk-tutorial/typescript/code-snippet","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"SDK Tutorial"},{"label":"Typescript","icon":"terminal"}]},{"id":"UMN59Y2duLSfwFQDQSEh","title":"Directory Structure","pathname":"/zkpass/zkpass-developers-guide/sdk-tutorial/typescript/directory-structure","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"SDK Tutorial"},{"label":"Typescript","icon":"terminal"}]},{"id":"36oDvnwwQgQSLlqhPwOi","title":"Rust","pathname":"/zkpass/zkpass-developers-guide/sdk-tutorial/rust","siteSpaceId":"sitesp_KXUso","icon":"crab","breadcrumbs":[{"label":"SDK Tutorial"}]},{"id":"izCSnJUyaoiowiz9Naxt","title":"Running Code","pathname":"/zkpass/zkpass-developers-guide/sdk-tutorial/rust/running-code","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"SDK Tutorial"},{"label":"Rust","icon":"crab"}]},{"id":"fWyUuZKuJ2g6U61M7tJT","title":"Code Snippet","pathname":"/zkpass/zkpass-developers-guide/sdk-tutorial/rust/code-snippet","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"SDK Tutorial"},{"label":"Rust","icon":"crab"}]},{"id":"3sHo7iuJ9h5O7WB0uh8Q","title":"Directory Structure","pathname":"/zkpass/zkpass-developers-guide/sdk-tutorial/rust/directory-structure","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"SDK Tutorial"},{"label":"Rust","icon":"crab"}]},{"id":"UMj1t22USqjFAM1v9yP2","title":"Typescript","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"}]},{"id":"Ft6lXrFSbeaaHcl0hMC5","title":"Classes","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/classes","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"}]},{"id":"doR8h6vhO8XPBBLECPBe","title":"Class: DvrModuleClient","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/classes/class-dvrmoduleclient","siteSpaceId":"sitesp_KXUso","description":"Client class for the DVR module, accessing the DVR module functions","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Classes"}]},{"id":"gwimBT967KLLPAiSiEk1","title":"Functions","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/functions","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"}]},{"id":"obzoYXvp0McTNKgmB4aF","title":"Functions: ffiHelper","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/functions/functions-ffihelper","siteSpaceId":"sitesp_KXUso","description":"Helper functions for transforming data into FFI-compatible format","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Functions"}]},{"id":"H3ybvSIDTw2SyyArql8i","title":"Functions: jwtHelper","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/functions/functions-jwthelper","siteSpaceId":"sitesp_KXUso","description":"Helper functions for extracting and validating JWT payloads","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Functions"}]},{"id":"QTQAFUkKWX5Xa5riRj5G","title":"Functions: publicKeyOptionUtils","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/functions/functions-publickeyoptionutils","siteSpaceId":"sitesp_KXUso","description":"A collection of utility functions for converting between PublicKey and KeysetEndpoint","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Functions"}]},{"id":"EYaMLCsQGR0Pcp7FSsMW","title":"Type Aliases","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/type-aliases","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"}]},{"id":"GinsueSQTlvnVhrcpOxZ","title":"Types","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/type-aliases/types","siteSpaceId":"sitesp_KXUso","description":"A collection of types used in the DVR module","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Type Aliases"}]},{"id":"Bid3ivRUT5R0vK4UQuIi","title":"Types: ffiType","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/type-aliases/types-ffitype","siteSpaceId":"sitesp_KXUso","description":"A collection of FFI types used in the DVR module","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Type Aliases"}]},{"id":"837bYlFx27kmect6vsRg","title":"Interfaces","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/interfaces","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"}]},{"id":"hSUu7TXbGgjx6PnWBEj1","title":"Interfaces","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/interfaces/interfaces","siteSpaceId":"sitesp_KXUso","description":"A collection of interfaces used in the DVR module","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Interfaces"}]},{"id":"4XjZJLakkB7K2fbBspzp","title":"Constants","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/constants","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"}]},{"id":"VPXwEBj43vt5LK6KQb3N","title":"Constants","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/constants/constants","siteSpaceId":"sitesp_KXUso","description":"A collection of constants used in the DVR module","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Constants"}]},{"id":"nCqQL2xkOA9xJglPj2LT","title":"Enums","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/constants/enums","siteSpaceId":"sitesp_KXUso","description":"A collection of enums used in the DVR module","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"},{"label":"Constants"}]},{"id":"ALhVO3c1ziTzvXiGvDLA","title":"Errors","pathname":"/zkpass/zkpass-developers-guide/api-reference/typescript/errors","siteSpaceId":"sitesp_KXUso","description":"A collection of error codes reference for the DVR module","breadcrumbs":[{"label":"API Reference"},{"label":"Typescript"}]},{"id":"BJWIvECzX35NwgFtXJOa","title":"Rust","pathname":"/zkpass/zkpass-developers-guide/api-reference/rust","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"}]},{"id":"baPpqarwSY3E3ojuTa8T","title":"Building Rust doc","pathname":"/zkpass/zkpass-developers-guide/api-reference/rust/building-rust-doc","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"Rust"}]},{"id":"Uvm5p9KbZu4GtSbuv6aI","title":"RESTful API","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"}]},{"id":"joyIrkJllgxsw2GcFLgp","title":"Overview","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api/overview","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"RESTful API"}]},{"id":"emu4isFOyQTdNGXN7HET","title":"Endpoints","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api/endpoints","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"RESTful API"}]},{"id":"NkdfOzg8qXI6tmVA2dc5","title":"Generate Proof","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api/endpoints/generate-proof","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"RESTful API"},{"label":"Endpoints"}]},{"id":"ydctRu1xdODuwQzTqQXe","title":"Utilities","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api/utilities","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"RESTful API"}]},{"id":"MDV97VFXmmvJmZZyPnc1","title":"Generate Key Pair","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api/utilities/generate-key-pair","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"RESTful API"},{"label":"Utilities"}]},{"id":"MMUwzm5Bo7qOrnUKUDbL","title":"Sign User Data and DVR","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api/utilities/sign-user-data-and-dvr","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"RESTful API"},{"label":"Utilities"}]},{"id":"We1PyJgAdG6s9KoxOuvD","title":"Encrypt User Data and DVR","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api/utilities/encrypt-user-data-and-dvr","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"RESTful API"},{"label":"Utilities"}]},{"id":"IsWP6HYQ5y6zfermqgM2","title":"Errors","pathname":"/zkpass/zkpass-developers-guide/api-reference/restful-api/errors","siteSpaceId":"sitesp_KXUso","breadcrumbs":[{"label":"API Reference"},{"label":"RESTful API"}]},{"id":"QK1m7w8OhBPASIMOReTC","title":"DVR","pathname":"/zkpass/zkpass-developers-guide/glossary/dvr","siteSpaceId":"sitesp_KXUso","description":"Data Verification Request","breadcrumbs":[{"label":"Glossary"}]},{"id":"luoSmQFqJRjiYw2pK4ed","title":"User Data","pathname":"/zkpass/zkpass-developers-guide/glossary/user-data","siteSpaceId":"sitesp_KXUso","description":"User Data encapsulates a spectrum of sensitive and confidential attributes, ranging from governmental identification forms like driver's licenses and passports to bank accounts.","breadcrumbs":[{"label":"Glossary"}]},{"id":"vknYKxvoQL51aSYAzbSK","title":"ZKP","pathname":"/zkpass/zkpass-developers-guide/glossary/zkp","siteSpaceId":"sitesp_KXUso","description":"Zero Knowledge Proof","breadcrumbs":[{"label":"Glossary"}]},{"id":"kVqpBn5PdhHlYFKUnSa7","title":"Introduction","pathname":"/zkpass","siteSpaceId":"sitesp_Ew6So","emoji":"1f50a","description":"Welcome to the zkPass User's Guide! If you're a software engineer or a technical professional seeking an introduction to zkPass, this is the ideal starting point for you.","breadcrumbs":[{"label":"Getting Started"}]},{"id":"EuF6qqZtwXhu8c80imtu","title":"What is zkPass?","pathname":"/zkpass/getting-started/introduction/what-is-zkpass","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Introduction","emoji":"1f50a"}]},{"id":"Aj0MK8J7Tv9z6FO7g29w","title":"How does it work?","pathname":"/zkpass/getting-started/introduction/how-does-it-work","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Introduction","emoji":"1f50a"}]},{"id":"u3xcxnjX7RdrTBaRL3vJ","title":"How zkPass can help you","pathname":"/zkpass/getting-started/introduction/how-zkpass-can-help-you","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Introduction","emoji":"1f50a"}]},{"id":"73WIbFIBRXHldTtgk5yC","title":"What's Ahead","pathname":"/zkpass/getting-started/introduction/whats-ahead","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Introduction","emoji":"1f50a"}]},{"id":"GDrkAAK6qw9zW5Vknt3a","title":"Service-based Proof System","pathname":"/zkpass/getting-started/service-based-proof-system","siteSpaceId":"sitesp_Ew6So","emoji":"1f324","description":"","breadcrumbs":[{"label":"Getting Started"}]},{"id":"9nXXsDxRTAdV1bqy3pij","title":"Main Features","pathname":"/zkpass/getting-started/service-based-proof-system/main-features","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Service-based Proof System","emoji":"1f324"}]},{"id":"wuNnjftiengenL5g4zvK","title":"zkPass Workflows","pathname":"/zkpass/getting-started/service-based-proof-system/zkpass-workflows","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Service-based Proof System","emoji":"1f324"}]},{"id":"4xW5o9cCKGlgC6fCQJJN","title":"Deployment Options","pathname":"/zkpass/getting-started/service-based-proof-system/deployment-options","siteSpaceId":"sitesp_Ew6So","description":"","breadcrumbs":[{"label":"Getting Started"},{"label":"Service-based Proof System","emoji":"1f324"}]},{"id":"eTXEAcvUTbqxzIRu5nnf","title":"Public-Cloud Hosting","pathname":"/zkpass/getting-started/service-based-proof-system/deployment-options/public-cloud-hosting","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Service-based Proof System","emoji":"1f324"},{"label":"Deployment Options"}]},{"id":"F56IRLyp5z1chIs0FUjM","title":"Private-Cloud Hosting","pathname":"/zkpass/getting-started/service-based-proof-system/deployment-options/private-cloud-hosting","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Service-based Proof System","emoji":"1f324"},{"label":"Deployment Options"}]},{"id":"IuG0Uu9sriWI4HSWFgTo","title":"On-Premise Hosting","pathname":"/zkpass/getting-started/service-based-proof-system/deployment-options/on-premise-hosting","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Service-based Proof System","emoji":"1f324"},{"label":"Deployment Options"}]},{"id":"CA8u1KiblF1lWV98xkYT","title":"Key Concepts","pathname":"/zkpass/getting-started/key-concepts","siteSpaceId":"sitesp_Ew6So","emoji":"1f5dd","description":"","breadcrumbs":[{"label":"Getting Started"}]},{"id":"u7bsr3YZ4jnenwsYq13c","title":"User Data","pathname":"/zkpass/getting-started/key-concepts/user-data","siteSpaceId":"sitesp_Ew6So","description":"User data encapsulates a spectrum of sensitive and confidential attributes, credentials, or claims, ranging from driver's licenses and passports to financial credentials such as bank account details.","breadcrumbs":[{"label":"Getting Started"},{"label":"Key Concepts","emoji":"1f5dd"}]},{"id":"nJxJbNdGSxE4abw0ENUc","title":"DVR","pathname":"/zkpass/getting-started/key-concepts/dvr","siteSpaceId":"sitesp_Ew6So","description":"Data Verification Request","breadcrumbs":[{"label":"Getting Started"},{"label":"Key Concepts","emoji":"1f5dd"}]},{"id":"6SJtHR4UqVuwwMxmFFIv","title":"zkPass Proof","pathname":"/zkpass/getting-started/key-concepts/zkpass-proof","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Getting Started"},{"label":"Key Concepts","emoji":"1f5dd"}]},{"id":"5UDEEnydGUEct1GHG9Cz","title":"Service Architecture","pathname":"/zkpass/core-components/service-architecture","siteSpaceId":"sitesp_Ew6So","emoji":"1f3db","description":"","breadcrumbs":[{"label":"Core Components"}]},{"id":"hFxGnnheOAnlvqmGcHi7","title":"RESTful API Web Service","pathname":"/zkpass/core-components/service-architecture/restful-api-web-service","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Core Components"},{"label":"Service Architecture","emoji":"1f3db"}]},{"id":"8qSP57fIMkGrH0mmdQ6J","title":"zkPass Query Host","pathname":"/zkpass/core-components/service-architecture/zkpass-query-host","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Core Components"},{"label":"Service Architecture","emoji":"1f3db"}]},{"id":"RRDJlnKSGLJtfJSA7Nsa","title":"zkPass Client Roles","pathname":"/zkpass/core-components/zkpass-client-roles","siteSpaceId":"sitesp_Ew6So","emoji":"1f465","description":"zkPass follows a robust trust model inspired by the W3C Decentralized Identifiers (DID) standards. Within the zkPass ecosystem, we define three client roles which participate in the zkPass ecosystem.","breadcrumbs":[{"label":"Core Components"}]},{"id":"hPQJ6GSVnVLN8hnznH5I","title":"Trust Models","pathname":"/zkpass/core-components/trust-models","siteSpaceId":"sitesp_Ew6So","emoji":"1f91d","description":"","breadcrumbs":[{"label":"Core Components"}]},{"id":"2fEIKHRcKgQN6XDzfP4s","title":"Data Privacy Trust Model","pathname":"/zkpass/core-components/trust-models/data-privacy-trust-model","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Core Components"},{"label":"Trust Models","emoji":"1f91d"}]},{"id":"30PNorbAq8vnIncGSyoh","title":"Data Integrity Trust Model","pathname":"/zkpass/core-components/trust-models/data-integrity-trust-model","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Core Components"},{"label":"Trust Models","emoji":"1f91d"}]},{"id":"sU8iv9W8Zk85sKoF62Sd","title":"Computation Integrity Trust Model","pathname":"/zkpass/core-components/trust-models/computation-integrity-trust-model","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Core Components"},{"label":"Trust Models","emoji":"1f91d"}]},{"id":"CMMAc6k1LjVYbyYa0pz5","title":"zkPass Module","pathname":"/zkpass/core-components/zkpass-module","siteSpaceId":"sitesp_Ew6So","emoji":"1f469-1f4bb","description":"","breadcrumbs":[{"label":"Core Components"}]},{"id":"yEcYXOX1LVhhKVHLsNws","title":"Employee Onboarding","pathname":"/zkpass/use-cases/employee-onboarding","siteSpaceId":"sitesp_Ew6So","emoji":"1fa78","description":"Jane Doe has accepted a job offer from Namaste Tech. As part of the drug screening process required by the company, she has to take a blood test.","breadcrumbs":[{"label":"Use Cases"}]},{"id":"IUCWd66aZWqFdpnKdNug","title":"“Blood Test Result” User Data","pathname":"/zkpass/use-cases/employee-onboarding/blood-test-result-user-data","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Employee Onboarding","emoji":"1fa78"}]},{"id":"UofIrJRtmSdqkLvLAnLY","title":"\"Employee Onboarding\" DVR","pathname":"/zkpass/use-cases/employee-onboarding/employee-onboarding-dvr","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Employee Onboarding","emoji":"1fa78"}]},{"id":"byS7ejgTStTVwKZhtSxb","title":"zkPass Integration","pathname":"/zkpass/use-cases/employee-onboarding/zkpass-integration","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Employee Onboarding","emoji":"1fa78"}]},{"id":"UyMupM2sUUTRHRHIlPKB","title":"Call Sequence","pathname":"/zkpass/use-cases/employee-onboarding/call-sequence","siteSpaceId":"sitesp_Ew6So","description":"The following call sequence diagram provides a visual representation of the programmatic workflow interactions among the zkPass client stakeholders and the zkPass Service.","breadcrumbs":[{"label":"Use Cases"},{"label":"Employee Onboarding","emoji":"1fa78"}]},{"id":"22AD0H3eN4o4pMQSZmXW","title":"Loan Application Screening","pathname":"/zkpass/use-cases/loan-application-screening","siteSpaceId":"sitesp_Ew6So","emoji":"1f698","description":"To illustrate the car loan application screening use case, BCA Bank and BCA Finance act as stand-ins for the roles of Data Issuer and Proof Verifier, respectively.","breadcrumbs":[{"label":"Use Cases"}]},{"id":"VPS2IRMZMt1sCCEg7XQz","title":"“BCA Customer Profile” User Data","pathname":"/zkpass/use-cases/loan-application-screening/bca-customer-profile-user-data","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Loan Application Screening","emoji":"1f698"}]},{"id":"Lpl4ZQAcZaDiiGLd3KpO","title":"Loan Screening DVR","pathname":"/zkpass/use-cases/loan-application-screening/loan-screening-dvr","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Loan Application Screening","emoji":"1f698"}]},{"id":"18RLn94FnDMdu6VydHzy","title":"zkPass Integration","pathname":"/zkpass/use-cases/loan-application-screening/zkpass-integration","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Loan Application Screening","emoji":"1f698"}]},{"id":"XvD3MDbgfI6TX1ccADex","title":"Call Sequence","pathname":"/zkpass/use-cases/loan-application-screening/call-sequence","siteSpaceId":"sitesp_Ew6So","description":"The following call sequence diagram provides a visual representation of the programmatic workflow interactions among the zkPass client stakeholders and the zkPass Service.","breadcrumbs":[{"label":"Use Cases"},{"label":"Loan Application Screening","emoji":"1f698"}]},{"id":"w8g8HJSYV6ZrZd5HSC04","title":"Sharing OIDC Users Securely","pathname":"/zkpass/use-cases/sharing-oidc-users-securely","siteSpaceId":"sitesp_Ew6So","emoji":"1f6d2","breadcrumbs":[{"label":"Use Cases"}]},{"id":"HrJvGOQvaPUJA7BeuPvL","title":"\"ShopSphere ID Token\" User Data","pathname":"/zkpass/use-cases/sharing-oidc-users-securely/shopsphere-id-token-user-data","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Sharing OIDC Users Securely","emoji":"1f6d2"}]},{"id":"lboljU2g3qc3KagrZj2d","title":"\"ShopSphere Account Holder\" DVR","pathname":"/zkpass/use-cases/sharing-oidc-users-securely/shopsphere-account-holder-dvr","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Sharing OIDC Users Securely","emoji":"1f6d2"}]},{"id":"mayQ0822rsfoaZhmSexp","title":"zkPass Integration","pathname":"/zkpass/use-cases/sharing-oidc-users-securely/zkpass-integration","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Sharing OIDC Users Securely","emoji":"1f6d2"}]},{"id":"CcimitZtOwldHCqzjOa1","title":"Integration Guidelines for ShopSphere OIDC Provider","pathname":"/zkpass/use-cases/sharing-oidc-users-securely/zkpass-integration/integration-guidelines-for-shopsphere-oidc-provider","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Sharing OIDC Users Securely","emoji":"1f6d2"},{"label":"zkPass Integration"}]},{"id":"fMP2S80xAw4ZXuj7T6gM","title":"Integration Guidelines for Krisna Service","pathname":"/zkpass/use-cases/sharing-oidc-users-securely/zkpass-integration/integration-guidelines-for-krisna-service","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Sharing OIDC Users Securely","emoji":"1f6d2"},{"label":"zkPass Integration"}]},{"id":"BgCSPO1e4wyWfyxQKBQS","title":"Integration Guideline for ShopSphere App","pathname":"/zkpass/use-cases/sharing-oidc-users-securely/zkpass-integration/integration-guideline-for-shopsphere-app","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Sharing OIDC Users Securely","emoji":"1f6d2"},{"label":"zkPass Integration"}]},{"id":"GrHAShqKsQ3SRekQvrZG","title":"Call Sequence","pathname":"/zkpass/use-cases/sharing-oidc-users-securely/call-sequence","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Use Cases"},{"label":"Sharing OIDC Users Securely","emoji":"1f6d2"}]},{"id":"EuEDvlZLmqNp1XxdWjoi","title":"How is verifiable computing implemented by ZKP?","pathname":"/zkpass/faq/how-is-verifiable-computing-implemented-by-zkp","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"FAQ"}]},{"id":"iSUTC5N0snN87EBJKBcL","title":"Client-based Proof System","pathname":"/zkpass/glossary/client-based-proof-system","siteSpaceId":"sitesp_Ew6So","description":"In a conventional ZKP-based, client-side privacy protection architecture, the generation of the Zero Knowledge Proof (ZKP) takes place on the user's device.","breadcrumbs":[{"label":"Glossary"}]},{"id":"QK1m7w8OhBPASIMOReTC","title":"DVR","pathname":"/zkpass/glossary/dvr","siteSpaceId":"sitesp_Ew6So","description":"Data Verification Request","breadcrumbs":[{"label":"Glossary"}]},{"id":"luoSmQFqJRjiYw2pK4ed","title":"User Data","pathname":"/zkpass/glossary/user-data","siteSpaceId":"sitesp_Ew6So","description":"","breadcrumbs":[{"label":"Glossary"}]},{"id":"97X01wtcVa5HgqlUnbow","title":"zkPass Proof","pathname":"/zkpass/glossary/zkpass-proof","siteSpaceId":"sitesp_Ew6So","breadcrumbs":[{"label":"Glossary"}]}]}