Commit Graph

5201 Commits

Author SHA1 Message Date
zzz
4996c05361 i2ptunnel: Add ECIES persistent key support
Fix changing enc type on servers
2020-05-05 14:38:04 +00:00
zzz
438703a29b Ratchet: Add padding based on optimal message size
remove unused method
log tweaks
2020-05-05 10:39:16 +00:00
zzz
467a48cfe1 Build: Use --java2 for msgfmt
Runtime should be smaller and faster w/o Hashtable
Increases p200 size by < 1%; repack by 3.5%; updater by 4.5%
2020-05-05 10:36:56 +00:00
zzz
eab688b0bc Ratchet: Fix NPE ratcheting IB NSR tagset 2020-05-01 14:04:14 +00:00
zzz
90d9843acc Router: I2NP debug log improvements 2020-05-01 11:51:28 +00:00
zzz
634802c008 Streaming: Westwood+ congestion control (ticket #2719)
Increase max slow start window to 64
Change RTT calculations from double to float
Original idea from jogger
Original patch from zlatinb
Developed and tested with zlatinb
2020-04-30 12:44:55 +00:00
zzz
9e233b42a5 Ratchet: Error handling fixes, log tweaks 2020-04-30 11:29:08 +00:00
zzz
4cf8bfbe0d Ratchet: Increase callback timeout
- Mark tagsets after ratchet, and single tagsets, as acked
  so we don't go searching for the reverse tagset
  or adjust the expiration downward
- Eliminate redundant split() calculation
2020-04-29 21:40:25 +00:00
zzz
b6ecad3c0f Router: Convert Vector to List 2020-04-29 12:37:46 +00:00
zzz
b874bb2ba0 Ratchet: Block format updates 2020-04-27 20:51:02 +00:00
zzz
10be87bb59 Ratchet: Reduce tagset expiration
other minor cleanups
2020-04-27 19:52:39 +00:00
zzz
5173d24c72 Crypto: Reduce max ElG tagset expiration at receiver 2020-04-27 19:50:39 +00:00
zzz
baa26aec26 Tests: Prevent ratchet NPE in local tests 2020-04-25 11:01:27 +00:00
zzz
9da290831b Ratchet: Variable tagset lookahead/trim limits
Remove total size trimming, it's redundant
2020-04-25 10:32:33 +00:00
zzz
a7de9a7f24 i2psnark: Don't mark torrent BAD on I2CP errors (ticket #2725)
Logging:
 - Log to wrapper log after log manager shutdown (ticket #2725)
 - sync methods
Router:
 - Allow clients more time to get disconnect messages at shutdown (ticket #2725)
 - Don't delete router context at shutdown, to prevent a late
   creation of a new app context (ticket #2725)
 - Don't try to delete ping file on Android
javadocs
2020-04-24 12:44:17 +00:00
zzz
f2f6dfbf18 Router: Better enc type rejection message 2020-04-23 19:31:17 +00:00
zzz
5e2db982dd Router: Check for key certs in dests (prop. 145) 2020-04-23 19:16:31 +00:00
zzz
da8f49a712 Router: GarlicMessage debug logging improvements 2020-04-23 18:56:03 +00:00
zzz
a97085ac67 Ratchet: Expire outbound TS based on inbound last-used
Fix outbound expiration time
Reduce pending tagset expiration
Increase max send acks
Increase max next key replies
Don't save ref to NS callback once called
Sync tagset for debug output
2020-04-23 16:21:25 +00:00
zzz
b182562c80 Router: Fix logging NPE (thx zlatinb) 2020-04-21 17:01:03 +00:00
zzz
25a80c78b5 Build: Manifests for test, source, and javadoc jars 2020-04-21 12:52:23 +00:00
zzz
0cc1861649 Streaming: Single retransmit timer per connection (ticket #2715)
Only instantiate ResendPacketEvent for fast retransmit
Move packet timeout field from ResendPacketEvent to PacketLocal
Set window size to 1 on timeout
Always adjust window when acked, even if the packet was sent more than once
Reduce INITIAL_WINDOW_SIZE from 6 to 3 to reduce router DH overhead
Set maximum burst retransmissions to 16
Closer compliance to RFCs 5681 and 6298
Prep for additional changes (Westwood)
Other minor cleanups
Original patch from zlatinb
2020-04-19 14:59:08 +00:00
zzz
57cd4c5843 Ratchet: Adaptive order of muxed decrypt based on previous traffic 2020-04-19 14:21:24 +00:00
zzz
73886d06e8 Ratchet: Fix tagset remaining calculation
More efficient tag insantiation
Debug page fixes
Javadoc fixes
Minor cleanups
2020-04-19 10:59:32 +00:00
zzz
108b3a2363 Tests: Add I2CP port option to LocalClientManager 2020-04-17 13:19:41 +00:00
zzz
35bb5896a1 Streaming: Slow start fix from zlatinb 2020-04-17 12:02:26 +00:00
zzz
da9bfd48c0 Crypto: Disable speculative AES tagset usage 2020-04-17 11:59:59 +00:00
zzz
cc5f13fc5e ElG/AES debug log tweaks 2020-04-16 13:27:53 +00:00
zzz
7b47d3f314 Streaming:
Fix slow start (ticket #2708)
Reset retransmission timer after ack (ticket #2710)
Minor cleanups to prep for additional changes
Original analysis and patches from zlatinb
2020-04-14 12:59:26 +00:00
zzz
0d2dbcc8fc Ratchet: Additional muxed decrypt fix 2020-04-14 12:57:50 +00:00
zzz
e2cc62a21f Ratchet: Improve muxed decrypt
Try tags for both ratchet and AES before DH for either
Return empty CloveSet for ratchet errors after successful decrypt
Don't corrupt data in ECIESEngine on NS/NSR failure, for subsequent ElG attempt
Log tweaks
2020-04-14 12:13:00 +00:00
zzz
5e00bc6510 Streaming: Fix retransmission time (ticket #2709)
Remove unneeded checks on RTO max/min
Return new value from doubleRTO() (prep for ticket #2715)
2020-04-11 17:04:55 +00:00
zzz
80ae2ccea6 NTCP: Retain pending messages when replacing connection 2020-04-09 17:27:23 +00:00
zzz
370b7f1124 NetDB: Remove class M from auto-floodfill;
only 1% of floodfills are class M, and on average
they store 25% less leasesets than class N.
Reverts change to add M in 2015.
2020-04-08 20:20:55 +00:00
zzz
26b90b9d17 NTCP: More EnumSets 2020-04-08 15:36:36 +00:00
zzz
3fa15824ee Ratchet: TagSet cleanups
Tag.toBase64() optimization
Javadoc fixes
2020-04-08 13:16:15 +00:00
zzz
83a4f5f2f0 Transport: Hang the X25519 keygen thread off CommSystem so Ratchet can use it
Don't start NTCP if neither 1 nor 2 is enabled
2020-04-07 13:23:36 +00:00
zzz
f6b5a2d493 Ratchet: Simplify OB Session; there can be only one active OB TS
Fix bugs handling of out-of-order nextkeys
Expire unacked tagsets every time through
Remore unused OB session methods
2020-04-06 20:27:47 +00:00
zzz
14b33a1e4c Ratchet: Don't allocate space for tagset keys initially 2020-04-06 15:23:30 +00:00
zzz
c99adeeb61 Ratchet: Use append() for keys too 2020-04-06 14:35:03 +00:00
zzz
b979a97905 Ratchet: Use SparseArray.append() instead of put() for efficiency 2020-04-06 14:29:07 +00:00
zzz
916b296ee0 Ratchet: Expire unused tagsets sooner 2020-04-06 13:54:49 +00:00
zzz
f9f64a441b Ratchet: Fix sorting for sessions on /debug 2020-04-06 13:22:58 +00:00
zzz
2482df7121 Ratchet: Decrypt ES messages in-place 2020-04-06 13:02:27 +00:00
zzz
f9d7cfa7e1 log level tweak 2020-04-06 12:46:16 +00:00
zzz
5229c0e811 Ratchet: Replace session if NS received after 3 minutes
Update lastUsed on NSR or first tag received
2020-04-06 12:45:46 +00:00
zzz
1ca9674f3f RatchetSKM: Group debug output for IB tagsets by pubkey, not session key
ElGamalSKM: Debug header change
ElGamalAESEngine: Minor cleanups for efficiency
2020-04-06 11:31:18 +00:00
zzz
c77e41c59e Ratchet: Next Key completion
Fix NextSessionKey constructor with null data
Fix handling of next keys
Fix sending OB next keys
Fix RatchetSessionTag.equals() for use in SKM
Delete OB NSR tagset when adding OB ES tagset
Log tweaks
2020-04-06 10:42:44 +00:00
zzz
8c4410277d Ratchet: Next Key WIP, got first ratchet working
Remove more ElG tag code from SKM
2020-04-04 11:56:25 +00:00
zzz
6b05acff8d Ratchet: Next Key WIP 2020-04-01 18:44:06 +00:00