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.43.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.43-py3-none-any.whl (88.1 kB view details)

Uploaded Python 3

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

Uploaded CPython 3.8+macOS 11.0+ ARM64

cryptodb-2.5.43-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.43.tar.gz.

File metadata

  • Download URL: cryptodb-2.5.43.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.43.tar.gz
Algorithm Hash digest
SHA256 b119f41539df69a95e323c5942f9b8acc716466da540e2776a5d95a27edb7a19
MD5 271fde68b01a96c51832cb2a4636474a
BLAKE2b-256 73dcc8d8578f55bbe6613a3d379a32e77c9cfdd41f3ebe5ec99ca66d4634e7be

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cryptodb-2.5.43-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.43-py3-none-any.whl
Algorithm Hash digest
SHA256 af29f6146221df2fff7ce78de123666c5e2003ca814288bd7c0497f27c7900ee
MD5 bc479f72cee2258b129fd9650a3a241a
BLAKE2b-256 2eac0b2f5c52e7098af831df08be8ae0b57b8e799752ade6fc614eb73b65b787

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cryptodb-2.5.43-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bbcabcfde718d27fbe5f566866c6d676d6b2e332852aac589a2f593fa54a9aa9
MD5 084c490459f1de55be075b40429bab50
BLAKE2b-256 94b24f8c5007dc2009cb1609ec1e158556e30b05c1f161d5937c490baf234cb0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cryptodb-2.5.43-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bc5bff37a67effc25279b7e0065b5fd6c00b50917f1bffeb920f9d4a3d7c1c18
MD5 a71e06abb472e8a7cee2692ef60929a4
BLAKE2b-256 10691e4daa01222b7f16f6ed3a1e25447efa21c5bec9935702a967a0704688f5

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