Commit Graph

37 Commits

Author SHA1 Message Date
Andy Wang
c5276df32e Check payload AEAD's size in relation to frame header's size 2020-10-18 21:41:30 +01:00
Andy Wang
e141323c9d Fix obfsBuf being too small on closing frame 2020-10-18 21:37:41 +01:00
Andy Wang
3e133090f0 Give more descriptive names to multiplex objects 2020-10-15 22:51:36 +01:00
Andy Wang
4a81683e44 Code cleanup and move stuff around 2020-04-14 14:14:51 +01:00
Andy Wang
53c0c6bafe Explicitly allow buf overlap in obfs 2020-04-13 22:48:28 +01:00
Andy Wang
f0e8b4556e Eliminate some bounds check 2020-04-12 16:10:48 +01:00
Andy Wang
a51d45f41a Avoid unnecessary pass by pointer 2020-04-10 16:09:05 +01:00
Andy Wang
e41394c83c Set frame size limit through multiplexer 2020-04-09 16:37:46 +01:00
Andy Wang
7bfae8accd Refactor client side transport (breaks server) 2020-04-08 20:53:09 +01:00
Andy Wang
43ae82ec0e Fix test, improve err message and fix nil interface casting 2020-04-08 15:58:46 +01:00
Andy Wang
1de5045003 Use errors from io 2020-04-08 14:59:09 +01:00
Andy Wang
01e5d15d20 Code cleanup 2020-04-08 12:18:20 +01:00
Andy Wang
c1f3408c2c Make key lengths explicit 2020-04-07 21:15:28 +01:00
Andy Wang
517a6d6e57 Handle error and retry for Crypto.rand 2020-02-01 23:46:46 +00:00
Andy Wang
339b324946 Working direct WebSocket transport 2019-09-01 20:23:45 +01:00
Andy Wang
4fb1f55e2d Use 64bit frame Seq to prevent nonce reuse 2019-08-27 15:06:28 +01:00
Andy Wang
87a7684e10 More comments 2019-08-20 22:43:04 +01:00
Andy Wang
c276f504b5 Use ENUM constants for encryption methods 2019-08-16 23:44:40 +01:00
Qian Wang
572fe8486a Rename a variable and modify a test 2019-08-07 19:08:37 +01:00
Qian Wang
586cc5ebb6 Optimise deobfs 2019-08-07 17:53:34 +01:00
Qian Wang
e3de2b9852 Fix a potential make len<0 2019-08-07 17:22:40 +01:00
Qian Wang
acb999ee64 Force aead key sizes as 32 bytes due to chacha20-poly1305 2019-08-07 00:15:55 +01:00
Qian Wang
640f81461c Buffer reuse in obfs 2019-08-04 10:38:49 +01:00
Qian Wang
9fa37e327f Use exclusively salsa20 for header encryption 2019-08-03 22:05:06 +01:00
Qian Wang
0684f5df40 Refactor payload cipher 2019-08-01 00:43:33 +01:00
Qian Wang
2735de4f96 Fix bad cryptography 2019-08-01 00:16:33 +01:00
Qian Wang
73c0b8567e Memory optimisation 2019-07-28 00:15:27 +01:00
Qian Wang
ef185b00f0 Solve a data race 2019-06-15 11:52:46 +10:00
Qian Wang
589900fe52 I just did a joint and I need to commit before things go wrong 2019-06-14 23:08:28 +10:00
Qian Wang
00069b7a69 Support Chaha20-Poly1305 2019-06-14 20:26:26 +10:00
Qian Wang
078a382963 Improve the security of header obfuscation 2019-06-14 19:48:59 +10:00
Qian Wang
8168b9e2e7 Use AES-GCM instead of CTR 2019-06-10 00:03:28 +10:00
Qian Wang
0dd52d8570 Add optional encryption 2019-06-09 21:05:41 +10:00
Qian Wang
24cdf274dd Change the stream header format and reduce overhead 2019-01-13 21:28:57 +00:00
Qian Wang
d906541497 Redo the header obfuscation. Fix hiccups caused by short packets 2019-01-06 01:40:27 +00:00
Qian Wang
36a743c3ca Client using AdminUID can now use the proxy without adding themselves to the db 2018-12-11 23:26:05 +00:00
Qian Wang
ed1253ff4c Refactor MakeObfs and MakeDeobfs 2018-12-09 23:45:06 +00:00