RFR: JEP 249 (OCSP Stapling for TLS)
Jamil Nimeh
jamil.j.nimeh at oracle.com
Fri Jun 19 15:19:07 UTC 2015
Hi Xuelei, those are all good comments. I'll make the changes. Thanks
for the quick spec feedback.
--Jamil
On 6/18/2015 9:21 PM, Xuelei Fan wrote:
> src/java.base/share/classes/javax/net/ssl/ExtendedSSLSession.java
> =================================================================
> - * Obtains a {@link List} containing all status responses presented by
> - * the peer.
> + * Obtains a {@link List} containing DER-encoded OCSP responses
> + * (using the ASN.1 type OCSPResponse defined in RFC 6960) for
> + * the client to verify status of the server's certificate during
> + * handshaking.
>
> As this method can be called from both client and server side, "by the
> peer" may be confusing.
>
> Better to indicate the encode. Alternatively, the encode can also be
> specified in return value description.
>
> ----------------------------
>
> - * In server mode, the call will return an empty {@link List}
> - * as the client does not present status responses in a
> - * CertificateStatus message.
> - * <P>
> - * In client mode, a {@link List} containing one or more status
> - * responses will be returned if the server sent responses in a
> - * CertificateStatus handshake message. Otherwise an empty
> - * {@link List} will be returned.
>
> I think, actually there is no difference of the return value for client
> side and server side. Easy to understand if joining them together.
> Maybe better move to the return value description.
>
> Better to describe the sequence of the returned value and the item may
> be empty (not null) in order to follow the spec at the end paragraph of
> page 6, RFC 6961.
>
> ----------------------------
> - * If one or more responses have been set, {@link
> - * X509ExtendedTrustManager} objects will attempt to use them
> - * during server certificate verification.
> - * <P>
> - * Note: This method can be used only when using certificate-based
> - * cipher suites; using it with non-certificate-based cipher suites,
> - * such as Kerberos, will return an empty {@link List}.
> + * This method only apply to certificate-based server
> + * authentication. {@code X509ExtendedTrustManager} will use the
> + * returned value for server certificates validation.
>
> "certificate-based authentication" is a more general expression than
> "certificate-based cipher suites". Kerberos may also use certicate, I
> would suggest to remove the example.
>
> ----------------------------
>
> - * @return a non-null immutable list of byte arrays, each entry
> - * containing a single status response.
> + * @return a non-null immutable list of byte arrays, each entry
> + * containing a DER-encoded OCSP response (using the
> + * ASN.1 type OCSPResponse defined in RFC 6960) for
> + * server certificate(s) authentication. The returned
> + * list may be empty if no OCSP response was presented
> + * during handshaking.
>
> Just for your consideration.
>
> Xuelei
>
> On 6/19/2015 8:27 AM, Jamil Nimeh wrote:
>> Hello all,
>>
>> I have a first cut at the OCSP stapling webrev posted for your review:
>>
>> JEP: https://bugs.openjdk.java.net/browse/JDK-8046321
>> Webrev: http://cr.openjdk.java.net/~jnimeh/reviews/8046321/webrev.0/
>>
>> A couple items to note:
>>
>> * I'm in the process of updating the JEP with some more details. I
>> should be done with these changes by tonight (PDT).
>> * Missing are some of the TLS end-to-end tests. These tests have been
>> coded and run outside the jtreg framework, but for some reason
>> things hang in jtreg. I've included some of the supporting classes
>> that these tests will use (CertificateBuilder.java and
>> SimpleOCSPResponder.java) so folks could review those if they're
>> interested. I will update the webrev and notify the list as soon as
>> I've got the tests working in jtreg.
>>
>> Thanks to everyone who has helped along the way.
>>
>> --Jamil
>>
>>
More information about the security-dev
mailing list