Skip to content
Block height specification no chain yet
Active validators 0 / 75 floor 7 · standby 0
Security tier not yet established
TPS · current specification
ADM in circulation 0 specification only
Network status Open view validators, blocks, mempool
Specification phase. Values shown are placeholders for layout. No live chain.
§ Docs · T.03

Issue a view key.

A scoped, revocable decryption permission. The holder can read the matching transactions; they cannot spend, sign, or derive the spending key.

§ 01 / Scope dimensions

Four dimensions.

DimensionExampleWhat it permits
Date range2026-01-01 → 2026-12-31Decrypt all txs in window.
Amount band≥ 10 000 ADMDecrypt only large transfers.
Counterpartyadm1examplecounterpartyDecrypt txs touching this address.
Contract / object0xobj…Decrypt state transitions on a specific module/object.

Dimensions compose. A view key with date range + amount band reveals only transactions matching both.

§ 02 / In code

Rust SDK.

use adamant_sdk::Wallet;
use adamant_sdk::view::{ScopeBuilder, ViewKey};
use time::Date;

let wallet = Wallet::from_seed_phrase(&std::env::var("ADM_SEED")?)?;

let scope = ScopeBuilder::new()
    .date_range(Date::from_iso("2026-01-01")?, Date::from_iso("2026-12-31")?)
    .amount_min(adamant_sdk::Amount::adm(10_000))
    .build();

let vk: ViewKey = wallet.issue_view_key(scope)?;

// vk.encode_bech32m() -> "vkey1q..."
// Hand the string to the counterparty over any channel.
println!("{}", vk.encode_bech32m());
§ 03 / Revoke

Single on-chain transaction.

wallet.revoke_view_key(&vk.fingerprint())?.submit().await?;

Revocation is recorded by derived_pubkey on-chain. The chain refuses subsequent disclosures published under that key. Already-decrypted history on the holder’s machine cannot be unlearned — design your scopes accordingly.