220 likes | 330 Views
5.6 一次性签名. 一次性签名是至多能签一个消息的签名方案。如果签 多个消息,敌手就可以伪造签名。这里每签一个消息就需要 一个新的公私钥对。一次性签名方案的签名和验证都十分有 效。 签名方案 密钥生成 单向函数. Lamport. 在 Y 中随机选取 为私钥 计算 , 及单向函数为公钥。.
E N D
5.6 一次性签名 一次性签名是至多能签一个消息的签名方案。如果签 多个消息,敌手就可以伪造签名。这里每签一个消息就需要 一个新的公私钥对。一次性签名方案的签名和验证都十分有 效。 签名方案 密钥生成 单向函数 Lamport
在Y中随机选取 为私钥 计算 , 及单向函数为公钥。 签名算法 对明文 的签名是 验证算法 若 包含在公钥中, 则签名合法
例如: 素数 p=7879 ,3 是 的本原元素。定义 ,令 k=3. 私钥 公钥 及
对消息 x= 011 的签名为(4285,2467,735)。对方 验证时计算 .它们都在公钥中,所以签名合法。 对手虽然不能从 求出 ,但是用这个方法对两 个不同的消息签名时,对手就能伪造出另一个消息的签名。 例如上例中对手知道011和101的签名分别是
和 ,显然 和 分别是 111 和 001 的签名。
5.7 失败—停止数字签名 ————Fail-stop Fail-Stop数字签名最早是1990年由B.Pfitzmann & M.Waidner提出的。它允许实体A证明“声称是A的签名”实 际上是伪造的签名。其做法是展示“该签名机制所基于的假 设已受到威胁”。Fail-Stop数字签名的好处在于即使一个非 常强的对手可能伪造一个签名,但可以察觉出是伪造的,
与此同时不再使用该签名机制。所以称为“失败而后停止与此同时不再使用该签名机制。所以称为“失败而后停止 ”更恰当一些。Fail-Stop数字签名应具有如下性质: (1) 如果签名者依据该机制签署一个消息,则验证者 能验证签名并接受它. (2)伪造者没有指数运算能力就不可能构造“能通过验 证算法的一批签名。
(3) 如果伪造者以高概率成功地构造出一个能通过 验证算法的签名,那么真正的签名者可以给出“该签名是伪 造的”的证明。 (4)签名者不能自己构造出一些签名,而后又断言他们 是伪造的。以次保证接收者的安全
Fail-Stop数字签名由签名算法、验证算法、“伪造”证明 算法组成。其中“伪造”证明算法是对伪造签名的一种证明。 1992年E.Heyst & T.P.Pedersen 提出的Fail-Stop数 字签名算法,它是一次性签名,即一个密钥只能用来签名一 次。该数字签名的基本思想是:每个可能的公钥有许多私钥 与之对应,然而签名者只知道其中之一,并用它作签名。
窃听者搜集被签名的信息,试图从中发现签名者的私窃听者搜集被签名的信息,试图从中发现签名者的私 钥。由于私钥很多,所以成功的概率可以忽略不计。 窃听者使用他自己生成的密钥伪造一个信息的签名, 这个签名与签名者的签名不同。
可信中心密钥生成 p, q=(p-1)/2是素数,选择p使 上的离 散对数问题是难解问题。 是q阶元 中心选定并公开, 由可信中心选定对任 何人保密。 由可信
签名者的密钥生成对实体A选择 为密钥,与 其对应的公钥为,其中 ,
签名算法 计算 x 的签名为 验证算法 验证 成立,y 是对信息x的 合法签名 伪造证明 可信中心的密钥 有以下基本事实
l具有相同公钥 的私钥共有 个, 称这些私钥是等价的. 证明:私钥 与 等价当且仅当 且 , l
确定 , 有 q中选择。同样确定 , 也有q中选择。所以每个等价类有 个私钥。 l签名者用私钥k对明文x签名y能通过验证。与k等价 的 私 钥 都可以对该签名进行验证 证明:私钥k= 与 等价,它们对 消息x的签名不同,分别为:
签名验证通过,即 。由私钥的定义知 ,容易证明 = 。用私钥 也可以对该签名进行验证。
l只有q个不同且相互等价的私钥,它们对明文x的签名yl只有q个不同且相互等价的私钥,它们对明文x的签名y 都相同的。 证明:已知公钥 对应的私钥为 ,另一 个私钥 与之等价, 即:
要求 与 对x的签名相同,即: 该方程组系数矩阵的秩为3,有 q 组解 。
l只有q个不同私钥,它们对明文x的签名y都相同的。l只有q个不同私钥,它们对明文x的签名y都相同的。 但用它们对另外的明文的签名则两两互不相同 证明方法同上,从略。 结论:已知对x的签名为y和另一个明文 ,敌手O猜 中对x’的签名y’的概率是 。
证明:假设与签名者私钥等价的 q 个私钥为 ,它们 对x的签名都是y ,并且对x’的签名两两互不相同。所以敌手 猜中私钥对签名的概率为 。 现假设敌手O能够对x’伪造一个合法签名 并 能通过验证。面对这个合法伪造签名,真正的签名者可以从 他自己对明文x’的签名 显然能通过验证。
有 得出 的概率为 ,即 存在的概率 可以计算出 的概率为 真正的签名者以 作为该签名的伪造证明提交给可信中 心。
注意:这里假设签名者只有多项式时间计算能力,不能从注意:这里假设签名者只有多项式时间计算能力,不能从 计算出 。现在签名者能够计算出 ,仲裁人 接受签名者的“伪造证明”。 若签名者用一个私钥 签了两个不同消息 , 签名分别是 。可以求出签名者的私钥 ,同理 。 所以该方案是一次性数字签名方案。