From 663817d3e0d5a3c28cb0c5e378a533e242af5fdf Mon Sep 17 00:00:00 2001 From: Mission Liao Date: Wed, 26 Sep 2018 16:55:15 +0800 Subject: core: move crypto to core/crypto (#140) - Move key-holder to authenticator Make core.keyHolder public as core.Authenticator, it is not required to make this part an interface. - Make private when there is no need to go public. - Fix data race --- core/crypto/utils.go | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 core/crypto/utils.go (limited to 'core/crypto/utils.go') diff --git a/core/crypto/utils.go b/core/crypto/utils.go new file mode 100644 index 0000000..07a8b2b --- /dev/null +++ b/core/crypto/utils.go @@ -0,0 +1,41 @@ +// Copyright 2018 The dexon-consensus-core Authors +// This file is part of the dexon-consensus-core library. +// +// The dexon-consensus-core 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 dexon-consensus-core 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 dexon-consensus-core library. If not, see +// . + +package crypto + +import ( + "encoding/hex" + + "github.com/ethereum/go-ethereum/crypto" + + "github.com/dexon-foundation/dexon-consensus-core/common" +) + +// Keccak256Hash calculates and returns the Keccak256 hash of the input data, +// converting it to an internal Hash data structure. +func Keccak256Hash(data ...[]byte) (h common.Hash) { + return common.Hash(crypto.Keccak256Hash(data...)) +} + +// Clone returns a deep copy of a signature. +func (sig Signature) Clone() Signature { + return append(Signature{}, sig...) +} + +func (sig Signature) String() string { + return hex.EncodeToString([]byte(sig[:])) +} -- cgit v1.2.3