From ebfaf30705c38746ff05377eaf3199ebf497ffdd Mon Sep 17 00:00:00 2001 From: Zaki Manian Date: Fri, 20 Sep 2019 09:37:49 -0700 Subject: [PATCH] Fix for panic in signature verification if a peer sends a nil public key. --- p2p/conn/secret_connection.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/p2p/conn/secret_connection.go b/p2p/conn/secret_connection.go index 7f9061440..84d77b980 100644 --- a/p2p/conn/secret_connection.go +++ b/p2p/conn/secret_connection.go @@ -133,6 +133,11 @@ func MakeSecretConnection(conn io.ReadWriteCloser, locPrivKey crypto.PrivKey) (* } remPubKey, remSignature := authSigMsg.Key, authSigMsg.Sig + + if remPubKey == nil { + return nil, errors.New("Peer sent a nil public key") + } + if !remPubKey.VerifyBytes(challenge[:], remSignature) { return nil, errors.New("Challenge verification failed") }