兄弟,你也不想有人知道你访问了xxHub吧?

点击上方“芋道源码”,选择“设为星标

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 10:33 更新文章,每天掉亿点点头发...

源码精品专栏

 

来源:编程技术宇宙

6b8eca28a77b60509fae24a3c5342325.jpeg


问大家一个问题:如果你访问了某个网站,又不想让人知道怎么办?

你可能会说,把浏览器浏览历史记录清除,或者直接用无痕模式。

如果你只能想到这一层,那只能说图young!

这么说吧,理论上来说,你产生的每一次互联网通信,在上面的某个网络流量出口,都有一堆设备在分析。你和互联网上的哪些IP建立过网络通信连接,都能给你清清楚楚地罗列出来。

即便是HTTPS通信,虽然不能看到你的通信内容,但通过SSL/TLS握手阶段的证书信息,也依然能知道你访问了哪些网站。

兄弟,你也不想有人知道你访问了xxHub吧?

那有些人可能想到,我用代理!通过代理转发就不知道我干了啥!

如果你能想到这一层,那还不错。

使用代理,确实在很大程度上,让别人很难知道你访问了什么网站。

但注意,我说的是很大程度上,并不是绝对安全。为什么这么说呢,因为如果你的代理服务商想要知道你访问了哪些网站,那还是轻而易举的。

那还有没有更安全的办法呢?

这就是今天要介绍的主角:tor——洋葱浏览器

4367206d200cd98f1f012c352eb04a38.png

说到这个tor,跟美国军方有深厚背景。早在1995年的时候,美国海军研究实验室的科学家就开始着手开发一套匿名系统,可以避免人们在互联网上的行迹被追踪到。那为什么叫洋葱呢?等一下你就会知道。

开发这套系统的目的是让情报人员的网上活动不被敌对国监控。在美军1997年的一篇论文中指出,“随着军事级别的通信设备日益依靠公共通讯网络,在使用公共通信基础设施时如何避免流量分析变得非常重要。此外,通信的匿名性也非常必要。”

说直白点,就是老美要窃取情报和数据,需要一套稳定的网络通信链路,所以开发了这么个东西出来。

不过现在,tor早已不止美国军方在使用了,已经成为访问暗网的事实上的工具。那对于tor是如何从军方走向民间的,有好几种说法,其中有一种是,研究人员也意识到不能仅仅让美国政府自己使用这个系统,那不等于明摆着向对手表明身份了吗,必须让其他人也能够使用这个系统,才能够实现真正意义的隐藏。因此,tor面向大众推出了普通用户版本,并且允许每个人使用tor的节点,把政府情报人员的流量和普通人的流量混在一起,以达到隐藏的目的。

有美军的背景,听上去挺厉害的,那这玩意儿的工作原理是怎样的,它真的能让你浏览网站不被发现吗?

普通的上网方式,浏览器作为客户端和服务器之间建立TCP连接后,发起HTTP请求,服务器返回响应,完成一次上网浏览。

这个过程中,浏览器到服务器之间的数据包,虽然要经过各级路由不断转发,但在逻辑上,浏览器和服务器是“直通的”,中间路由节点只是负责把你的数据包一级一级交接下去,最终传递给服务器。

而使用代理的上网方式则不同,代理作为中间人,你的浏览器得先和它建立TCP连接,随后向它发起HTTP请求,“索要”对应的Web内容。代理再和真正的服务器建立连接,把你的请求发过去,收到服务器的连接后,再转回给你。

刚才说过,这种方式的问题在于,代理能够知道你访问了什么网站。

既然一个代理不安全,那就多整几个,tor正是这么个思路。

如下图所示,Alice使用tor来访问Bob的网站,tor在访问之前,先在它的网络中,随机选择三个节点,构建起一条网络通路,数据通过三个节点层层转发,最终到达Bob的网站服务器。

c6b39a36abd189828cd218f5b5348f90.png

但如果仅仅是多整几个代理节点,只要顺藤摸瓜,还是能知道你访问了什么网站,tor方案绝就绝在它的层层加密。

在正式通信之前,tor将和选定的三个中继节点进行秘钥协商,之后在通信的时候,Alice电脑上的tor浏览器将把通信数据按照顺序层层加密,中间节点只能解密自己当层的数据。

b4deaaba0e65bc50a1ec1e961fc5c8db.jpeg

数据被一层层加密,然后中间节点一层层解开,就像洋葱一样,洋葱路由的名字也就是这么来的。

那这样做为什么安全呢?

还是以这个图为例,假设我们把中间节点标记为A、B、C。

5ac9c29d8237444c29d44054e9406a85.png

其中节点A只知道Alice访问了网络,但不知道它访问的是什么网站,因为数据被加密了。

对于节点C来说,只知道有人访问了Bob的网站,但它不知道具体是谁在访问,它只知道是tor网络中的B节点发来的数据。

对于节点B来说就更不用说了,既不知道是谁在访问,也不知道访问的是什么网站。

因为A-B-C这条网络通路是随机变化的,所以很难追踪。

最后,需要特别强调的是,网络不是法外之地,我国法律规定,严禁使用非法信道访问国际网络,另外世界上也没有绝对的安全,不要想着有什么软件工具就能干坏事,国家相关部门如果真要溯源你,也是轻而易举,所以大家千万不要想着靠软件工具就能逍遥法外。

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/ruoyi-vue-pro

  • 视频教程:https://doc.iocoder.cn/video/



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

684e5c40bd1154e1f1e9ab78c743914b.png

已在知识星球更新源码解析如下:

0ed0cafe4337703e3864fa4753ab2d39.jpeg

1125f11e789d40b6e23639e3ea8b1a11.jpeg

1bb8d12097270355c91b99c1bedd545c.jpeg

49e7f9e900a452fd2d37117d718489f1.jpeg

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 101 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

文章有帮助的话,在看,转发吧。
谢谢支持哟 (*^__^*)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值