diff options
author | Felix Lange <fjl@users.noreply.github.com> | 2017-02-18 16:24:12 +0800 |
---|---|---|
committer | Jeffrey Wilcke <jeffrey@ethereum.org> | 2017-02-18 16:24:12 +0800 |
commit | 9b0af513867fad4aeb3516e4711dd0ea4f5bc90c (patch) | |
tree | b37d808d57873c6aec550431534e26602dfd0475 /p2p/discv5 | |
parent | bf21549faa7de6e2b920855468b14856c6f503c4 (diff) | |
download | dexon-9b0af513867fad4aeb3516e4711dd0ea4f5bc90c.tar dexon-9b0af513867fad4aeb3516e4711dd0ea4f5bc90c.tar.gz dexon-9b0af513867fad4aeb3516e4711dd0ea4f5bc90c.tar.bz2 dexon-9b0af513867fad4aeb3516e4711dd0ea4f5bc90c.tar.lz dexon-9b0af513867fad4aeb3516e4711dd0ea4f5bc90c.tar.xz dexon-9b0af513867fad4aeb3516e4711dd0ea4f5bc90c.tar.zst dexon-9b0af513867fad4aeb3516e4711dd0ea4f5bc90c.zip |
crypto: add btcec fallback for sign/recover without cgo (#3680)
* vendor: add github.com/btcsuite/btcd/btcec
* crypto: add btcec fallback for sign/recover without cgo
This commit adds a non-cgo fallback implementation of secp256k1
operations.
* crypto, core/vm: remove wrappers for sha256, ripemd160
Diffstat (limited to 'p2p/discv5')
-rw-r--r-- | p2p/discv5/crypto.go | 31 | ||||
-rw-r--r-- | p2p/discv5/node.go | 2 |
2 files changed, 1 insertions, 32 deletions
diff --git a/p2p/discv5/crypto.go b/p2p/discv5/crypto.go deleted file mode 100644 index 48b2a8a72..000000000 --- a/p2p/discv5/crypto.go +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2016 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 discv5 - -import ( - //"github.com/btcsuite/btcd/btcec" - "github.com/ethereum/go-ethereum/crypto/secp256k1" -) - -func S256() *secp256k1.BitCurve { - return secp256k1.S256() -} - -// This version should be used for NaCl compilation -/*func S256() *btcec.KoblitzCurve { - return S256() -}*/ diff --git a/p2p/discv5/node.go b/p2p/discv5/node.go index cfc833ff5..c99b4da14 100644 --- a/p2p/discv5/node.go +++ b/p2p/discv5/node.go @@ -297,7 +297,7 @@ func PubkeyID(pub *ecdsa.PublicKey) NodeID { // Pubkey returns the public key represented by the node ID. // It returns an error if the ID is not a point on the curve. func (id NodeID) Pubkey() (*ecdsa.PublicKey, error) { - p := &ecdsa.PublicKey{Curve: S256(), X: new(big.Int), Y: new(big.Int)} + p := &ecdsa.PublicKey{Curve: crypto.S256(), X: new(big.Int), Y: new(big.Int)} half := len(id) / 2 p.X.SetBytes(id[:half]) p.Y.SetBytes(id[half:]) |