Commit Graph

28 Commits

Author SHA1 Message Date
Marten Seemann
97e191f3b4 update the ChaCha implementation, remove 0xffffffff workaround 2020-04-24 10:18:41 +07:00
Marten Seemann
3ac2fb3161 make quic-go build with both Go 1.13 and 1.14 2020-04-09 07:51:18 +07:00
Marten Seemann
6fe4878f0e update to qtls based on Go 1.14's TLS implementation 2020-02-28 16:48:29 +07:00
Marten Seemann
75c2d9f2b6 update qtls to v0.7.2
This version makes sure that the server first checks the ALPN, and only
exports Handshake secrets after the application protocol was chosen.
2020-02-25 17:53:08 +07:00
Marten Seemann
b658f92060 use the golang/x/crypto ChaCha20 implementation
https://go-review.googlesource.com/c/crypto/+/206638 added the
SetCounter method required for QUIC's header protection.
2020-02-22 10:53:41 +07:00
Marten Seemann
572ef44cf2 use GoJay to marshal JSON
GoJay doesn't use reflection to marshal JSON. This allows dramatically
faster encoding, as well as saving a large number of allocations.
2020-02-12 10:35:54 +07:00
Marten Seemann
70d8c0fbef delete session tickets after using them for 0-RTT 2020-02-09 18:40:08 +08:00
Marten Seemann
f91dfda8c3 make the TLS cipher suites configurable 2020-02-01 15:58:40 +07:00
Marten Seemann
8476b9c7e6 reject 0-RTT when the ALPN changed 2020-01-30 13:12:42 +07:00
Marten Seemann
d7948d627a drop 0-RTT keys when the server rejects 0-RTT 2020-01-30 09:12:31 +07:00
Marten Seemann
bf2602c652 update Ginkgo and Gomega 2020-01-29 10:41:41 +07:00
Marten Seemann
c809166cab update gomock, simplify script for generation mocks of private types 2020-01-26 12:53:41 +07:00
Marten Seemann
a9f4195fd0 check that transport params didn't change when accepting 2019-12-30 18:39:21 +04:00
Marten Seemann
88d1c78dab improve error messages on ALPN mismatches 2019-10-11 15:02:11 +07:00
Marten Seemann
fa89ec345a add support for ChaCha20 header protection 2019-09-07 11:36:50 +07:00
Marten Seemann
33b74fca79 use the new qtls SetWriteKey and SetReadKey interface 2019-09-07 11:36:06 +07:00
Marten Seemann
9d37e2a79f use updated qtls based on Go's 1.13 crypto/tls 2019-09-06 11:14:34 +07:00
Marten Seemann
ce0b1f2736 fix crash when the server disabled session resumption 2019-07-16 18:45:51 +07:00
Marten Seemann
c52a28cec1 explicitly trigger sending of session tickets 2019-07-05 20:53:25 +07:00
Marten Seemann
6bf42558f3 receive the encryption level for key updates from qtls 2019-07-05 10:36:53 +07:00
Marten Seemann
8926531f7e add the quic-trace protobuf 2019-06-20 22:57:57 +08:00
Marten Seemann
979ab75b3b require ALPN during the TLS handshake 2019-06-02 14:58:37 +08:00
Marten Seemann
4f6d0e651a implement HTTP/3 2019-04-11 09:06:10 +09:00
Marten Seemann
2adf923ee6 process the NewSessionTicket TLS message 2019-04-01 11:45:20 +09:00
Marten Seemann
f103919bf1 fix handling of HelloRetryRequests 2019-03-14 16:47:09 +09:00
Marten Seemann
f9a21275a4 use the string representation of the TLS alert for crypto errors 2019-03-08 18:02:43 +09:00
Marten Seemann
59e9142426 retrieve the TLS alert from qtls when the handshake fails 2019-03-02 08:56:42 +09:00
Marten Seemann
c00eb1f5b5 add Go mod support 2019-03-01 10:23:27 +09:00