Skip to main content

Sovereign-ZK

A lightweight, privacy-preserving framework for cross-border GPU compute using Zero-Knowledge Machine Learning (ZKML). Developed by Chidiebere V. Christopher

Sovereign-ZK allows data scientists (e.g., in Nigeria) to securely offload heavy deep learning workloads to remote GPUs (e.g., in Kenya or London) without ever exposing the plain text data to the remote host. It guarantees NDPA compliance via Trusted Execution Environments (TEEs) and cryptographic verification of the compute results using EZKL.

Installation

pip install sovereign-zk

Quick Start

1. Start the Remote GPU Node (London/Kenya)

On the machine with the idle GPU, run the FastAPI/Flask node to listen for encrypted payloads:

from sovereign_zk.node import run_node

if __name__ == "__main__":
    # Starts the listener on port 8000
    run_node(port=8000)

2. Submit Data from the Local Client (Nigeria)

On your local machine, use the client SDK to encrypt your sensitive data, send it to the node, and cryptographically verify the returned Zero-Knowledge proof.

from sovereign_zk.client import SovereignClient

# Initialize the client pointing to the remote GPU
client = SovereignClient(node_url="http://<REMOTE_NODE_IP>:8000")

# Your sensitive data
data = {"input_data": [[0.8, 0.1, 0.9, 0.2, 0.5]]}

# Encrypt the data before it leaves your machine
client.encrypt_data(data, "encrypted.bin")

# Submit the encrypted payload and the ZK circuit to the remote node
success = client.submit_compute_job(
    encrypted_data_path="encrypted.bin", 
    model_path="network.compiled", 
    pk_path="pk.key", 
    srs_path="kzg.srs", 
    output_proof_path="proof.json"
)

# Cryptographically verify the remote compute result locally
if success:
    client.verify_proof("proof.json", "settings.json", "vk.key", "kzg.srs")

Architecture

This SDK forms Phase 1 of the Sovereign-ZK deployment architecture, abstracting the complex file handling, encryption, and EZKL bindings into a simple requests-based HTTP workflow.

👤 Author

Chidiebere V. Christopher

Metadata

Release files for sovereign-zk 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sovereign-zk 0.2.0
File Size Uploaded
sovereign_zk-0.2.0.tar.gz 5.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sovereign-zk 0.2.0
File Interpreter ABI Platform
sovereign_zk-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 11.0 kB

Release files / sovereign_zk-0.2.0.tar.gz

Download URL sovereign_zk-0.2.0.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
6b11e3a289867f8ffe39b7164064aa3cd2ac310cb165d4933a5a46cf12249cc0
BLAKE2b-256 checksum
How to use checksums
20ba4f177d374c5aa3d747f0c194bb97853d5d679b41daf2b381bc9223489356
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / sovereign_zk-0.2.0-py3-none-any.whl

Download URL sovereign_zk-0.2.0-py3-none-any.whl
Size 5.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d9b14ea45d369f6b25c414176cacdd457ddc9df0979af252a01e9c71b566dab2
BLAKE2b-256 checksum
How to use checksums
936c2aff3d9bda59933e752ed8e84e864689ae8c1fb4bfa9c2443c28e6bba060
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page