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

Uploaded Python 3

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

Uploaded CPython 3.8+macOS 11.0+ ARM64

cryptodb-2.4.468-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.4.468.tar.gz.

File metadata

  • Download URL: cryptodb-2.4.468.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.4.468.tar.gz
Algorithm Hash digest
SHA256 72af5a03181c59a1f40f023c4839b4fcb4b98707024a26a9e2551684f0663c1b
MD5 f9868419240b50085bd7b7c54105dbe2
BLAKE2b-256 6be0fb08d5b3423dd82a7a9c6a78e462bad081a9f1326819c55aaa5c2c3114d2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cryptodb-2.4.468-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.4.468-py3-none-any.whl
Algorithm Hash digest
SHA256 7432b078b8e5312373b1e36941f08d1f443e82d217d5803e67e81d2541fbeb5a
MD5 b1028c3cb0e82cd39bcb1dde677626f8
BLAKE2b-256 17fba2476db22dd79670a353089cea0032f0092d8cfb766d112f370197252c37

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cryptodb-2.4.468-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0d209668d2fa3d1c8c12cb6f432e7c45696c9ef1fe5c602e9961e8494c4d59c5
MD5 da122e696a4beec7b40c8e5f5f8b0cae
BLAKE2b-256 1785d75d921121a5a0788ff67ad2f813691d40a86f454341ef4a08ddc7463826

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cryptodb-2.4.468-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e5a4e5c6422c2c0ca6491c3cf1301030b05e9a143e583ff4b3f79f6e0f3ed81e
MD5 66a95ff76f364aab4c9b33a71011889b
BLAKE2b-256 a4fe8b7164998ff404ff4efadd172b60e7a4ba0ddafe726ffa54ab66c9e8d44e

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