Commit Graph

624 Commits

Author SHA1 Message Date
orignal
ef0fb48f1f blind private keys 2019-04-05 16:03:58 -04:00
orignal
ea791309ad moved credential and blinding to BlindedPublicKey 2019-04-02 16:32:18 -04:00
orignal
5b56f4007b counter is always in Little Endian 2019-03-29 18:45:31 -04:00
orignal
e2071542bf use 16 bytes iv for chacha20 2019-03-29 16:18:51 -04:00
orignal
cdb217b774 always initialize m_Pkey 2019-03-29 13:15:32 -04:00
orignal
3fd9d5f641 save b33 addresses 2019-03-28 16:06:53 -04:00
orignal
00b5fdce03 create stream to blinded dest 2019-03-27 16:04:46 -04:00
orignal
ff44bcc489 complete implementation of RedDSA 2019-03-24 18:42:52 -04:00
orignal
3d4d260a34 extract b33 address 2019-03-22 16:04:47 -04:00
orignal
8e4b9da97d pass blinded key instead identity for encrypted LS2 2019-03-22 15:32:13 -04:00
orignal
cdfd411df7 2.24.0 2019-03-21 10:58:59 -04:00
orignal
aa4bddd6ec common HKDF 2019-03-15 12:25:20 -04:00
orignal
8ec12a1b65 fixed race condition for publishing 2019-03-10 09:22:42 -04:00
orignal
0fbf552e95 lookup and handle encrypted LeaseSet2 2019-03-07 14:52:59 -05:00
orignal
09b1b120d7 update LeaseSet2 if store type changed 2019-03-07 14:51:05 -05:00
orignal
557244bc3f verify blinding key for encrypted LS2 2019-03-07 11:55:47 -05:00
orignal
24c5ed1cff calculate store hash for encrypted LeaseSet2 2019-03-06 16:08:04 -05:00
orignal
32e55ebd0c blind public key for encrypted LeaseSet2 2019-03-05 15:51:24 -05:00
orignal
ea3070d02b derivation of subcredentials for LeaseSet2 2019-03-05 12:41:01 -05:00
orignal
9aaba49a9f decrypt and handle Layer 2 of encrypted LeaseSet 2 2019-03-04 15:47:35 -05:00
orignal
9b64be07a9 set chacha20 counter to 1 2019-03-04 15:08:03 -05:00
orignal
560ebcec8d persist.addressbook parameter added 2019-03-01 14:42:20 -05:00
orignal
9b1fe4338b reuse_address for ipv6 acceptor 2019-02-28 16:00:26 -05:00
orignal
9188e3ad3f ChaCha20 decrypt 2019-02-28 13:31:51 -05:00
orignal
af65af5be9 H and HKDF for encrypted LeaseSet2 2019-02-27 15:52:47 -05:00
orignal
2f0115c300 handle RedDSA as EdDSA 2019-02-27 13:18:09 -05:00
orignal
0646461342 check published timestamp for LeaseSet2 2019-02-26 16:20:24 -05:00
orignal
846eac29dc filter out unspecified addresses. Check floodfill status change 2019-02-24 18:26:58 -05:00
orignal
0f9e3c5b33 fix crash if public key is null 2019-02-22 13:17:43 -05:00
orignal
aa27746982 remove address string 2019-02-22 11:03:31 -05:00
R4SAS
d8a4954bf1 [NetDb] check PersistProfiles on load
* tabulation fixes
2019-02-22 18:37:32 +03:00
orignal
d40a029dae eliminate extra copy 2019-02-20 12:36:05 -05:00
orignal
96d961c393 correct public key for EdDSA trasient key 2019-02-15 15:03:58 -05:00
orignal
7b6814e32d correct flags 2019-02-14 21:22:49 -05:00
orignal
6fee2d3536 correct options szie 2019-02-14 17:49:23 -05:00
orignal
636fc633d4 send offline signature in streaming 2019-02-14 12:11:25 -05:00
orignal
72a239838e publish offline signature 2019-02-12 14:56:39 -05:00
R4SAS
7d0d421724 [windows] handle unexpected conditions (#1185) 2019-02-12 04:27:09 +03:00
orignal
80ffe13f3e correct offline signature layout 2019-02-08 15:12:51 -05:00
orignal
1eb726c9bb create offline keys 2019-02-08 12:19:51 -05:00
orignal
1fa3ba8b42 read offline info 2019-02-07 16:04:31 -05:00
orignal
b6bfd66a49 use identity from LeaseSet 2019-02-06 21:19:44 -05:00
orignal
2cac9b03ff common code for offline signatures 2019-02-06 13:36:03 -05:00
R4SAS
f5f4190803 catch error 10045 on stopping SAM acceptor (#1233), fix warning in util 2019-02-06 03:03:37 +03:00
R4SAS
a14d554947 fix tray icon disappearing, var type warning, code tabulation 2019-02-06 00:24:01 +03:00
orignal
6d9e5147b5 handle offline signature 2019-02-05 15:32:18 -05:00
R4SAS
9c76368dbc inet_pton for winxp 2019-02-05 14:13:23 +03:00
orignal
bd5122c6ea fixed build error 2019-02-01 17:41:12 -05:00
orignal
6643258618 implement Update for LeaseSet2 2019-02-01 12:55:13 -05:00
orignal
bc3f02cb6b fix #1290. copy correct size if message didn't fit previous 2019-01-31 16:03:10 -05:00
orignal
d848ae332a encryption keys priority 2019-01-30 14:10:40 -05:00
orignal
08ddc98303 initial LeaseSet2 support in I2CP 2019-01-29 11:30:31 -05:00
orignal
22c1ce3ea5 don't pick port 9150 (Tor browser) 2019-01-23 09:53:30 -05:00
orignal
60a282826c 2.23.0 2019-01-21 10:33:22 -05:00
orignal
65c2c7d80b re-create LeaseSet if store type has changed 2019-01-16 19:00:17 -05:00
orignal
468a32a819 check LS2 transient key expires time 2019-01-15 18:56:26 -05:00
orignal
b89cf73ae2 correct encryption key type for LS2 2019-01-15 18:41:00 -05:00
orignal
9cf43dea1a handle i2cp.leaseSetEncType 2019-01-15 15:43:21 -05:00
orignal
884cf756ed remove invalid leasesets 2019-01-14 18:37:17 -05:00
orignal
3712749a94 extract timestamp for LS2 2019-01-14 13:49:27 -05:00
orignal
6569c4aa03 actual key size for LS2 2019-01-13 19:17:02 -05:00
orignal
d6b2b3c996 take key type for LS2 from identity 2019-01-13 08:34:34 -05:00
orignal
52a6a12a9a correct LS2 creation 2019-01-12 18:25:10 -05:00
orignal
e647603dce handle i2cp.leaseSetType parameter 2019-01-11 13:58:02 -05:00
orignal
dadf6174ba create standard LS2 2019-01-10 11:52:34 -05:00
orignal
84de7675c4 don't copy LS2 for signature verification 2019-01-10 10:57:57 -05:00
orignal
9504e69598 LocalLeaseSet2 added 2019-01-09 14:51:47 -05:00
orignal
5398b651f7 handle LS2 in destinations 2019-01-09 12:47:47 -05:00
orignal
b5596c4596 handle encrypted LS2 2019-01-08 11:26:50 -05:00
orignal
8ca8bc810d take elgamal percomputation from config 2019-01-08 09:23:14 -05:00
Rosen Penev
90f2b2d249 Fix compilation without deprecated OpenSSL APIs 2019-01-06 15:39:24 -08:00
orignal
f74b27c58c check if chacha20 and poly1305 is presented in openssl build 2019-01-06 17:43:05 -05:00
orignal
e55e15693d update LS2 leases 2019-01-02 15:40:48 -05:00
orignal
c54e6bafdb process meta LS2 2019-01-02 14:19:10 -05:00
orignal
2e56c4895d transient key signature verification 2019-01-02 09:43:18 -05:00
orignal
bce4224d6e extract and verify LS2 transient key 2019-01-01 17:00:37 -05:00
orignal
812e2814bc read flags from LS2 header 2018-12-31 14:23:48 -05:00
r4sas
7cd17f8e1f build android app with llvm 2018-12-27 03:16:38 +03:00
orignal
6193b06708 LS2 signature verification and store type 2018-12-26 15:27:32 -05:00
orignal
12af68bdb5 initial support of LeaseSet2 2018-12-21 15:00:03 -05:00
orignal
1933e44719 reseeds update 2018-12-17 20:14:12 -05:00
orignal
8a987af244 initialize m_Pkey 2018-12-11 15:14:51 -05:00
orignal
65cbb06080 create ephemeral keys after getting connected 2018-12-07 19:24:46 -05:00
orignal
979ea9c252 removed address resolvers as discontinued 2018-12-07 12:27:06 -05:00
orignal
c7af2889fa removed dummy initializer 2018-12-05 14:56:40 -05:00
orignal
5ab3390434 don't create dummy initializer for android 2018-12-05 11:39:48 -05:00
orignal
67f60f1889 set openssl no_config before boost::asio:ssl 2018-12-04 21:20:12 -05:00
orignal
985a468d0f don't read openssl config file 2018-12-04 18:39:49 -05:00
orignal
34dc6fbdc1 check if session is terminated before sending 2018-12-04 16:10:52 -05:00
orignal
b57152cc25 common code for padding and sending termination and RouterInfo messages 2018-12-04 15:56:55 -05:00
orignal
dc9562e430 padding for termination message 2018-12-04 15:23:43 -05:00
orignal
05689fe183 padding for short messages 2018-12-04 15:00:10 -05:00
orignal
8f6f95211e eliminate extra copy of RouterInfo 2018-12-04 12:56:49 -05:00
orignal
f30b6c9e6e const reference to vector of buffers 2018-12-04 12:54:48 -05:00
orignal
12ac7d6a00 enable sending I2NP messages 2018-12-03 18:47:20 -05:00
orignal
10251a6447 fixed typo 2018-12-03 15:54:35 -05:00
orignal
089cbbc20a rollback 2018-12-03 14:51:27 -05:00
orignal
95ab68acd1 don't copy I2NP messages to NTCP2 frame 2018-12-03 14:14:36 -05:00
orignal
abc4f6c70b fixed bug with chacha20 encryption of short messages 2018-12-03 13:36:17 -05:00
orignal
8fc3a1f9c9 correct frame size for I2NP msgs 2018-12-03 12:29:24 -05:00
orignal
5c3d0fc02c create I2NP blocks 2018-12-02 17:24:31 -05:00
orignal
7efb47fed4 send NTCP2 frame from I2NP messages 2018-12-02 14:24:39 -05:00
orignal
7692332f0e don't inialize Chacha20 state twice 2018-11-30 21:31:06 -05:00
orignal
ef6db64e9f correct chacha20 for multiple messages 2018-11-30 16:21:11 -05:00
orignal
e68f1dbc99 AEAD/Chacha20/Poly1305 encrypt multiple buffers 2018-11-30 14:41:14 -05:00
orignal
0c9ebc36d4 remove AVX and SSE for CipherBlock XOR 2018-11-27 14:33:31 -05:00
orignal
328c2182c2 alignment for tunnel message AES decryption 2018-11-27 10:35:17 -05:00
orignal
08706f5dfb fixed typo 2018-11-25 18:49:59 -05:00
orignal
d49f165f0d fixed build warning 2018-11-25 15:59:00 -05:00
orignal
cf0fc3a4a9 some performance improvements 2018-11-25 10:33:48 -05:00
orignal
72c8fd257c eliminate extra buffer for Poly1305 2018-11-24 15:39:37 -05:00
orignal
fa620e41a4 correct alignment for polyKey 2018-11-24 14:41:17 -05:00
Jeff Becker
16b3108719
Merge remote-tracking branch 'purple/openssl' into openssl 2018-11-24 10:08:12 -05:00
Jeff Becker
f385c624c7
expose poly1305 digester 2018-11-24 10:07:17 -05:00
orignal
f7e9975192 restore BlockCipher XOR using SSE 2018-11-24 09:43:30 -05:00
orignal
cde989b59d don't compile compatibility code if openssl 1.1.1 2018-11-22 12:13:16 -05:00
orignal
c0e263abd3 default value for m_PersistProfiles 2018-11-22 11:30:44 -05:00
R4SAS
79c0c11e80 configure persist of peer profiles
* If persist.profiles = false, peer profiles not stored on disk
* remove inet_pton for windows
* update configs
2018-11-22 00:13:23 +03:00
orignal
ca671551c8 flood NTCP2 RouterInfo if requested 2018-11-21 13:24:54 -05:00
orignal
42ed312384 handle NTCP2 RouterInfo flag 2018-11-21 11:23:48 -05:00
orignal
0e9074aaba reduce start and stop time 2018-11-20 13:57:51 -05:00
orignal
8a549b83a2 NTP sync in separate thread 2018-11-16 12:49:04 -05:00
orignal
d7081c5f23 handle RouterInfo from NTCP2 in netdb's thread 2018-11-14 20:52:54 -05:00
orignal
588d64a30b more NTP logging 2018-11-14 12:27:11 -05:00
orignal
8335bdf3d4 correct ntp servers 2018-11-14 11:47:50 -05:00
orignal
85394f2438 NTP time sync 2018-11-14 11:06:53 -05:00
asokolov
a26ed6fe6c Merge remote-tracking branch 'upstream/openssl' into webroot 2018-11-09 16:30:54 +03:00
R4SAS
779228857e 2.22.0 2018-11-09 02:22:55 +00:00
asokolov
23ae220aa7 add webroot setting 2018-11-07 18:07:05 +03:00
orignal
b3fd8bd0ae check if keys are available before sending termination message 2018-11-04 18:51:25 -05:00
orignal
bffeb237de termination might be send for non-established session 2018-11-04 15:32:31 -05:00
orignal
23e3602ea1 common MixHash 2018-11-01 16:06:39 -04:00
orignal
34cfd205f6 create new static keys by X25519Keys 2018-11-01 10:43:31 -04:00
l-n-s
a141678119 Add --version flag to display i2pd and system libraries versions 2018-10-28 10:52:22 -04:00
orignal
96d109af81 fixed typo 2018-10-27 19:55:23 -04:00
orignal
a309eb9f3c faster CipherBlock XOR implementation for non-AVX 2018-10-27 18:41:05 -04:00
orignal
d034dab265 fill m3p2 with SessionRequest 2018-10-26 09:58:18 -04:00
orignal
a2e84e5a1e 2.21.1 2018-10-22 09:19:39 -04:00
orignal
9439621849 fixed #1259. read extra tunnels from tunnels.d 2018-10-19 15:23:46 -04:00
orignal
15ded89618 set cost=14 for unpublished NTCP2 addresses 2018-10-11 13:00:37 -04:00
orignal
b84f74c167 limit SSU message size to 32K 2018-10-11 11:17:14 -04:00
orignal
a97300f8be fixed #1256 I2NP messages up to 64K 2018-10-10 11:31:55 -04:00
orignal
15899c10b2 2.21.0 2018-10-04 09:38:04 -04:00
orignal
af793395f0 don't publish O with X or P 2018-09-30 16:08:26 -04:00
orignal
8f41776858 check send queue size 2018-09-28 09:54:42 -04:00
orignal
5f7dda5ba8 treat extra bandwidth as high bandwidth 2018-09-22 14:12:46 -04:00
orignal
2dfa1ca0f2 check RouterInfo's timestamp in SessionConfirmed 2018-09-21 11:45:04 -04:00
orignal
358cdcf4c4 removed RSA signatures completly 2018-09-21 11:16:38 -04:00
orignal
c8f4ace5c4 update timestamp before publishing 2018-09-21 10:13:18 -04:00
orignal
5cac6ca8bb read message body immediatly after length 2018-09-17 13:08:49 -04:00
orignal
fccad71df1 temporary buffer for EdDSA signature for openssl 1.1.1 2018-09-16 18:08:59 -04:00
orignal
97ae2674dc always use EdDsa signer fallback 2018-09-14 21:54:45 -04:00
orignal
7c70affd7f eddsa signer fallback 2018-09-14 21:23:16 -04:00
orignal
52ff568d86 fixed incorrect second signature 2018-09-14 18:58:40 -04:00
orignal
8de443ec4c siphash from openssl 1.1.1 2018-09-11 13:26:29 -04:00
orignal
7d9893c614 fixed build error 2018-09-09 17:27:53 -04:00
orignal
3540712517 some cleanup 2018-09-09 08:38:12 -04:00
orignal
a8b1a86bd7 X25519Keys for static key 2018-09-08 22:08:08 -04:00
orignal
1babd3a5a2 separate X25519Keys 2018-09-08 16:52:42 -04:00
orignal
33aa8e2471 use x25519 from openssl 1.1.1 for ephemeral keys 2018-09-05 11:19:58 -04:00
orignal
2c58fe736b fixed build error with openssl 1.1.1 2018-09-05 09:51:03 -04:00
orignal
2c3b19a539 use EdDSA from openssl 1.1.1 2018-09-03 17:39:49 -04:00
orignal
b67424643d done insert NTCP2 ipv6 address twice 2018-08-27 18:56:57 -04:00
orignal
575a4c01c9 publish NTCP2 adress if port is specified 2018-08-27 18:35:35 -04:00
orignal
f0d4ee6618 pass NTCP2 ipv6 address 2018-08-27 16:01:47 -04:00
orignal
8753186a0d publish NTCP2 ipv6 address if applicable 2018-08-27 15:01:43 -04:00
orignal
9dd38b99d6 check NTCP2 for addreses comparison 2018-08-26 09:40:27 -04:00
orignal
71ac0286b1 2.20.0 2018-08-23 10:24:44 -04:00
orignal
022f4d2c11 don't send message to not established session 2018-08-23 07:23:50 -04:00
orignal
b259ee89aa send RouterInfo from NTCP2Server's thread 2018-08-22 12:33:43 -04:00
orignal
d9476fb5ca set correct IV when NTCP2 address gets published 2018-08-19 16:17:57 -04:00
orignal
2d758ce963 change cost for NTCP and NTCP2 2018-08-18 13:52:35 -04:00
orignal
1dd003d26a check m2p3len 2018-08-18 08:27:36 -04:00
orignal
5e110e9f7b enable NTCP2 by default 2018-08-16 13:48:47 -04:00
orignal
77a409935d license added 2018-08-16 13:46:59 -04:00
orignal
11142690a0 show correct value of time drift 2018-08-16 10:13:32 -04:00
orignal
02e8c5faca fixed typo 2018-08-15 13:23:10 -04:00
orignal
c41081d35c check timestamps 2018-08-15 11:42:56 -04:00
orignal
e4ab51329d move handshake messages processing to NTCP2Establisher 2018-08-14 14:01:04 -04:00
orignal
86782aeb1b don't send RouterInfo twice 2018-08-14 11:27:27 -04:00
orignal
49a44fc92e assume siphash IV in Litte Endian 2018-08-13 14:07:57 -04:00
orignal
cd39a52c25 correct endianness for siphash length 2018-08-13 13:43:51 -04:00
l-n-s
29b91075d2 Don't add SSU/NTCP addresses to RI if they are disabled in config (#1220) 2018-08-12 02:36:00 -04:00
orignal
6d46fc9f9f check send frame error code 2018-08-11 16:08:21 -04:00
orignal
a2c41c9e36 allow NTCP2 only transports 2018-08-10 15:35:43 -04:00
orignal
ee700ac861 fixed incorrect iv for published NTCP2 addresses 2018-08-10 15:14:07 -04:00
orignal
9884a4336f don't connect to NTCP2 only address using NTCP 2018-08-10 13:42:59 -04:00
orignal
5b83d4bef8 move handshake messages creation to NTCP2Establisher 2018-08-10 10:53:34 -04:00
orignal
d320a89590 don't copy buffer to ifself 2018-08-09 16:32:43 -04:00
orignal
f7e4afc282 use same buffer for input and output for AEAD/Chacha20/Poly1305 2018-08-09 15:47:02 -04:00
orignal
88e87d589b add incoming NTCP2 session to the sessions list 2018-08-09 14:20:10 -04:00
orignal
d8c6dede7e moved NTCP2 handshake buffers to establisher 2018-08-09 12:53:36 -04:00
orignal
5cc84133e3 fixed incorrect lenght 2018-08-08 17:38:21 -04:00
orignal
f7728aa1f6 reuse NTCP2 frame buffers 2018-08-08 16:23:44 -04:00
orignal
2b61f9a731 fixed #1217. verify decryption result 2018-08-07 10:35:25 -04:00
orignal
f407022fe6 connect to NTCP2 address if presented 2018-08-04 13:48:09 -04:00
orignal
41b9f19b01 get unpublished NTCP2 address 2018-08-04 08:47:58 -04:00
orignal
09c6faf923 don't overwrite NTCP2 keys 2018-08-03 21:16:35 -04:00
orignal
26d0177c01 always make NTCP address first 2018-08-03 20:28:29 -04:00
orignal
f7415c8a8f enable/disable NTCP2 address 2018-08-03 14:49:28 -04:00