快速回顾

出席: cat-a-puss, Connelly, deer, dm, hypercubus, jrandom, Sonium

会议日志

14:02 <jrandom> 0) 嗨 14:02 <jrandom> 1) 0.3.3 & 当前更新 14:02 <jrandom> 2) NativeBigInteger 14:03 <jrandom> 3) ??? 14:03 <jrandom> 0) 嗨 14:03 * jrandom 挥手 14:03 <jrandom> 每周状态说明已发布 @ http://dev.i2p.net/pipermail/i2p/2004-July/000372.html 14:03 <jrandom> (多亏 hypercubus 的鞭策,我在会议前就发出来了 :) 14:04 <jrandom> 好的,开始吧 14:04 <jrandom> 1) 0.3.3 & 当前更新 14:06 <jrandom> 邮件里有一大堆介绍近况的信息,而且接下来带宽使用量应该会大幅下降 14:07 <jrandom> 由于改动很多,它将不向后兼容,所以下个版本的升级也会有些坎坷,但没办法 14:08 <jrandom> 关于 0.3.3 版本或状态说明里提到的内容,大家有问题吗? 14:08 * dm 挥手 14:08 * jrandom 这边在 freenode 上看到 23 秒的延迟 14:09 * hypercubus 看到 0.10 秒的延迟 14:09 <jrandom> 啊,恢复正常了 14:09 <jrandom> 好的,如果没别的,我们就进入 2) NativeBigInteger 14:10 <jrandom> Iakin3 修改了一些东西,使加密代码可以开箱即用地更容易部署,这很棒 14:10 <jrandom> 我偶尔看看 netDb,会发现有些人在做 ElGamal 加密时延迟高达 2–400ms,这意味着有人没有使用 jbigi 14:11 <jrandom> (而且每个人都应该使用 jbigi) 14:12 <deer> <Nightblade> 你怎么知道他们不是只是电脑很慢 14:12 <Sonium> 为什么它没有自动使用? 14:12 <hypercubus> 因为它必须为每个平台定制编译 14:12 <jrandom> 我们也许能在下个版本里部署好这个,但还要看情况 14:12 <deer> <oOo> 如果没有 DLL,程序会继续使用仅 Java 的代码(为跨平台支持所需) 14:12 <hypercubus> 而且目前不会检测平台 14:12 <jrandom> Nightblade:当然有这个可能 14:13 <jrandom> oOo 没错,我们肯定会保留这个功能 14:13 <deer> <oOo> 不,强制要求 dll 和 .so 文件存在,即使是空的或没用的 14:13 <jrandom> 实际上,这也是我正在做的一些当前修改带来的好处之一——我们只需要做一半次数的 ElGamal 加密(因为 sourceRouteBlock 不再存在了) 14:14 <jrandom> 嗯 oOo? 14:14 <jrandom> 我们为什么要那样做? 14:15 <deer> <oOo> 强制检查库文件的 _存在性_。如果它们没有被使用,你很可能不在 x86 Win/Linux 平台上,只能被迫使用 Java 代码。总之,你已经尽力去强制使用本地实现了 14:15 <jrandom> 哦,对,我们一直都会检查 libjbigi.so / jbigi.dll,Iakin 的代码新增的是一种能力:把一堆 DLL 和 .so 文件打包进一个 jar,并在运行时选择*正确的*那个 14:16 <hypercubus> </obvious> 14:16 <jrandom> (如果没有匹配,则回退到纯 Java) 14:17 <jrandom> 总之,这些都是好东西,希望能大大帮助新用户 14:17 <jrandom> (也省得我在管理界面上做些丑陋的下拉框了 :)) 14:18 <jrandom> 好的,如果这方面没有更多问题,我这边就这些了 14:18 <jrandom> 那么转到 3) ??? 14:18 <jrandom> 还有其他人有想提的事吗? 14:18 <hypercubus> 应该有人在新网站上跑个拼写检查器 ;-) 14:19 <jrandom> 你现在已经有 CVS 访问权限了… :) 14:19 <jrandom> (模块:i2pwww) 14:19 <hypercubus> 该死 14:19 <deer> <oOo> 大文件传输时的数据损坏,甚至是本地传输,也在调查中吗(比如从你自己的 eepsite 抓取数 MB)? 14:20 <hypercubus> 我有很多大文件下载被中断,但从没遇到过损坏 14:20 <jrandom> 嗯,这个问题的大多数实例已经解决了,但我最近又听到了相关报告。我还没再把应用层过一遍做审计 14:21 <jrandom> 我把中断的下载也视为损坏 14:21 <jrandom> 必须一次就成功,完整跑完 14:21 <hypercubus> 呃,这也没办法,真实的万维网上也是这样 ;-) 14:21 <deer> <oOo> 当抓取端和服务器在同一台计算机上时就不是了^^ 14:22 <jrandom> oOo:你能复现那个吗? 14:22 <jrandom> (还是说它是间歇性的?) 14:22 <deer> <oOo> jrandom:做过两次了,还以为是已知问题,我会再试试 14:23 <jrandom> 谢谢。如果你能复现,请把测试细节告诉我,我会进一步深入调查。 14:23 <jrandom> (反正我无论如何还得再审计一遍应用层) 14:23 <deer> <oOo> jrandom:没问题,谢谢 14:24 <jrandom> 好的,还有谁有问题/想提的事吗? 14:25 <cat-a-puss> 我仍然有兴趣讨论如何做 myI2P 14:25 <cat-a-puss> 几个月后我也许能带几个人加入 14:25 <jrandom> 太棒了! 14:26 <hypercubus> 课程项目? ;-) 14:26 <cat-a-puss> 差不多那样 ;-) 14:27 <jrandom> 我想一旦我们发布带新 Web 界面的 0.4,用 Web 前端来组装应用(比如 myi2p)应该会容易得多 14:27 <cat-a-puss> 所以你觉得这可以完全在应用层完成? 14:27 <jrandom> 当然可以 14:28 <jrandom> 你还想到什么? 14:28 <cat-a-puss> 嗯,网络数据库可以用来存储元数据 14:28 <jrandom> 啊 14:28 <cat-a-puss> 它能访问那个吗? 14:28 <hypercubus> *咳* 14:28 <jrandom> 不,任何东西都不能访问 netDb 14:29 <jrandom> 我们能在 netDb 里施展一些魔法,是因为它非常专注,仅用于充当我们的分布式路由表 14:29 <hypercubus> cat-a-puss:你想要的是 Nightblade 正在做的 DHT(分布式哈希表) 14:29 <jrandom> 不过 myi2p(以及其他)当然可以在 i2p 之上使用 DHT 14:30 <hypercubus> (enclave) 14:30 <jrandom> 你在想什么样的元数据? 14:31 <cat-a-puss> 嗯,我设想做点像 Frost 里的频道那样的东西,它在 Freenet 上运行于一个 SSK(签名子空间密钥)之上 14:31 <cat-a-puss> 所以你在 I2p 之上的 DHT 上运行这些 SSK 14:31 <jrandom> 对 14:31 <jrandom> 不过对某些事情来说,那可能有点杀鸡用牛刀 14:31 <cat-a-puss> 但你仍需要一个元密钥,列出所有订阅该频道的人的 SSK 列表 14:32 <dm> 在 i2p 上跑 dht... 14:32 * dm 觉得短期内不可能可靠运行。 14:32 <Connelly> 一个通用的 DHT 库会很好 14:32 <dm> 可靠地 14:32 <deer> <Nightblade> 什么是 dht 库 14:32 <cat-a-puss> 那需要以不同的方式工作… 14:33 <jrandom> cat-a-puss:我想这取决于会发生什么样的活动。Frost 风格的论坛可能适合某些事情,FMB 风格的论坛可能适合另一些,而博客聚合器又可能适合再不同的一些场景 14:34 <Connelly> 比如一个 Kademlia 实现之类的 14:34 <Connelly> 我猜 enclave 会是类似的东西 14:34 <deer> <Nightblade> 我想我会先在 LibSAM 上做一些改动 14:34 <deer> <Nightblade> 我这边只剩两周课了,算上这周 14:34 <deer> <Nightblade> 然后我希望能做点东西 14:35 <jrandom> w00t! :) 14:37 <cat-a-puss> jrandom:基本上目标是要面面俱到。如果网络不能做所有事,人们就会用别的。(而且它需要把这些事做得更好,才能吸引掩护流量) 14:38 <jrandom> 我做过太多试图走“瑞士军刀”风格的项目——‘只要你造出来,他们就会来’ 14:38 <hypercubus> 网络是传输层,而不是应用层 ;-) 14:38 <jrandom> 那种做法极其、极其、极其少能成功。 14:38 <jrandom> i2p 传输层当然应该支持所有可能的点对点通信 14:38 <jrandom> 但 i2p 之上的应用应当对用户友好——也就是说,它们要解决某个具体的用户需求并帮助用户完成它 14:39 <jrandom> 大众不想要一个通信层,他们想要与人交谈的方式、阅读他人言论的方式,以及探索的方式 14:39 <Connelly> 不,我们应该创建一个 XUL,和一个全新的 Gecko 系统 14:39 <Connelly> 然后在其上构建一套 Mozilla 程序的大合集 14:39 <Connelly> 再把协作系统集成进 Mozilla ;) 14:40 <cat-a-puss> 很好,前提是应用对通信层有足够的控制,让它按应用的意愿工作。 14:40 <dm> Maxthon> Mozilla 14:40 <jrandom> cat-a-puss:当然。所有使用 SAM、I2CP 或 SDK 的应用都能做到其他应用能做的事 14:41 <jrandom> (这应该足够了【该功能/API 是仿照 JMS 和 MOMs(消息中间件)建模的,已在工业界经受十多年检验】) 14:43 <cat-a-puss> 好,那么我基本上就有:TCP、数据报,如果我愿意,这两者都可加上匿名性,以及一个运行在它们之上的 DHT。 14:44 <hypercubus> 无论你喜不喜欢,你都会有一定的匿名性 ;-) 14:44 <cat-a-puss> 所以即使应用想把 tunnel 长度设为 0 也不行? 14:44 <jrandom> 对——i2p 本身就是 TCP/数据报这一层,而 enclave 这个 DHT 应用可以作为数据存储的基础 14:44 <jrandom> 完全可以 14:45 <jrandom> 事实上,配合 0 跳的 tunnels 以及 Connelly 上周概述的对策,对付某些攻击者时它可以相当匿名 14:45 <jrandom> 呃,我看错你的意思了。是的,应用可以把 tunnel 长度设为 0,但事实上那仍然提供了一定程度的匿名性 14:46 <cat-a-puss> 好 14:46 <jrandom> (对某些人来说足够,但对某些统计攻击则不够) 14:46 <hypercubus> 如果你不想要匿名,就不该把流量跑在 i2p 上 14:47 <cat-a-puss> 而在同一主机/端口上的不同应用,我猜就是用不同的密钥来处理? 14:47 <jrandom> 没错 14:47 <deer> <DrWoo> 低匿名性在 I2P 上跑 P2P 可能会很受欢迎? 14:47 <cat-a-puss> 那么我剩下的唯一问题是某种“应答服务” 14:47 <jrandom> 对,DrWoo——文件共享等可能就能用 0 跳的 tunnels 14:48 <deer> <DrWoo> 嘿 soros! 14:48 <hypercubus> 我在想,i2p 上的 BitTorrent 风格应用很可能需要 0–1 跳的 tunnels 14:48 <Connelly> jrandom:针对 0 跳 tunnels 的哪种对策? 14:48 <deer> <soros> 嘿 woo :D 14:48 <deer> <DrWoo> soros:你藏起来了 呵呵 14:48 <cat-a-puss> 也就是说:在 i2p 数据库里设置点东西,我离线时我的流量先发给别人,然后我上线后联系他们,他们把我错过的东西填补给我? 14:48 <cat-a-puss> 他们不必能解密它 14:48 <deer> <soros> 放弃 iip 几个月了 14:48 <dm> soros 和 drwoo 重逢… 14:48 <dm> TEAR 14:48 <hypercubus> cat-a-puss:还是应用层的事情 14:49 <jrandom> cat-a-puss:我不太清楚,这类功能我并没有真的在 myi2p 里设想过,不过有几种方法可以实现 14:49 <deer> <soros> 这会自动发到 freenode 吗? 14:49 <deer> <soros> 哎呀…这是 i2p,抱歉 14:49 <jrandom> Connelly:对 tunnel 里的节点使用严格的排序 14:49 <deer> <DrWoo> soros:有点混乱 lol 14:50 <Connelly> 好 14:50 <hypercubus> 我们该在论坛上搞个投票,给 myI2P 选个新名字 ;-) 14:51 <jrandom> betty 14:51 <hypercubus> MyBetty? 14:51 <dm> MY TOOPIE 14:51 <jrandom> 呵 14:51 <deer> <Nightblade> 叫 acropolis 怎么样……是这个吗? 14:51 <hypercubus> Betty Toop? 14:51 <deer> <soros> MOAP2P 14:51 <deer> <DrWoo> I2P H@ME 14:51 <deer> <soros> P2P 之母 14:52 <hypercubus> nightblade:对,acropolis 14:52 <hypercubus> 我喜欢 14:53 <dm> 比如:Pipi in your face 14:53 <hypercubus> dm:你知道这些都会进会议日志的,对吧? ;-) 14:53 <Connelly> 伙计,我有个好主意 14:53 <deer> <DrWoo> 已知 I2P 的中心 14:53 <dm> hypercubus:pipi in your face 14:53 <Connelly> 我们把一个 3D 用户可编程的 RPG 集成进 I2P H@ME 吧 14:53 <deer> <soros> 叫它 HyperCube。 14:54 <Connelly> 并用 Mozilla 技术来做 :) 14:54 <dm> Maxthon 在 mozilla 上 pipi 14:54 <Connelly> 行,Maxthon 14:54 <hypercubus> 你最近迷上 XUL 了,connelly? ;-) 14:54 <Connelly> 是啊! 14:55 <Connelly> 不过我们应该创建一门完全基于 XML 的编程语言 14:55 <Connelly> 那样会更灵活 14:55 <jrandom> 然后我们也来造自己的硬件吧 14:55 <hypercubus> i2p 定制无线网格 routers 14:55 <jrandom> 再组建一家运输公司,用船和火车把它们发出去! :) 14:55 <dm> 我懂 CPU 14:55 <dm> 我造一个 14:56 <deer> <mule> 另外还要建芯片生产设施… 14:56 <Connelly> 对,一家匿名的航运公司 14:56 <hypercubus> 叫它 WhoEx 14:56 <Connelly> 并在月球上用反射器把激光互联网流量互相传过去! 14:57 <hypercubus> 我感觉是时候结束会议了 14:57 <jrandom> 说到那不.. 14:57 <jrandom> 呃,note 14:57 <jrandom> 还有别的想提的吗? 没有的话,我们有论坛和邮件列表 14:57 <jrandom> (而且我们一直都在 ;)) 14:57 * jrandom 收尾 14:57 <dm> 不是我,我还有生活。 14:57 <dm> LOSERS 14:57 <dm> NEEEEEEEEEEEEEEEERRRRRRRRRDDDDDDDSSSSS 14:57 * jrandom 在 dm 头上 *baf*s 一下 14:58 <jrandom> (会议结束)