Commit Graph

48 Commits (e696b181876d7279e22c573d12a8b1f525c9616c)

Author SHA1 Message Date
name e696b18187 format using goimports 1 year ago
Andy Wang 439b7f0eb3
Improve encapsulation 4 years ago
Andy Wang 2c709f92df
Correctly assign payloadCipher to Obfuscator field, and add test for this issue 4 years ago
Andy Wang c60c6d8ddb
Avoid assigning functions to variables in hot path 4 years ago
Andy Wang d1b05ee9e5
Add new encryption method option aes-128-gcm 4 years ago
Andy Wang 415523f10a
Refactor obfuscate and deobfuscate functions to reduce a layer of indirection 4 years ago
Andy Wang 5a3f63f101
Reduce allocation of frame objects on receiving data 4 years ago
Andy Wang 0f6e0d37b5 Rename constants to camel case 4 years ago
Andy Wang 11cfeb4fa3 Improve comments 4 years ago
Andy Wang 651854904f Improve comments 4 years ago
Andy Wang 977f51ce48 Add comments 4 years ago
Andy Wang c5276df32e Check payload AEAD's size in relation to frame header's size 4 years ago
Andy Wang e141323c9d Fix obfsBuf being too small on closing frame 4 years ago
Andy Wang 3e133090f0 Give more descriptive names to multiplex objects 4 years ago
Andy Wang 4a81683e44 Code cleanup and move stuff around 4 years ago
Andy Wang 53c0c6bafe Explicitly allow buf overlap in obfs 4 years ago
Andy Wang f0e8b4556e Eliminate some bounds check 4 years ago
Andy Wang a51d45f41a Avoid unnecessary pass by pointer 4 years ago
Andy Wang e41394c83c Set frame size limit through multiplexer 4 years ago
Andy Wang 7bfae8accd Refactor client side transport (breaks server) 4 years ago
Andy Wang 43ae82ec0e Fix test, improve err message and fix nil interface casting 4 years ago
Andy Wang 1de5045003 Use errors from io 4 years ago
Andy Wang 01e5d15d20 Code cleanup 4 years ago
Andy Wang c1f3408c2c Make key lengths explicit 4 years ago
Andy Wang 517a6d6e57 Handle error and retry for Crypto.rand 4 years ago
Andy Wang 339b324946 Working direct WebSocket transport 5 years ago
Andy Wang 4fb1f55e2d Use 64bit frame Seq to prevent nonce reuse 5 years ago
Andy Wang 87a7684e10 More comments 5 years ago
Andy Wang c276f504b5 Use ENUM constants for encryption methods 5 years ago
Qian Wang 572fe8486a Rename a variable and modify a test 5 years ago
Qian Wang 586cc5ebb6 Optimise deobfs 5 years ago
Qian Wang e3de2b9852 Fix a potential make len<0 5 years ago
Qian Wang acb999ee64 Force aead key sizes as 32 bytes due to chacha20-poly1305 5 years ago
Qian Wang 640f81461c Buffer reuse in obfs 5 years ago
Qian Wang 9fa37e327f Use exclusively salsa20 for header encryption 5 years ago
Qian Wang 0684f5df40 Refactor payload cipher 5 years ago
Qian Wang 2735de4f96 Fix bad cryptography 5 years ago
Qian Wang 73c0b8567e Memory optimisation 5 years ago
Qian Wang ef185b00f0 Solve a data race 5 years ago
Qian Wang 589900fe52 I just did a joint and I need to commit before things go wrong 5 years ago
Qian Wang 00069b7a69 Support Chaha20-Poly1305 5 years ago
Qian Wang 078a382963 Improve the security of header obfuscation 5 years ago
Qian Wang 8168b9e2e7 Use AES-GCM instead of CTR 5 years ago
Qian Wang 0dd52d8570 Add optional encryption 5 years ago
Qian Wang 24cdf274dd Change the stream header format and reduce overhead 5 years ago
Qian Wang d906541497 Redo the header obfuscation. Fix hiccups caused by short packets 6 years ago
Qian Wang 36a743c3ca Client using AdminUID can now use the proxy without adding themselves to the db 6 years ago
Qian Wang ed1253ff4c Refactor MakeObfs and MakeDeobfs 6 years ago