-
Notifications
You must be signed in to change notification settings - Fork 30.5k
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
tls: api to change tls ticket keys #1465
Comments
cc: @indutny |
Also related: The docs don't state how long the default |
Another docs issue: What if |
Yep, they will be auto-generated. |
One thing to keep in mind is that changing the ticket key will invalidate all tickets offered before this point in time. I think the |
@silverwind I doubt OpenSSL will allow it. Actually, it is considered a normal behaviour. Old tickets are invalidated, the clients will have new tickets once they'll connect to the server. |
Well, I'm not sure yet how, but Cloudflare seems to be able to match a ticket to the corresponding key: https://blog.cloudflare.com/tls-session-resumption-full-speed-and-secure/#sessionticketresumption
|
cc @grittygrease: some trade secret? ;) |
I think you might be able to store a timestamp and a hash of each encrypted ticket. With that you could map to the corresponding old key and decrypt the ticket with that. I think such functionality would be best left to user modules, but we should give them this option. |
@indutny We do it in Lua with https://github.com/openresty, it has not been open sourced at this point in time. |
That kind of defeats the purpose of tickets in the case where you rotate keys faster than the lifetime of tickets. I still have to check out tickets in Wireshark if they contain any hints to which key was used to encrypt them, but doubt there is any. |
I finally made it: #2227 |
Introduce two new APIs for getting/settings the TLS Server Ticket Keys. Fix: nodejs#1465
As discussed briefly in #1462. Here's the relevant section from rfc5077:
For the first point, we need an api (a function?) to change the ticket keys. For the second part, I'm not sure, can these conditions happen?
The text was updated successfully, but these errors were encountered: