Concepts
Bringing Verifiable Data Onchain
Dchain facilitates decentralised applications to register the verification requirements and post verification action(s) to perform state change on chain.
Types of Verification Mechanism
The nature of the data is important in order to fully utilise this module as valid part of business processes that would otherwise be conducted offchain.
Publicly & onchain verifiable data
Publicly and onchain verifiable data is defined as data that can be submitted and verified onchain (typically cryptographically verifiable), they are:
- concise / succinct: size of the data can be process in a blocks
- public: does not contain private or confidential data
- onchain verifiable: given chain state and transaction information, there is a verifier on chain to process the data
- data source agnostic: given the above conditions are satisfied, the submission of such data does not necessarily have to come from any defined source (unless defined by the verifier in point 3).
Example: suitable size zk-proofs, snarks, verifiable credentials presentations
Cryptographically verifiable data
Although data can be cryptographically verifiable, not all data can be public or suitable to be submitted onchain.
The verification mechanism perform offchain in this case is auditable. It is therefore feasible to delegated to perform pre-processing of the data (verification) in a sidecar process.e.g. Verification of digital signatures on documents / contracts and extract essentially and pubic data. The onboarded validators can perform such tasks, through extension data provided by validators on Dchain when performing consensus voting on blocks, the extracted onramped data is also BFT.
It is important to note that in this case, validators are not attesting to the data themselves but to the verification processes - which are auditable.
Example: Digital signature for XML documents
Trusted Sender Attestation
If decentralised applications' trust framework does not require data verification onchain (or delegated), then they can assign trusted parties who are effectively the appointed verifiers of the data to submit data onchain.
In this case, the registered verification mechanism is simply a allow list matching program.
Example: data submitted by certain sender address(es) / includes certain verifiable presentation
Utilities for Compliance
Embedded Self Sovereign Identity Verification
The Self Sovereign Identity (SSI) framework is extensively used and embedded on every level of Dchain. In the Verifiable Credential Trust Triangle, Dchain provides verification utilities for onchain verification.
On the deploy decentralised application level: each application registers their verifiable presentation (VP)
requirements for interaction types in Dchain VerificationRouteRegistry, and the chain ensures that a valid VP is
provided by the user as part of the transaction for the given interaction.
For usage of Dchain native functionalities, the chain's governance decides on the VP needed, for example, instead of voting on specific accounts that can deploy smart contracts, the rule based governance allows anyone with valid (VP) to execute such an action.
On consensus building level: each validator for Dchain are uniquely onboarded and incentivised to provide high assurance level, which is important to provide the aforementioned service of running verification sidecars. Onboarding include obtaining a valid verifiable credential issued by one of the trusted issuers determined by the chain's governance. A verifiable presentation derived from the credential are used and validated for each successful block proposal.
This consensus level verification ensures block are proposed only by accountable entities. This creates the foundational trust for all transaction for all applications that happens on Dchain.
Initially, VP that are compatible with European Digital Identity (EUDI) regulations is expected to be adopted, fostering the onboarding and trust for millions of European citizens and businesses.
Reinventing a new identity layer creates new regulatory and onboarding challenges.
Read more in the Verifiable Credential Verification section.
Abstract Account for InfoSec
Account Abstraction is native on Dchain to provide flexibility for decentralised applications to create user interfaces that can provide the same level of consumer protection as current compliant financial applications.
Read more in the abstract account section.