aboutsummaryrefslogtreecommitdiffstats
path: root/p2p
diff options
context:
space:
mode:
authorzelig <viktor.tron@gmail.com>2015-01-21 22:45:53 +0800
committerFelix Lange <fjl@twurst.com>2015-02-06 07:00:35 +0800
commit20aade56c3057a221d7fa7152a4969d5f8f980d5 (patch)
treea5a7da479fe737e417507b550657ebbe633305f3 /p2p
parent1f2adb05b57b0b657bfa62b47d46e3a9bf1d8496 (diff)
downloaddexon-20aade56c3057a221d7fa7152a4969d5f8f980d5.tar
dexon-20aade56c3057a221d7fa7152a4969d5f8f980d5.tar.gz
dexon-20aade56c3057a221d7fa7152a4969d5f8f980d5.tar.bz2
dexon-20aade56c3057a221d7fa7152a4969d5f8f980d5.tar.lz
dexon-20aade56c3057a221d7fa7152a4969d5f8f980d5.tar.xz
dexon-20aade56c3057a221d7fa7152a4969d5f8f980d5.tar.zst
dexon-20aade56c3057a221d7fa7152a4969d5f8f980d5.zip
chop first byte when cryptoid.PubKeyS is set from identity.Pubkey() since this is directly copied in the auth message
Diffstat (limited to 'p2p')
-rw-r--r--p2p/crypto.go12
1 files changed, 11 insertions, 1 deletions
diff --git a/p2p/crypto.go b/p2p/crypto.go
index 8551e317c..91d60aa7e 100644
--- a/p2p/crypto.go
+++ b/p2p/crypto.go
@@ -7,10 +7,13 @@ import (
"io"
"github.com/ethereum/go-ethereum/crypto"
+ ethlogger "github.com/ethereum/go-ethereum/logger"
"github.com/obscuren/ecies"
"github.com/obscuren/secp256k1-go"
)
+var clogger = ethlogger.NewLogger("CRYPTOID")
+
var (
sskLen int = 16 // ecies.MaxSharedKeyLength(pubKey) / 2
sigLen int = 65 // elliptic S256
@@ -62,10 +65,17 @@ func newCryptoId(id ClientIdentity) (self *cryptoId, err error) {
// to be created at server init shared between peers and sessions
// for reuse, call wth ReadAt, no reset seek needed
}
- self.pubKeyS = id.Pubkey()
+ self.pubKeyS = id.Pubkey()[1:]
+ clogger.Debugf("crytoid starting for %v", hexkey(self.pubKeyS))
return
}
+type hexkey []byte
+
+func (self hexkey) String() string {
+ return fmt.Sprintf("(%d) %x", len(self), []byte(self))
+}
+
/*
Run(connection, remotePublicKey, sessionToken) is called when the peer connection starts to set up a secure session by performing a crypto handshake.