Skip to content

Latest commit

 

History

History

basic_vetkd

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Basic VetKD Demo (Rust)

Overview

Demonstrates the raw VetKD management canister API — the lowest-level building block for verifiably encrypted threshold key derivation on the Internet Computer. The example shows two use cases: symmetric key derivation (AES-GCM-256) and identity-based encryption (IBE), both driven directly via the management canister interface without any SDK abstraction.

For a higher-level approach using the @icp-sdk/vetkeys SDK, see the other examples in the vetkeys/ folder.

Build and deploy from the command line

Prerequisites

  • Install Node.js
  • Install icp-cli: npm install -g @icp-sdk/icp-cli @icp-sdk/ic-wasm

Install

git clone https://github.com/dfinity/examples
cd examples/rust/vetkeys/basic_vetkd

Deploy

icp network start -d
icp deploy

Internet Identity sign-in runs against the Internet Identity canister deployed on the local network (ii: true in icp.yaml). If signing in fails, update the local network launcher with icp network update and restart the network.

Open the frontend URL printed by icp deploy. When done: icp network stop

Updating the Candid interface

icp build backend && candid-extractor target/wasm32-unknown-unknown/release/backend.wasm > backend/backend.did

Security considerations and best practices

See https://docs.internetcomputer.org/guides/security/overview