IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#i2p-dev
/2025/04/08
@eyedeekay
&kytv
&zzz
+R4SAS
+RN
+T3s|4
+acetone
+dr|z3d
+hk
+orignal
+postman
+radakayot
+snex
+theoddone
+weko
+wodencafe
Arch
BravoOreo
Dann
FreeB
Irc2PGuest11045
Irc2PGuest35986
Irc2PGuest59134
Irc2PGuest60478
Leopold_
Onn4l7h
Onn4|7h_
Sleepy
Soni
T3s|4_
Teeed
aeiou
aisle
ardu
b3t4f4c3___
bak83
cumlord
defaultnick
dr4wd3_
enoxa
eyedeekay_bnc
hagen_
mareki2p
not_bob_afk
plap
poriori
profetikla
qend-irc2p
rapidash
shiver_
solidx66_
u5657
uop23ip
x74a6
zzz are you the bittorrent guy from reddit?
theoddone I am yes.
zzz ok good, glad you made it over here
zzz lets back up a bit
zzz you're writing a i2p bittorrent client with an embedded router, right?
theoddone well I'm trying :)
theoddone I'm not embedding the router just yet, still working through using an already running router
zzz what router do you plan to embed, and what language is your client in
theoddone I've not fully decided yet, client is typescript
theoddone Working on a tauri app, so the rust router is maybe likely.
zzz and right now you're using SAM, correct?
theoddone well I was using SAM for the torrenting, but I've writing a basic i2cp client so that I can utilize the dht
zzz what router are you using now?
theoddone i2pd and the java router both
theoddone I started w/ i2pd as it distributes binaries that I could distribute w/ the tauri app, but easier to debug w/ the java router as I can add logs and recompile/restart
zzz so you're kindof at a crossroads right now
theoddone after I get dht working I'll probably take a look at emissary
theoddone how's that?
zzz you need datagrams and streaming on the same session
zzz option 1) SAM v3.3, not supported by i2pd or emissary, you're locked into java router
theoddone well I'll probably switch over to i2cp entirely, just taking it a step at a time
zzz option 2) I2CP, you need to write both a I2CP client lib AND a streaming lib.
zzz there are exactly zero streaming libs out there
theoddone 🤔
theoddone streaming can be done over i2cp right?
zzz client lib pretty straightforward, I know eyedeekay pointed you to his old go lib, and you have the java lib to peek at
zzz yes ofc
zzz socket -- streaming -- i2cp -- router
theoddone I was using this previously for sam - npmjs.com/package/@diva.exchange/i2p-sam
theoddone ^ but pretty sure I could only dial to others, they couldn't dial to me.
zzz in java it goes socket -- sam -- streaming -- i2cp -- router
zzz in i2pd it's socket -- sam -- streaming -- router (no i2cp in the middle)
zzz we were talking to the rust router guy about possibly pulling out his streaming impl as a lib
zzz but he doesn't have any i2cp client-side code
zzz anyway, that's your crossroads, sorry for the bad news
theoddone ah no worries, will cross that bridge when I get to it
zzz nobody's done really anything with SAM 3.3 before, other than some lib support
zzz libtorrent doesn't sound too enthusiastic about it
theoddone Can't use sam 3.3 w/ dht any way right?
zzz wrong. that's the whole point of 3.3, to enable udp + tcp on the same session
zzz but nobody's actually done it, up to now
theoddone Looking at the docs here:
theoddone ^ it mentions i2cp specifically
zzz sure.
zzz if you have any rust skills, you might want to collaborate with the rust router guy, perhaps there's a solution there somewhere
theoddone I don't ;_; just stumbling through
zzz so a simple i2cp client for datagrams isn't that hard, but what you didn't realize is you lost streaming when you switched from sam to i2cp
orignal zzz, I know why NSR decryption failed
orignal I haven't implemented resend properly
zzz it failed for me because of similar issues on my side, not because of your issues
zzz I exploded before I tried to decrypt it...
orignal wrong size basically
orignal and we need to save encrypted enpasulated key for follow on MixHash
orignal because we apply this MixHash after tag
zzz yup, it's a little tricky
zzz theoddone, I recommend you abandon I2CP for now, go back to SAM, work on 3.3 support, enable DHT if router supports 3.3, start testing with emissary, and when you get 3.3 working with java, start lobbying emissary to support it, and embed emissary
zzz theoddone, I recommend you abandon I2CP for now, go back to SAM, work on 3.3 support, enable DHT if router supports 3.3, start testing with emissary, and when you get 3.3 working with java, start lobbying emissary to support it, and embed emissary
zzz I think that'll be the most promising path
orignal how is DHT related to sam 3.3?
orignal in mean time fixed NSR