Commit Graph

75 Commits

Author SHA1 Message Date
Qian Wang
299f08270c make Session implement net.Listener 2019-07-23 11:06:49 +01:00
Qian Wang
29a45bcc1a Rewrite user authentication, credit bookkeeping and db interaction 2019-07-22 13:42:39 +01:00
Qian Wang
c88c3d0084 Timeout unused new sessions 2019-06-16 23:30:35 +10:00
Qian Wang
710fa6835a Reduce the size of UID to 16 bytes 2019-06-16 11:08:51 +10:00
Qian Wang
d781c7b1be Use a sessional ephemeral key as the main key instead of UID for forward security 2019-06-16 00:20:55 +10: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
f525643518 Remove debug log 2019-06-10 00:04:16 +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
3e9855191b Cloak 2: generalising cloak as a universal pluggable transport for arbitary proxies 2019-06-09 16:10:22 +10:00
Qian Wang
425dbc4797 Session times out 30s after all streams have been closed 2019-03-23 23:45:12 +11:00
Qian Wang
99afb1a58b Remove ECDH as an external dependancy and include it as a internal package 2019-01-25 00:24:47 +00:00
Qian Wang
c44b202c27 Regenerate SessionID on reconnection 2019-01-22 21:51:57 +00:00
Qian Wang
9d2e9be1ef Fix a race which causes the server unable to close all the connections in a session 2019-01-22 00:03:38 +00:00
Qian Wang
cb07e446b6 Fix issue which the closing frame padding gets send as acutal data 2019-01-21 21:15:18 +00:00
Qian Wang
a52c3204d1 Fix a stuck RWMutex 2019-01-21 21:13:54 +00:00
Qian Wang
b522d4a407 Fix constant overflow 2019-01-21 11:42:27 +00:00
Qian Wang
8a10949846 Add unit tests 2019-01-20 23:47:10 +00:00
Qian Wang
46c8bc24de Fix wrapping bug 2019-01-20 17:23:45 +00:00
Qian Wang
9793537034 Faster reconnection 2019-01-20 12:13:29 +00:00
Qian Wang
17d024ac16 Remove reundancy and fix a race 2019-01-19 19:30:32 +00:00
Qian Wang
a6e16b4f74 Fix memory leak 2019-01-19 19:30:00 +00:00
Qian Wang
935f995954 Fix a user input validation 2019-01-19 13:18:13 +00:00
Qian Wang
735dc64bd1 Stop using custom conversion function 2019-01-13 22:22:55 +00:00
Qian Wang
41da4102ab Syntax cleanups 2019-01-13 21:43:50 +00:00
Qian Wang
24cdf274dd Change the stream header format and reduce overhead 2019-01-13 21:28:57 +00:00
Qian Wang
f4a1c21c2c Birng back sequence wrapping 2019-01-13 19:06:12 +00:00
Qian Wang
95c3dbfcf2 Specify when failed to open userinfo database 2019-01-12 17:05:55 +00:00
Qian Wang
0544364a8e Cleanup logs 2019-01-12 15:51:20 +00:00
Qian Wang
310ce1643a Minor Makefile edit and remove FIXME 2019-01-12 14:16:31 +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
fb12f096d1 Abandon the frameSeq wrapping 2019-01-06 01:39:55 +00:00
Qian Wang
59c18437e4 Fix a race regarding client keyPairs caching 2019-01-01 14:37:47 +00:00
Qian Wang
f3f3042c81 Remove redundant functions 2018-12-31 11:30:39 +00:00
Qian Wang
23a06c6a52 Clarify the code to enter admin mode 2018-12-30 01:15:46 +00:00
Qian Wang
1cb7bff8b3 Lexical changes 2018-12-30 00:28:38 +00:00
Qian Wang
deb5271cef User can now specify the path of db file and backups 2018-12-30 00:18:50 +00:00
Qian Wang
652261af81 Implement SessionsCap and ExpiryTime limitations 2018-12-29 00:54:10 +00:00
Qian Wang
e31aef3030 Stop repetitive closing 2018-12-29 00:02:59 +00:00
Qian Wang
4b6ab1b4d5 Finish the admin control 2018-12-26 00:46:39 +00:00
Qian Wang
73aefdeeeb Done some TODOs 2018-12-22 23:58:03 +00:00
Qian Wang
6fbd39ea10 Integrate keygen util into ck-server 2018-12-17 22:12:38 +00:00
Qian Wang
55780fc85d Remove deprecated field 2018-12-12 19:50:11 +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
Qian Wang
3abef6dbad Use pointer for UserInfo in User struct 2018-12-08 15:30:46 +00:00
Qian Wang
7919834dfe Better keygen 2018-12-08 14:49:47 +00:00