Eric Rescorla wrote:
>>
>> based on your reply my conclusion is that
>>
>> -          there is no (standard compliant) way for a server to use a
>> SHA256 based certificate for server side authentication in cases where the
>> client does not provide the signature_algorithm extension
>
> Not quite. If the client offers TLS 1.1 or below, then you simply don't
> know if it
> will accept SHA-256 and you should send whatever you have. If the client
> offers
> TLS 1.2 and no signature_algorithm extension, then you technically are
> forbidden
> from sending it a SHA-256 certificate. Note that any client which in fact
> supports
> SHA-256 with TLS 1.2 but doesn't send signature_algorithms containing it,
> is noncomformant. It's not clear to me how many such clients in fact exist.

rfc5246 makes it perfectly compliant for a TLSv1.2 client to support
sha256-based signature algorithms and be willing to use them,
and *NOT* send the TLS signature_algorithm extension.

https://tools.ietf.org/html/rfc5246#appendix-E.2


> 
> -    clients should always use the signature algorithm extension to
>> ensure the server can apply a certificate with the appropriate crypt
>> algorithms

Except that the vast majority of servers only has a single certificate,
and will have to do "the right thing" in most situations anyway.
The definition of the "signature_algorithms" extensions is
sufficiently dense to say that you MUST not send it, except when
ClientHello.client_version=(3,3), and it is not possible to send it
when using a backwards-compatible SSL version 2 CLIENT-HELLO.


-Martin

_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls

Reply via email to