Skip to main content

SDK for Silent Network

In this section we briefly introduce SDKs used to communicate with Silent Network. The most up to date version of the requests schema, API and examples are always documented in the SDKs, please refer there for exact usage.

note

Most of those resources are hidden from public view. Reach out to us, to access them.

Rust

The Rust crates, are used to build the service (WPBE in our architecture diagrams), that will communicate with the Network.

Golang

The Go package, are used to build the service (WPBE in our architecture diagrams), or client that will communicate with the Network.

TypeScript

TypeScript SDK can be used in frontend development, or as a backend client to the WPBE.

SDK Examples

We provide learning resources for the SDK usage, please check:

tip

Go play with our Web3 Wallet Demo written with Typescript SDK here.

Endpoints versions

Silent Network has two versions of the endpoints v1 and v2.

The v1 endpoints follows challenge-response protocol, preventing replay attack, however extending request execution.

The v2 endpoints do not utilize chal-resp mechanism. Hence it's important to ensure request replay attack is not a concern.

Some functionality might be present in v1 but not in v2, see here for the breakdown.

The v1 endpoints are enabled only for Network with User auth architecture.

tip

The SDK's takes care of the request format, and how to connect to the service, so you don't need to worry about it. However when using the SDK, you must decide on the endpoint version you want to use.

How to choose the endpoint version

Use v1 if:

  1. There is no equivalent under v2, like Passkey registration.
  2. In your system architecture between end-user and the Network there is some distrusted party that sees the end-user request in plaintext, and could send it multiple times to the network.

SDK functionality breakdown

FeatureECDSAEDDSAV1?V2?Supported in no-auth architecture?SDKDetails
KeygenTS, Rust, Go
SigngenTS, Rust, Go
Add ephemeral keyN.A.TS, Rust, Go
Revoke ephemeral keyN.A.TS, Rust, Go
Passkey registrationN.A.N.A.N.A.TSRegistration uses chal-resp by definition
Init presignTS, RustNo need for presigns for EdDSA
Finish presignTS, Rust
Key refreshTS, RustWe plan to support refresh in no-auth under v2
Quorum changeGoMore SDK support soon
Key ImportRust
Key ExportRust, GoGo uses bindings to Rust here
Copyright © 2026 Silence Laboratories