Logs for the Kovri Dev Meeting Held on 2016-11-13

Posted by: dEBRUYNE / fluffypony

November 13, 2016


<i2p-relay> {-anonimal} Proposed meeting items:
<i2p-relay> {-anonimal} 1. Greetings
<i2p-relay> {-anonimal} 2. Brief review of what's been completed since the previous meeting
<i2p-relay> {-anonimal} 5. Code + ticket discussion / Q & A
<i2p-relay> {-anonimal} 3. Preparing for alpha release
<i2p-relay> {-anonimal} 4. Moving meeting agenda issues from monero-project/kovri to monero-project/meta
<i2p-relay> {-anonimal} 6. Any additional meeting items
<i2p-relay> {-anonimal} Hi
<i2p-relay> {-anonimal} 7. Confirm next meeting date/time
<i2p-relay> {-anonimal} JFTR for the log: people think the meeting is at 19:00 when it is actually at 17:00 so we may be a bit shorthanded today
<i2p-relay> {-anonimal} 2. Brief review of what's been completed since the previous meeting
<i2p-relay> {-anonimal} The general focus of the past two weeks has been "escaping comfort zone" work:
<i2p-relay> {-anonimal} i.e., pursuing a few long-standing issues that I've avoided because they weren't fun:
<i2p-relay> {-anonimal} Build:
<i2p-relay> {-anonimal} - Builds builds builds! All builds are now in the GREEN!
<i2p-relay> {-anonimal} - ARMv7/8 and Win32/64 builds are now online! Static builds online!
<i2p-relay> {-anonimal} - Win32/64 run-time is now available after patching an upstream issue
<i2p-relay> {-anonimal} - ARMv7 has a non-Kovri runtime issue, ARMv8 box still needs testing
<i2p-relay> {-anonimal} - Much build-related work with pigeons, partly noted in monero-project/meta
<i2p-relay> {-anonimal} - Setup kovri per-platform IRC clients for testing, say hi to them in #kovri-dev
<i2p-relay> {-anonimal} Code:
<i2p-relay> {-anonimal} - Resolved all Coverity defects (details in #263)!
<i2p-relay> {-anonimal} - Bug fixes in addressbook + shutdown, https on windows
<i2p-relay> {-anonimal} - Design and planning: global refactoring, study, and testing
<i2p-relay> {-anonimal} - SSU Server testing (nothing merge-able at the moment)
<i2p-relay> {-anonimal} - Debugging, attending to open milestone issues
<i2p-relay> {-anonimal} - Mentoring: working with other contributors to "Make Kovri Great Again"
<i2p-relay> {-anonimal} - guzzi doing his civic duty while also working on http proxy (WIP)
<i2p-relay> {-anonimal} - olark providing great netdb/socks proxy documentation and refactoring
<i2p-relay> {-anonimal} Misc:
<i2p-relay> {-anonimal} - 7z/installer research for platform-agnostic bundling of data-dir with static binary
<i2p-relay> {-anonimal} - README/Doc updates, misc. project maintenance
<i2p-relay> {-anonimal} - Too many other things to mention here or things that I've simply forgotten
<i2p-relay> {-anonimal} Note: confirmed earlier: run-time is online on ARMv8!
<i2p-relay> {-anonimal} Anything else on point 2.?
<i2p-relay> {-olark} Sums up the past 2 weeks well.
<i2p-relay> {-anonimal} Side-note, JFTR: slack relay is not working and fluffypony isn't running meeting relay to #monero-dev
<i2p-relay> {-anonimal} Ok, moving on,
<i2p-relay> {-anonimal} 3. Preparing for alpha release
<guzzi> Here fyi
<i2p-relay> {-anonimal} Oh good, hi guzzi (I PM'd you earlier)
<guzzi> Ok
<i2p-relay> {-anonimal} So, 3. looking at https://github.com/monero-project/kovri/issues?q=is%3Aopen+is%3Aissue+milestone%3A0.1.0-alpha
<i2p-relay> {-anonimal} A few of these can be moved to next milestone (they aren't urgent),
<i2p-relay> {-anonimal} If I can't resolve the rest by Dec 1st. in addition to everything else that needs attention, then maybe Dec. 14th at the latest.
<i2p-relay> {-anonimal} Really there are only a few key issues that must be resolved for an alpha release and they are, IMHO:
<i2p-relay> {-anonimal} #375 and #119 <– at an absolute bare minimum
<i2p-relay> {-anonimal} because they really can get in the way.
<i2p-relay> {-anonimal} But that's a bare-minimum not-ideal scenario and I know we can get more done by then.
<i2p-relay> {-anonimal} Any thoughts?
<i2p-relay> {-olark} Yeah those are the big ones. I'll go over the addressbook and add/remove the destinations that don't work.
<guzzi> 119 looks easy for u. I dont disagree
<guzzi> Sorry i meant 375
<i2p-relay> {-anonimal} Well, it looks straightforward, we'll see what it really looks like when the time comes :)
<i2p-relay> {-anonimal} olark: re: destinations, which issue # is this?
<i2p-relay> {-olark} Keep it a small list.
<i2p-relay> {-olark} Some are just dead.
<i2p-relay> {-olark} So we have a small list of eepsites that do work and may be useful for a new user.
<i2p-relay> {-olark} Not in the milestone I believe.
<guzzi> Agree on the eepsite list actually containing valid sites
<guzzi> 119 looks like a critical fix for sure.
<i2p-relay> {-olark} re: subscription file
<i2p-relay> {-olark} Not high priority but maybe something nice to have for the first release.
<i2p-relay> {-anonimal} olark: oh that, well that's very low priority but if it's an issue than ok, but how can you confirm if they are dead? Were some removed in the .27 java i2p release?
<i2p-relay> {-olark} Just some of them never connect ever.
<i2p-relay> {-olark} I'll go over them again in the coming days.
<i2p-relay> {-anonimal} Ok, sounds good.
<i2p-relay> {-anonimal} guzzi: well, I wouldn't say critical because it doesn't effect all routers and it certainly hasn't effect the OSX instances
<guzzi> Ok understood
<i2p-relay> {-anonimal} And there's always the option to disable ssu at run-time, but yes I think it should be resolved.
<i2p-relay> {-anonimal} fluffypony hinted at not having a release before 33C3 but he may be trying to get out of https://github.com/monero-project/kovri/issues?q=is%3Aopen+is%3Aissue+milestone%3A0.1.0-alpha+assignee%3Afluffypony
* guzzi needs to find out what ssu is before i
<i2p-relay> {-anonimal} ;)
* guzzi open my mouth
<i2p-relay> {-olark} Semi-Secure UDP
<guzzi> Thanks
<i2p-relay> {-anonimal} guzzi: checkout the new Moneropedia entries I made that are now live on the website
<i2p-relay> {-anonimal} guzzi: link is in README.md
<i2p-relay> {-anonimal} (on current HEAD)
<guzzi> Awesome
* guzzi Todo tonight
<i2p-relay> {-anonimal} So, re: release,
<i2p-relay> {-anonimal} Let's keep hacking away for the next two weeks and see where we stand.
<i2p-relay> {-anonimal} Any objections?
<guzzi> Ok i will read your pm when i get back
<i2p-relay> {-olark} Keep on hacking away ;)
<guzzi> On phone now
<i2p-relay> {-anonimal} The difference between a Dec. 1st alpha release and Dec. 14th alpha release IMHO will be noticeable to an end-user. Neither is useful without package resolution nor more monero input/participation; so I want to wait for a final decision until fluffypony speaks up. We can talk more this coming week.
<guzzi> I agree boss.
<i2p-relay> {-anonimal} lol guzzi
<i2p-relay> {-anonimal} My biggest concern is that for reasons not of my doing, a release doesn't happen before 33c3, and I really hate having to change dates like this.
<i2p-relay> {-anonimal} But I'll have to be flexible for now because there are many moving parts.
<i2p-relay> {-anonimal} Anything else on point 3.?
<guzzi> No
<i2p-relay> {-anonimal} olark: ?
<i2p-relay> {-olark} We can keep moving along.
<i2p-relay> {-anonimal} 4. Moving meeting agenda issues from monero-project/kovri to monero-project/meta
<i2p-relay> {-anonimal} So, as this meeting has proven, no one else in Monero looks at the meeting agendas I prepare for every meeting :)
<i2p-relay> {-anonimal} With the creation of monero-project/meta, I think it would be better to not clutter the kovri repo with meeting agendas.
<guzzi> Agree 100%
<i2p-relay> {-anonimal} I would hope that more monero people get inolved with meeting agenda preparation and start using the meta repo too.
<i2p-relay> {-anonimal} I'd like to move agendas to meta from now on. guzzi is on board. Anyone else?
<i2p-relay> {-olark} Sounds good to me.
<i2p-relay> {-anonimal} Alright, I'll start doing that.
<i2p-relay> {-anonimal} Moving on,
<i2p-relay> {-anonimal} 5. Code + ticket discussion / Q & A
<i2p-relay> {-iDunk} i built kovri on win64 successfully but the build failed on linking for win32
<i2p-relay> {-anonimal} We've basically covered this in point 3, but I did add some new notes to #187
<i2p-relay> {-iDunk-kovri-win64} hiii
<i2p-relay> {-anonimal} For #187 not sure if EinMByte is around.
<i2p-relay> {-anonimal} Yay, hi iDunk-kovri-win64 :)
<i2p-relay> {-iDunk-kovri-win64} :)
<guzzi> Do we care about 32
<i2p-relay> {-anonimal} iDunk: can you paste error after the meeting?
<i2p-relay> {-iDunk} will do
<i2p-relay> {-anonimal} iDunk guzzi: our win32 build is working with buildbot https://build.getmonero.org/waterfall
<guzzi> Ok so it is isolated
<i2p-relay> {-anonimal} Yep, most likely, we'll see.
<i2p-relay> {-anonimal} Anyone have any questions/comments on open/closed issues?
<guzzi> Nice work idunk thank you
<guzzi> None here. You know where i am at
<i2p-relay> {-iDunk} np
<i2p-relay> {-anonimal} lol, sipping up a pina colada I imagine
<guzzi> Lol yes.
<i2p-relay> {-anonimal} olark: any questions/comments on open/closed issues?
<guzzi> I also had meant you know where i am at code wise
<i2p-relay> {-olark} All good ;D
<i2p-relay> {-anonimal} Oh, haha!
<i2p-relay> {-anonimal} * glances over issues
<i2p-relay> {-olark} re: APIs
<i2p-relay> {-olark} How is that coming along?
<i2p-relay> {-olark} #351 and #350
<i2p-relay> {-anonimal} Once more client/router work is completed, they will be easier to implement.
<i2p-relay> {-anonimal} So that first, API second.
<i2p-relay> {-olark} Ya, still got a little ways to go. Haven't written APIs in a while so could be a good place to refresh myself ;)
<i2p-relay> {-anonimal} I'm getting a better idea of how I'd like to implement but I'd like to compare notes with EinMByte when he returns before moving on anything.
<i2p-relay> {-anonimal} (because he has strong opinions on the matter and he has great experience)
<i2p-relay> {-olark} Yeah his input is very valuable.
<i2p-relay> {-olark} Well known in the i2p community.
<_Slack> <nanoakron> Lol
<i2p-relay> {-anonimal} I'll continue to comment in those tickets as other work progresses.
<i2p-relay> {-anonimal} I always keep the APIs in mind when doing other work,
<i2p-relay> {-anonimal} which always leads to more work that needs to be resolved before returning to APIs
<i2p-relay> {-olark} Yep
<i2p-relay> {-anonimal} (etc. etc.)
<i2p-relay> {-anonimal} Ok, anything else on this point?
<i2p-relay> {-anonimal} If not we can talk more about it later this week.
<i2p-relay> {-olark} That is all on my side.
<i2p-relay> {-olark} Ok.
<guzzi> None here
<i2p-relay> {-anonimal} 6. Any additional meeting items
<i2p-relay> {-anonimal} Nothing from me. We have a clear plan, we're executing the plan as planned.
<guzzi> None here. You will be busy. I will try to correspond efficiently s possible the next two weeks
<_Slack> <nanoakron> Slight general question about i2p - if I'm running kovri in the future, would a malicious agency be able to detect that?
<i2p-relay> {-olark} ISPs can figure out you are using i2p.
<i2p-relay> {-anonimal} nanoakron: that depends on the agency
<moneromooo> A malicious one.
* moneromooo runs
<_Slack> <nanoakron> Lol
<i2p-relay> {-anonimal} nanoakron: good question, I think that was one of the SE questions I bookmarked to answer
<_Slack> <nanoakron> Are there any loose thoughts on the step beyond kovri? Steganographic encoding within normal router traffic?
<i2p-relay> {-anonimal} Now that moneropedia is merged, I'll answer them.
<i2p-relay> {-olark} I would like to explore better ways to obscure i2p traffic in with regular clearnet traffic, but that is for future research.
<_Slack> <nanoakron> Of course
<i2p-relay> {-olark} SSU is pretty resistant to DPI and kovri already takes some countermeasure to hide the fact i2p is being used.
<i2p-relay> {-anonimal} Stego obfuscation within encryption? That makes as much sense as encrypting the encryption more than it is already encrypted.
<i2p-relay> {-olark} But there are lots of avenues to explore.
<i2p-relay> {-olark} Packet size I believe is the biggest giveaway among others.
<i2p-relay> {-anonimal} nanoakron: do you have any research on that?
<i2p-relay> {-anonimal} (proving any effectiveness?)
<_Slack> <nanoakron> Sadly not :(
<_Slack> <nanoakron> It's just something I heard being discussed between two more technical people where I work a while ago.
<i2p-relay> {-anonimal} nanoakron: it would probably me more effective to simply add another layer of encryption (but that isn't really necessary)
<_Slack> <nanoakron> Stego to hide bitcoin
<i2p-relay> {-anonimal} (but maybe I'm not understanding your point exactly)
<i2p-relay> {-anonimal} Oh, well that makes sense.
<i2p-relay> {-anonimal} They're not dealing with layered encryption like we do.
<_Slack> <nanoakron> At the router level
<i2p-relay> {-anonimal} (afaik)
<i2p-relay> {-anonimal} I'm not sure how effective that would be for us, but nanoakron if you get more info please feel free to send to #kovri-dev
<_Slack> <nanoakron> How easy would it be for the North Korean government to shut down all i2p traffic for example. Anyway…it's highly theoretical stuff right now.
<_Slack> <nanoakron> Of course!
<i2p-relay> {-anonimal} nanoakron: and olark pointed out important overlay-network facts
<_Slack> <nanoakron> Yep
<i2p-relay> {-anonimal} North Korea? Can't they basically do whatever they want whenever they want to on any network level?
<i2p-relay> {-olark} North Korea has no internet infrastructure aside from government use afaik.
<_Slack> <nanoakron> That would be the worst case scenario. For example if our governments decided to ban all non-fiat currencies.
<i2p-relay> {-olark} But if it is any indication, I2P can be run in China.
<i2p-relay> {-anonimal} Doesn't their "internet" exist entirely in a class C subnet?
<_Slack> <nanoakron> Anyway, I'm just spitballing
<i2p-relay> {-olark} It is important to keep those things in mind though.
<i2p-relay> {-anonimal} Spitball all you want, we have 7 minutes left :)
<_Slack> <nanoakron> ;)
<guzzi> Lol. True
<_Slack> <nanoakron> Something for the monero research lab
<guzzi> We should at least worry about packet sizes.
<guzzi> In the future
<guzzi> We are going to add user agent options
<_Slack> <nanoakron> Deterministic packet sizes to prevent fingerprinting and sniffing
<_Slack> <nanoakron> ?
<i2p-relay> {-olark} Blending in with SSL traffic is the ideal scenario.
<_Slack> <nanoakron> Ah yes
<_Slack> <nanoakron> Will my little Odroid C2 node (ARMv8) be able to run kovri alongside monero in its final embodiment?
<i2p-relay> {-anonimal} NTCP2 is addresses TCP packet length obfuscation.
<i2p-relay> {-anonimal} olark: blending in with SSL, I don't see how that would be ideal, what do you mean?
<i2p-relay> {-olark} To fly under the radar more.
<i2p-relay> {-anonimal} nanoakron: I'm running kovri on ARMv8 linaro right now
<_Slack> <nanoakron> Neat
<i2p-relay> {-olark} If I am a mouse my best bet is to sneak in with all the other rats into the kitchen right? ;)
<i2p-relay> {-olark} Hoping no one realizes I am a mouse.
<i2p-relay> {-anonimal} olark: they'll tend to shutdown SSL connections before detecting NTCP/UDP signatures, I'm pretty sure of that.
<_Slack> <nanoakron> Yes, not true stego but mimickry.
<guzzi> Agree.
<guzzi> Any other doomsday senerios?
<_Slack> <nanoakron> Lol
<guzzi> 1 min?
<i2p-relay> {-anonimal} Btw: a TLS transport is still an open draft proposal from 2009 https://geti2p.net/spec/proposals
<i2p-relay> {-anonimal} TLS/SSL makes it's case but I'm not strongly in favor. We can talk more about that at the next meeting if anyone wants to, just add a note in the agenda.
<i2p-relay> {-anonimal} Moving on,
<i2p-relay> {-anonimal} 7. Confirm next meeting date/time
<i2p-relay> {-anonimal} moneromooo: will next meeting be 18:00 for #monero-dev?
<i2p-relay> {-olark} Hmmm
<i2p-relay> {-anonimal} Or 17:00?
<i2p-relay> {-fluffypony} oh
<i2p-relay> {-fluffypony} sorry anonimal
<i2p-relay> {-anonimal} Thanks for understanding fluffypony.
<i2p-relay> {-fluffypony} my apologies
<i2p-relay> {-fluffypony} I must've misunderstood the timing discussion
<i2p-relay> {-anonimal} fluffypony: apologies accepted! Are #monero-dev meetings now at 17:00 or 18:00
<i2p-relay> {-anonimal} (fluffypony: we're idling on 7. Confirm next meeting date/time)
<i2p-relay> {-fluffypony} anonimal: let's update after the Monero meeting
<i2p-relay> {-anonimal} Alright, I'll start with 17:00
<i2p-relay> {-anonimal} Meeting in two weeks.
<i2p-relay> {-anonimal} Thanks everyone!
<i2p-relay> {-olark} Good talk everyone :D

Post tags : Dev Diaries, Kovri I2P Router, Cryptography