Skip to content
This repository has been archived by the owner. It is now read-only.

ipfs/go-hamt-ipld

master
Switch branches/tags
Code
This branch is 8 commits ahead, 51 commits behind filecoin-project:master.
Contribute

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

DEPRECATION NOTICE

This package has moved to the Filecoin org at https://github.com/filecoin-project/go-hamt-ipld. The package here is now just a shim.

go-hamt-ipld

Travis CI

This package is a reference implementation of the IPLD HAMT used in the Filecoin blockchain. It includes some optional flexibility such that it may be used for other purposes outside of Filecoin.

HAMT is a "hash array mapped trie". This implementation extends the standard form by including buckets for the key/value pairs at storage leaves and CHAMP mutation semantics. The CHAMP invariant and mutation rules provide us with the ability to maintain canonical forms given any set of keys and their values, regardless of insertion order and intermediate data insertion and deletion. Therefore, for any given set of keys and their values, a HAMT using the same parameters and CHAMP semantics, the root node should always produce the same content identifier (CID).

See https://godoc.org/github.com/ipfs/go-hamt-ipld for more information and API details.

License

MIT © Whyrusleeping

About

An implementation of a HAMT using ipld

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 84.0%
  • Makefile 16.0%