| Crates.io | zks_proto |
| lib.rs | zks_proto |
| version | 0.1.0 |
| created_at | 2026-01-06 19:05:03.003058+00 |
| updated_at | 2026-01-06 19:05:03.003058+00 |
| description | Protocol layer for ZK Protocol - handshake and URL parsing |
| homepage | https://zks-protocol.org |
| repository | https://github.com/zks-protocol/zks |
| max_upload_size | |
| id | 2026545 |
| size | 123,629 |
Protocol layer for the ZKS Protocol - handshake and URL parsing.
This crate implements the ZKS Protocol message layer:
zk:// and zks:// protocol handlersInitiator Responder
│ │
│ 1. HandshakeInit │
│ ────────────────────────────────► │
│ [ephemeral_pk, nonce] │
│ │
│ 2. HandshakeResponse │
│ ◄──────────────────────────────── │
│ [ephemeral_pk, ciphertext, sig] │
│ │
│ 3. HandshakeFinish │
│ ────────────────────────────────► │
│ [confirmation_hash] │
│ │
use zks_proto::url::ZksUrl;
let url = ZksUrl::parse("zks://example.com:8443/room123")?;
println!("Protocol: {}", url.protocol());
println!("Host: {}", url.host());
AGPL-3.0-only