chop first byte when cryptoid.PubKeyS is set from identity.Pubkey() since this is directly copied in the auth message

This commit is contained in:
zelig 2015-01-21 14:45:53 +00:00 committed by Felix Lange
parent 1f2adb05b5
commit 20aade56c3
1 changed files with 11 additions and 1 deletions

View File

@ -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.