<div dir="ltr">Hi!<div><br></div><div>Recently nginx implemented support for ssl_session_ticket_key allowing</div><div>to setup key(s) for SSL tickets encryption explicitly. This is usefull when</div><div>multiple nginx servers must share the same set of keys in order for any</div>
<div>server to accept tickets issued by any other server.</div><div><br></div><div>The key file is an opaque 48 byte long blob. Internally this data is partitioned</div><div>as follows (ngx_ssl_ticket_session_keys, ngx_event_openssl.c):</div>
<div><br></div><div>a key name (16 bytes)</div><div>encryption key (16 bytes)</div><div>hmac key (16 bytes)</div><div><br></div><div>Without nginx customization OpenSSL partitions the key data another</div><div>way (ssl3_ctx_ctrl in openssl):</div>
<div><br></div><div><div>a key name (16 bytes)</div><div>hmac key (16 bytes)</div><div>encryption key (16 bytes)</div><div><br></div></div><div>This creates a certain compatibility issue. Though I didn't verify it</div>
<div>presumably Apache's mod_ssl isn't going to understand nginx</div><div>SSL session tickets even though both servers are using OpenSSL.</div><div><br></div><div>I think it would be better if nginx didn't invent its own ticket key</div>
<div>format but use the format defined by OpenSSL instead.</div><div><br></div><div>Best Regards.</div></div>