我在研究一个RSA盲签名方案。RSA签名在查姆原稿和维基百科等其他地方都有讨论。
RSA盲签名的描述是直接的,但它们似乎使用原始消息,而不是格式化或填充消息。根据拉宾(1979年年),我们应该至少使用H(m)。
我的问题是,我们是否应该使用一个覆盖RSA盲签名的标准?在RSA盲签名方案中使用时,是否有一种可接受的方式来格式化消息?
我知道这个问题有一些开放性,比如安全目标没有明确规定。但我们正在寻找的东西,提供难以解决的签名伪造,并享有一些互操作性。我想说的是,我们希望伯恩斯坦在签名与Rabin-Williams签名:最新进展中详细描述所有的安全属性,但我不会说那么多。
与此相关,这里有两个问题解释了如何在作者(相对于签名者)提供填充函数。这两种方法似乎都是临时性的。
发布于 2018-07-11 21:42:56
RSA-PSS和RSA-FDH都有随机甲骨文模型的安全证明.RSA是有标准的,但它需要签名者的随机性,因此不适用于盲签名。RSA-FDH的工作眼花缭乱。
RSA-FDH可能会出现在某个标准的某个地方,但诚实地说,“全域散列”对密码家来说有点不言自明。作为一个FDH示例,请参阅https://git.gnunet.org/gnunet.git/tree/src/util/crypto_kdf.c#n113中用于GNU Taler的https://git.gnunet.org/gnunet.git/tree/src/util/crypto_rsa.c中的RSA代码。
对于盲签名本身没有afaik标准,但是您必须对消息和盲因子使用一个完整的域散列,形式上盲因素是一个FD-PRF,但这是相同的代码。
如果您对消息使用太小的散列函数,则对手可以对消息哈希进行因素分析,找到足够多的冲突因素,并伪造消息。更糟的是,即使是基本的签名方案安全证明也需要外佣。所有防范此类“多一伪造”攻击的安全证明都需要FDH和非标准的RSA-KTI“已知目标反转”假设。
如果您不使用FD-PRF作为致盲因素,那么您将泄露足够的信息与每一条信息,一个对手可以去匿名后,远远低于100条消息。
我将强调:如果您有一个2048位RSA密钥n,那么您的哈希域是[0,n],所以您必须生成一个2048位数r,测试它是否小于n,如果不是,则重复。如果你只生成一个2048位或2027位数字并直接使用它,你就没有一个外籍家庭佣工。RSA不能原谅这一点,因为RSA模大约在2的幂之间落在一半,不像椭圆曲线群序,它们非常接近于2的幂。
https://crypto.stackexchange.com/questions/54085
复制相似问题