http://www.7klian.com

什么是I2P?详解匿名网络协议-I2P


大蒜路由是一种构建路径或地道的方法,I2P网络中的动静将通过该路径或地道流传。当动静分开应用措施或客户端时,它将被加密为收件人的民众密钥。然后利用指定下一跳的指令对加密的动静举办加密。邮件以这种方法遍历每一跳,直到达到收件工钱止。在邮件传输进程中,它与其他邮件绑缚在一起。这意味着在网络中流传的任何动静都大概包括很多绑缚在一起的其他动静。本质上,蒜头路由有两件事:
· 可以达到的接洽人地点-协议、IP和端口。


I2P(称为Invisible Internet Project创立于2003年)是一种低延迟网络层,在全球的漫衍式计较机网络上运行。它主要内置于应用措施中,譬喻电子邮件,Internet中继谈天(IRC)和文件共享。I2P的事情道理是自动将网络中的每个客户机都设为一个节点,通过该节点路由数据和流量。这些节点认真提供与网络中其他计较机之间的加密单向毗连。

网络数据库(NetDB)被实现为DHT,并利用Kademlia协议通过称为泛洪路由器的节点流传。NetDB是使I2P分手化的特征之一。要开始参加网络,路由器将安装NetDB的一部门。得到部门NetDB称为引导,是通过“从头播种”路由器举办的。默认环境下,路由器将通过查询一些自举域名来从头配置种子。当路由器乐成成立与这些域之一的毗连时,将成立传输层安详性(TLS)毗连,路由器通过该毗连下载NetDB的已签名部门副本。一旦路由器可以达到网络中的至少一个其他参加者,则路由器将查询本身没有的NetDB的其他部门。
1. RouterInfo。当动静分开一个路由器时,它需要知道有关另一路由器的一些要害数据(称为RouterInfo)。方针RouterInfo以路由器的身份作为密钥存储在NetDB中。为了请求资源(或RouterInfo),客户端从被认为最靠近密钥的节点请求所需的密钥。假如数据位于节点上,则将其返回给客户端。不然,该节点将利用其对参加节点的当地常识,并返回其认为最靠近键的节点。NetDB中的RouterInfo由构成:
· 选项-一组任意文本选项,譬喻路由器的带宽。
· 建设或宣布时。

I2P通过在客户端设备中安装I2P路由处事来事情。此路由器与其他设备上的I2P路由器建设姑且、加密的单向毗连。毗连被称为单向毗连,因为它们由出站地道和入站地道构成。在任何通信进程中,数据通过出站地道分开客户端设备,并通过其入站地道在其他设备上吸收。这个数据库由一个自界说的Kademlia气势气魄的漫衍式哈希表(DHT)构成,个中包括路由器信息和方针信息。对付每个应用措施或客户机,I2P路由器都保存一个地道对池。与网络数据库举办交互的摸索性地道在路由器的所有用户之间共享。假如池中的地道即将到期或该地道不再可用,则路由器会建设一个新地道并将其添加到池中。重要的是要记着,地道每隔10分钟按期到期,因此需要常常刷新。这是I2P的安详法子之一,,旨在防备恒久存在的地道成为匿名威胁。


2. LeaseSet指定要达到端点的地道进口点。它指定可以直接接洽所需目标地的路由器。它包括以下数据:


Floodfill Routers(称为泛洪路由器)


漫衍式网络数据库

· 路由器的标识-加密密钥、签名密钥和证书。
由于I2P中没有Internet,因此网络由其本身的匿名站点和埋没站点(称为eepsites)构成。这些仅存在于网络中,而且只有利用I2P的人员才气会见。利用尺度Web处事器的处事(譬喻I2PTunnel)可用于建设此类网站。


I2P网络




专用路由器(称为泛洪路由器)认真存储NetDB。可自动或手动参加溢流池。当泛洪路由器的数量下降到某个阈值以下时,即当前网络中所有节点的6%,就会产生自动参加。产生这种环境时,将按照正常运行时间和带宽等条件选择一个节点作为泛洪路由器。应该留意的是,约莫95%的泛洪路由器是自动的。NetDB以DHT名目存储在泛洪路由器中。向泛洪路由器请求一个资源,该资源被认为与该密钥最靠近。为了得到更高的查找乐成率,客户端可以迭代查找密钥。这意味着,假如初始查找请求失败,则从下一个最近的对等方继承查找。

图2展示了端到端动静绑缚:
· 地道到期-地道到期的时间。


郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。