IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#i2p-dev
+FreefallHeavens
+R4SAS
+RN
+RN_
+acetone
+cims
+eche|off
+nilbog
+onon_
+orignal
+postman
+qend-irc2p
+rednode
+snex
+wodencafe
Arch
Danny
Holmes
Irc2PGuest22226
Irc2PGuest38237
Irc2PGuest44044
Irc2PGuest63745
Irc2PGuest66257
Irc2PGuest96092
Onn4l7h
Onn4|7h
Over
SilentWave
Sisyphus
Sleepy
T3s|4
T3s|4_
Zapek
[-_-]
aargh4
ahiru
ananas
anontor
dr4wd3
dr|z3d
duanin2
i2potus
ice_juice
justaper1
makoto
marek22k
maylay
n2_
not_bob_afk2
pinotto
poriori
profetikla
r00tobo_BNC
rapidash
test7363673
uop23ip
user1
w8rabbit
x74a6
zelgomer
zzz
fa Ahh the trick to getting a i2pgit recovery email was using @i2pmail.org instead of @mail.i2p
orignal zzz, how do you calculte "distance" between peer ordering key and router hash? xor?
zzz orignal, we don't calculate distance exactly
orignal the what your H function you have mentioned before?
orignal I have peer ordering key and router hash what do I do with it?
zzz one sec let me double check
zzz k0 = peerorderingkey[0-7]; k1 = peerorderingkey[8-15]; H() = siphash(k0, k1, routerhash)
zzz then for slices we just use H[0] & 0x03
orignal so you orderring key is 16 bytes only?
zzz it's 32 bytes actually, but not really necessary
zzz we do use 16-31 for ordering middle hops but only if tunnel is 4 hops or more
zzz we also don't use slices for exploratory, we just order the peers by siphash
zzz so our client ordering and exploratory ordering are completely different, I'd forgotten about that
orignal so siphash
zzz yeah, siphash is fast and easy, good enough for this application
zzz but most of this we did 15 years ago, maybe you have better ideas
orignal I thoutgh it was for NTCP2 only
zzz I think I had some other hash function but switched to siphash after I learned about it for NTCP2
orignal how about HMAC?
zzz sure
zzz here's our expl. tunnel ordering, it's really basic:
zzz public int compare(Hash l, Hash r) {
zzz long lh = SipHashInline.hash24(k0, k1, l.getData());
zzz long rh = SipHashInline.hash24(k0, k1, r.getData());
zzz if (lh > rh)
zzz return 1;
orignal anyway I see your point
zzz if (lh < rh)
zzz return -1;
zzz return 0;
zzz yup. siphash is good if you just need something fast and deterministic but opaque. But you can use just about any hash function you want for this
orignal I will check want's faster
orignal siphash or HMAC-SHA1
zzz google says "SipHash is vastly faster than HMAC"
orignal thanks
orignal let's use siphash
IRCaBot New messages won't show without JavaScript.
My JS code is small and simple. Check it at /realtimechat.js and come back with enabled!