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

Uploaded Python 3

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

Uploaded CPython 3.8+macOS 11.0+ ARM64

cryptodb-2.5.1-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.1.tar.gz.

File metadata

  • Download URL: cryptodb-2.5.1.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.1.tar.gz
Algorithm Hash digest
SHA256 07bc9d199f7606b52e669a8ee4095ace8cf7d33060a76163206460557e5795ca
MD5 a2695bf1c741d636907e71d3175a9ae6
BLAKE2b-256 f74f4770ef6b63bd7f413c66f44e19dbd6a56d941c5a2115fc00026f7ea69852

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cryptodb-2.5.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ac0683d7bca48fbb98c339d3732f7c122a472b6e409b2a1c5663fefc797875bb
MD5 c0e97bd7deb39413a649c0acc3be0688
BLAKE2b-256 3f2981306b7afda46f734d9966253bddb839a62174ebb619cb2ee2c1944a41c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cryptodb-2.5.1-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 145221ca1c03ca1757b9ccb6b0f7d662026e4790de63ebf5051b98ee3df1ae8b
MD5 c129708464e0d25cfbad89185d44f01a
BLAKE2b-256 c999e9590eae614d9c7cab6dbcd7bae951485d8beb4b1247d77242befe3f09ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cryptodb-2.5.1-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b6a75a5a84b41646af27bd3b4128317146fe5a58dbb17e06444ee4154385dda4
MD5 73c3ce0f40d50ea903f43889fcab56ab
BLAKE2b-256 db050803ba7a517f6a54f6e00ffdc7dadb74a8e16ada83dce1d8897d965c9f34

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