Commit Graph
13 Commits
Author SHA1 Message Date
Syrone Wong 2fafc52def Refine encryption(#655)
* Refine encryption

- Add AES-CTR, blowfish and camellia ciphers

aes-256-ctr
aes-192-ctr
aes-128-ctr
bf-cfb
camellia-128-cfb
camellia-192-cfb
camellia-256-cfb

- Merge the previous PolarSSL and MbedTLS
- Switch to MbedTLS's cipher layer functions
- Add workaround to set cipher operation(encrypt/decrypt)

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>

* Add function to get MbedTLS cipher context size

and drop hard-coded ctx sizes

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2016-08-13 14:28:09 +08:00
Gang Zhuo ea43e2a72d use ConcurrentDictionary instead of Dictionary 2016-02-25 22:41:20 +08:00
Gang Zhuo 961ca041b2 Fix bug 2015-11-25 21:26:45 -05:00
Gang Zhuo dd0d047402 override MD5, so compatible with FIPS 2015-11-23 23:52:54 +08:00
Gang Zhuo 098640e792 refact 2015-09-25 04:42:56 -04:00
Gang Zhuo c5e27486fb Protocol V2 2015-09-25 04:03:04 -04:00
Gang Zhuo 3aac1cfcfc Refine the authentication for true CCA 2015-09-23 02:08:41 -04:00
Gang Zhuo 19085a3cd1 Update the hash function
follow with https://github.com/shadowsocks/shadowsocks-libev/commit/5ae4df94e440c4f6826a679a62687ad27303d89b
2015-09-20 23:25:37 -04:00
Gang Zhuo 1564e9ff81 support onetime auth 2015-09-20 15:13:11 +08:00
Gang Zhuo 72ea01d566 no repeat random number generator
The stock code use class Random to generate IV, the Random is pseudo random number generator. The IV maybe repeat, this will cause shadowsocks-libev closed the sockets with the error message 'invalid password or cipher'. Reference https://github.com/shadowsocks/shadowsocks-libev/issues/389

Solution is use class RNGCryptoServiceProvider to generate IV, of course it's lower performance, but a little bit.
2015-09-19 15:49:19 +08:00
kimw 758c497eba same the source code format.
1/ removed dual empty line
2/ removed tailing spaces
3/ converted tabs into spaces
4/ added some TODO comments
2015-08-19 00:24:08 +08:00
clowwindy db6701b1b2 refactor package name 2015-01-01 22:05:16 +08:00
clowwindy 5010a01d14 move encrypt package into encryption 2015-01-01 22:04:37 +08:00