首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数字证书是如何证明真实性的?

问数字证书是如何证明真实性的?
EN

Security用户
提问于 2022-10-29 19:40:59
回答 5查看 163关注 0票数 1

想象一下以下场景:

我们有鲍勃想给爱丽丝发个口信。两者都有公钥/私钥。Bob使用他的私钥用它的私钥对摘要(消息的散列)进行签名,并将纯文本消息发送给它。Alice接收到消息,它使用Bobs公钥验证签名,验证消息是否来自Bob,并对纯文本消息进行散列并比较散列/摘要,如果它们相同,则意味着消息没有被更改,消息来自Bob。

但真实性部分并不是完全可靠的,那就是数字证书到位的地方。我看不出数字证书是如何证明信息来自爱丽丝期望的人的。数字证书包含Bob的名称和公钥。但是,如果黑客截获了消息,并且拥有自己的数字证书,并在证书中使用"Bob“和他自己的公钥,该怎么办?

问题是: Alice如何验证消息来自真实的Bob而不是假的?验证到底是如何完成的呢?在现实生活中,我可以用护照来证明自己,那是因为我的脸是独一无二的.但是,有了证书中的信息,这怎么足以保证真实性呢?

EN

回答 5

Security用户

回答已采纳

发布于 2022-10-29 20:29:54

为了避免使事情复杂化,我将使用众所周知的例子来保持这个解释非常简单。因此,有更多的细节涉及,但我将不谈。

您应该记住两个主要概念:

  • 公钥基础设施:这是一个集中式模型,其中证书由受信任的第三方(称为证书颁发机构- CA)签名。此模型经常与TLS证书一起使用,这些证书反过来用于保护通信通道(例如web/http)。
  • 信任网:这是一种分散的模型,每个人都有一个公钥和一个私钥,并使用它们与其他对等方进行通信。每个人的公钥不是由任何可信的第三方签名的,而是使用安全手段在参与者之间交换的。该模型主要用于PGP和GnuPG。让其他人知道您的公钥的一种方法是将它上传到公钥服务器(例如pgp.mit.edu),在那里其他人可以找到它。另一种方式是去关键的交换场所(派对),在那里人们交换公钥(老学校-我不知道这是否还在发生)。

信任网的诀窍是:如果我遇到你,你给我你的公钥,我会用我的私钥签你的钥匙,因为我知道你的公钥是有效的。因此,通过我的签字,我保证它的有效性。第三个认识我并信任我和我的钥匙的人,会发现我已经签了你的钥匙,她也会立即开始信任你的钥匙(临时信任)。信任网就是这样运作的。

现在,考虑到以上所有情况,你的问题的答案如下:

  • 在PKI模型中,证书与服务器的FQDN (为了这一解释而使概念保持简单)耦合在一起。因此,当您获得由您信任的CA签名的证书时,您可以信任该证书,并且证书引用的是单个域。由于不能为两个不同的IP分配相同的FQDN (同样,保持简单),所以可以确定您与预期的对等方进行了通信。
  • 在WoT模型中,公钥与用户的电子邮件地址耦合(通常)。其他可以放在公钥信息中的东西是所有者的全名、手机、住所等。所有这些信息都通过使用完整性保护(密码安全散列)来防止被篡改,所以当你使用公钥时,你知道你把消息发送到特定的电子邮件地址。

无论您是信任该电子邮件地址、公钥上的信息还是您信任没有任何这些信息的公钥,WoT模型都可能无法保护您免受冒充者的攻击。

票数 1
EN

Security用户

发布于 2022-10-29 20:22:51

在非对称密码学中,有一个信任根的概念。

例如,在OpenPGP中,面对面地交换密钥并不少见。然后信任所有的在线通信,因为它可以通过与人面对面见面时获得的密钥进行密码验证。一个可信的联系人甚至可以在一条签名的消息中说“这是我亲自遇到的人的公钥”。从而给出了信任的理由。

在许多IOT更新方案中,信任的根源是制造时放置在设备中的关键。如果更新通过,并且由一个由工厂安装的密钥签名的密钥签名,那么它是可信的。因为它可以追溯到信任的根源。

在更广泛的互联网环境中,这是证书颁发机构。浏览器安装一组CA证书,如果可以将网站的证书链接回CA,则该证书是有效的。CA是可信的,因为不知道他们会做任何越轨的事情。他们只在谷歌提出要求时签署google.com证书,而不是其他人。破坏此信任的CA从浏览器的信任根中删除。

所以,如果一个人想要设计一个不对称的系统,最好的设计就是要有某种信任的基础,所有的东西都可以从这个基础上下降。鲍勃认识爱丽丝的方法是面对面地交换钥匙,或者信任中央当局永远不要签爱丽丝的钥匙,而不是。

票数 0
EN

Security用户

发布于 2022-10-29 20:27:11

这并不能证明真实性。

当我以软件开发者的身份申请数字证书时,我不得不发送护照的图像。当然,人们有可能伪造这样的形象。

控制john.com的实体可以证明这一点。例如,证书颁发机构可以向john.com发送一些东西,或者请求从john.com发送一些东西。你是否信任john.com取决于。如果您信任的企业名为" Jon“,并且访问了john.com,则无法保证您正在与Jon打交道。

票数 0
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/265918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档