<p>[22:54] * hezekiah is away: Is off eating to keep up is strength for his upcoming tests</p>
<p>[22:54] <jrand0m> 2.x) apps </p>
<p>[22:54] <jrand0m> 2.1) ns </p>
<p>[22:54] <jrand0m> 2.2) i2pim </p>
<p>[22:54] <jrand0m> 2.3) i2ptunnel </p>
<p>[22:54] <jrand0m> 3.x) ??? </p>
<p>[22:54] <jrand0m> 0.x) welcome </p>
<p>[22:54] <jrand0m> welcome to meeting 60 </p>
<p>[22:54] <dm> thanks</p>
<p>[22:55] <mihi> oh. 60. whe have something to celebrate ;)</p>
<p>[22:55] * jrand0m hands out some beers</p>
<p>[22:55] *** wiht (anon@anon.iip) has joined channel #iip-dev</p>
<p>[22:55] * mihi does not like alcohol</p>
<p>[22:55] <thecrypto> hi</p>
<p>[22:55] * jrand0m takes back the german beer</p>
<p>[22:55] <thecrypto> i'm not awake</p>
<p>[22:55] <mihi> but not asleep either ;)</p>
<p>[22:55] <jrand0m> heh interesting </p>
<p>[22:56] <jrand0m> ok, 1.{x,1}) todo before 0.2 </p>
<p>[22:56] <thecrypto> i just remembered the meeting it today</p>
<p>[22:56] <thecrypto> i was just discussing wireless cards</p>
<p>[22:56] <jrand0m> the router is in pretty good shape, and I think 0.2 will be ready for internal dist and testing </p>
<p>[22:57] *** Signoff: mihi (EOF From client)</p>
<p>[22:57] <jrand0m> there are three things that need to get implemented first though. bandwidth limiting, AES on the TCP, and ElG session ack </p>
<p>[22:57] <jrand0m> the bandwidth limiting will be classless for the moment - just one big honking input limit and output limit. </p>
<p>[22:58] *** mihi_backup (~mihi@anon.iip) has joined channel #iip-dev</p>
<p>[22:58] <jrand0m> the code is committed to tie it in, but the limit is set at infinity atm </p>
<p>[22:58] <jrand0m> for point 1.2, the TCP transport has key exchange and authentication, but needs encryption </p>
<p>[22:59] <jrand0m> nop/semi-awake-thecrypto> thoughts on AES for streaming? </p>
<p>[22:59] <thecrypto> carefully</p>
<p>[22:59] <jrand0m> !thwap </p>
<p>[22:59] <thecrypto> sorry</p>
<p>[23:00] * CounterRev eats popcorn in the grand stands</p>
<p>[23:00] <jrand0m> CBC using first 16 bytes of H(sessionKey) work, or should we do something else? </p>
<p>[23:00] <dm> I can't remember where that originated, exclamation mark before an action.</p>
<p>[23:00] <thecrypto> i realized when the agenda started being pasted today was tuesday</p>
<p>[23:00] <jrand0m> dm> some eggdrops use them as command identifiers </p>
<p>[23:01] <thecrypto> why not use more bits from the DH for that?</p>
<p>[23:01] <jrand0m> hmm? </p>
<p>[23:01] <thecrypto> i don't see any problem for that</p>
<p>[23:01] <thecrypto> for the IV</p>
<p>[23:01] <jrand0m> more bits of what? X, Y, x, y? </p>
<p>[23:02] *** mihi (mihi@anon.iip) has joined channel #iip-dev</p>
<p>[23:02] <thecrypto> K</p>
<p>[23:02] <dm> !thwap thecrypto</p>
<p>[23:02] <thecrypto> what?</p>
<p>[23:02] <dm> he said X,Y,x or y</p>
<p>[23:02] <jrand0m> AES 256 only has a 16 byte K </p>
<p>[23:02] <jrand0m> er, IV </p>
<p>[23:03] <jrand0m> the session key is 32 bytes </p>
<p>[23:03] <thecrypto> but you generate many more</p>
<p>[23:03] <jrand0m> (originally I was stupid and made the IV the first 16 bytes of the key ;) </p>
<p>[23:03] <thecrypto> so use 48 bytes from the DH</p>
<p>[23:04] <dm> we all make mistakes.</p>
<p>[23:04] <jrand0m> hmm ok, pulling more bytes off the modPow will work. cool. but why 48? </p>
<p>[23:04] <jrand0m> (why not just another 16?) </p>
<p>[23:05] <thecrypto> i meant 32+16</p>
<p>[23:05] <jrand0m> ah 'k </p>
<p>[23:06] <jrand0m> ok cool, CBC with that. if you or nop or someone else has time (userx?), we can get rekeying / rotating keys in there. but for the moment I'll get it CBC'ed w/ that IV </p>
<p>[23:06] <jrand0m> (rekey would be just drop the connection and re-DH) </p>
<p>[23:06] <jrand0m> ok, 1.3) packaging up for 0.2 </p>
<p>[23:07] <jrand0m> that just means a make / ant script, install / build doc, plus a method for distributing seed routerInfo references </p>
<p>[23:07] <jrand0m> (plus, most likely, a set of a few routers for people to connect to) </p>
<p>[23:08] <jrand0m> I hope to have 0.2 out and ready for people to d/l and install by this time next week, if not sooner </p>
<p>[23:09] <jrand0m> the one last point holding up 0.2 is the ElG session ack </p>
<p>[23:09] <dm> can we use 0.2 to talk to each other?</p>
<p>[23:09] <jrand0m> yes dm </p>
<p>[23:09] <dm> ok, that's useful.</p>
<p>[23:10] <mihi> dm: is talking with you really useful? *veg*</p>
<p>[23:10] <dm> (Killer App: Cyber Sex)</p>
<p>[23:10] <jrand0m> 0.2 is definitely not even alpha, so it won't be for the faint of heart </p>
<p>[23:10] <jrand0m> heh </p>
<p>[23:10] <jrand0m> (but we need to get some testing and experience on some platforms and usage patterns other than my xp box here) </p>
<p>[23:11] <dm> I'll take care of the marketing for I2P, I have a knack for it.</p>
<p>[23:14] <jrand0m> since gcc supports java </p>
<p>[23:14] <jrand0m> and djgpp runs on dos </p>
<p>[23:14] <popopopo> I2P on DOS, now that would be an accomplishment</p>
<p>[23:14] <mihi_backup> popopopo: there is a commercial java version for DOS ;)</p>
<p>[23:14] * jrand0m is currently hacking around with gjc to see if we can compile to native</p>
<p>[23:14] <dm> Getting PPP working on DOS would be accomplishment enough.</p>
<p>[23:14] <mihi> dm: use arachne.</p>
<p>[23:15] <popopopo> gcj</p>
<p>[23:15] <mihi> should work via parallel modem.</p>
<p>[23:15] <nop> oh shit</p>
<p>[23:15] <nop> it's tuesday</p>
<p>[23:15] <nop> haha</p>
<p>[23:15] <jrand0m> ah right popopopo... I always type it wrong </p>
<p>[23:15] <mihi> oops, serial modem ;)</p>
<p>[23:15] <jrand0m> wb nop ;) </p>
<p>[23:15] <thecrypto> nop: you and me both</p>
<p>[23:15] <nop> haha</p>
<p>[23:16] <nop> sorry</p>
<p>[23:16] <nop> my brain is fried this week</p>
<p>[23:16] <nop> re-cooping</p>
<p>[23:16] <nop> from this weekend</p>
<p>[23:16] <thecrypto> nop: you and me both</p>
<p>[23:16] <jrand0m> ok, the ElG ack stuff. </p>
<p>[23:16] <jrand0m> (take 4) </p>
<p>[23:16] * CounterRev could test xp as well "its running.. its running... its stopped"</p>
<p>[23:17] <jrand0m> right now the ElG+AES works by using session tags - 32 byte tags prepended to AES streams to identify what session key to decrypt with </p>
<p>[23:17] <mihi> and "it's bluescreened, it's autorebooting"</p>
<p>[23:17] <jrand0m> (these tags are distributed in the streams, and the session keys are distributed in the ElG) </p>
<p>[23:18] <jrand0m> the problem comes up if we lose the first ElG+AES, we've lost the session key as well as the initial set of session tags </p>
<p>[23:18] <thecrypto> brb, playing magic</p>
<p>[23:18] <jrand0m> so we need to make sure messages use ElG instead of AES with a session tag unless we know for sure the session key has been received </p>
<p>[23:19] <jrand0m> there are lots of optimizations and tradeoffs here - one could always ElG and just forget about acks </p>
<p>[23:19] <jrand0m> (trading cpu for bandwidth) </p>
<p>[23:19] <jrand0m> or one could always require an ack for the first block, and then AES </p>
<p>[23:20] <jrand0m> but that breaks if the recipient crashes and loses the session key </p>
<p>[23:20] * nop is backlogging</p>
<p>[23:20] <jrand0m> there are a few different patterns that can be used to implement these sessions </p>
<p>[23:21] <jrand0m> what I'm probably going to go with is requiring an ack for the ElG message, using AES from then on, but every {$timeperiod, numMessages, bytes} send another ElG </p>
<p>[23:22] <dm> like P frames in MPEG!</p>
<p>[23:22] <jrand0m> 'k, I dont know the MPEG standard really </p>
<p>[23:22] <dm> sorry, I frames.</p>
<p>[23:23] <jrand0m> the thing is, these ElG messages are expensive. ~0.5-1.0 seconds </p>
<p>[23:23] <jrand0m> (cpu time) </p>
<p>[23:23] <jrand0m> though, hmm, we could precalculate them </p>
<p>[23:23] <jrand0m> (if we don't rotate session keys) </p>
<p>[23:23] <mihi> which cpu? ;)</p>
<p>[23:23] <dm> sender or reciever cpu time?</p>
<p>[23:24] <jrand0m> exactly mihi - mine. p4 1.7g. so we need some perf tuning on the algorithm </p>
<p>[23:30] <wiht> I have not done any coding on the naming server this past week.</p>
<p>[23:30] <wiht> I should say "of" the naming server.</p>
<p>[23:31] <jrand0m> 'k, understandable.. what do you think your schedule looks like for the next few weeks for implementation? no committment or anything, just wondering </p>
<p>[23:31] <wiht> But I will be working on it this week, and should have something more to report during the next meeting.</p>
<p>[23:31] <jrand0m> cool, great </p>
<p>[23:31] <CounterRev> what is i2p like sans ns?</p>
<p>[23:32] <jrand0m> icq, I suppose </p>
<p>[23:32] <wiht> I should be less busy during the next few weeks, and will have time for this. I cannot say when the naming server will be completed at this time.</p>
<p>[23:32] <jrand0m> you need the secret number for contacting someone, but once you have it, you're ok </p>
<p>[23:33] <mihi> CounterRev: lots of very long destination keys...</p>
<p>[23:33] <jrand0m> CounterRev> I suspect someone will install a squid and an i2ptunnel on their router, allowing people to point at the destination and browse the web anonymously </p>
<p>[23:33] *** mihi_backup (~mihi@anon.iip) has joined channel #iip-dev</p>
<p>[23:33] <jrand0m> ok, 2.2) i2pim... </p>
<p>[23:33] <jrand0m> thecrypto> you still playing magic? </p>
<p>[23:34] <dm> i2pim, is that the name of the IM app?</p>
<p>[23:37] <wiht> jrand0m: I see that we have three applications being developed at this time. Have others been proposed?</p>
<p>[23:37] <mihi> oops...</p>
<p>[23:37] <mihi> but i have nothing to tell anyway ;)</p>
<p>[23:37] <mihi> i2p is in cvs; look @ it ;)</p>
<p>[23:37] <dm> mihi speaks in code.</p>
<p>[23:38] <jrand0m> heh word. any updates since you added that config> command? </p>
<p>[23:38] <dm> or rather, his code speaks for itself.</p>
<p>[23:38] <mihi> i2ptunnel is in cvs i mean...</p>
<p>[23:38] * nop proposes ex-lax for i2p</p>
<p>[23:38] <mihi> jrand0m: nope.</p>
<p>[23:38] <jrand0m> coo' </p>
<p>[23:38] <jrand0m> would that be like a LaTeX clone nop? </p>
<p>[23:39] <jrand0m> wiht> some various discussions, but those three have been the main ones discussed </p>
<p>[23:39] <jrand0m> (the i2ptunnel enables a shitload of normal apps to operate over it) </p>
<p>[23:40] <dm> has it been tested with anything?</p>
<p>[23:40] <mihi> i2ptunnel has been tested extensively with the local router.</p>
<p>[23:40] <dm> (not locally)</p>
<p>[23:40] <jrand0m> I've done some web browsing with it, as well as ssh </p>
<p>[23:40] <jrand0m> (browsing a single site, that is) </p>
<p>[23:41] * wiht wonders if that website can still track people through cookies.</p>
<p>[23:41] <dm> great.</p>
<p>[23:41] <jrand0m> sure wiht, cookies are still sent </p>
<p>[23:43] <jrand0m> ok, thats it for apps atm, and on to 3.x) ??? </p>
<p>[23:43] <jrand0m> any questions, thoughts, concerns, toenail clippers, hedgehogs? </p>
<p>[23:43] <mihi> a pony? ;)</p>
<p>[23:43] <jrand0m> yeah, I want a pony! </p>
<p>[23:43] * dm raises his glass.</p>
<p>[23:43] <mihi> nop will give you onw...</p>
<p>[23:43] <dm> TO 0.2!!!</p>
<p>[23:44] <jrand0m> oh yeah, mihi pointed out that in 17 minutes we miss the deadline I set in my flog a month ago </p>
<p>[23:44] <jrand0m> to 1.0! </p>
<p>[23:45] <mihi> 7 minutes ;)</p>
<p>[23:45] <dm> so 2 weeks from now, we'll have 20 people on the network who'll be able to send texts to each other?</p>
<p>[23:45] <jrand0m> I said we'd have an alpha out by end of september. well, it looks like we'll be a little late on that, but I think we're still making a good pace </p>