想象一下以下场景:
我们有鲍勃想给爱丽丝发个口信。两者都有公钥/私钥。Bob使用他的私钥用它的私钥对摘要(消息的散列)进行签名,并将纯文本消息发送给它。Alice接收到消息,它使用Bobs公钥验证签名,验证消息是否来自Bob,并对纯文本消息进行散列并比较散列/摘要,如果它们相同,则意味着消息没有被更改,消息来自Bob。
但真实性部分并不是完全可靠的,那就是数字证书到位的地方。我看不出数字证书是如何证明信息来自爱丽丝期望的人的。数字证书包含Bob的名称和公钥。但是,如果黑客截获了消息,并且拥有自己的数字证书,并在证书中使用"Bob“和他自己的公钥,该怎么办?
问题是: Alice如何验证消息来自真实的Bob而不是假的?验证到底是如何完成的呢?在现实生活中,我可以用护照来证明自己,那是因为我的脸是独一无二的.但是,有了证书中的信息,这怎么足以保证真实性呢?
发布于 2022-10-29 20:29:54
为了避免使事情复杂化,我将使用众所周知的例子来保持这个解释非常简单。因此,有更多的细节涉及,但我将不谈。
您应该记住两个主要概念:
信任网的诀窍是:如果我遇到你,你给我你的公钥,我会用我的私钥签你的钥匙,因为我知道你的公钥是有效的。因此,通过我的签字,我保证它的有效性。第三个认识我并信任我和我的钥匙的人,会发现我已经签了你的钥匙,她也会立即开始信任你的钥匙(临时信任)。信任网就是这样运作的。
现在,考虑到以上所有情况,你的问题的答案如下:
无论您是信任该电子邮件地址、公钥上的信息还是您信任没有任何这些信息的公钥,WoT模型都可能无法保护您免受冒充者的攻击。
发布于 2022-10-29 20:22:51
在非对称密码学中,有一个信任根的概念。
例如,在OpenPGP中,面对面地交换密钥并不少见。然后信任所有的在线通信,因为它可以通过与人面对面见面时获得的密钥进行密码验证。一个可信的联系人甚至可以在一条签名的消息中说“这是我亲自遇到的人的公钥”。从而给出了信任的理由。
在许多IOT更新方案中,信任的根源是制造时放置在设备中的关键。如果更新通过,并且由一个由工厂安装的密钥签名的密钥签名,那么它是可信的。因为它可以追溯到信任的根源。
在更广泛的互联网环境中,这是证书颁发机构。浏览器安装一组CA证书,如果可以将网站的证书链接回CA,则该证书是有效的。CA是可信的,因为不知道他们会做任何越轨的事情。他们只在谷歌提出要求时签署google.com证书,而不是其他人。破坏此信任的CA从浏览器的信任根中删除。
所以,如果一个人想要设计一个不对称的系统,最好的设计就是要有某种信任的基础,所有的东西都可以从这个基础上下降。鲍勃认识爱丽丝的方法是面对面地交换钥匙,或者信任中央当局永远不要签爱丽丝的钥匙,而不是。
发布于 2022-10-29 20:27:11
这并不能证明真实性。
当我以软件开发者的身份申请数字证书时,我不得不发送护照的图像。当然,人们有可能伪造这样的形象。
控制john.com的实体可以证明这一点。例如,证书颁发机构可以向john.com发送一些东西,或者请求从john.com发送一些东西。你是否信任john.com取决于。如果您信任的企业名为" Jon“,并且访问了john.com,则无法保证您正在与Jon打交道。
https://security.stackexchange.com/questions/265918
复制相似问题