๐ Now in Public Beta
Deterministic Safe Prime Oracle
The first auditable, entropy-free safe prime oracle for Web3 infrastructure and encryption
Generate, verify, and look up safe primes with a single API call. No randomness. No trust assumptions.
Same index always produces the same safe prime. No PRNG, no entropy โ pure mathematics.
Every prime is independently verifiable. Open-source engine with Miller-Rabin proofs.
Sub-100ms response times with built-in caching. Pre-compute and look up in O(1).
Designed for smart contracts, zero-knowledge proofs, and decentralised key generation.
Enter a prime index and get a verified safe prime back instantly.
Integrate EchoPrime into your project in seconds.
# Find a safe prime at index 100 curl https://echoprime.xyz/echoprime/api/v1/find/100 # Verify a safe prime curl https://echoprime.xyz/echoprime/api/v1/verify/23 # With API key (higher rate limits) curl -H "x-api-key: ep_your_key_here" \ https://echoprime.xyz/echoprime/api/v1/find/500 # Batch verify curl -X POST https://echoprime.xyz/echoprime/api/v1/batch-verify \ -H "Content-Type: application/json" \ -d '{"candidates": [23, 47, 59, 83, 100]}'
import requests BASE = "https://echoprime.xyz/echoprime/api/v1" # Find a safe prime r = requests.get(f"{BASE}/find/100") prime = r.json()["data"] print(f"Safe prime: {prime['p']}") print(f"Sophie Germain: {prime['q']}") # Verify a candidate r = requests.get(f"{BASE}/verify/23") print(r.json()["data"]["verified"]) # True # Batch verify r = requests.post(f"{BASE}/batch-verify", json={ "candidates": [23, 47, 59, 83, 100] }) for result in r.json()["data"]["results"]: print(f"{result['p']}: {result['verified']}")
const BASE = "https://echoprime.xyz/echoprime/api/v1"; // Find a safe prime const res = await fetch(`${BASE}/find/100`); const { data } = await res.json(); console.log(`Safe prime: ${data.p}`); console.log(`Sophie Germain: ${data.q}`); // Verify a candidate const v = await fetch(`${BASE}/verify/23`); const { data: vData } = await v.json(); console.log(vData.verified); // true // Batch verify const batch = await fetch(`${BASE}/batch-verify`, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ candidates: [23, 47, 59, 83, 100] }) }); const { data: bData } = await batch.json(); bData.results.forEach(r => console.log(`${r.p}: ${r.verified}`) );
Start for free. Scale when you need to.
For exploration & prototyping
For indie developers & startups
For production Web3 infrastructure
For protocols & institutions
EchoPrime is the layer before encryption. It generates the safe primes that cryptographic systems are built on. Safe primes are the fundamental building blocks that encryption needs to function securely:
Encryption is a lock. EchoPrime makes the metal the lock is built from.
Nobody else offers a deterministic, auditable way to get safe primes. Currently people use random number generators and hope for the best. EchoPrime says: "give me index 5000, I'll always give you the same verified safe prime โ and here's the mathematical proof."
That's why ZK-rollup teams and blockchain projects pay for it โ they need provably secure primes, not random ones. Auditability matters when millions of dollars ride on the cryptography.
EchoPrime is built by Mikoshi Ltd โ a UK-based fintech and cryptographic infrastructure company.
Apache 2.0 SDK on GitHub ยท Read the Whitepaper ยท mikoshi.co.uk
๐ Citation
Edwards, D. (2026). EchoPrime: A Verifiable Oracle for Deterministic Safe Prime Generation with On-Chain Audit Trails. Zenodo.
https://doi.org/10.5281/zenodo.18529723