Commit Graph

154 Commits

Author SHA1 Message Date
Qian Wang 08cb5d8462 Refactor usermanager 2019-08-03 11:17:09 +01:00
Qian Wang 67521efbd6 Alter composeServerHello function signature slightly 2019-08-02 23:37:00 +01:00
Qian Wang 429da0e0d9 Add unit tests 2019-08-02 18:00:27 +01:00
Qian Wang e75c713385 Refactor session struct's obfs fields 2019-08-02 16:37:48 +01:00
Qian Wang 33f232475d Improve logging 2019-08-02 15:45:33 +01:00
Qian Wang 726a405a26 TLS1.3 2019-08-02 01:01:19 +01:00
Qian Wang 0fbb6011fc Remove psudorandom padding 2019-07-31 23:58:15 +01:00
Qian Wang 0f3b2232ab Remove redundant config field 2019-07-31 14:44:34 +01:00
Qian Wang e1c879a478 Fix CORS and POST handler 2019-07-30 23:49:22 +01:00
Qian Wang 059a222394 Use defer to unlock mutexes 2019-07-28 12:52:57 +01:00
Qian Wang 75fecacd20 Change the protocol to solve sessionTicket inconsistency 2019-07-26 17:05:46 +01:00
Qian Wang 8f9922b06b Add terminal messages upon session closing 2019-07-25 20:57:02 +01:00
Qian Wang 8ff0f3d17e Rename handlers 2019-07-25 13:09:36 +01:00
Qian Wang 09bdae2584 Add CORS header through middleware 2019-07-25 13:03:32 +01:00
Qian Wang 2ce6f380d1 Implement admin control through a tunneled RESTful API 2019-07-25 12:17:29 +01:00
Qian Wang 98a772b6ee Add server response to status update 2019-07-24 15:25:09 +01:00
Qian Wang 29a45bcc1a Rewrite user authentication, credit bookkeeping and db interaction 2019-07-22 13:42:39 +01: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 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 99afb1a58b Remove ECDH as an external dependancy and include it as a internal package 2019-01-25 00:24:47 +00:00
Qian Wang 8a10949846 Add unit tests 2019-01-20 23:47:10 +00:00
Qian Wang 17d024ac16 Remove reundancy and fix a race 2019-01-19 19:30:32 +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 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 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 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 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
Qian Wang 304f7f38a7 Redo config format 2018-12-03 20:30:06 +00:00
Qian Wang 239647c5b2 Fix a race, some cleanup 2018-11-24 00:55:26 +00:00
Qian Wang 85e0e95a4b User control server and client 2018-11-22 21:56:29 +00:00
Qian Wang c4048dccea Basic remote control 2018-11-22 21:55:23 +00:00
Qian Wang 0702e37391 Syncing in-memory credit with db regularly 2018-11-11 19:30:40 +00:00
Qian Wang fe19d31158 Stop duplicate goroutines accepting streams 2018-11-08 19:47:53 +00:00
Qian Wang 3534d05055 QOS and user managing, bug fixes 2018-11-07 21:16:13 +00:00
Qian Wang 077eb16dba Fix goroutine leak 2018-10-27 15:27:43 +01:00
Qian Wang 3f7eef98e3 drop aes encryption of headers 2018-10-20 21:41:01 +01:00
Qian Wang a8786a5576 Use ECDH instead of ECIES 2018-10-14 20:32:54 +01:00
Qian Wang ae30ed6ba4 Untested server 2018-10-09 16:07:54 +01:00