Commit graph

952 commits

Author SHA1 Message Date
orignal 1f6be38145 wait for publish confirmation or publish to another floodfill 2020-11-15 13:06:02 -05:00
orignal 8b3a7486c7 rename CRYPTO_KEY_TYPE_ECIES_X25519_AEAD_RATCHET to CRYPTO_KEY_TYPE_ECIES_X25519_AEAD 2020-11-14 18:28:50 -05:00
R4SAS 62cd9fffa3
Automate AES-NI and AVX detection on runtime, make it default on x86-based systems (#1578)
Rework CPU extensions detection code and build with AES-NI and AVX support by default
2020-11-15 01:31:20 +03:00
orignal 7e874eaa7c pre-calculated h 2020-11-12 15:15:02 -05:00
orignal 1c7780a423 garlic clove block for router 2020-11-09 15:35:50 -05:00
orignal 07b77443dd don't handle TunnelBuild message for ECIES router 2020-11-07 18:28:38 -05:00
orignal 4ba1be2dc0 one time garlic encryption for ECIES routers 2020-11-05 21:21:46 -05:00
orignal 6362a7bba5 decrypt garlic on ECIES router 2020-11-05 15:27:37 -05:00
orignal 1740715c00 correct reply key and IV for ECIES record 2020-11-04 21:04:28 -05:00
orignal 21501cbf81 correct MixHash after decryption 2020-11-04 13:31:28 -05:00
orignal d5f3d6111e correct tunnel build record size to decrept 2020-11-04 11:52:33 -05:00
orignal bd04f92087 correct public key for ECIES address 2020-11-03 18:41:27 -05:00
orignal 942b2b05e7 correct key for AEAD decryption 2020-11-03 15:53:47 -05:00
orignal b8064b9b4b copy noise state 2020-11-03 15:42:53 -05:00
orignal f94d03465a don't create transit tunnel if decyrption failed 2020-11-03 15:38:25 -05:00
orignal 4e7aafeec1 send transit tunnel reply for ECIES router 2020-11-03 15:23:13 -05:00
orignal d820b8036e correct transient signature length 2020-11-03 09:20:14 -05:00
orignal 3907c17cf5 handle TunnelBuildMessage for ECIES router 2020-11-02 18:49:07 -05:00
orignal b12fa97a38 32 bytes private key for ECIESx25519 2020-10-29 18:41:21 -04:00
orignal 9f2a2e44a3 common MixHash and MixKey 2020-10-28 21:53:11 -04:00
orignal c63818f355 2.34.0 2020-10-27 12:27:08 -04:00
orignal c400372a79 create new ratchets session if previous was not replied 2020-10-27 08:32:38 -04:00
R4SAS 56f3bdd746
[win32] handle WinAPI errors in SSU
Windows can throw WinAPI errors which are not handled by boost asio

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-27 11:52:02 +03:00
orignal 21d99e355c MixHash(sepk) added 2020-10-24 15:48:56 -04:00
orignal ef5495bfb2 padding for x25519 crypto key 2020-10-23 22:14:00 -04:00
orignal c93ee0d65d tunnels through ECIES routers 2020-10-23 15:53:22 -04:00
orignal 57d6c7a3b3 Added TunnelConfig.cpp. Removed CryptoWroker.h 2020-10-22 21:06:23 -04:00
orignal d65a282e9d check routers with non ElGamal encryptions for lookup, publish and tunnel build 2020-10-22 18:34:15 -04:00
orignal 801ecaa41c temporary exclude routers with non ElGamal crypto types 2020-10-21 19:03:51 -04:00
orignal 49bf735c22 don't set destination to routers 2020-10-21 18:59:16 -04:00
orignal 387830e07a encyption type 0,4 by default for client tunnels 2020-10-19 18:26:01 -04:00
orignal 417b5ed6cc handle SSU v4 and v6 messages in one thread 2020-10-14 21:06:51 -04:00
orignal acc5592f59 create DH keys for SSU session directly 2020-10-13 21:12:52 -04:00
R4SAS 3f45a11f12
[SSU] handle ICMP responses
Windows network stack can forward ICMP to socket and simple deleting of
packet can cause socket death. Same thing can happen on other systems
but without socket death.

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-13 15:22:39 +03:00
orignal e3464add50 don't create new tunnels if offline 2020-10-12 17:15:17 -04:00
R4SAS 18bb4a71c2
fix incorrect chars in variable
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-12 18:27:25 +03:00
R4SAS 85e9da82b0 [transports] validate IP when trying connect to remote peer for being in reserved IP range
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-12 14:56:17 +00:00
R4SAS 99d046ca11
[http] handle WebDAV methods
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-10-12 07:31:57 +03:00
orignal ffa0f0afd9 check network status 2020-10-11 17:51:40 -04:00
orignal e21dac21c8 fixed #1557. don't try to send empty message 2020-10-11 14:02:12 -04:00
orignal e2a1cd12c3 don't delete unreachable routers if too few 2020-10-07 21:13:26 -04:00
orignal d218c9a983 disable ntcpproxy 2020-10-04 10:12:33 -04:00
orignal c2f13a1496 some cleanup 2020-10-03 22:29:52 -04:00
orignal faae2709d9 removed NTCP 2020-10-03 21:58:20 -04:00
orignal a8d23b5439 disable NTCP for good 2020-10-03 18:46:12 -04:00
orignal 8483464aab don't attach our RouterInfo to router's request 2020-10-03 17:20:04 -04:00
orignal 3a2724ec58 single thread for I2CP 2020-10-02 13:13:27 -04:00
orignal ee84291997 handle i2p.streaming.answerPings properly 2020-09-30 19:06:13 -04:00
orignal fd9229c467 ping/pong for streaming 2020-09-30 17:12:28 -04:00
orignal dec7a9a01c shared transient destination between proxies 2020-09-27 20:50:57 -04:00
orignal 335f9394a5 drop gcc 4.7 support 2020-09-26 19:32:19 -04:00
orignal f939a7b349 reduce variable tunnel build length to 4 2020-09-21 19:22:53 -04:00
orignal 09fdb068d2 Database lookups from ECIES destinations 2020-09-19 21:15:42 -04:00
orignal 024c29b180 eliminate boost/bind 2020-09-17 21:11:46 -04:00
orignal 2b0d1a2190 implement DatabaseLookupTagSet 2020-09-15 19:39:18 -04:00
orignal d0d71c93af set LeaseSet type to 3 for ratchets if not specified 2020-09-10 19:27:29 -04:00
orignal da1e52357f delete symmkey on cleanup 2020-09-08 07:46:55 -04:00
orignal a05a54b38e trim behind ECIESx25519 tags 2020-09-07 18:45:05 -04:00
orignal 954781262c 2.33.0 2020-08-24 12:27:39 -04:00
orignal 3159b06988 reseeds update 2020-08-15 13:53:49 -04:00
orignal e50abbb250 avoid replay upon SSU packet resend 2020-08-08 19:01:55 -04:00
orignal 8e25226574 use unordered_map for incomplete and sent messages 2020-08-08 13:34:27 -04:00
orignal 9636d82b37 MixHash for SessionConfirmed processing 2020-08-03 18:31:03 -04:00
orignal c3aa6b9cda use delivery type local if destination is not secified 2020-07-29 17:47:46 -04:00
orignal c41554109b change datagram routing path if nothing comes back in 10 seconds 2020-07-15 16:20:35 -04:00
orignal 67b94d3533 unordered_map for RouterInfos and LeaseSets 2020-07-07 15:38:20 -04:00
orignal 6f2e6ed887 key for next send ratchet 2020-06-30 15:05:17 -04:00
orignal 5f1e66d64b use pre-calculated x25519 ephemeral keys for ratchets 2020-06-30 13:00:41 -04:00
orignal 1f31fdc257 pre-calculate ephemeral keys for x25519 2020-06-29 20:02:09 -04:00
orignal df9965e129 use unordered_map for peers 2020-06-29 18:19:31 -04:00
orignal 61e9c31f0d don't hold RouterInfo after successive connect 2020-06-24 11:29:54 -04:00
orignal a0b35ebd3e mark NTCP2 unreachable routers 2020-06-22 22:32:18 -04:00
orignal 31494267e5 fixed datagram idle crash 2020-06-17 14:24:25 -04:00
orignal 1e609acb03 keep sending through first successive routing path 2020-06-14 11:16:08 -04:00
orignal 69194118df generate random padding length in bulk 2020-06-13 21:24:16 -04:00
orignal 1a39f7e5c6 GarlicRoutingPath per session 2020-06-13 16:18:12 -04:00
orignal 61897ae16c crypto.ratchet.inboundTags 2020-06-12 20:42:54 -04:00
orignal 5993cc857a start new tunnel message if remining is too small 2020-06-12 16:03:12 -04:00
orignal 44bb8f6f16 allocated datagram I2NP from memory pool 2020-06-10 21:19:37 -04:00
orignal a33cad4b70 eliminate datagram send timer 2020-06-10 11:57:40 -04:00
orignal f077836bf5 store DatagramSession for bulk 2020-06-09 19:20:24 -04:00
orignal 6d7847f2df send bulk datagrams 2020-06-09 16:26:45 -04:00
orignal 6735b2686b set LeaseSet2 for ECIESx25519 2020-06-05 15:41:30 -04:00
orignal 4ae41513ac save new session with NSR tagset 2020-06-04 18:19:38 -04:00
orignal 438a225487 pass calculatePublic 2020-06-03 19:58:36 -04:00
orignal e135696530 support multiple encryption keys through the I2CP 2020-06-03 16:05:19 -04:00
R4SAS 9135772f89
2.32.1
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-06-02 19:26:36 +03:00
orignal 0dc212d97c fixed non-updating LeaseSet1 2020-05-28 13:46:02 -04:00
R4SAS 45e8d5c50e
Return deprecated websocket config options for compatibility
Closes #1523

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-27 21:29:00 +03:00
orignal 37ec90c436 don't gererate more tags for detached session 2020-05-26 16:47:45 -04:00
orignal 0e0169d22b 2.32.0 2020-05-25 08:37:47 -04:00
orignal 1975adc48f print remote peer for queues 2020-05-24 14:14:16 -04:00
orignal 71564f0d10 set default i2cp.leaseSetEncType=0,4 for http and socks proxy for android 2020-05-24 10:30:00 -04:00
orignal 5a32082624 recreate session after 90 seconds incativity 2020-05-23 15:58:11 -04:00
orignal 86e8614934 allow session restart after 2 minutes from creation 2020-05-23 10:20:22 -04:00
orignal ead89c767a compress longer RouterInfo 2020-05-22 18:32:44 -04:00
R4SAS 8bae4975fb add copyright headers
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-22 18:14:53 +00:00
R4SAS 7a5146ea74 fix code syle(spaces->tabs, tabulations)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-22 18:14:53 +00:00
orignal 46ee427ee3 common header for repliable datagrams 2020-05-21 21:54:00 -04:00
orignal 0c2b0081b5 rollback 2020-05-21 19:38:25 -04:00
orignal f133a7f9fd resend outstading packets again 2020-05-21 18:58:28 -04:00
orignal 153aaa6d21 no compression for RouterInfo gzip 2020-05-21 15:33:12 -04:00
orignal e5901dad91 resend not more than half of window 2020-05-21 14:52:44 -04:00
orignal bdd75e1171 build client tunnels through router with version >= 0.9.36 2020-05-20 14:59:18 -04:00
orignal 648d035a0f GzipNoCompression for datagrams 2020-05-19 21:02:32 -04:00
orignal 7ebf2f010c shorter padding for optimal packet length 2020-05-19 19:03:12 -04:00
orignal 3db4421aa7 don't invoke gzip for decompression if no compression 2020-05-19 10:48:23 -04:00
orignal 9fb59e128b resubmit updated LeaseSet if not confirmed 2020-05-18 22:31:36 -04:00
orignal c7c6e5917a Streaming MTU size 1812 for ECIESX25519AEADRatchet 2020-05-18 20:45:25 -04:00
orignal 7b418b3adf insert whole message to queue 2020-05-18 17:51:45 -04:00
orignal 1c8d662e30 don't add padding for optimal packet size 2020-05-18 16:42:06 -04:00
orignal d4bfeab36c pass gzip parameter to UDP tunnels 2020-05-18 12:01:13 -04:00
orignal e1b1032df9 reseeds update 2020-05-18 08:29:09 -04:00
orignal 329439d0ae don't copy datagram payload 2020-05-17 16:49:31 -04:00
orignal 0b1cfb2102 send response to recived datagram from ECIESX25519AEADRatchet session 2020-05-16 19:10:17 -04:00
orignal 23be4c01df CreateLeaseSetClove 2020-05-13 18:09:26 -04:00
orignal 86782f3479 eliminate extra buffer allocation for incoming packets 2020-05-12 18:30:04 -04:00
orignal a96c205830 allow encryption type param for encrypted LeaseSet 2020-05-08 14:20:13 -04:00
orignal 9b6facf3b0 fixed crash of encrypted leaseset without authentication 2020-05-06 14:08:54 -04:00
orignal d503190647 fixed crash of encrypted leaseset without authentication 2020-05-06 10:08:01 -04:00
orignal c4d9c03930 handle termination block 2020-05-05 13:01:23 -04:00
orignal d7d70b707f configurable throw function 2020-05-05 11:13:59 -04:00
orignal bb7f03857c ThrowFatal function 2020-05-05 09:35:41 -04:00
orignal 53b43353eb fixed formatting 2020-05-05 08:27:56 -04:00
orignal b197556447 remove dependency from Win32App 2020-05-05 08:11:01 -04:00
R4SAS 42d4781a96
[windows] add binding exceptions messagebox notifications, update exceptions handling code
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-05 02:45:25 +03:00
R4SAS 4d48d35ad7
[SSU] handle socket binding errors
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-05-04 18:12:23 +03:00
orignal b7ba8f8e93 precalculate initial h and ck 2020-05-03 13:23:08 -04:00
orignal dff510c181 set best compression for RouterInfo 2020-05-03 09:27:17 -04:00
orignal 1eead0e885 GzipNoCompression witout zlib calls 2020-05-02 21:18:44 -04:00
orignal e301387896 don't calculate checsum for Data message send through ECIESX25519AEADRatchet session 2020-05-02 11:13:40 -04:00
orignal c49e544781 allow longer families 2020-05-01 14:30:56 -04:00
orignal d48db501e0 max payload is always 1730 2020-05-01 07:33:05 -04:00
orignal ec4e17f75c cleanup previous tagsets 2020-04-30 21:27:35 -04:00
orignal 17e69e67b1 create additional tags for NSR tagset 2020-04-30 15:38:15 -04:00
orignal c4f9f7da06 fixed warning 2020-04-30 13:45:26 -04:00
R4SAS f5712c4198
remove not needed initialization for pointer
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-04-30 04:59:05 +03:00
R4SAS 1aa0da3382 [NTCP2] fix socks proxy support
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-04-30 04:47:32 +03:00
orignal 27d69894d4 show ECIESx25519 session and tag on the web console 2020-04-29 20:50:31 -04:00
orignal 627d8cfe69 correct timestamp check for LeaseSet2 2020-04-29 17:11:48 -04:00
orignal 3d9c844dca handle out of order NSR 2020-04-28 22:03:13 -04:00
orignal 65e1871cd7 new tag for each NSR 2020-04-28 18:23:13 -04:00
R4SAS 0a431594f8
[Log] Change default loglevel (closes #1230)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-04-29 00:56:43 +03:00
orignal 7b22ef4270 create incoming NSR tagset 2020-04-28 14:47:53 -04:00
orignal f77a58b2dc set some ECIESx25519 params 2020-04-27 18:53:02 -04:00
orignal 142a138cfc store previous reverse key 2020-04-27 09:35:02 -04:00
R4SAS e6fdf5ad8d
[Log] create logfile even if loglevel is "none"
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-04-27 13:59:00 +03:00
orignal 50a77fedca removed trivial check 2020-04-26 19:37:00 -04:00
orignal 51e3d5f7bc create next tagset 2020-04-26 19:27:31 -04:00
R4SAS 7f859978dd
[webconsole] Add runtime transit limit changer, fix button CSS
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-04-26 23:45:30 +03:00