【问题标题】:Using RSA in Python 3, need to sign a message (without hashing the message)在 Python 3 中使用 RSA,需要对消息进行签名(不对消息进行哈希处理)
【发布时间】:2017-04-01 01:09:06
【问题描述】:

我正在使用的 Python 3 库:RSA stuvel

在这个库中,sign 函数首先生成一个哈希,然后对其进行签名。有什么方法可以让它在不先​​散列的情况下签署消息?

或者是否有其他可用的库可以做到这一点?

【问题讨论】:

    标签: python rsa digital-signature


    【解决方案1】:

    有一个函数here: Package Crypto :: Package PublicKey :: Module RSA :: Class _RSAobj sign

    但请注意,通常签名生成是通过散列进行的,由指示散列的 DER 编码结构扩展,该散列又被填充并转换为数字以形成实际模幂运算的输入。该方法只执行最后一步;你必须自己做其他的,并注意从安全角度来看它们是必需的

    这都是在PKCS#1 规范中指定的。请注意,这是一个棘手的问题,您可能希望从开源实现中复制它。或者你可以只提供一个哈希值,这是一个非常好的主意 - 首先对消息进行哈希处理。

    还有被撤回的 ISO/IEC 9796,它描述了带有消息恢复的签名,这可能是您所追求的。我没有直接在 Python 中看到实现。即使你找到了库,也要在使用库之前确定你在做什么。

    祝你好运!

    【讨论】:

    • 抱歉回复晚了,我也花了一些时间才找到。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-12
    • 2018-12-03
    • 2016-08-01
    • 1970-01-01
    • 2016-09-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多