mirror of
https://github.com/varun-r-mallya/py-libp2p.git
synced 2025-12-31 20:36:24 +00:00
Implement Pubsub signature validator
This commit is contained in:
@ -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
|
||||
|
||||
Reference in New Issue
Block a user