快速回顾

出席: beefbroth, CCD, ChZEROHag, co, dcat, dm, godmode0, jrand0m, mihi, mihi_backup, mrflibble, Myself248, myself248, nop, pitu, Ryan_Singer, shardy, thecrypto, UserX, yodel

会议记录

[22:56] <jrand0m> 好好 [22:56] <jrand0m> 议程 [22:56] <jrand0m> 0.0) 欢迎 [22:56] <jrand0m> 1.0) 开发状态 [22:56] <jrand0m> 1.1) router [22:56] *** Myself248 (~ident@anon.iip) 已加入频道 #iip-dev [22:56] <jrand0m> 1.2) DH 预计算 [22:56] <jrand0m> 2.0) 微路线图 [22:56] <jrand0m> 3.0) 应用/用法 [22:56] <jrand0m> 4.0) ns [22:56] <jrand0m> 5.0) IM [22:56] <jrand0m> 6.0) 行政杂务(cvs, bugzilla, cvs list, cvs web) [22:56] <jrand0m> 7.0) 问题 [22:57] <jrand0m> (没错,今天7个点。w00t) [22:57] <jrand0m> 0.0) 欢迎 [22:57] <jrand0m> 嗨。 [22:57] <dm> 嘿 [22:57] <jrand0m> 今天17个用户。不错 [22:57] *** Ryan_Singer (chatzilla@anon.iip) 已加入频道 #iip-dev [22:57] <jrand0m> 还在增加 [22:57] <jrand0m> 好 [22:57] <thecrypto> 1~hi [22:57] <jrand0m> 1.1) router 的开发状态 [22:58] <jrand0m> Java 参考实现的 router 进展非常好 [22:58] *** ChZEROHag (hag@anon.iip) 已加入频道 #iip-dev [22:58] <jrand0m> 我们现在能在不同的 router 上运行应用并互相发送消息了 [22:59] <ChZEROHag> 抱歉打断,但希望只打断一次 [22:59] <jrand0m> 采取迭代增量式的方法,目前状态是安全的、不匿名、不具伸缩性,且可被收集(harvestable) [22:59] <ChZEROHag> 还有谁在做 C 的 API? [22:59] <jrand0m> 嗨 ChZEROHag,怎么样? [22:59] <ChZEROHag> 我在做,不过很慢 [22:59] *** dcat (dirtycat@anon.iip) 已加入频道 #iip-dev [22:59] <jrand0m> 哦,酷 [22:59] <jrand0m> shardy 会在 toorcon 结束后开始做一个 [22:59] <jrand0m> 也许你们俩可以一起做? [23:00] <co> jrand0m:可以手动输入一个 destination 来发送消息吗? [23:00] <co> 更确切地说,有没有 destination 的 ASCII 表示? [23:00] <jrand0m> 是的 co,这两个都可以 [23:00] <co> 太好了。 [23:00] <jrand0m> destination,以及所有 I2P 结构,都可以用(另一套字母表的)base64 加载和序列化 [23:01] <thecrypto> 所以不容易记住,但会是 ascii? [23:01] <jrand0m> (例如,在我某个 router 的 netDb 里,我有 leaseSet-enD4jtE-orMwFD0QGog9GAyC5MvLvnPzhVD8cDYvSI8.dat,它包含了 destination enD4jtE-orMwFD0QGog9GAyC5MvLvnPzhVD8cDYvSI8 的 lease set) [23:02] <jrand0m> [though that is H(destination).toBase64() [23:03] <jrand0m> ChZEROHag> 如果你需要我们帮什么,尽管开口 [23:03] <jrand0m> 好,这就是 1.1。1.2) DH 预计算 [23:03] <ChZEROHag> 你可以帮我做吗? :-) [23:04] <jrand0m> 昨晚我写了个 DH 交换的预计算优化,可以把 1.5 秒的会话协商省掉约 ~1 秒。如果有懂密码学的人能帮我确认我没疯就好了 ;) [23:04] <jrand0m> lol ChZEROHag [23:04] <ChZEROHag> 啊我想起来我需要什么了 [23:04] <ChZEROHag> 一个 netdb 的实现 [23:04] <thecrypto> 在 cvs 里吗? [23:04] <thecrypto> 那个 dh [23:04] <jrand0m> 是的 thecrypto [23:05] <jrand0m> C:\dev\i2p\code\core\java\src\net\invisiblenet\i2p\crypto\DHSessionKeyBuilder.java [23:05] <ChZEROHag> 嗯我今晚还要醒着 3/4 小时,也许能找点事做 [23:05] <jrand0m> 呃,s/C:\\dev/g; s/\\/\//g [23:05] *** wax_off (~nomail@anon.iip) 已加入频道 #iip-dev [23:06] <jrand0m> 好。你要 netdb 实现做什么? [23:06] <ChZEROHag> 我不记得了 [23:06] <jrand0m> 我们目前在 cvs 里有个不具伸缩性的 netdb [23:06] <jrand0m> 呵 [23:06] <ChZEROHag> 至少一周没碰过了 [23:06] <jrand0m> 你是做 C 的 I2CP API,对吧?不是 I2NP? [23:07] <ChZEROHag> 我本来打算全都做 [23:07] *** wax_off 已离开 #iip-dev [23:07] <jrand0m> I2NP 比 I2CP 工作量真的、真的、真的大得多 [23:07] <ChZEROHag> 一旦真正开始,应该就会顺下来 [23:07] <jrand0m> 不过如果你用 C 实现一个 I2NP,那就太棒了 [23:07] <dm> 现在有任何语言实现了 I2NP 吗? [23:07] <jrand0m> (I2CP:I2NP::FCP:FNP) [23:07] <jrand0m> 有的 dm [23:08] * ChZEROHag 将 emacs 从最小化恢复 [23:08] <jrand0m> 我在做的 Java 实现里 I2NP 已经在工作了 [23:08] <dm> 好的…… [23:08] <ChZEROHag> jrand0m:url?我需要个参考,哪怕是用可怕的语言写的。 [23:08] <jrand0m> 呵 [23:08] <jrand0m> 呃,这其实是 6.0 行政杂务:也就是我们的匿名 cvs 访问他妈的在哪儿 ;) [23:09] <thecrypto> 我在拿 DH 的东西 [23:09] <jrand0m> 酷 [23:09] <ChZEROHag> 哦对 [23:09] <Ryan_Singer> jrand0m,回到日程,微路线图? [23:09] * thecrypto 捂脸 [23:09] <ChZEROHag> 那我等等 :) [23:09] <jrand0m> 呵,好 [23:09] <jrand0m> 微路线图 [23:09] <jrand0m> 我把 0.1 到 0.5 都规划好了 [23:09] <dm> 跟着 Freenet 的路线图走的? [23:10] *** mrflibble (mrflibble@anon.iip) 已加入频道 #iip-dev [23:10] <jrand0m> 0.1) 可用、安全、不匿名、不具伸缩性、可被收集 [23:10] <dm> 到 0.5 期间开发变慢然后冻结…… [23:10] <jrand0m> 我们现在在 0.1。 [23:10] <jrand0m> 呵 我注意到了 dm,flinks 也卡在 0.5.2 ;) [23:10] <co> 你给整个包叫什么? [23:10] <jrand0m> (奇怪的巧合) [23:10] <co> 也就是 0.1 版的什么? [23:10] <jrand0m> 整个包?i2p router 参考实现 [23:10] <ChZEROHag> co:Wonga [23:10] * beefbroth 加入会议 [23:11] <jrand0m> 晚上好啊 beefbroth [23:11] <co> 好的。这就解释了。 [23:11] <ChZEROHag> 其实也许我就这么叫。肯定比“i2pd”有意思 [23:11] <jrand0m> 0.1 有 bug,这是必然。而且没有什么优化(不过 DH 预计算有帮助)。 [23:11] <jrand0m> 呵 [23:11] <Ryan_Singer> jrand0m,那 0.2) 呢? [23:11] <jrand0m> 隐形互联网警察局 [23:11] <jrand0m> 好,0.2 [23:12] <jrand0m> 0.2 是可用、安全、匿名、不具伸缩性、可被收集 [23:12] <jrand0m> 0.2 增加对非零长度的 tunnel 支持 [23:12] <jrand0m> 我其实昨晚实现了大部分,但还没彻底测试 [23:12] <jrand0m> 我觉得 0.2 本周末前能好 [23:12] <Ryan_Singer> 从开发角度我们离那还有多远? [23:13] <Ryan_Singer> 很好 [23:13] <jrand0m> 0.3) 是可用、安全、匿名、可伸缩、可被收集 [23:13] * thecrypto 下了 bochs,这样他就能模拟一个网络来帮忙 [23:13] <jrand0m> 0.3 增加一个 kademliaDatabaseManager [23:13] <jrand0m> 现在我们用的是 BroadcastDatabaseManager [23:13] <jrand0m> (也就是 gnunet ;) [23:14] <jrand0m> 实现简单,对小网络可用,但要扩展就需要 Kademlia(分布式哈希表算法) [23:14] <jrand0m> 0.4) 是可用、安全、匿名、可伸缩、不可被收集 [23:14] <jrand0m> 那会加入可信链接 [23:14] <Ryan_Singer> jrand0m,实现 kademlia 的开发挑战有多大? [23:14] <jrand0m> 我对可信链接有两个想法……一个更容易实现且可用 [23:15] <jrand0m> kademlia 可能要整整一周 [23:15] <jrand0m> (要做到对) [23:15] <jrand0m> 注意这些都有大量重构和调优的空间。我的目标是先可用,然后再调优。 [23:16] <co> 你确定能这么快开发和测试吗? [23:16] <jrand0m> 我什么都不确定 [23:16] <jrand0m> 这只是我的估计 [23:16] <Ryan_Singer> co,他做出可用的,我们来测 [23:16] <ChZEROHag> 你确定? [23:16] <ChZEROHag> (抱歉) [23:16] <co> Ryan_Singer:我明白了。 [23:17] * jrand0m <3 肯测试的人 :) [23:17] <Myself248> 你说“我们”测试。非程序员有没有地方能帮上测试? [23:17] <jrand0m> Myself248> 可能要到 0.4 才有 [23:17] <dm> 希望不会发展到那种程度:功能上可用,但没人知道网络内部到底发生了什么以让它表现良好(比如 freenet) [23:18] <jrand0m> 0.4 好了就是预览版。一旦到了 0.4,我会调优和重构,补齐空白,准备 0.5(alpha) [23:18] <Myself248> 文档、文档、还是文档。 [23:18] <dm> 有没有考虑对网络内部进行主动监控,还是很直观? [23:18] <jrand0m> 有的 dm,绝对有 [23:18] <jrand0m> i2np 的关键之一是发布的 routerInfo 结构里包含统计信息 [23:18] <mihi> jrand0m:做个 s/0./0.0./ ;) [23:18] <jrand0m> 初始版本会发布真实的统计供我们调优 [23:19] <jrand0m> 后面的版本要么不发布统计,要么发布假的 [23:19] * jrand0m 不做 0.0 [23:19] <shardy> 好了,我来了 [23:19] <jrand0m> 欢迎回来 shardy [23:19] <shardy> 抱歉晚了,忘了这个窗口开着,呵 [23:19] <dm> 酷。 [23:19] <Ryan_Singer> 有没有描述 .4 之前网络架构的更高层文档? [23:19] <jrand0m> 砍头去 [23:20] <jrand0m> Ryan_Singer> 嗯,几个月前我写过一些概览文档,mids 和 nop 做了镜像,还有 i2p 概览文档 [23:20] <jrand0m> 0.4 就是规范里描述的完整 i2np,只是不一定是最佳实现 [23:20] <shardy> 哦对 jrand0m,我会帮你检查一下 DH 的优化 [23:20] <jrand0m> 好的,感谢 [23:20] <Ryan_Singer> 能给我那些文档吗? [23:21] <jrand0m> 概览在这里 (Link: http://www.invisiblenet.net/i2p/i2p_philosophy.pdf)http://www.invisiblenet.net/i2p/i2p_philosophy.pdf [23:21] <beefbroth> 在 wiki 上我想? [23:21] <jrand0m> 旧的概览文档……嗯 [23:21] <jrand0m> (i2p 规范在 (Link: http://wiki.invisiblenet.net/iip-wiki?I2PProtocolSpecs)http://wiki.invisiblenet.net/iip-wiki?I2PProtocolSpecs) [23:21] <co> 它们在 (Link: www.invisiblenet.net/i2p/.)www.invisiblenet.net/i2p/. [23:21] <jrand0m> 对,beefbroth [23:22] <jrand0m> 不过有一些老的 html 文档,配了丑丑的画图(ms paint)图片,展示 tunnel 如何工作…… [23:22] <beefbroth> 我应该知道,我已经读了很多遍 [23:22] <jrand0m> 呵 [23:22] <co> 除非那些是更老的版本或者镜像。 [23:22] <jrand0m> wiki 上那些文件是 0.9(I2NP 和数据结构的 0.9.1 也出来了,不过只是小改) [23:23] <thecrypto> jrand0m:预计算看起来不错 [23:23] <jrand0m> 酷 [23:24] *** pitu (~pitu@anon.iip) 已加入频道 #iip-dev [23:24] * jrand0m 用 java -Dcrypto.dh.precalc.min=3 -Dcrypto.dh.precalc.max=10 -Dcrypto.dh.precalc.delay=5000 -jar C:\dev\i2p\code\router\java\src\router.jar 运行 router [23:25] <jrand0m> 好,这就是微路线图 [23:25] <jrand0m> 如你所见,我承认本月底前 alpha 不会准备好。0.4 可能是十月第一周 [23:26] <dm> 没关系,即便那样也是这类网络史上最快的实现 ;) [23:26] <Ryan_Singer> lol [23:26] <beefbroth> 读 jrand0m 的时间估计时请记得,他过去 4 小时一直在喝威士忌 :-P [23:26] <jrand0m> 呵 [23:26] <Ryan_Singer> 好……应用/用法? [23:26] <jrand0m> 而且还是好威士忌 ;) [23:26] <jrand0m> 好,应用/用法 [23:27] <dm> 4 秒后到 0.7……3……2……1..!! [23:27] <jrand0m> 我瞄准的是易上手的——这些是我们几乎不用写新代码就能做到的事。 [23:27] <ChZEROHag> 你要是完全清醒,怎么可能好好写代码? [23:27] <jrand0m> 这些都大量用到了 mihi 超赞的 i2ptunnel [23:27] <co> ChZEROHag:很容易。 [23:27] *** mihi 已将频道 #iip-dev 的主题改为 <dm> 0.7 in 4 seconds....3...2...1..!! [23:28] <jrand0m> 用 i2ptunnel,我们可以在不写任何新代码的情况下做以下事情: [23:28] <jrand0m> 公共 www 代理(i2ptunnel + squid) [23:28] * dm 向 mihi 致意。 [23:28] <jrand0m> JAP(i2ptunnel + JAP) [23:28] <mihi> 不过你不能通过 i2p 踢人(tunnel 里也不行……) [23:28] <jrand0m> 匿名浏览 www(i2ptunnel + 浏览器) [23:28] <jrand0m> 运行一个 i2p Web 服务器(i2ptunnel + httpd) [23:29] <co> 非常好。mihi 干得漂亮。 [23:29] <jrand0m> cvs 出口代理(i2ptunnel)[比如到 sourceforge 的 cvs 出口代理用于匿名 freenet 开发] [23:29] <jrand0m> cvs 客户端,cvs 服务器 [23:29] <jrand0m> IM 应用、pop3 服务器、imap 服务器、opennap [23:29] <jrand0m> 这些都是真·易上手的 [23:29] <dm> 好了,现在我们只需要 i2p :) [23:30] <jrand0m> 对 ;) [23:30] <Myself248> i2p web 服务器不会取代 freenet 吧? :) [23:30] * jrand0m 觉得这算是个常见问题我应该回答 [23:30] <Ryan_Singer> jrand0m,不过它们也非常有价值 [23:30] <ChZEROHag> 在那清单里,我觉得 cvs 更重要/更有用 [23:30] <ChZEROHag> 一方面我想保持匿名,另一方面如果提供匿名 www 会招来一堆菜鸟 [23:30] <jrand0m> i2p + web 并不取代 freenet——freenet 在匿名通信框架之上增加了重要价值——内容分发 [23:31] <ChZEROHag> 而且目前匿名邮件的想法有点可怕 :) [23:31] * dm 记下:“不要菜鸟” [23:31] <jrand0m> cvs 肯定在前三 [23:31] <beefbroth> 我觉得如果 i2p 的 web 服务做得好,就得考虑把 freenet 的 DHT/存储部分合到 i2p 上,这样两全其美。 [23:31] <Ryan_Singer> ChZEROHag,如果它可扩展,那是好事 [23:31] <ChZEROHag> dm:菜鸟只是在早期阶段的问题,而且他们通常不用 cvs [23:31] <Myself248> 好吧,给任何匿名邮件都加上一堆 hashcash(哈希现金,工作量证明机制)。 [23:31] <ChZEROHag> 甚至都不知道那是什么(或者它的存在) [23:31] <co> 我觉得需要做的测试之一是对网络做一次攻击测试。 [23:31] <jrand0m> 是的 beefbroth,一旦 i2p 实现了我们的目标,freenet 很可能会调整以利用它 [23:32] <co> 抱歉如果偏题。 [23:32] <mihi> Myself248:只要加个重定向到匿名重邮器就行。 [23:32] <jrand0m> 不,co,这绝对在主题内——攻击这个网络是关键 [23:32] <ChZEROHag> Myself248:hashcash 主要是为了防止在我们被迫用这个古老协议“irc”的时候发生泛洪 [23:32] <ChZEROHag> 不是为了阻止所谓的“滥用” [23:32] <jrand0m> 对,mihi。不过也许把 mixminion 跑在 i2p 上会很有用 [23:33] <jrand0m> 对,hashcash 甚至内置在 i2p 里,用来防止消息在只走一跳的情况下被投递,除非它们“付费” [23:33] <Ryan_Singer> jrand0m,我们可以很容易地在这上面跑 imap 吗? [23:33] <jrand0m> 绝对可以 [23:33] <Ryan_Singer> 令人印象深刻 [23:33] <jrand0m> 一个指向 imapd 的 i2ptunnel,客户端的 i2ptunnel 指向那个 tunnel 的 destination [23:34] <Myself248> 还有 freenet 的搜索引擎 :) [23:34] <mihi> ftp 或若干非 jabber 的即时通讯会有问题…… [23:34] <jrand0m> 对,需要两个连接的东西更复杂 [23:34] <ChZEROHag> jrand0m:i2p 里有 hashcash? [23:34] <ChZEROHag> 这会后我要烦你这个。 [23:34] <shardy> i2p 里有 hashcash?不错。 [23:34] <dm> 我们走太前面了!哦算了,谁在乎……QUAKE + IIP!!!!!! [23:34] <dm> 抱歉,是 I2p :) [23:34] <jrand0m> lol dm [23:35] <Myself248> 我们这些小 CPU 的听到 hashcash 就犯怵,但作为反垃圾措施我理解。 [23:35] <co> dm:那真是把进度提得太前面了。 [23:35] * mihi 是 jabber:schierlm@a-message.de ;) [23:35] <jrand0m> 是的 ChZEROHag——Destination == public signing key (DSA) + public encryption key (ElGamal) + certificate(要么是 null 要么是 hashcash(keys)) [23:35] <beefbroth> i2p 的 tunnel 在客户端这端是静态的还是动态的? [23:35] <mihi> beefbroth:目前都是静态的。但你可以用 socks 代理作目的地 ;) [23:35] <jrand0m> Myself248> 我过几周会收到一台很牛的 sun ultra1。要是 160Mhz 的机器能跑,大家都能 [23:35] <shardy> 嗯。hashcash 不该对小 CPU 很致命。只有当你想做十几亿次的时候,才会注意到。 [23:36] <co> beefbroth:它可以是动态的。 [23:36] <Ryan_Singer> 这里这些“易上手”的潜在应用非常惊人 [23:36] <jrand0m> 对,mihi [23:36] <jrand0m> “eleventy”。呵 [23:36] <ChZEROHag> 易上手的本质上就是“普通”的互联网应用,但匿名地 [23:36] <ChZEROHag> 对吧? [23:36] <jrand0m> 对 [23:36] <Ryan_Singer> 是的 [23:36] <dm> (quake) [23:37] <jrand0m> 0.1 安全地跑它们,0.2 匿名地跑它们,0.3 可伸缩地跑它们,0.4 不可被收集地跑它们 [23:37] <jrand0m> (我们现在在 0.1) [23:37] <shardy> 你说的不可被收集是什么意思? [23:37] <co> 抱歉,“可被收集”又是什么意思来着? [23:37] <ChZEROHag> dm:不幸的是,受了足够阻碍,实时类东西在30多年后仍不是“普通的” [23:37] <Myself248> 呼。我也希望有人问这个。;) [23:37] <Ryan_Singer> 可记录的 [23:37] <jrand0m> “收集(harvesting)”意思是一个主动的攻击者可以运行一个 router,找出很多其他 router(“收集”它们),然后派人去踹他们的门 [23:38] <Myself248> 哦,就像你可以在 gnutella 上做的那样。:) [23:38] <Ryan_Singer> 类似情报机构那样的人 [23:38] <jrand0m> 对 [23:39] <shardy> 啊,懂了。 [23:39] <jrand0m> 好,不过,是的,这就是微路线图。 [23:40] <jrand0m> 现在,我把这些叫 0.x 而不是 0.0.x 是不是很蠢?1.0 应该是“完美的”,还是应该是可用且安全? [23:40] <Ryan_Singer> jrand0m,我们什么时候能看到 .4? [23:40] <jrand0m> 0.4 可能还要两周 [23:40] * jrand0m 十月中旬会休(半)周,有人要来访 [23:40] *** Signoff: dm (客户端发来 EOF) [23:40] <mihi> 1.0 应该是稳定的。 [23:40] <co> 让 1.0 成为可用且安全。 [23:40] <thecrypto> 同意 co [23:41] <Ryan_Singer> 1.0 应该可用、稳定且安全 [23:41] <ChZEROHag> jrand0m:我对版本号的哲学是:拿不准就抄 Linux [23:41] <Myself248> 5.0 可以是“完美的”。自由软件圈的人过分害怕版本号膨胀。 [23:41] <jrand0m> 好说 [23:41] <mrflibble> jrand0m,v1 的东西从来都不完美 :) [23:41] *** dm (~gj@anon.iip) 已加入频道 #iip-dev [23:41] <mrflibble> 人们也不指望它们完美 [23:41] <dm> 我错过 1.0 了吗? [23:41] <ChZEROHag> mrflibble:人们不指望任何软件完美。人们用 windows。 [23:41] <Ryan_Singer> 这软件会是 GPL 还是 LGPL? [23:41] <jrand0m> 不错,我已经因为 1.0 还不完美而挨批了 [23:41] <ChZEROHag> 但这不代表它不应该完美。 [23:41] <mrflibble> 有道理 ChZEROHag [23:42] <dm> 啊糟糕,我确实错过了…… [23:42] <mihi> dm:别闹了 [23:42] <mrflibble> 是的,你错过了 [23:42] <jrand0m> router 用 GPL。Java 客户端库目前是 GPL,但我持开放态度。thecrypto 和我拥有除一个部分外的全部版权(Cryptix 的 AES 实现是 MIT) [23:42] <dm> 好好好我错了 :( [23:42] <jrand0m> 实际上,我收回刚才的话 [23:42] <jrand0m> 我用了 Freenet 的 Base64.java [23:43] <beefbroth> 我们还在 0.3 应用这个议程项上吗? [23:43] <jrand0m> 所以 base64 是 GPL :) [23:43] <thecrypto> 而 IM 客户端会用 GPL [23:43] <jrand0m> 哦对,我们在 0.3 对吧 [23:43] <thecrypto> 等我把代码里加上注释就放出来 [23:43] *** UserX_ (~User@anon.iip) 已加入频道 #iip-dev [23:43] <jrand0m> 呵 thecrypto [23:43] <ChZEROHag> GPL 我觉得不错 [23:43] <jrand0m> 哇哦,23 个用户 [23:43] <Myself248> 我们在议程项 6.02E23,随机扯淡。:) [23:43] <Ryan_Singer> jrand0m,如果你有时间,我想和你聊聊授权和潜在的咨询项目 [23:43] <jrand0m> 好的 Ryan_Singer [23:43] <ChZEROHag> 不过正如某人(Fillament?)指出的——如果有人违反许可证,匿名的人能怎么办? [23:43] <mihi> jrand0m:22 ;) [23:43] <jrand0m> ChZEROHag> 去看看我在 flinks 上的许可证 ;) [23:43] <Myself248> 我们需要一个匿名法庭系统。 [23:44] * mihi 在这儿两次 [23:44] <jrand0m> Myself248> 叫 yodel ;) [23:44] <Myself248> “法庭现在审理案号 34534,J. Doe 诉 J. Doe” [23:44] <Ryan_Singer> ChZEROHag,我问这个是因为企业想用这软件来防范工业间谍 [23:44] <co> 命名服务器也会用 GPL 许可。 [23:44] <CCD> lol [23:44] <Myself248> “法警,那不就是我们刚才听的 34533 个案子里的同一双方吗?” [23:44] <shardy> 嗯 [23:45] <shardy> 总有一种想法:如果你真想让大家用你的协议,而且不在乎钱,就把它完全开放。甚至不受 GPL 限制。 [23:45] <co> shardy:你是说公有领域? [23:45] <beefbroth> 我觉得那是 co 引到 0.4 议程项的铺垫 :-P [23:45] <jrand0m> shardy> 规范是公开开放的。我没有对规范主张版权。 [23:45] <Ryan_Singer> shardy,不,我们希望对协议的工作能保持可用 [23:45] <shardy> 公有领域、BSD 许可、“随便用给署名就行”之类 [23:45] <jrand0m> 代码方面,router 用 GPL。Java 的一个客户端 API 实现是 GPL [23:46] <Ryan_Singer> 看看 liberty 协议…… (Link: http://projectliberty.org)http://projectliberty.org [23:46] <shardy> jrand0m:好的,懂了。 [23:46] * jrand0m 想过“政府禁用”许可证 ;) [23:46] <jrand0m> 好,把 3.0) 应用放进清单的原因是这样的 [23:46] <jrand0m> 我们需要帮助。 [23:46] <Ryan_Singer> 需要什么帮助? [23:46] <jrand0m> i2ptunnel 是好代码。i2p 的 router 也会是好代码。 [23:47] <jrand0m> 我们需要大家开始摸清发布工程的方方面面 [23:47] <dm> 你既然能用 i2ptunnel,为啥还需要应用? [23:47] <ChZEROHag> jrand0m:你再说一遍? [23:47] <jrand0m> 也就是,如何真正打包一个东西,让张三能下载就能上网 [23:47] <ChZEROHag> dm:如果能用 telnet,你为什么还需要应用? [23:47] <dm> 啥? [23:47] * dm 抓抓头。 [23:47] <CCD> 呃,除了 telnet 还有别的? [23:48] * jrand0m 觉得这就是 ChZEROHag 的观点 dm ;) [23:48] *** Myself248 现在叫做 myself248 [23:48] *** Signoff: thecrypto (Ping 超时) [23:48] <ChZEROHag> dm:用 i2ptunnel 就像有辆能跑的车却把它放在手推车上拖着走 [23:48] <jrand0m> 好,就这样。我只是想提一句,以防大家有空闲时间 :) [23:48] <jrand0m> 好,4.0) [23:48] <jrand0m> 命名服务 [23:48] <dm> 我能看出来他在表达个观点。 [23:48] <jrand0m> 嗨 co,最近怎样?:) [23:48] <co> 命名服务器必须是 GPL,因为至少 Java 实现使用了客户端库中的代码来联系 router。 [23:49] <dm> 可我们刚花了 20 分钟一直说:I2Ptunnel + web 服务器!I2Ptunnel + quake! ;) [23:49] <ChZEROHag> 或者,用计算机的术语说,就像用 telnet 做你所有的互联网事情,而不是直接在 ip 栈上做 [23:49] <co> 上周我没做多少。我发布了客户端 API,它也需要工作。 [23:49] <ChZEROHag> i2ptunnel 是个过渡方案 [23:49] <co> 不过这周我有时间开始实现命名服务器。 [23:49] <jrand0m> 酷 [23:49] <jrand0m> 客户端 api 在哪来着? [23:50] <mihi> 在邮件列表上 ;) [23:50] <co> 它的一个假设是 destination 可以用 base64 编码,这就是我之前问那个问题的原因。 [23:50] <jrand0m> ChZEROHag> 某种程度上它是过渡的 [23:50] * jrand0m !拍 自己 [23:50] *** thecrypto (~thecrypto@anon.iip) 已加入频道 #iip-dev [23:50] <dm> TCP 也是! [23:50] *** yodel (yodel@anon.iip) 已加入频道 #iip-dev [23:50] <jrand0m> 嗨 yodel [23:50] <beefbroth> 命名约定会是什么样?普通用户能适应吗(比如 (Link: www.somthing.com)www.somthing.com 或 (Link: www.something.i2p)www.something.i2p 用于 http/web 之类)? [23:50] <co> 我会把命名服务规范和客户端 API 放进 CVS。 [23:50] <jrand0m> 欢迎回来 thecrypto [23:50] <ChZEROHag> 这些可能之前讲过了,但 ns 如何公平地提供唯一名称? [23:50] * mihi 想要 *.mihi.iip ;) [23:50] <jrand0m> beefbroth> 有命名服务还是没有? [23:50] <jrand0m> 呵 mihi [23:50] <ChZEROHag> 避免蹲名之类困扰过 DNS 的问题 [23:50] <thecrypto> 谁能把刚才发生的发给我? [23:51] <beefbroth> jrand0m:有。我想没有的话会是一长串数字。 [23:51] <co> ChZEROHag:你会在一组命名服务器注册,然后用那组的名字标识自己。 [23:51] <co> 比如你提供 IM 服务,就是 IM.beefbroth.mygroup。 [23:51] <mihi> 哎呀,s/iip/i2p [23:51] *** godmode0_ (~mode@anon.iip) 已加入频道 #iip-dev [23:51] *** Signoff: godmode0 (客户端发来 EOF) [23:51] <jrand0m> ChZEROHag> co 的命名服务有可信组,每个组管理一个组名(tld)。你选择由哪些组来运行各个 tld [23:51] <co> 是的,有人也可以在 group2 注册用户名 beefbroth。 [23:51] <thecrypto> 我走开的 4 分钟里 [23:52] <ChZEROHag> co:所以唯一的问题是 .mygroup 的唯一性? [23:52] <ChZEROHag> 那谁拿 group ‘com’?:-) [23:52] <jrand0m> 而且这是由客户端选择的 [23:52] <mihi> ChZEROHag:i2p 不是商用(COMmerical) [23:52] <jrand0m> (比如你告诉 ns 客户端库“.com 组是 group 0123ff33aefcbb34fe [23:52] <beefbroth> 我不太想提,但我几乎觉得这些组应该默认 3 个字母,以维持它与常规 web 类似的错觉 [23:52] <co> ChZEROHag:我不确定谁拿“com”组。 [23:52] <co> 好问题。 [23:53] <shardy> beefbroth:除非“常规 web”不再只有 3 个字母的 [23:53] <mihi> beefbroth:或者给所有地址加个 .i2p。 [23:53] <ChZEROHag> beefbroth:那种错觉只在美国存在 [23:53] <shardy> tlds。 [23:53] <jrand0m> 一开始,我们也许只想先有一个命名服务器组,“.i2p” [23:53] <co> beefbroth:命名服务器软件允许你最多用 32 个字母。 [23:53] <ChZEROHag> 在其他地方我们用给我们的 2 字母国家代码 [23:53] <shardy> .us 在美国也在用。 [23:53] <co> 实际上,我想第一个组叫“test”。 [23:53] <shardy> 还有 .info 和 .name 之类 [23:53] <jrand0m> 呵,好 [23:54] <ChZEROHag> shardy:是啊,被大概 5 个人用。 [23:54] <ChZEROHag> 不过这也许留待以后再吐槽 :) [23:54] <jrand0m> 实际上…… [23:54] <shardy> 甚至还有 .museum [23:54] <Ryan_Singer> jrand0m,用 .12p 听起来不错 [23:54] <jrand0m> 我前几天碰到一个基于 JXTA 的分布式 DNS [23:54] <co> ChZEROHag:但关键是,如果你不喜欢运行“com”组的人,你可以建立“com2”组并运行它的服务器(并在那注册)。 [23:55] <ChZEROHag> 是的那部分完全能理解 [23:55] <mihi> ChZEROHag:(Link: http://www.nic.us/press/audio/dotus-mayEM.wav)http://www.nic.us/press/audio/dotus-mayEM.wav ;) [23:55] <jrand0m> co> 你不能直接说“他们‘认为’他们是 .com,但我说 .com 由 group2 运行”? [23:55] <ChZEROHag> 我想问的是,它是否依赖先到先得? [23:55] <co> 你可以把客户端配置成任何样子。 [23:56] <Ryan_Singer> JXTA 的命名系统是怎么工作的? [23:56] <jrand0m> co> (Link: http://wiki.java.net/bin/view/Jxta/DisDNS)http://wiki.java.net/bin/view/Jxta/DisDNS 是一个分布式 DNS 的 wiki,但很粗糙,也没解决真正的难题 [23:56] <co> ChZEROHag:在你向某个组注册用户名时,是的。 [23:56] <co> jrand0m:我会会后看看。 [23:56] <jrand0m> jxta 让命名服务器跑在 rendezvous 点上 [23:56] <ChZEROHag> mihi:那是啥? [23:56] <beefbroth> 那么有人可能尝试通过模仿已有的 i2p 命名服务器组来攻击 NS 系统 [23:57] *** Signoff: jeremiah (Ping 超时) [23:57] <co> beefbroth:我觉得不会。 [23:57] <mihi> ChZEROHag:听一下。为什么 xxx 百万美国人偏好 .us 而不是 .com [23:57] <mihi> 6800 万 [23:57] <co> 我设想,设置组的人会宣布这些组。 [23:57] <jrand0m> 模仿?他们无法模仿,因为组里的服务器通过公钥系统进行认证 [23:58] <jrand0m> 不过,如果组允许不可信成员加入,就会被轻易接管。 [23:58] <shardy> 但密钥交换怎么做? [23:58] <co> 后来的人会面临一个问题:该组已经建立,客户端软件的配置文件里包含了前一个组的 destination。 [23:58] <ChZEROHag> mihi:嗯我一直说偏好它是有道理的,爱国什么的,只是我从没真见过。 [23:58] <beefbroth> 如果两组命名服务器都声称解析 .i2p 组,会怎样? [23:58] <co> 不过好问题,我会再仔细想想。 [23:58] <ChZEROHag> mihi:总之我会去听听看 [23:58] <jrand0m> shardy> 不是密钥交换——是密钥发布 [23:58] <beefbroth> 我懂了,说得好 [23:58] <ChZEROHag> co:是的,这也是我想问的另一点 [23:58] <shardy> 但如果在线发布,密钥仍会被拦截 [23:58] <jrand0m> beefbroth> 没人声称什么。你的客户端说“i2p == [dest1, dest2, dest]” [23:59] <shardy> 我们需要一个基于信任的 dns 系统 :) [23:59] <shardy> 这样你可以提交一个名称查询,拿回一组响应……然后选择可信的那个 [23:59] <co> 谢谢你提出来。 [23:59] <jrand0m> shardy> 啊,我想我明白困惑在哪了。命名服务可能需要带一组带外的 destination(也就是随安装包一起) [23:59] <ChZEROHag> 是啊我们有一个——大家都信 IANA(不管他们现在叫什么),否则就…… [23:59] * shardy 蹲下 [23:59] <ChZEROHag> :-D [23:59] <mrflibble> 他们在用 dnssec 尝试这么做,但当然那不匿名 [00:00] <jrand0m> 这个命名服务要做的是摆脱根服务器 [00:00] <beefbroth> 你总可以有个 i2p 首页列出活动的命名组和权威? [00:00] <shardy> jrand0m:好的。只是指出,不管怎样它仍可能被拦截,除非有物理安全的渠道来最初传递这些密钥…… [00:00] <co> shardy:我想我在规范里覆盖了密钥交换。如果没有,告诉我。 [00:00] <shardy> 但带外打包会更好 [00:00] <shardy> co:我会看看。 [00:00] <jrand0m> shardy> 哦对。大家需要能信任他们下载的代码 [00:00] <co> beefbroth:当然可以。 [00:01] <ChZEROHag> 啊这提醒了我 [00:01] <jrand0m> beefbroth> 是的,那肯定是最先实现的应用之一——一个带 bbs 和 wiki 的 i2p web 服务器,大家可以通过 i2p 访问 [00:01] <ChZEROHag> 我应该给我的 iipmail 生成个 gpg 密钥 [00:01] *** yodel 已离开 #iip-dev [00:01] * ChZEROHag 在无聊环节进行时这么做 [00:01] <jrand0m> 呵好 [00:01] <co> 请理解命名服务器规范仍然接受改进建议。 [00:02] <shardy> 我想把所有规范带上飞机去 toorcon……那样我就有时间读了 [00:02] <co> 我并不声称它现在是完美或定稿的。 [00:02] <jrand0m> 呵 希望是个长航班 [00:02] <shardy> 也比一直玩 fft advance 更高产,呵 [00:02] * jrand0m 发现一旦有实现规范的代码,批评就会更踊跃 [00:02] *** godmode0_ 现在叫做 godmode0 [00:02] <co> 而且我还得写代码。 [00:02] <co> 我想我们可以进入下一个话题了。 [00:02] <jrand0m> 好 [00:02] <jrand0m> 5.0) IM [00:03] <jrand0m> 嗨 thecrypto [00:03] <mihi> 名称不应与 base64 表示冲突。 [00:03] <thecrypto> 嗨 [00:03] <thecrypto> 好的 [00:03] <mihi> 命名服务器应该透明地原样返回 base64 地址。 [00:03] <co> mihi:很好,我会尽量避免这个问题。 [00:03] <thecrypto> 首先因为我的电子邮件又不好使了(该死的垃圾邮件) [00:03] <jrand0m> (所有继承自 DataStructure 的类都有 String .toBase64() 和 .fromBase64(InputStream) ) [00:03] <thecrypto> 我就在这里回答 Whit 关于我系统的问题 [00:04] * jrand0m 打开 co 的邮件 [00:04] <mihi> jrandom?为什么是 InputStream 而不是 Reader? [00:04] <thecrypto> network 是我先想到的,你通过 i2p network 建立连接,它很 p2p,所以我叫它 networkr [00:04] <jrand0m> 要 Reader 的话套个 InputStreamReader 就好了,你这小坏蛋 [00:04] <mihi> 在我看来 base64 是字符,不是字节。 [00:04] <ChZEROHag> jrand0m:IM == 即时通讯? [00:04] <jrand0m> 是的 ChZEROHag [00:04] <thecrypto> 如果大家不喜欢这个,给我个怎么称呼它的建议 [00:05] <ChZEROHag> jabber? [00:05] <thecrypto> IM == 我自己的分布式 IM 网络 [00:05] <shardy> 你应该叫它“bob” [00:05] <jrand0m> i2p im 和 aim 是网络同一种意义,或 kazaa 是网络,同样都跑在 tcp/ip 或 udp/ip 上 [00:05] <co> 叫 IM 应用怎么样? [00:05] <ChZEROHag> (anonabber) [00:05] <co> jrand0m:我懂了。 [00:05] <thecrypto> jabber 需要中心化服务器 [00:05] <jrand0m> 术语对我无所谓。我喜欢 shardy 的点子 [00:05] <ChZEROHag> thecrypto:没有什么是“必须”中心化服务器的 [00:05] <thecrypto> 而且我今天拼写不行,将就一下 [00:05] <ChZEROHag> 只是现在写成那样 [00:05] <jrand0m> (不过我更喜欢 Betty) [00:05] <thecrypto> 所以你想让我叫它 I2PIM bob? [00:05] <thecrypto> :) [00:05] <jrand0m> 那 Wilma 怎么样? [00:05] <jrand0m> Fred 被占用了 [00:05] <co> 叫分布式 IM 怎么样? [00:05] <jrand0m> DIM,呵 [00:05] <co> 不过,那就是分布式 IM 应用? [00:05] <dm> AIM,anonymous Instant messaging! [00:05] <thecrypto> 糟糕的首字母缩略词 :) [00:06] <dm> 然后我们就能接管 AOL。 [00:06] <thecrypto> 哦我等不及 AOL 知道这个了 [00:06] <ChZEROHag> dm:那会把某些混蛋气坏。我喜欢。 [00:06] <jrand0m> 呵 做吧 [00:06] <Ryan_Singer> thecrypto,我们能以去中心化方式实现 IM 吗,还是必须中心化? [00:06] <co> dm:好主意。我支持这个缩写。 [00:06] <jrand0m> 按我读 thecrypto 文档的理解,IM 是完全去中心化的 [00:06] <thecrypto> 我正在实现一个分布式 IM,在 CVS 里 [00:06] <beefbroth> 我会反对任何会让人困惑的东西 [00:07] <Ryan_Singer> AOL TimeWarner 把名字改回 Time Warner 了 [00:07] <ChZEROHag> dm:那会把某些混蛋气坏。我喜欢。 [00:07] <jrand0m> 如果人们不理解什么是匿名,“透明匿名”也没用。 [00:08] <ChZEROHag> 哦等等,我有类似的东西写在纸上 [00:08] <beefbroth> 我喜欢 thecrypto 的想法 [00:08] <thecrypto> 我在找 I2PIM 跑在哪个“network”上 [00:08] <jrand0m> 教人如何保护自己非常重要 [00:08] <thecrypto> 我在想 Presence System? [00:08] <Ryan_Singer> 强调匿名的安全属性 [00:08] <dm> I2M(instant 2 messaging) [00:08] <ChZEROHag> 虽然我只叫它 XIrc [00:09] <jrand0m> 你说了算 thecrypto,什么顺手用什么 ;) [00:09] <dm> 在 I2M 的 logo 里,那个 2 会很小 :) [00:09] <thecrypto> 那么 I2P 展开是 Invisible … jrand0m ? [00:09] <ChZEROHag> 我喜欢的一点是每个人都叫 Borg,他们在 Collective 里聊天 [00:09] <jrand0m> i2p = i^2p(Invisible Internet Project) [00:09] <co> 我以为 P 代表 protocol。 [00:09] <jrand0m> 也能这么说 [00:09] <jrand0m> 不,实际上,不是 [00:10] <thecrypto> 所以是 Invisible Internet Project Instant Messaging [00:10] <jrand0m> i2np 是协议 [00:10] <jrand0m> i2p 是项目 [00:10] <jrand0m> i2cp 是客户端协议 [00:10] <beefbroth> 我以为代表“poop” [00:10] <co> thecrypto:你说得对,名字不是特别重要。 [00:10] <dm> i2m = i^2m = instant invisible messaging [00:10] <thecrypto> 那下一个话题吧 [00:10] <Ryan_Singer> 好……所以我们偏离议程了……IM 讲完了吗? [00:10] <shardy> 如果“bob”不行,我们可以叫它“jimbob” [00:10] <jrand0m> 好,6.0) 行政杂务 [00:10] <thecrypto> 没,还有 [00:11] <thecrypto> 抱歉 [00:11] <co> 是 administrivia。 [00:11] <thecrypto> 不是,是 IM [00:11] <jrand0m> nop> 给我 root。我需要装匿名 cvs、bugzilla 和 cvsweb。 [00:11] <thecrypto> 我还没讲完 [00:11] <thecrypto> :) [00:11] <thecrypto> 倒回去! [00:11] * jrand0m 往回 [00:11] <jrand0m> 5.1) thecrypto v2 [00:11] <Ryan_Singer> 还有什么 IM 的点,thecrypto? [00:12] <mihi> thecrypto:继续说;/me 我也是错过命名服务那段才后来补的 [00:12] <thecrypto> 好,关于存在(presence)之间的通信有点不同 [00:12] <thecrypto> 不是每个人都认识每个人 [00:12] <thecrypto> 几乎不可能“跟踪”某人 [00:12] <thecrypto> 你得请求才会被展示 [00:13] <mihi> 在匿名网络里,通常没有人认识任何人 ;) [00:13] <jrand0m> (只要大家的 Destination 是随机的) [00:13] *** Signoff: pitu (终端丢失) [00:13] <dm> 你什么意思? [00:13] <thecrypto> Alice 想和 Bob 聊天 [00:13] <jrand0m> mihi> 不过命名服务允许按服务搜索 [00:13] <jrand0m> (服务是 IM、www 等) [00:13] <thecrypto> Alice 通过某种方式找到了 Bob 的 IM destination,可能通过命名服务 [00:14] <thecrypto> 所以 Alice 给 Bob 的 IM destination 发一条消息 [00:14] <dm> 然后? [00:14] <thecrypto> 他会收到一个小消息说“Alice 尝试联系你”,他可以选择要不要和她说话,也可以忽略 [00:15] <thecrypto> 但没有中心的在线状态服务器,Alice 也可能只是看到她的消息消失而没有回应 [00:15] <dm> 好的,那不就和 MSN 一样? [00:15] <jrand0m> (虽然 Alice 能知道 Bob 忽略了她) [00:15] <thecrypto> 并且 Alice 不能只是把 Bob 加到她的好友列表然后等他 [00:15] <Ryan_Singer> thecrypto,好的……这和正确配置的 Y!、MSN 或 AIM 有什么不同……除了没有中心服务器 [00:15] <thecrypto> 因为 Bob 必须给 Alice 发一个消息才能看到她上线 [00:15] <Ryan_Singer> 哦 [00:15] <dm> 好的,对用户来说体验并没变,但我懂你意思了。 [00:16] <jrand0m> thecrypto> 不完全对 [00:16] <Ryan_Singer> 懂了……没有好友列表功能…… [00:16] <jrand0m> 哦,嗯,从技术上讲…… [00:16] <thecrypto> Ryan_Singer:不,还是有好友列表 [00:16] <dm> 如果 Alice 看不到 Bob,她怎么给 Bob 发消息? [00:16] <dm> 你只能随机试着联系,看看他们在不在? [00:16] <jrand0m> Bob 得给 Alice 的 router 发消息,这可以在 Alice 不知道的情况下发生 [00:16] <thecrypto> Alice 也可以随机尝试 [00:17] <dm> 那不太方便吧?你一上线就得给每个人发条消息问(你在吗?你在吗?) [00:17] <beefbroth> thecrypto:用户不能在他上线时给所有好友“通知”一下吗,给他们发一条消息?或者你就是这个意思 [00:17] * co 注意到可能有两个 Bob 分别注册在两个不同的命名服务器组。 [00:17] <thecrypto> beefbroth:我就是这个意思 [00:17] <dm> 好的,所以和现在的方案类似,只是你默认不可见。 [00:17] <dm> 懂了。 [00:18] <thecrypto> dm:不,是另一种方式,你上线时,给所有人发一条消息说“我上线了,我上线了”,如果你收到“我上线了”的消息,就回一条 [00:18] <thecrypto> 如果你愿意的话 [00:18] <co> 所以用户控制谁能看到他/她/它。 [00:18] <thecrypto> 所以 Alice 可以把你加到她的好友列表,你会在她上线时收到一条消息“Alice 把你加到她的好友列表,是否愿意向她通告你的在线状态” [00:19] <Ryan_Singer> 你下线时会先发一条消息说“我要下线了”吗? [00:19] <dm> 好的,所以 IM 体验和现在一样。只是确认一下。 [00:19] <thecrypto> 如果 Bob 把 Alice 加到他的好友列表,并且 Bob 收到 Alice 的在线消息,就会自动回发 [00:19] <beefbroth> 可能需要每隔一段时间“ping”一下对方,以确保不是意外断开 [00:19] <thecrypto> 如果 Bob 没把 Alice 加到好友列表,而 Bob 收到 Alice 的在线消息,就会提示用户 [00:19] <dm> 好的,这只是绕过服务器的一种方式,但问题是应用默认是否会在有人登录时发“我上线了”。 [00:20] <Ryan_Singer> 希望会 [00:20] <jrand0m> Ryan_Singer> 或者定期发“我还在线”的 ping [00:20] <jrand0m> (没收到 ping == 下线) [00:20] <Ryan_Singer> 心跳保持那种? [00:20] <beefbroth> 可能需要每隔一段时间“ping”一下对方,以确保不是意外断开 [00:20] <thecrypto> 如果 Bob 把 Alice 加到他的好友列表,并且 Bob 收到 Alice 的在线消息,就会自动回发 [00:20] <beefbroth> 哈 [00:20] <thecrypto> 如果 Bob 没把 Alice 加到好友列表,而 Bob 收到 Alice 的在线消息,就会提示用户 [00:21] <dm> 好的,所以 IM 体验和现在一样。只是确认一下。 [00:21] <thecrypto> 只是现在你要确认被加好友 [00:21] <thecrypto> 我觉得只有 ICQ 有这个 [00:21] <jrand0m> IM 应用会是独立的还是我能用 trillian? [00:21] <dm> 是的,MSN 就是这样。 [00:21] <jrand0m> 【等等】 [00:21] <ChZEROHag> thecrypto:ICQ 只是装作需要确认 [00:21] <beefbroth> dm:不对。你不用应付 MSN、Y! 和 AIM 每隔几个月改协议、把人锁在外面了 :) [00:22] <thecrypto> jrand0m:我会写规范,trillian 要么给我插件接口,要么他们自己写 [00:22] <thecrypto> 我至少会写一个 gaim 的插件 [00:22] <thecrypto> 还有一个独立客户端 [00:22] <jrand0m> 酷 [00:22] <thecrypto> 它是为这个网络而做的 [00:22] <jrand0m> gaim 支持文件传输吗,还是这是 i2pim 客户端的优势? [00:22] <beefbroth> thecrypto:你可能想联系一下 kopete 的开发者,通知他们 [00:22] * jrand0m 暴露了自己的无知 [00:23] <thecrypto> 我会尽量让 gaim 插件和独立版一样好,但我不确定 [00:23] <co> thecrypto:我们先做独立应用吧。 [00:23] <thecrypto> gaim 的文件传输我记得只在 AIM 上工作 [00:23] <thecrypto> 所以可能要折腾一下才能进插件 [00:23] <Ryan_Singer> 好……我想我们现在都懂了……还有别的 IM 问题吗? [00:24] <thecrypto> 还有 co 的最后一点 [00:24] <beefbroth> gaim 在 NAT 用户的 IM 传输上有问题 [00:24] <thecrypto> 不止一个人可以用同样的名字 [00:24] <thecrypto> 他们会有唯一的 destination [00:24] *** Signoff: mihi (Ping 超时) [00:24] <co> 好的。 [00:24] * mihi_backup 还在…… [00:24] <thecrypto> 但有人不能假冒 [00:25] <jrand0m> 呵 不错啊 mihi_backup [00:25] <co> 如果你用命名服务器,会是“来自 group1 的 Bob”和“来自 group2 的 Bob”。 [00:25] <co> 具有唯一的 destination。 [00:25] <jrand0m> 对 thecrypto。名字是任意的。有点像 dns ;) [00:25] *** mihi (~none@anon.iip) 已加入频道 #iip-dev [00:25] <thecrypto> 另外 IM 客户端本身可以可选检查“嘿,你收到的这条 IM 来自一个叫 Bob 的人,你列表里 Bob 的 destination 不同,接受消息吗?” [00:26] <dm> mihi:你走的时候你的备份说话了。 [00:26] <thecrypto> 如果有人试图假冒 Bob,你会知道,否则你可以把它做个别名处理掉 [00:26] <mihi> 我知道…… [00:26] <jrand0m> “叫 bob 的人”?谁说的?他自己叫 bob?还是某个组叫他 bob?还是你把他的 dest 命名为 bob? [00:26] <thecrypto> presence 里有个字段叫 name [00:26] <thecrypto> 我看的是那个 [00:27] * jrand0m 喜欢 ICQ 处理这个问题的方式——每个人都是一个号码,你只是在本地把号码起别名为名字 [00:27] <co> 顺便问一句,我是不是应该让 NS 实体名大小写不敏感? [00:27] <jrand0m> 也许要,co [00:27] <mihi> base64 的东西必须大小写敏感 ;) [00:27] * jrand0m 不想让人冒充 Jrand0m [00:27] <co> mihi:实体名,不是 destination。 [00:27] <jrand0m> 对对,mihi [00:28] <jrand0m> (好吧,人们想冒充 jrand0m 随便。我只想要回 jrandom) [00:28] <co> 继续,thecrypto。 [00:28] *** Signoff: UserX_ (Ping 超时) [00:28] <thecrypto> 我讲完了 [00:28] <thecrypto> 终于 :) [00:28] <mihi> co:你应该能在任何可以放实体名的地方放一个 destination。 [00:28] <mihi> 就像 dns 名和 IP 一样 [00:28] <co> mihi:好主意。我会把这个加进规范。 [00:28] <thecrypto> jrand0m:其实有点像 ICQ,只是你告诉别人你希望你的别名是什么 [00:29] <thecrypto> 我觉得他们现在也是这么做的 [00:29] <co> 不过,这样一来,名字就会比 destination 短很多好输入。 [00:29] <jrand0m> mihi> 命名服务只把名字转为 destination——如果你问命名服务一个 destination 的 destination,它应该非常非常快地返回 [00:29] <Ryan_Singer> 好了各位……我有个会……jrand0m,给我发匿名邮件 [00:29] <jrand0m> 好,回见 [00:29] <mihi> jrand0m:是的,而且应该返回那个 dest 本身,而不是“未找到” [00:30] <jrand0m> 对 [00:30] *** Signoff: Ryan_Singer ((null)) [00:30] <jrand0m> 好。我们到 7.0) 了 [00:30] <jrand0m> 提问 [00:30] <jrand0m> 嗨 [00:30] <co> 6.0) Administrivia 怎么办? [00:31] <co> 还是你已经讲完了? [00:31] <jrand0m> 6.0 行政杂务就是我催 nop 给我 root,这样我能给大家:匿名 cvs 访问、bugzilla 和 cvsweb 界面 :) [00:31] <beefbroth> 会不会有负责人来打包 Win/Mac/SuSE/RedHat/Debian 的 alpha、beta 和发布版,以加速普及? [00:32] <jrand0m> 你自告奋勇? [00:32] <jrand0m> (也就是,是的,那太棒了) [00:32] <beefbroth> 如果我学会给我的发行版打包的话 :) [00:32] <jrand0m> 你用哪个发行版? [00:33] <co> 我记得,IIP 的开发者想在 I2P 上重实现 IIP。如果 I2P 能兑现匿名性的承诺,直接在 I2P 上跑 IRC 会不会更简单? [00:33] <beefbroth> 但我的意思是,很多人靠这些(包)。这会让大家更容易采用。Freenet 就因为缺乏活跃维护者而受苦。 [00:33] <dm> jr 很会当管理者 :) [00:33] <jrand0m> 是的 co,更简单,但伸缩性不如另一些方式 [00:33] *** UserX_ (~User@anon.iip) 已加入频道 #iip-dev [00:33] <thecrypto> 是,但有些人不想要 IRC [00:34] <jrand0m> beefbroth> 你说得很对,活要干的很多,而我至少得睡 4 小时 [00:34] <co> thecrypto:说得对,不过 I2P 会把大家的 IP 匿名化。 [00:34] <beefbroth> jrand0m:我可以在东西准备好时帮忙打包。我觉得这是一些非开发者但有点技术的人能贡献的好方式。 [00:34] <jrand0m> 太棒了 beefbroth [00:34] <thecrypto> 如果我们有 IM 和 IRC,会有更多人采用 [00:35] <mihi> co:问题是 IRC 有可以被关闭的东西(服务器)。 [00:35] *** jeremiah (~jeremiah@anon.iip) 已加入频道 #iip-dev [00:35] <jrand0m> thecrypto> 立刻带来采用的:opennap [00:35] <beefbroth> 学会打包比学会 i2p 数据结构容易。这是让几个人参与进来的简单方法 [00:35] <dm> IRC 还是挺难的不是吗? [00:35] <dm> 分布式 IRC 是说…… [00:35] <co> mihi:当然。我忘了。谢谢提醒。我撤回反对。 [00:36] <jrand0m> dm> irc 可以有多个 irc 服务器(比如 efnet 等)通过 i2p 互相通信 [00:36] <shardy> 你是指“像 irc 的”聊天协议吗? [00:36] <shardy> 还是改造 irc? [00:36] <jrand0m> 人通过 i2p 的 tunnel 连接到其中一个 irc 服务器来互相交流 [00:36] <dm> irc 的服务器在 i2p 后面没问题,我是说没有服务器。不重要我猜。 [00:37] <jrand0m> dm> 对,没服务器的可以做得更好,我们也想过一些,但没有很扎实的(据我所知) [00:38] <dm> 不管怎样,偏题了。 [00:38] <dm> 继续吧! [00:39] <jrand0m> 还有别的问题吗? [00:39] <jrand0m> 有人看规范了吗? ;) [00:39] <jrand0m> (除了把它们背下来的 beefbroth) [00:39] * dm 望向天花板。 [00:40] <jrand0m> 好,那就是 100 分钟的会议了 [00:40] <thecrypto> 我在看,我需要什么就看什么 :) [00:40] <ChZEROHag> 规范! [00:40] <ChZEROHag> 这就是我忘了的! [00:40] <jrand0m> 呵 [00:41] *** dm 已将频道 #iip-dev 的主题改为 topic1 [00:41] * jrand0m 装填完毕然后…… [00:41] * jrand0m 将会议 *baf* 地结束了

仅提供翻译,不要包含其他内容: