当我们谈到网络的隐蔽性时,我们首先会想到一个例子的是隐身浏览(或者称为私人浏览)。这是浏览器提供的确保本地用户隐私的方式,比如:不记录搜索历史等。我们分布式系统所分析的隐私性是指全局隐私,指对网络提供商,government等的匿名性。

1 TOR 匿名系统

TOR全名:The Onion Routing。其基本思路是:如果我们在全世界范围内有着大量的某种服务器(称为TOR路由器,大约有8000个),如果有人想要连入网络,浏览网页,那么他首先需要连入一个叫做Guard的路由器,之后再连入一个类似的路由器,最后连入一个叫Exit Point的路由器。为了在TOR中路由,至少需要这么三个路由器,并且每个路由器都可以在世界的不用地点。

  1. Guard:Guard路由器知道你是谁,从哪里来的,但它并不知道你的请求要去哪里,你要访问什么网站
  2. 中间部分的路由器:什么都不知道
  3. Exit Point:知道你这个请求要去哪里,但不知道你的信息,不知道你从哪里来的。

我们如何做到这样的呢?

我们假设有n个keys(n>=3)并且将我们的请求用首先用加密,然后用.....直到,建立一个类似洋葱一样的分层结构。通过这种方式,Guard将使用解密,中介路由器用...。Exit Point用解密。所以我们是如何构建这种连接的呢?

首先,我们希望确保尽可能匿名,这样我们就不能将我们的私钥(如果我们有的话)共享给Guard,相反,我们使用一个协议,使Guard和我们能够制作密钥。这种类型的协议确保了以下两件事:

  1. 完成后,只有我们和Guard知道key是什么
  2. 即使有一个恶意的过程试图看到Guard和我们之间的“对话”,这个过程也无法从被盗的数据中获得任何信息

其中一个最为有名的协议称为:Diffie-Hellman

2 Diffie-Hellman协议

有两个人,,他们想要分享一个秘密。他们都分别想到一个数字,a和b。发送给发送给。所以可以计算可以计算,并且很容易看到==。我们可以有把握地假设,从等等开始,来重建一个a是非常困难的,这是由于g操作背后的复杂性。为了在用户和Guard之间选择key,我们不完全使用Diffie-Hellman,而是一个被称为:Authenticated Diffie-Hellman的扩展

3 Authenticated Diffie-Hellman

两个角色:User和Guard,user知道guard的公钥。因此,用户可以使用这个密钥发送一个加密的信息。Guard回复, | “Handshake”。当user得到这个消息时,我们可以计算并且通过hash这个值来检查这个协议是否工作正常。这个版本被叫做authenticated是因为用这种方法user能确定他在于guard通信,而在初始版本里我们容易受到中间人的攻击。

4 为什么用TOR,谁在用TOR?

如果某个用户使用了TOR环境,那么它也将成为其中的一个节点,这就意味着有时他也可能是Guard或者Exit Point。因此,我们可以知道谁在建立一个连接或一个连接要连接到哪里。这意味着我们能通过研究知道,从统计的角度来看,为什么要用TOR,以及谁在用TOR

5性能

互联网中最重要的两个指标是延迟和带宽。很明显,使用这个方法会使用户失去一些性能,尤其是延迟。因为在理论上,如果所有的路由器都有良好的连接,用户就不会失去带宽,但这是不太可能的。

6 Attack

如果某人是Guard和Expoint的持有人,那么他将可以进行大量攻击,最常见的是traffic analysis。你可以检查信息的模式,比如看到一个数据包到达您的一个节点,然后在一秒钟后到达另一个节点。如果这种情况经常发生,你可以了解用户是谁,网站在哪。显然,很难同时拥有系统的起点和终点。

现在有系统能保证Guard和Exit Point在世界上的两个地方(不是100%保证,但是是很大的概率)

另一种攻击是来自website的,网站可以根据浏览器用来发送信息的方式来去匿名化信息。当浏览器连接到一个网站时,它会发送大量的信息,如果你收集了所有这些信息,你就可以定位别人了。这意味着一个网站可以找到两个浏览器以相同的方式交互,他们最有可能来自同一个人。这并不打破匿名,而是叫伪匿名(该网站不知道你,但也知道你是同一个人)

为了避免这种攻击,用户可以使用一个总是发送相同信息的浏览器,它是基于火狐浏览器的TOR浏览器。

7 服务隐私性(暗网dark web)

TOR也可以用来隐藏服务。我们已经看到了一个用户被隐藏起来的例子,但是TOR也可以确保网站的隐私。我们的想法是,我们有两个参与者,一个用户和一个隐藏的服务(hidden service)。如果用户想要连接到一个隐藏的服务,首先他必须使用TOR连接一个名为directory server的TOR路由器。隐藏的服务也同样这样做。结果是,directory server不知道我们在哪里,不知道我们是谁,也不知道我们请求的网站在哪里。目录服务现在选择另一个名为“rendez-vous point”的路由器,然后用户和隐藏服务使用TOR与rendez-vous point(像代理一样)进行通信。directory server每天都在更改。

如何定位一个隐藏服务?

一般情况下,用.onion域,只能通过与directory server通信来解决,用这种域名的被称为暗网(dark web)

8 VPN

VPN最初的创建并不是为了隐私性,而是将本地网络虚拟化为非本地网络。即,即使你没有从网络那里连接,你也能成为该网络的一个节点(举例:VPN能让你在家也能连入校园网)。如果我们想用VPN连入网络,我们与远程服务器建立连接,然后通过该远程服务器,连接网站,隐藏我们的IP地址。这意味着,中间节点能知道我们的一切信息。

Distributed System 基础(四)隐私性(Privacy)相关推荐

  1. 区块链100讲:加密货币隐私性概述

    "在我眼中,隐私就是让我们免于言行受到外界关注的困扰,并创造出一些空间以便我们为了自身的幸福而随心所欲地进行优化,只是为了我们自己的幸福,而不是因为在意别人对我们的看法."-- V ...

  2. 基于RT-Thread操作系统的 基础四轮组智能车设计与实践

    学 校: 同济大学 队伍名称: 智行·龙卷风 参赛队员: 杨怡,韦炳宇,许泽华 带队教师: 张志明,余有灵 §01 引言 1.1全国大学生智能车竞赛介绍 全国大学生智能汽车竞赛是以智能汽车为研究对象的 ...

  3. 计算机应用基础win7作业3答案,电大: 国开计算机应用基础(WIN7)形成性考核册3答案.docx...

    计算机应用基础(WIN7)形成性考核册3答案 作业3 一.Excel选择题 1.在Excel环境中用来存储和处理数据的文件称为(A). A.工作簿 B 工作表 C 图表 D数据库 2.在Excel20 ...

  4. 智能车竞赛技术报告 | 基础四轮组 - 哈尔滨工程大学 - 济海追风5队

    简 介: 本文详细介绍了哈尔滨工程大学"济海追风5队"在第十六届全国大学生智能汽车竞赛基础四轮组中的系统方案.本次比赛采用大赛组委会指定的B3型车模,以英飞凌半导体公司生产的32位 ...

  5. Distributed System: Lamport clock vs Vector clock | 分布式系统:Lamport clock 和 Vector clock 详解

    Ref: Toutube Distributed Systems lecture series https://www.youtube.com/watch?v=x-D8iFU1d-o&list ...

  6. 分布式文件系统-HDFS(   HDFS全称是Hadoop Distributed System)

    分布式文件系统-HDFS HDFS Hadoop的核心就是HDFS与MapReduce.那么HDFS又是基于GFS的设计理念搞出来的. HDFS全称是Hadoop Distributed System ...

  7. 【RabbitMQ】基础四:路由模式(Routing)

    [RabbitMQ]基础四:路由模式(Routing) 1. 路由模式说明 2. 代码示例 2.1 生产者 2.2 消费者1 2.3 消费者2 2.4 测试 3. 总结 1. 路由模式说明 路由模式特 ...

  8. 智慧城市构建的核心问题:数据信息的安全性与隐私性

    人口数量变动将是我们迄今为止将面对的最大挑战之一.依照联合国的预估,到2050年,世界人口将超过95亿,这其中68%的人生活在城市环境中. 这类数亿人口将定居的城镇.城市和大都市必须适应持续增涨的人口 ...

  9. 分布式系统(Distributed System)资料

    分布式系统(Distributed System)资料 <Reconfigurable Distributed Storage for Dynamic Networks> 介绍:这是一篇介 ...

最新文章

  1. Photoshop CC2018软件安装资料及教程
  2. 网站搭建从零开始(四) 服务器的配置
  3. 15、iOS开发之duplicate symbols for architecture x86_64错误
  4. 信息学奥赛一本通(2060:【例1.1】计算机输出)
  5. ThinkPHP RBAC如何自动获取所有模块的函数
  6. 小舅子的工作每周轮换一次
  7. 第一台电子计算机采用哪位科学家,计算机基础知识试题及答案解析
  8. Router OS 全攻略
  9. 【C】VC6调试器的使用
  10. NumPy的详细教程(官网手册翻译)
  11. sql 同义词使用_使用同义词简化SQL Server代码
  12. Xshell超250+配色方案(主题) 及其推荐
  13. hive concat_ws列转行排序问题
  14. Anaconda3 偏好设置
  15. 1 同业拆出,和同业拆入的定义
  16. Maven setting.xml 配置
  17. freemarker中的split字符串分割
  18. ESP32学习一-程序下载(windows工具)
  19. 软件体系结构--装饰器模式
  20. mLife Forum | 微生物组和数据挖掘

热门文章

  1. mysql按年月排序group by升序_排序-在MySQL中按GROUP BY名称之前的日期和时间排序
  2. 游戏开发中2D场景下实现伪3D碰撞检测方法
  3. 通俗理解大数据及其应用价值
  4. P R MAP简单理解,yolo中
  5. KMP - Oulipo - HDU - 1686
  6. SWD模式下无法识别到芯片
  7. 《鸟哥的Linux私房菜 基础学习篇(第三版)》习题与解析(一)
  8. java企业级快速开发平台jeeadminlte(jeesite大胖老师修改版)
  9. Linux网络服务中,bond网络模式
  10. window10能上网如何让局域网内的其他电脑上网