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

Uploaded Python 3

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

Uploaded CPython 3.8+macOS 11.0+ ARM64

cryptodb-2.5.34-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.34.tar.gz.

File metadata

  • Download URL: cryptodb-2.5.34.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.34.tar.gz
Algorithm Hash digest
SHA256 f81f37af715833784031ebfce14748d41abd497de3691332b09426912e89a98f
MD5 60692c72b4801251192c7165906a2d4d
BLAKE2b-256 05501a05a8d587d5cfd3341b3794d7de326a6a7e74fcf395ebb421a50046aea2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cryptodb-2.5.34-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.34-py3-none-any.whl
Algorithm Hash digest
SHA256 7cdfc4fab44ea9d07e7e184d0b554a70f2dfc64163e0560f7461b13017b45fc0
MD5 3fe5bc2cae74856599ff93e7db1630cf
BLAKE2b-256 baca9c4134ad75bc5d480cd2f79e838af1cacc1821db5641044d791d1728b7dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cryptodb-2.5.34-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f6bb4dc3b669e57a481c0434dd039721326c8e19855c9903337b576fb795168e
MD5 2fbe437a6670570a57273332eed4f697
BLAKE2b-256 95484140b3e96ae1d83ff3b339772d94f199c5a240e44538e5556870666e06f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cryptodb-2.5.34-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 51cb3feef9810901d93a3b2633cbee7555f58cd064953f214ba225bdcd96df3a
MD5 ecde9d18011ed444207f406b19fd130f
BLAKE2b-256 d4e847f8eca97064d2ec21bab3418352d7684fb2e7629ac0368fbbbc4120cd7d

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