Commit graph

40 commits

Author SHA1 Message Date
Lucas Clemente
bfe7117329 only take specific values from the params map 2016-05-06 11:43:39 +02:00
Lucas Clemente
f7d3da74b7 connection parameter manager docs 2016-05-05 23:36:41 +02:00
Lucas Clemente
7e0d59a5e6 make session timeout according to ICSL
fixes #54
2016-05-05 23:16:49 +02:00
Lucas Clemente
b239b71bb4 add GetIdleConnectionStateLifetime to connection params 2016-05-05 22:58:59 +02:00
Lucas Clemente
76d279ed8f make connectionparameters return its map in GetSHLOMap 2016-05-05 22:58:52 +02:00
Marten Seemann
6556e2f695 use protocol.ByteCount in frames, streams and session 2016-05-05 11:53:10 +07:00
Marten Seemann
77f34a9207 set initial flow control window from handshake parameters
fixes #50
2016-05-05 11:29:12 +07:00
Lucas Clemente
40ee20c02b use a ephermal curve25519 for forward secure key exchange
fixes #17
2016-05-04 12:45:25 +02:00
Marten Seemann
d07baef91b manage connection parameters in a separate class 2016-05-04 17:20:36 +07:00
Lucas Clemente
daf4e4a867 remove support for version 30, since we don't implement FEC at all 2016-05-02 20:56:02 +02:00
Lucas Clemente
53ef5669e2 fix crypto setup tests 2016-05-02 20:52:09 +02:00
Lucas Clemente
6178ef83fe discard undecryptable packets
hopefully fixes issue #33, the workaround is tracked in #38
2016-05-02 16:45:26 +02:00
Lucas Clemente
a6d3dca74c re-add crypto test 2016-05-02 14:40:43 +02:00
Lucas Clemente
623bf065fd accept null-encrypted pckts until an encrypted pckt has ben received
this should fix issue #33
2016-05-02 14:38:05 +02:00
Lucas Clemente
1e8d1453a8 implement public reset packet writing 2016-04-29 16:12:17 +02:00
Lucas Clemente
607ab843d6 close session when crypto stream errors 2016-04-27 12:49:55 +02:00
Lucas Clemente
9fc874be53 add newline to crypto error messages 2016-04-26 15:37:52 +02:00
Lucas Clemente
23a1e08e90 make stream private 2016-04-25 17:54:00 +02:00
Lucas Clemente
bb3c8b707b fix randomness 2016-04-21 13:48:42 +02:00
Lucas Clemente
7efc7f79d2 validate that CryptoSetup is an AEAD 2016-04-21 13:48:42 +02:00
Lucas Clemente
4e1942a76e improve inchoate CHLO recognition 2016-04-19 13:37:59 +02:00
Lucas Clemente
9cbeb49d49 change AEAD interface to use byte slices, simplifying its usage 2016-04-18 14:37:34 +02:00
Lucas Clemente
57b144bdef fix pending cryptosetup tests 2016-04-18 12:38:41 +02:00
Lucas Clemente
f5ec5262d1 stop crypto thread after handshake is complete or errors 2016-04-18 11:10:00 +02:00
Lucas Clemente
758fdeb3d3 change CryptoSetup to use streams 2016-04-18 11:03:49 +02:00
Lucas Clemente
bc736feada add an rw mutex to crypto setup in preparation for using the new streams 2016-04-17 19:14:47 +02:00
Lucas Clemente
d32a1b8a2b add tests for crypto escalation 2016-04-17 17:11:54 +02:00
Lucas Clemente
5c6e72303e add more crypto setup tests 2016-04-17 16:46:44 +02:00
Lucas Clemente
7e65940188 add more cryptosetup tests 2016-04-17 00:37:07 +02:00
Lucas Clemente
b5c7bcda18 extract SHLO into separate method and test it 2016-04-17 00:31:30 +02:00
Lucas Clemente
cbbf29e3d5 add some cryptosetup tests 2016-04-17 00:22:41 +02:00
Lucas Clemente
ac0eed61f2 introduce crypto.Signer interface and hide RSA implementation 2016-04-17 00:22:26 +02:00
Lucas Clemente
aa5d2be491 implement forward secure encryption 2016-04-16 22:08:57 +02:00
Lucas Clemente
88f404c19e initial server hello implementation 2016-04-16 00:27:30 +02:00
Lucas Clemente
13c0445bb4 randomly generate the server config ID and check whether it matches 2016-04-16 00:09:50 +02:00
Lucas Clemente
14d3b03b44 more consistent filenames 2016-04-15 22:28:45 +02:00
Lucas Clemente
91e3ac4f26 rename Handshake to CryptoSetup 2016-04-15 22:27:14 +02:00
Lucas Clemente
20b48c5432 move handshake handling and server config into handshake package 2016-04-15 22:24:42 +02:00
Lucas Clemente
1760bc3227 add key derivation and change AEAD in session, not working right now :( 2016-04-14 20:39:51 +02:00
Lucas Clemente
0febba87ba move crypto handshake stuff to its own package 2016-04-14 19:50:04 +02:00