Skip to main content

NEDB — a versioned, self-compressing, time-traveling embedded database (replay-protected, idempotent, relational, searchable) with durable AOF persistence and a server daemon (nedbd).

Project description

crypto-database

The database that can prove it never lied.


crypto-database is a content-addressed, hash-chained, time-traveling datastore. Every version of every record is an immutable, BLAKE2b-verified object in a Merkle DAG — nothing is ever overwritten, and the store can prove its own integrity on demand.

If your data is evidence — ledgers, audit trails, provenance, anything you may one day have to defend — crypto-database makes the history itself tamper-evident and replayable.

Why crypto-database

  • 🔒 Tamper-evident by construction. verify() re-hashes every object against its content address. Flip a single byte on disk and it's caught — silently impossible to forge history.
  • Time-travel is a query. AS OF <seq> returns the exact state at any point. VALID AS OF <time> adds bi-temporal validity — what was true, as of when.
  • 🧬 Causal provenance. caused_by links every record to the facts that produced it; TRACE walks the graph. Audit why, not just what.
  • 🔐 Encrypted at rest (AES-256-GCM), RESP2 wire protocol, SQL / Redis / Mongo adapters, a nedbd-v2 server daemon.

Install

npm install crypto-database   # Node (native addon)
pip install cryptodb          # Python  ← note the PyPI name
cargo add crypto-database     # Rust

Why the split name? crypto-database was already taken on PyPI by an unrelated project, so the Python distribution keeps the original cryptodb name there. npm and crates.io publish as crypto-database. Same engine, same version, same code — only the registry labels differ.

Reach for it when

Audit logs · financial & token ledgers · compliance trails · supply-chain provenance · anything where provable, replayable history is the product, not a nice-to-have.

import { NedbCore } from "crypto-database";
const db = new NedbCore();
db.put("ledger", "acct:alice", JSON.stringify({ balance: 100 }));
db.put("ledger", "acct:alice", JSON.stringify({ balance: 250 }));
db.getAsOf("ledger", "acct:alice", 0n);   // → balance 100, the past, intact
db.verify();                               // → true: nothing was tampered

crypto-database (previously CryptoDB) is a distribution of the NEDB engine, tuned for verifiability. Engine development happens upstream at Eth-Interchained/nedb. © Interchained LLC.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cryptodb-2.5.44.tar.gz (83.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

cryptodb-2.5.44-py3-none-any.whl (88.1 kB view details)

Uploaded Python 3

cryptodb-2.5.44-cp38-abi3-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

cryptodb-2.5.44-cp38-abi3-macosx_10_12_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.8+macOS 10.12+ x86-64

File details

Details for the file cryptodb-2.5.44.tar.gz.

File metadata

  • Download URL: cryptodb-2.5.44.tar.gz
  • Upload date:
  • Size: 83.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for cryptodb-2.5.44.tar.gz
Algorithm Hash digest
SHA256 4e5e17b03a5849ab966a015c0bf0beb01ef002bedf89c9626eae548a1fa55597
MD5 f4482bb60676023d6a14ed86d46dd5f8
BLAKE2b-256 8fff9135bb1448600a4724bdfbcfa998745fba85f7cb539ff21ba5a900d9ee10

See more details on using hashes here.

File details

Details for the file cryptodb-2.5.44-py3-none-any.whl.

File metadata

  • Download URL: cryptodb-2.5.44-py3-none-any.whl
  • Upload date:
  • Size: 88.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for cryptodb-2.5.44-py3-none-any.whl
Algorithm Hash digest
SHA256 ea39df9712c91caadef5a53b64eeba72e66eb945284643f13f9676b1312f1b9b
MD5 fd4edfe76f1552c82892f493d6ef8f39
BLAKE2b-256 09b8896899024f744008f564439d4ae7abfb4137464c97f8b0710e50f27abdb6

See more details on using hashes here.

File details

Details for the file cryptodb-2.5.44-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cryptodb-2.5.44-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 29cf4173d96c557df74495027a850820112a8614898ac7ccba5e480ac4c7d62d
MD5 c0ed0a12b3f239513558648f16132aa4
BLAKE2b-256 fbc16602983353f3e05789e1b9e5edcc68285a359b72d164cd5661453497d091

See more details on using hashes here.

File details

Details for the file cryptodb-2.5.44-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for cryptodb-2.5.44-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3bedb650f253409ecbc4a3d3ce79f73de74083faea47ea7d76e0ad96ac8429c8
MD5 173957143be64122c4a87eb3828f9d7a
BLAKE2b-256 c9e8c81ca0fb58c024cab71975f4a9611388a7011d21fa0d8ae439f37a4e9683

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page