explaingit

google/trillian

Analysis updated 2026-07-03

3,727GoAudience · developerComplexity · 4/5Setup · hard

TLDR

Trillian is a Google library for building transparent, tamper-evident logs using Merkle trees, any data written to it can be cryptographically proven unaltered, powering systems like Certificate Transparency. Now in maintenance mode, new projects should use Tessera.

Mindmap

mindmap
  root((Trillian))
    Core Concept
      Merkle tree log
      Tamper evident
      Cryptographic proof
    Architecture
      Personalities layer
      Certificate Transparency
      Audit logs
    Tech Stack
      Go
      MySQL
    Status
      Maintenance mode
      Migrate to Tessera
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

What do people build with it?

USE CASE 1

Build an auditable certificate transparency log where any issued certificate can be publicly verified and proven unaltered.

USE CASE 2

Add a tamper-evident audit trail to a system where recorded events must be provably immutable, such as financial records or access logs.

USE CASE 3

Study the Merkle tree log architecture used by Certificate Transparency to understand how cryptographic verifiability works in production systems.

What is it built with?

GoMySQL

How does it compare?

google/trilliancheggaaa/pblooplj/axonhub
Stars3,7273,7233,733
LanguageGoGoGo
Setup difficultyhardeasymoderate
Complexity4/51/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires a running MySQL database and enough familiarity with Merkle tree concepts to build a useful personality layer on top.

In plain English

Trillian is a Google project that provides a transparent, tamper-evident log for storing data. The core idea is that once something is written to the log, you can prove mathematically that it has not been altered or secretly removed. This property is called transparency, and it is the same idea that underlies Certificate Transparency, a system used to keep track of SSL certificates issued by certificate authorities. The underlying structure is a Merkle tree, a data structure where each entry is linked cryptographically to all previous entries. Anyone who holds a copy of the log can independently verify that nothing has been changed or deleted. Trillian is designed as a foundation that other systems build on top of. Those application-specific layers are called personalities. The most well-known personality is Certificate Transparency, which uses Trillian to create public, auditable records of which certificates have been issued for which websites. The README notes that Trillian is now in maintenance mode. New projects wanting similar functionality are directed to a newer system called Tessera, which uses updated API conventions. Community contributions to Trillian are still accepted, but the maintainers ask that contributors file an issue or discuss changes in the project Slack channel first. Trillian requires a MySQL database and is written in Go.

Copy-paste prompts

Prompt 1
Using Google's Trillian library, explain how a Merkle tree log makes it cryptographically impossible to silently delete or alter a past entry.
Prompt 2
I want to build a Trillian personality, a custom application layer on top of the transparent log. Show me the basic Go code structure and how to connect to a running Trillian server.
Prompt 3
Trillian is in maintenance mode and its maintainers recommend Tessera. What are the key differences between them and when would I still choose Trillian over Tessera?
Prompt 4
Help me set up a local Trillian development environment with MySQL, what are the required steps and commands to get the server running?

Frequently asked questions

What is trillian?

Trillian is a Google library for building transparent, tamper-evident logs using Merkle trees, any data written to it can be cryptographically proven unaltered, powering systems like Certificate Transparency. Now in maintenance mode, new projects should use Tessera.

What language is trillian written in?

Mainly Go. The stack also includes Go, MySQL.

How hard is trillian to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is trillian for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub google on gitmyhub

Verify against the repo before relying on details.