You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+9-14Lines changed: 9 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,4 @@
1
-
### todo
2
-
3
-
## Token Binding Protocol Negotiation TLS Extension support for Java 9
1
+
## Token Binding Protocol Negotiation TLS Extension support for Java 10
4
2
5
3
### Introduction
6
4
Token Binding over HTTP [[I-D.ietf-tokbind-https]] provides a mechanism
@@ -20,7 +18,7 @@ with the Token Binding ID, which ensures those tokens cannot be used
20
18
successfully over a different TLS connection or by a different client
21
19
than the one to which they were issued.
22
20
23
-
This project provides an implementation of the TLS Extension for Token Binding Protocol Negotiation as well as TLS Keying Material Exporters (also TLS Extended Master Secret Extension [[RFC 7627]] in some older versions) for Java 9. An an open source library for consuming or producing Token Binding message structures, which applications do after negotiation, can be found with the [token-binding-java] project.
21
+
This project provides an implementation of the TLS Extension for Token Binding Protocol Negotiation as well as TLS Keying Material Exporters for Java 10. An an open source library for consuming or producing Token Binding message structures, which applications do after negotiation, can be found with the [token-binding-java] project.
24
22
25
23
### Usage
26
24
This implementation relies on modifications of a few JDK classes in the `sun.security.ssl` package. The JVM needs to be told to use those modified classes in place of those in the base modul of the JRE. And your application needs to interact with the API of some of those classes, likely through reflection and dynamic method invocation.
@@ -29,10 +27,10 @@ This implementation relies on modifications of a few JDK classes in the `sun.sec
29
27
To use the functionality of this project, the JVM needs to be started using the `--patch-module` option as follows:
Where path-to-java9-token-binding-negotiation-jar is the path on the file system for this project's jar file. This prepends the jar file to the default bootstrap classpath so that its classes will be used in place of the default JRE classes. Be certain to use the jar version which corresponds to the version of the JRE being used (see [Versions](#versions) below).
33
+
Where path-to-java10-token-binding-negotiation-jar is the path on the file system for this project's jar file. This prepends the jar file to the default bootstrap classpath so that its classes will be used in place of the default JRE classes. Be certain to use the jar version which corresponds to the version of the JRE being used (see [Versions](#versions) below).
36
34
37
35
#### API
38
36
A few new methods have been added to the OpenJDK implementations of `SSLEngine` and `SSLSocket` to facilitate an application doing Token Binding using the functionality provided by this project.
With the EKM and the negotiated key parameters type, a library like [token-binding-java] can be used to consume or create Token Binding messages.
84
82
85
83
### <aname="versions"></a> Versions
86
-
The Token Binding negotiation implementation relies on modifications to a few OpenJDK classes so needs to be updated to stay in sync when there are changes to those OpenJDK classes in a Java update. As such, the java9-token-binding-negotiation jar version matching the JRE version needs to be used. The following provides the version mappings.
84
+
The Token Binding negotiation implementation relies on modifications to a few OpenJDK classes so needs to be updated to stay in sync when there are changes to those OpenJDK classes in a Java update. As such, the java10-token-binding-negotiation jar version matching the JRE version needs to be used. The following provides the version mappings.
87
85
88
-
| Java 9 Version | java9-token-binding-negotiation Version
86
+
| Java 10 Version | java9-token-binding-negotiation Version
89
87
| ------------- |-------------
90
-
| 9.0.4 | [1.0.0.v2]
91
-
| 9.0.1 | [1.0.0.v1]
92
-
| 9 | unsupported
88
+
| 10.0.1 | [1.0.0.v1]
89
+
| 10 | [1.0.0.v1]
93
90
94
91
See [java8-token-binding-negotiation] for Token Binding Protocol Negotiation support with Java 8.
95
92
96
93
### License
97
94
The modified OpenJDK classes are released under the same GPLv2 + Classpath Exception license as the OpenJDK.
0 commit comments