柯南小兰通话讲述HTTPS的私密性

618 阅读3分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

废话不多说,故事开始了!

某天,柯南在给小兰发消息说“你好,我是工藤新一”。

 这一切看上去都很正常,但是可怕的事情正在发生......

这里我们假设:

1..黑衣人还不知道柯南是新一,黑衣人要找到谁是新一。

2.黑衣人能够获取到柯南的手机“发出去的全部信息”。

3.黑衣人能够获取到柯南的手机“收到的全部信息”。

在这种情况下,柯南如何安全的把“我是工藤新一”这个消息,安全私密的发送给小兰而不被黑衣人读取到里面的信息呢?(仅考虑私密性,不考虑完整性、身份鉴别、授权、不可否认性)

为了达到这一点,柯南做了如下的方案:

方案一:

柯南对消息进行加密,比如“我是工藤新一”这个明文消息,加密成“54弓tZin1”

这中加密其实就是做了一个文字消息的映射关系, 5-->“我”,4-->“是”,Zin-->"新"这样。柯南把明文(“我是工藤新一”)转化为密文(“54弓tZin1”)发送过去,小兰收到密文在转换为明文进行阅读理解。

方案一的问题:

由“我是工藤新一”转换成“54弓tZin1”,其实就是一种转换,这种转换规则具体是什么个对应关系,小兰此时不知道,黑衣人也不知道。如果对应关系太简单,小兰一眼就能看出来,那么黑衣人也能一眼就看出来。

这里假设小兰和黑衣人都无法一眼就能看出来映射关系。

方案二:

由于方案一不可行,小兰无法解读这个加密后的密文,柯南此时生成了一份只有柯南自己才知道的映射关系对照表

由于没人能读懂柯南加密后的密文,这份对照关系就是唯一的“解密信息”,就叫它“密钥”。现在只有让小兰拿到这份密钥,柯南的消息才能够被小兰解读。

方案二的问题:

黑衣人也不是傻子,小兰拿到对照表就可以解读出密文,那么黑衣人也可以。

方案三:

小兰此时隐约感觉到,这条信息是密文,但是发送这条原始信息的人担心信息泄露进行了加密。于是小兰提供了以下的能力:

  1. 盛放消息的保险箱,发消息的人可以把消息写好后,放入保险箱内发送给小兰

  1. 解开消息保险箱的钥匙 ,由于只有小兰才有这把钥匙,所以消息传递个路径中不用担心消息泄露

 小兰希望把自己的消息保险箱传给原始的消息发送者,然后钥匙只有小兰自己保留。如下图这样

方案三的问题:

黑衣人想“万一柯南拿到小兰的消息加密保险箱那我就获取不到了”,于是黑衣人可以动手脚。

所以这里有一个问题,两者通信如果中间有第三者拦截,是无法做到两者通信的安全的,必须借助另外一个人的帮忙。这个另外一个人,必须是一个德高望重的权威机构。

方案四:

小兰此时把自己的保险箱交给目暮警官,这里是百分之百可靠可信任的,目暮警官拿到的也确实是小兰的消息保险箱。

柯南要给小兰发消息,先找权威机构拿到小兰的加密保险箱。

这个时候消息发送给小兰,中间人也无法获取信息的内容。

这全部过程,最重要的就是第三方权威机构,柯南获取小兰的保险箱,实际上就是我们电脑或者手机里安装好的一些安全证书,我们在使用浏览器访问各种网站的时候,这些电脑手机里自带的安全证书都会起到将消息安全私密的发送出去的作用。

这些安全证书大部门都需要付费,第三方权威机构才会给你提供这样的认证功能。如果获取的保险箱不是权威机构认证的,我们的电脑或手机都会有安全告警提示。

\