Hi Xuelei, thanks for the comments.  I'll respond in-line:

On 10/21/2020 11:52 AM, Xuelei Fan wrote:
Hi Jamil,

Sorry for delay.  It took a few days before I was able to read the CSR. Just a few comments for your consideration.

In the specification section, you mentioned how to disable the algorithms. It might not be necessary.  It is just something we need to implement so that it does not break the mechanism.
JN: I was under the impression that where System/Security properties have an impact on the feature that we typically make note of it.

I'm not very sure of the order of EdDSA in the signature algorithms. EdDSA and EdDSA certificate are not popular yet.  I'm fine with the order. Would you mind to share your consideration of the preference?

No real consideration.  All I did was remove the explicit disable code in SignatureScheme.java:278 - 286.  The ordering in the enumeration then shows up in the signature_algorithms[_cert] extensions. Ed* schemes could be moved down a bit in the enumeration if we think that will make a difference.  I think it would only matter if a server or client had both ECC and EdDSA keyed certs that would be up for selection.  There are other implementations that do have Ed* signature schemes a little further down in their lists.


The list of signature schemes is out of the quote box and hard to read. I may just list one scheme one line in one quote box, like:

    + ed25519
    + ed448
      ecdsa_secp256r1_sha256
JN: I could do that.  I was trying to avoid having it be a mile long, but if it's not rendering horizontally then I'll change it.  I suppose it doesn't have to be the list of all sig schemes.  Just a few lines of context on either side of the new signature schemes should drive the point home and keep it succinct.

I'm not very sure why EdDSA cannot apply to ServerKeyExchange and CertificateVerify in TLS 1.0 and 1.1. ServerKeyExchange and CertificateVerify is used to authenticate the server or the client's possession of the private key of the cert.  So if EdDSA cannot be used for them, the EdDSA certificate should not be selected for TLS 1.0/1.1 as well.  I did not read the RFC fully yet, it looks like that EdDSA can be used for TLS 1.0/1.1 ServerKeyExchange and CertificateVerify as well.  I may miss something.
JN: So far I have yet to find a server implementation that will accept a 1.0/1.1 client hello with no signature_algorithms extension and not barf.  This of course assumes that the server only has EdDSA keyed TLS certificates.  As I mentioned to you on the side, if it's RSA/DSA/ECC and has an EdDSA signature, then things work great.  To be fair, I haven't experimented with anything other than my modified JSSE and OpenSSL so far.

Hope it helps.

Xuelei

On 10/13/2020 10:59 AM, Jamil Nimeh wrote:
Hi Folks,

I just put out the draft CSR for the RFE that adds EdDSA support in JSSE.  If anyone has some spare cycles to review this I'd appreciate it.

https://bugs.openjdk.java.net/browse/JDK-8254709

Thanks,

--Jamil

Reply via email to