diff options
author | Zahoor Mohamed <zahoor@zahoor.in> | 2017-09-22 04:22:51 +0800 |
---|---|---|
committer | Felix Lange <fjl@users.noreply.github.com> | 2017-09-22 04:22:51 +0800 |
commit | d558a595adf4e89bab5b28ffde1448dc1e5768b0 (patch) | |
tree | 1316cca927bfd4dfc4a8673ae0b9c2f75724f07e /swarm/storage/swarmhasher.go | |
parent | 3c8656347f67dbc8e57c663ec5c26d24c4151678 (diff) | |
download | go-tangerine-d558a595adf4e89bab5b28ffde1448dc1e5768b0.tar go-tangerine-d558a595adf4e89bab5b28ffde1448dc1e5768b0.tar.gz go-tangerine-d558a595adf4e89bab5b28ffde1448dc1e5768b0.tar.bz2 go-tangerine-d558a595adf4e89bab5b28ffde1448dc1e5768b0.tar.lz go-tangerine-d558a595adf4e89bab5b28ffde1448dc1e5768b0.tar.xz go-tangerine-d558a595adf4e89bab5b28ffde1448dc1e5768b0.tar.zst go-tangerine-d558a595adf4e89bab5b28ffde1448dc1e5768b0.zip |
swarm/storage: pyramid chunker re-write (#14382)
Diffstat (limited to 'swarm/storage/swarmhasher.go')
-rw-r--r-- | swarm/storage/swarmhasher.go | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/swarm/storage/swarmhasher.go b/swarm/storage/swarmhasher.go new file mode 100644 index 000000000..38b86373c --- /dev/null +++ b/swarm/storage/swarmhasher.go @@ -0,0 +1,40 @@ +// Copyright 2017 The go-ethereum Authors +// This file is part of the go-ethereum library. +// +// The go-ethereum library is free software: you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// The go-ethereum library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public License +// along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>. + +package storage + +import ( + "hash" +) + +const ( + BMTHash = "BMT" + SHA3Hash = "SHA3" // http://golang.org/pkg/hash/#Hash +) + +type SwarmHash interface { + hash.Hash + ResetWithLength([]byte) +} + +type HashWithLength struct { + hash.Hash +} + +func (self *HashWithLength) ResetWithLength(length []byte) { + self.Reset() + self.Write(length) +} |