Implement Pubsub signature validator
This commit is contained in:
parent
683710573e
commit
f3c9972159
|
@ -1,10 +1,17 @@
|
|||
# FIXME: Replace the type of `pubkey` with a custom type `Pubkey`
|
||||
def signature_validator(pubkey: bytes, msg: bytes) -> bool:
|
||||
from libp2p.crypto.keys import PublicKey
|
||||
|
||||
from .pb import rpc_pb2
|
||||
|
||||
|
||||
def signature_validator(pubkey: PublicKey, msg: rpc_pb2.Message) -> bool:
|
||||
"""
|
||||
Verify the message against the given public key.
|
||||
|
||||
:param pubkey: the public key which signs the message.
|
||||
:param msg: the message signed.
|
||||
"""
|
||||
# TODO: Implement the signature validation
|
||||
try:
|
||||
pubkey.verify(msg.SerializeToString(), msg.signature)
|
||||
except Exception:
|
||||
return False
|
||||
return True
|
||||
|
|
Loading…
Reference in New Issue
Block a user