The DID architecture is rooted in public key infrastructure principles, where the private key owner alone has full control over the DID. With ZK DID, several keys are generated with the creation of DIDs, and stored in the DID Document.

Supported Cryptographic Methods

To enable secure digital signatures and key exchanges, we utilize a range of cryptographic techniques. Let's take a closer look:

ECDSA on Secp256k1 curve

Ed25519

X25519

Generation of DID-Keys

Currently, at zCloak, we generate ECDSA and X25519 key pairs from mnemonics that adhere to the BIP39 protocol.

<aside> 💡

BIP39, or Bitcoin Improvement Proposal 39, is a protocol that introduces the concept of mnemonic sentences for the generation of deterministic keys. These mnemonic sentences, composed of easily remembered words, act as a seed from which a unique set of cryptographic keys can be consistently derived.

</aside>

In the process of generating keys from mnemonics, three key pairs will be generated: the identifier (used to generate the DID subject), ecdsa, and x25519:

  1. The identifier (controller) is derived using the /m/44'/60'/0'/0/0 derivation path, which follows the same path used by mainstream EVM wallets like Metamask. It is serialized using the Ethereum address checksum.