如果攻击者可以假装是Bob,我们为什么称它为数字签名?
Bob对其消息进行散列,使用Alice的公钥加密哈希,并将其与原始消息一起发送给Alice。爱丽丝收到了那条消息和签名。她用私钥解密签名,并将结果与消息的哈希进行比较。
但是,如果黑客能做到Bob所做的,为什么我们称它为签名呢?
黑客还可以散列消息,用Alice的公钥加密哈希并将其发送给Alice。对不起,伙计们,数字签名对我来说就像是不对称加密,黑客也可以假装是Bob。
发布于 2020-12-28 18:03:47
bob对其消息进行散列,并使用alice公钥对其进行加密。
不,鲍勃会用他自己的私钥签的。对于某些签名方法,这大致类似于“用私钥加密”,但对于其他签名方法,则并非如此;因此,在‘签名’和‘加密’之间保持强烈的区别是更安全的
爱丽丝收到原始消息和签名,她用私钥解密签名,并将原始消息与签名进行比较。
不,爱丽丝会用鲍勃的公钥验证签名。Alice如何获得Bob公钥的验证副本是这个过程的一个重要部分,但是这通常被认为是通过使用签名方法的任何机制来解决的。
如果攻击者可以假装是鲍勃,为什么我们称它为数字签名?
如果攻击者没有Bob的私钥(因此他无法生成将用Bob的公钥验证的密码),并且他无法欺骗Alice使用攻击的公钥,那么攻击者就不能假装是Bob。
发布于 2020-12-29 09:44:35
很抱歉被否决了,社区中的一些用户有时会中毒。无论如何,数字签名(可解密的,如RSA或DSA变体中的数字签名)只能使用私钥创建,并使用经过几十年审查的非常聪明的数学方法使用公钥进行验证。希望这能有所帮助。
发布于 2020-12-29 19:34:16
数字签名与非对称加密相反。
在非对称加密中,如果Bob想向Alice发送消息,Bob将获取Alice的公钥,使用它加密他的数据,然后将其发送给Alice。当然,只有爱丽丝才能解密,因为她是她私钥的唯一拥有者。
在数字签名中,Bob接受一条约定的消息,用他的私钥对其进行加密,并将其发送给Alice。对于Alice来说,很容易用Bob的公钥对其进行解密,并确定只有Bob私钥的所有者才能首先发送消息。如果我们(像前面一样)假设Bob是他的私钥的唯一所有者,那么我们可以说Bob已经“签名”了消息。
https://crypto.stackexchange.com/questions/87192
复制相似问题