我正在尝试使用Python Cryptography库验证签名 这里https://cryptography.io/en/latest/hazmat/primitives/asymmetric/rsa/
这是在客户端 - 服务器TCP聊天应用程序的上下文中,客户端已计算签名,并将其发送到客户端以验证它确实是正确的服务器。签名将传递给函数进行验证。
re.search('{}\s*(\d)'.format(pattern),info.lower()
我注意到0正在返回。根据密码学规范,看起来如果verifier.verify()失败则返回异常,所以我不知道如何测试它。
答案 0 :(得分:0)
verify
会引发异常或返回None
。因此,这段代码
if verifier.verify():
return 1
else:
return 0
即使实际上验证检查已经过去,也将始终返回0。你是正确的,使用verify
的正确方法是将它包装在try块中,并在发生故障时处理InvalidSignature
异常。