explaingit

codenotary/immudb

8,964GoAudience · developerComplexity · 4/5Setup · moderate

TLDR

A tamper-proof database that uses cryptographic proofs to guarantee past records can never be silently changed or deleted, making it ideal for audit logs, financial records, and compliance use cases.

Mindmap

mindmap
  root((repo))
    What it does
      Tamper-proof database
      Cryptographic proofs
    Data Models
      Key-value store
      Document model
      SQL relational
    Deployment
      Standalone binary
      Docker image
      Kubernetes Helm
    Use Cases
      Audit logs
      Financial records
      Compliance
      Build records
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Store financial transaction records that regulators can independently verify have never been altered.

USE CASE 2

Build a tamper-evident audit log for software deployments or configuration changes that an attacker cannot retroactively clean up.

USE CASE 3

Replace a traditional database with immudb where you need a full history of every value a record ever held.

USE CASE 4

Run a zero-trust data store where client applications can verify data integrity without trusting the server administrator.

Tech stack

GoSQLDockerKubernetesHelmS3

Getting it running

Difficulty · moderate Time to first run · 30min

Easiest start is via Docker, pull the image and run. Full infra setup with Kubernetes and S3 storage is significantly more involved.

No license information is mentioned in the explanation.

In plain English

immudb is a database designed around one central guarantee: once data is written, it cannot be changed or deleted without detection. Standard databases allow records to be modified at any time, which means an attacker, a rogue administrator, or a software bug could alter historical records and leave no obvious trace. immudb prevents this by building cryptographic proofs into every write, so any tampering with past records would break the verification chain and be immediately visible. The database supports three ways of storing data depending on what fits the application: a key-value store (like a dictionary where you look up values by a name), a document model (for storing and querying structured records in a more flexible way), and a full SQL relational database with tables and queries familiar to anyone who has used a traditional database. The SQL layer is described as compatible with PostgreSQL syntax. The README reports it has been pulled from Docker Hub over 157 million times. Because records are appended rather than overwritten, immudb automatically keeps a complete history of every change. You can query what a record looked like at any point in the past. This makes it well suited for audit logs, financial transaction records, sensor readings, software build records, and any situation where you need to demonstrate that historical data has not been modified, for example for compliance with regulations. The project emphasizes that you do not need to trust the database server itself. The cryptographic verification is designed so that a client application can independently confirm the integrity of the data it reads, without relying on the server being honest. This is described in the README as a zero-trust approach, contrasting with traditional databases where the administrator of the server has unchecked ability to alter records. Performance is described as substantially higher than blockchain-based systems, handling millions of transactions per second. immudb can run as a standalone server, be embedded directly in an application as a library, or be deployed on small devices. It is available as a binary download, a Docker image, or via a Helm chart for running inside Kubernetes clusters. Storage can be kept locally or on Amazon S3.

Copy-paste prompts

Prompt 1
Show me how to connect to immudb using its Go SDK and write a key-value pair, then verify its cryptographic proof on read.
Prompt 2
Write a SQL query against immudb to retrieve the full change history for a specific row in an audit_log table.
Prompt 3
Give me a Docker Compose file that starts immudb as a standalone server and an example Python client that writes and verifies a record.
Prompt 4
How do I deploy immudb on Kubernetes using its Helm chart and configure it to store data on Amazon S3?
Open on GitHub → Explain another repo

← codenotary on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.