我正在寻找一个python模块来创建一对具有以下两个属性的匹配标记:
PS:我的理解是an RSA public key can be derived by the holder of the private key,所以这对我们没有帮助。
答案 0 :(得分:1)
您正在寻找使用随机部分的签名功能。它是例如可以使用RSA-PSS和私钥签名。然后令牌将是公钥和签名的组合。 RSA-PSS与标准PKCS#1 v1.5签名不同,它们包含这个随机分量; PKCS#1 v1.5为相同的输入提供相同的签名。
请注意,RSA需要相对较大的密钥和签名(到目前为止,2048位是最小的)如果您需要更小的令牌,您可以查看椭圆曲线,但这很难理解和实现。如果你这样走,你可以使用一个名为NIST的曲线,如P-256。这将使最小签名大小约为EC密钥大小的3到4倍(最多128个字节),而不是RSA的512个字节。
M2Crypto似乎支持PSS签名,但由于我没有编写Python程序,如果你遇到困难,你将不得不提出另一个问题。