Re: TLSv1.3 and 9.0.next
On 11/10/18 21:39, Mark Thomas wrote: > My plan going forwards is as follows: > > - give folks until early next week to review the native changes > - tag 1.2.18 early next week Just a heads up that I plan to tag 1.2.18 tomorrow. Mark > - hopefully release 1.2.18 late next week > - update 9.0.x to require 1.2.18 or later > - tag / release 9.0.x > > Alongside the above, I'll be backporting the TLSv1.3 support to 8.5.x > and 9.0.x. > > Thoughts, comments and especially code reviews welcome. > > Mark > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: TLSv1.3 and 9.0.next
On Fri, Oct 12, 2018 at 9:59 PM Rainer Jung wrote: > Am 12.10.2018 um 19:39 schrieb Mark Thomas: > > On 12/10/18 15:55, George Stanchev wrote: > >> Mark, > >> > >> Can you elaborate around the following: > >> > >> > >> All combinations support server initiated requests for client > certificates apart from NIO[2]+JSSE on Java 11 as the Java 11 TLSv1.3 > implementation does not include post handshake authentication. > >> > >> > >> What are the use cases affected. Is it for TLS upgrade when a certain > resource is being requested? > > > > Security constraints can require CLIENT-CERT authentication for some > > URLs within a web application. > > > > If the TLS connection is established before one of these URLs is > > requested then either renegotiation (TLSv1.2 and earlier) or post > > handshake authentication (TLSv1.3) is required to obtain the > > certificates from the client. > > > > Tomcat supports this for all combinations of TLSv1.2. It supports it for > > TLSv1.3 only when OpenSSL is providing the encryption. With pure Java > > (JSSE, Java 11+) it is not supported because Java has not (yet?) > > implemented post handshake authentication. > > And for those who are not aware: post_handshake_auth is a new TLS > extension in TLS 1.3 that's supposed to get used for that. The Java JEP > (Java Enhancement Proposal) that defines the TLS1.3 support in Java 11 > can eg. be found under > > http://openjdk.java.net/jeps/332 > > It contains: > > "The following significant features will not be implemented as part of > this JEP: > > ... > - Post-handshake authentication > ..." > There's also that 0RTT performance thing that is another useful item that will not be in JSSE, so it seems the OpenSSL support that was added to get supportable ALPN remains a must have. Rémy > > There's a three month old open bug for implementing it with no > noticeable activity: > > https://bugs.openjdk.java.net/browse/JDK-8206923 > > Regards, > > Rainer > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > >
Re: TLSv1.3 and 9.0.next
Am 12.10.2018 um 19:39 schrieb Mark Thomas: On 12/10/18 15:55, George Stanchev wrote: Mark, Can you elaborate around the following: All combinations support server initiated requests for client certificates apart from NIO[2]+JSSE on Java 11 as the Java 11 TLSv1.3 implementation does not include post handshake authentication. What are the use cases affected. Is it for TLS upgrade when a certain resource is being requested? Security constraints can require CLIENT-CERT authentication for some URLs within a web application. If the TLS connection is established before one of these URLs is requested then either renegotiation (TLSv1.2 and earlier) or post handshake authentication (TLSv1.3) is required to obtain the certificates from the client. Tomcat supports this for all combinations of TLSv1.2. It supports it for TLSv1.3 only when OpenSSL is providing the encryption. With pure Java (JSSE, Java 11+) it is not supported because Java has not (yet?) implemented post handshake authentication. And for those who are not aware: post_handshake_auth is a new TLS extension in TLS 1.3 that's supposed to get used for that. The Java JEP (Java Enhancement Proposal) that defines the TLS1.3 support in Java 11 can eg. be found under http://openjdk.java.net/jeps/332 It contains: "The following significant features will not be implemented as part of this JEP: ... - Post-handshake authentication ..." There's a three month old open bug for implementing it with no noticeable activity: https://bugs.openjdk.java.net/browse/JDK-8206923 Regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: TLSv1.3 and 9.0.next
On 12/10/18 19:08, Christopher Schultz wrote: > Mark, > > On 10/11/18 16:39, Mark Thomas wrote: >> Hi, > >> As you probably noticed I've been working on TLS 1.3 support, >> building on Chris's work in BZ 62748. > >> The current status is the Tomcat Native 1.2.x and Tomcat 9.0.x >> support TLSv1.3 in any of the following combinations: - NIO[2]+JSSE >> on Java 11 - NIO[2]+OpenSSL on Java 8 onwards - APR/Native on Java >> 8 onwards > >> All combinations support server initiated requests for client >> certificates apart from NIO[2]+JSSE on Java 11 as the Java 11 >> TLSv1.3 implementation does not include post handshake >> authentication. > >> I have made quite a few changes to the Native code to support >> this. > >> My plan going forwards is as follows: > >> - give folks until early next week to review the native changes - >> tag 1.2.18 early next week - hopefully release 1.2.18 late next >> week - update 9.0.x to require 1.2.18 or later - tag / release >> 9.0.x > >> Alongside the above, I'll be backporting the TLSv1.3 support to >> 8.5.x and 9.0.x. > >> Thoughts, comments and especially code reviews welcome. > > Rather than throwing a new tcnative into both Tomcat 9.0.x and Tomcat > 8.5.x simultaneously, maybe we should release Tomcat 9.0.x with an > updated tcnative and get some feedback before we back-port everything. Ah. I've already done the back-ports. We can certainly release 9.0.x and wait before 8.5.x though. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: TLSv1.3 and 9.0.next
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Mark, On 10/11/18 16:39, Mark Thomas wrote: > Hi, > > As you probably noticed I've been working on TLS 1.3 support, > building on Chris's work in BZ 62748. > > The current status is the Tomcat Native 1.2.x and Tomcat 9.0.x > support TLSv1.3 in any of the following combinations: - NIO[2]+JSSE > on Java 11 - NIO[2]+OpenSSL on Java 8 onwards - APR/Native on Java > 8 onwards > > All combinations support server initiated requests for client > certificates apart from NIO[2]+JSSE on Java 11 as the Java 11 > TLSv1.3 implementation does not include post handshake > authentication. > > I have made quite a few changes to the Native code to support > this. > > My plan going forwards is as follows: > > - give folks until early next week to review the native changes - > tag 1.2.18 early next week - hopefully release 1.2.18 late next > week - update 9.0.x to require 1.2.18 or later - tag / release > 9.0.x > > Alongside the above, I'll be backporting the TLSv1.3 support to > 8.5.x and 9.0.x. > > Thoughts, comments and especially code reviews welcome. Rather than throwing a new tcnative into both Tomcat 9.0.x and Tomcat 8.5.x simultaneously, maybe we should release Tomcat 9.0.x with an updated tcnative and get some feedback before we back-port everything. - -chris -BEGIN PGP SIGNATURE- Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/ iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAlvA4wYACgkQHPApP6U8 pFjNZQ/9Ebqi365aY6c6FXe9Q9gUBONe6cS8vFZIsfwQsFta6mXap72zqSoaZ9ra s2KxDHUibt2Rzn2JJOJanq4nE/mcHgp9Qdw02ns7l9aESw38/Un5C4JUwMj1DQ+s ZlUFPVBonq8+BIKqTIrUOdIcpiiBE60WC+z20PSfkLiJOPrGLtmjrj7Rcd/2agoI MscHjNH2fGbz21OWLZGs3XbL+RhFKTldhqA8PKLRdb15q9FJgIyYVND/QT786Avt bxTtl4b6UoQYckMeSDSwbtBCpTgB0ilDyHrRPlpe7VuCpeVxc9eMt/UBIYhdDVZP O7twmzAd9mNPZtcTHEZl04DxACQiAGHIVJk9E7Fgw+ypMuc7JhYqMi4gxgDYJzOK dWmEXWSTUv20yZMspHi6JfWu2FWHrAfQUOwdRPfC04Fd3JRBBuOCwf/HRs6J01mP FW6sf1S/cEaTgO/4Y5JENW+IN7G+u8QV4/khmGEdss/S1cPrjYeffImfOmi3OwRg 6EKmeS5LrdLwOPfkd1y1SMg918ao4NbCO0H+pwdV9MwkAy7n7Rklr/aMsLfjuHTS oqLbYZjaY+S9gneVIZ0PPkDmMpBORdqlcRcv1ZN8q/q8lzRooaHGAk4ZUO0kdUAa Cyc7Q8MVtYcGG8QoZ/U6EXRUV6fct16I2hfvSqGiQ+HM9+CTqGU= =E/KJ -END PGP SIGNATURE- - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: TLSv1.3 and 9.0.next
On 12/10/18 15:55, George Stanchev wrote: > Mark, > > Can you elaborate around the following: > > > All combinations support server initiated requests for client certificates > apart from NIO[2]+JSSE on Java 11 as the Java 11 TLSv1.3 implementation does > not include post handshake authentication. > > > What are the use cases affected. Is it for TLS upgrade when a certain > resource is being requested? Security constraints can require CLIENT-CERT authentication for some URLs within a web application. If the TLS connection is established before one of these URLs is requested then either renegotiation (TLSv1.2 and earlier) or post handshake authentication (TLSv1.3) is required to obtain the certificates from the client. Tomcat supports this for all combinations of TLSv1.2. It supports it for TLSv1.3 only when OpenSSL is providing the encryption. With pure Java (JSSE, Java 11+) it is not supported because Java has not (yet?) implemented post handshake authentication. HTH, Mark > > Thanks in advance, > George > > -Original Message- > From: Mark Thomas > Sent: Thursday, October 11, 2018 2:39 PM > To: Tomcat Developers List > Subject: TLSv1.3 and 9.0.next > > Hi, > > As you probably noticed I've been working on TLS 1.3 support, building on > Chris's work in BZ 62748. > > The current status is the Tomcat Native 1.2.x and Tomcat 9.0.x support > TLSv1.3 in any of the following combinations: > - NIO[2]+JSSE on Java 11 > - NIO[2]+OpenSSL on Java 8 onwards > - APR/Native on Java 8 onwards > > All combinations support server initiated requests for client certificates > apart from NIO[2]+JSSE on Java 11 as the Java 11 TLSv1.3 implementation does > not include post handshake authentication. > > I have made quite a few changes to the Native code to support this. > > My plan going forwards is as follows: > > - give folks until early next week to review the native changes > - tag 1.2.18 early next week > - hopefully release 1.2.18 late next week > - update 9.0.x to require 1.2.18 or later > - tag / release 9.0.x > > Alongside the above, I'll be backporting the TLSv1.3 support to 8.5.x and > 9.0.x. > > Thoughts, comments and especially code reviews welcome. > > Mark > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional > commands, e-mail: dev-h...@tomcat.apache.org > > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
RE: TLSv1.3 and 9.0.next
Mark, Can you elaborate around the following: All combinations support server initiated requests for client certificates apart from NIO[2]+JSSE on Java 11 as the Java 11 TLSv1.3 implementation does not include post handshake authentication. What are the use cases affected. Is it for TLS upgrade when a certain resource is being requested? Thanks in advance, George -Original Message- From: Mark Thomas Sent: Thursday, October 11, 2018 2:39 PM To: Tomcat Developers List Subject: TLSv1.3 and 9.0.next Hi, As you probably noticed I've been working on TLS 1.3 support, building on Chris's work in BZ 62748. The current status is the Tomcat Native 1.2.x and Tomcat 9.0.x support TLSv1.3 in any of the following combinations: - NIO[2]+JSSE on Java 11 - NIO[2]+OpenSSL on Java 8 onwards - APR/Native on Java 8 onwards All combinations support server initiated requests for client certificates apart from NIO[2]+JSSE on Java 11 as the Java 11 TLSv1.3 implementation does not include post handshake authentication. I have made quite a few changes to the Native code to support this. My plan going forwards is as follows: - give folks until early next week to review the native changes - tag 1.2.18 early next week - hopefully release 1.2.18 late next week - update 9.0.x to require 1.2.18 or later - tag / release 9.0.x Alongside the above, I'll be backporting the TLSv1.3 support to 8.5.x and 9.0.x. Thoughts, comments and especially code reviews welcome. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org