-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
[WIP] TLS 1.3 #1726
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] TLS 1.3 #1726
Conversation
|
Current issue is that TLS13 fails to decode the TLS-encrypted content using the key provided in |
Codecov Report
@@ Coverage Diff @@
## master #1726 +/- ##
===========================================
- Coverage 87.2% 51.97% -35.23%
===========================================
Files 197 119 -78
Lines 44484 29619 -14865
===========================================
- Hits 38793 15395 -23398
- Misses 5691 14224 +8533
|
|
@guedou @p-l- If you have some time available, it could be worth looking into this. I'm still figuring out how to fix the issue mentioned above: the tests in |
|
Thanks for this work. TLS 1.3 is a though protocol =) I will try to find time to review it carefully. According to the diffs, it seems that you updated the current test vectors using RC8448. It is likely not useful for our tests, but an errata fixes some vectors (see https://www.rfc-editor.org/errata_search.php?rfc=8448). I do not recall which version of the draft the original author used, but I will be that it is 18 or 20. I wonder if changes in the key scheduling algorithm were made in between (https://tools.ietf.org/rfcdiff?url1=draft-ietf-tls-tls13-18.txt&url1=rfc8446 might help us investigating). However, as far as I recall, the last revisions of the drafts were related to zero RTT and not the core of TLS 1.3. |
|
The version in place is the draft 18. The goal of this PR was to upgrade it to the version that got accepted (we won't support all drafts..). This meant updating the vectors. One of the biggest (and breaking difference) since draft 18 is that it used a TLS version of |
|
RFC8448 also defines the expected results for key computation. I started adding some checks. See the attached patch: tls13.check_keys.patch.txt This could help us narrowing the issue. |
|
(I'm not actively working on this, but as a maintainer, you have write access on this branch. You can |
|
Overwritten by #2132 |
There is way over my head to do, here's what I could get so far:
0x0301in some drafts, but is now0x0303(TLS 1.2)TODO: (feel free to contribute)
gtx_unix_timeexist only on TLS 1.3, in which caserandom_bytessize is 32 (rather than 28)