Skip to content

paragonie/blakechain

Repository files navigation

Blakechain

Build Status Static Analysis Latest Stable Version Latest Unstable Version License Downloads

Blakechain is a simple hash-chain data structure based on the BLAKE2b hash function.

Includes:

  • The Blakechain implementation, which chains together Node objects
  • A runtime Verifier class that validates the self-consistency of an entire chain (or a subset of an entire chain)

Blakechain is not a blockchain. You probably don't need a blockchain.

Blakechain provides the data structure used in Chronicle.

How Blakechain Works

The hash of each message is a keyed BLAKE2b hash, where the key of this message is the hash of the previous message.

Recursively:

$hash[$n] = sodium_crypto_generichash(
    $data[$n],
    $hash[$n - 1]
);