mirror of
https://github.com/logos-messaging/go-libp2p-pubsub.git
synced 2026-05-20 07:29:29 +00:00
try to extract the key in order to decide whether to attach the key
This commit is contained in:
parent
bd15183543
commit
4dc796359e
@ -677,7 +677,7 @@ func (p *PubSub) Publish(topic string, data []byte) error {
|
|||||||
}
|
}
|
||||||
if p.signKey != nil {
|
if p.signKey != nil {
|
||||||
m.From = []byte(p.signID)
|
m.From = []byte(p.signID)
|
||||||
err := signMessage(p.signKey, m)
|
err := signMessage(p.signID, p.signKey, m)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
8
sign.go
8
sign.go
@ -68,7 +68,7 @@ func messagePubKey(m *pb.Message) (crypto.PubKey, error) {
|
|||||||
return pubk, nil
|
return pubk, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func signMessage(key crypto.PrivKey, m *pb.Message) error {
|
func signMessage(pid peer.ID, key crypto.PrivKey, m *pb.Message) error {
|
||||||
bytes, err := m.Marshal()
|
bytes, err := m.Marshal()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
@ -82,14 +82,16 @@ func signMessage(key crypto.PrivKey, m *pb.Message) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
m.Signature = sig
|
m.Signature = sig
|
||||||
switch key.Type() {
|
|
||||||
case crypto.RSA:
|
pk, _ := pid.ExtractPublicKey()
|
||||||
|
if pk == nil {
|
||||||
pubk, err := key.GetPublic().Bytes()
|
pubk, err := key.GetPublic().Bytes()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Key = pubk
|
m.Key = pubk
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -34,7 +34,7 @@ func testSignVerify(t *testing.T, privk crypto.PrivKey) {
|
|||||||
From: []byte(id),
|
From: []byte(id),
|
||||||
Seqno: []byte("123"),
|
Seqno: []byte("123"),
|
||||||
}
|
}
|
||||||
signMessage(privk, &m)
|
signMessage(id, privk, &m)
|
||||||
err = verifyMessageSignature(&m)
|
err = verifyMessageSignature(&m)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user