文章
技术

I2P:抗审查的匿名P2P网络20周年

cypherpunks 密码朋克
cypherpunks  ·  2022年3月10日 A specter is haunting the modern world, the specter of crypto anarchy.

I2P: The Censorship Resistant Anonymous P2P Network is 20 Years Old

https://geti2p.net

I2P 用户手册

I2P是隐形互联网项目(Invisible Internet Project)的简称,最近已满20岁。与Tor和BitTorrent等其他点对点技术不同,I2P在公众中大多没有受到关注。考虑到它的名字,这也许是合理的;然而,它的二十周年年纪念日不应该被忽视。

点对点技术在21世纪初很热,许多开发者建立了自己的网络、协议或应用程序。

Napster被认为是这些早期发展的典型代表,但不久之后,出现了LimeWire、Freenet和BitTorrent等标志性名字。这些技术将成长为改变游戏规则的工具。

在计算机之外,现实世界中也有重大发展。这包括2001年9月11日,当时即使是最热情的编码员也被从他们的CRT显示器上吸引过去。这将改变历史。

911

9月11日袭击事件后,世界处于震惊和不安的状态。恐怖主义成为一种全球威胁,作为回应,在线监控被置于政治议程的重要位置。这也是一个很好的理由--大多数人希望恐怖分子被抓住。

然而,与此同时,数字监控设备的范围和力量也引起了人们的关注。

在这种环境下,一位名叫兰斯·詹姆斯(Lance James)的年轻开发者思考了增加在线 "监控 "对守法公民隐私的影响。作为回应,他提出了建立一个匿名和抗审查的网络层的想法。

这在当时是一个相当独特的概念,但其他几个开发者也在玩类似的想法。例如,美国海军正在研究洋葱路由,后来变成了Tor网络。然而,这些代码当时还没有公开提供。

詹姆斯,也以他的绰号 "0x90 "而闻名,知道这些举措。他已经为个人使用了匿名P2P平台Freenet。这效果很好,但他正在寻找一种方法,用即时通讯功能来补充这一想法。

"我非常喜欢代码和密码,以及大规模的匿名和密码学问题,"詹姆斯在20年后告诉我们。

"当时我是Ian Clarke的Freenet的忠实粉丝,但它有一个问题。我无法发送实时信息。我想弄清楚如何解决这个问题。一天凌晨4点,我突然想到了这个问题,把我叫醒,我开始疯狂地在餐巾纸上画画。"

2001年10月的那个早晨,他为他所谓的 "隐形IRC项目"(Invisible IRC Project, IIP)写下了第一行代码,该项目后来被重新命名为 "隐形互联网项目",简称I2P

隐形互联网项目(The Invisible IRC Project)

2002年2月,詹姆斯在旧金山的CodeCon上首次向更多的人展示了他的匿名通信项目。

"有很多关于匿名IRC的研究和读物,它已经被期待了很久。所以我们开始做一些事情,"他告诉cypherpunk的观众,然后展示了该软件的早期版本。

这次演讲是一个专门的开发者社区的开始,他们继续改进这个项目。虽然詹姆斯从来没有想过要把代码作为一种政治声明或工具,但其他人对匿名网络的目标应该是什么更加直言不讳。

当匿名开发者 "jrandom"于2003年加入时,事情开始发生变化。这位多产的新人对项目的技术和意识形态目标都有明确的看法,并开始将更多的控制权掌握在自己手中。

IIP 变成 I2P

几个月后,jrandom担任了项目负责人的角色,并将其更名为 "隐形互联网项目 "或 "I2P"。这一品牌重塑伴随着一份详细的理念文件,其中规定了未来的道路和目标。

"InvisibleNet已经成立了隐形互联网项目(I2P),通过为他们提供一个不可审查的、匿名的、安全的通信系统,来支持那些试图建立一个更自由的社会的人的努力,"该文件开始说道。

在随后的几年里,I2P发展成一个网络层,允许应用程序使用匿名连接。这可以防止外人追踪流量的来源,可以是聊天、文件或其他任何东西。

有各种各样的应用程序使用或与I2P兼容。其中包括BiglyBT和MuWire等文件共享工具,也包括IRC客户端、路由器、聊天工具,甚至包括比特币和门罗币等加密货币。

回望过去

作为最初的先驱者,今天回过头来看,詹姆斯并不记恨任何事情。他是那种喜欢启动想法并看着它们成长的人,但他觉得没有必要永远参与其中。

另外,一些早期加入项目的人有反政府的观点和强烈的政治议程,这让最初的开发者感到不舒服。虽然这些直言不讳的声音,包括jrandom的声音,最终消失了,但詹姆斯已经下定决心,也离开了。

"所以我离开了,很友好。这是我的时间,因为我对它激发其他项目的影响感到高兴,而且我学到了很多关于密码学的知识。顺便说一下,那些好战的人走了,但是我离开了,因为是时候了,"詹姆斯告诉我们。

今天,密码学和去中心化网络风靡一时,从某种程度上说,James和他的同伙们奠定了早期的基础。尽管I2P有其自身的缺点,但它仍在继续推动新的项目。

20年后,詹姆斯对自己的想法如何启发他人感到自豪。他目前是网络安全情报机构Unit 221b的首席执行官,回顾他早期的参与,有一种成就感。

"我很自豪它能坚持20年。我感到自豪的是,它是在Tor之前的第一个同类产品,它激发了密码朋克们的行动,让他们多写(代码),少说。我为继承了它的开发文化感到高兴,我为我看到它被用来增强对话能力,把对手变成朋友而感到自豪,"詹姆斯补充说。

大规模采用?

为了更全面地了解I2P的发展过程和项目的现状,我们也联系了仍在积极从事I2P工作的开发者。

其中包括'zzz',他告诉我们,他第一次参与是在2005年。随着时间的推移,他最终从一个用户成长为一个bug报告者,并且变得更加活跃。

当'zzz'开始参加HOPE、DEFCON和CCC等会议时,认识了团队中的其他开发者,他的贡献就更大了。今天,他是项目的领导者之一。

虽然I2P在任何时候都有数以万计的活跃用户,但它仍然是一个相对小众的项目。然而,'zzz'认为,大规模采用仍是可能的,但为了实现这一目标,它应该变得更容易使用。

"对隐私和安全工具的需求在20年里有了显著的增长。来自政府和其他行为者的复杂威胁正在迅速增加,人们需要简单易用的解决方案。

"我们的挑战是提供I2P作为解决方案,并传播这个消息。如果采用率没有增长,那是因为我们没能让人们足够容易地找到I2P并使用它。这仍然是我们的重点,"'zzz'说。

从2015年zzz在Hacklab的演讲中的一张幻灯片可以看出,这些"营销"问题并不新鲜。也就是说,现在有一个坚实的用户群,如果有一个病毒式的应用,很容易就会爆发出来。

自由和匿名的互联网

另一个加入I2P社区的人是前LimeWire开发者Zlatin Balevsky,他在早期也参与了Freenet项目。

"Balevsky告诉我们:"在LimeWire工作的这些年,我偶尔会'拜访'一下I2P的开发者,看看他们做得怎么样。

大约十年前,当维基解密、阿拉伯之春和占领华尔街占据新闻头条时,他决定以开发者的身份更积极地参与I2P。

"该项目令我兴奋的是它对自由和匿名互联网的愿景。对我来说,这是我们这个时代真正的'应许之地',我们有责任为子孙后代保留它。"

2019年,Balevsky推出了基于I2P的文件共享客户端MuWire。在他的个人博客上,他详细写了启动该项目的个人动机,批评 "货币化"元素毒害了分享的真正目的。

MuWire运作良好,但也有缺点。I2P的缺点之一是它通过多个节点路由流量,这往往是相当缓慢的。然而,在这方面有一些稳定的进展。

"在2015年,30kb/sec被认为是I2P的正常速度,而现在我们看到的速度超过1MB/sec。而且我们还没有完成,"MuWire的创始人指出。

展望未来,Balevsky认为,随着时间的推移,隐私将变得更加重要。虽然有VPN等商业隐私工具,但他认为开源的非营利解决方案是最好的发展方向。

总而言之,I2P多年来的发展和演变方式是一个相当大的成就。虽然许多开发者来了又走,但它仍在继续发展。我们迫不及待地想知道,再过二十年,它将会是什么样子。

菜单
  1. 孙先树  

    速度上说,I2P < Tor < ZeroNet。

  2. YastPM   时代的无声记忆

    @孙先树 #181909 但是不知道为何zeronet我一直连不上节点,倒是tor在我这用azure连挺快

  3. 孙先树  

    @YastPM #182058 我之前连上过,缓存了节点,后面就一直能连上了。你可以用翻墙软件做前置代理,初始化一下。

  4. pipgo  

    在中国大陆好像用不了吧!速度太慢!而且不能访问youtube什么的!

  5. YastPM   时代的无声记忆

    @pipgo #182075 说起来Tor在大陆都是精准阻断网桥了,你不能指望忒多了 还得用Shadowsocks/V2ray做前置代理

  6. 邹韬奋 外逃贪官CA
    邹韬奋   虽然韬光养晦,亦当奋起而争(拜登永不为奴:h.2047.one)
  7. YastPM   时代的无声记忆

    @消极 #182136 对啊,但是这个封锁GFW应该(不仅)有流量模型/特征了
    比如SSR/SS-Python前些年就相当容易封锁了

  8. YastPM   时代的无声记忆

    @YastPM #182137 查了一下Google Scholar确实已经有分析Tor流量的方法了(基于DPI?)

  9. 孙先树  

    @YastPM #182142 分析Tor流量是基于IP的。目前国内IP地址早已耗尽,大家的流量混在一起,基于流量特征的分析工具很难发挥作用。

  10. cypherpunks 密码朋克
    cypherpunks   A specter is haunting the modern world, the specter of crypto anarchy.

    @孙先树 #181909 虽然三者都有各自的暗网站点,但ZeroNet不能用作代理吧?

    @pipgo #182075 调整i2p默认进出带宽试试。参考I2P用户手册

    检查并调整带宽设置,因为默认设置的 96 KB/s 下行 / 40 KB/s 上行非常缓慢。

    入站和出站分别是你宽带的上行和下行带宽。如果你是百兆宽带,那么入站就填写 12500。如果是 200M 宽带,就填写 25000。一般出站是入站的五分之一。

  11. planetoryd  

    @YastPM #182058 Zeronet原项目基本处于弃坑状态了,现在人应该少了很多吧。

  12. zhangweiye0702 回复 YastPM /p/195313

    发错小伙伴了。

  13. zhangweiye0702 回复 孙先树 /p/195314

    希望出个教程,谢谢!目前i2p怎么配置前置代理?

  14. zhangweiye0702 回复 cypherpunks /p/195315

    可否请您在2047上出个教程如何配置i2p并让i2p走前置ssr,trojan代理?

  15. 大纪元  

    https://program-think.blogspot.com/2012/06/gfw-i2p.html

    “如何翻墙”系列:简单扫盲 I2P 的使用

  16. Anon 回复 pipgo /p/195374
    内容已隐藏
    内容已被作者本人或管理员隐藏。 如有疑问,请点击菜单按钮,查看管理日志以了解原因。
  17. Anon 回复 zhangweiye0702 /p/195375
    内容已隐藏
    内容已被作者本人或管理员隐藏。 如有疑问,请点击菜单按钮,查看管理日志以了解原因。
  18. IE11 回复 pipgo /p/197097

    I2P网速慢,不是因为代理数量比Tor多,而是因为ed2k、P2P。最早的I2P还不采用三重代理,早期的I2P版本采用双重代理,可见代理数量比Tor少;但因为I2P采用ed2k、P2P等更隐蔽的协议,所以更慢。后来有人反馈了双重代理的缺陷(就是不够匿名),I2P开发者才改成默认三重代理。Tor不是完全去中心化的、不是真正的P2P网络,三重代理也比I2P的双重代理更快。

  19. planetoryd 回复 IE11 /p/197596

    你在扯什么,ed2k和i2p有什么关系。