On Sat, Jan 30, 2021 at 06:49:42PM +0100, Matus UHLAR - fantomas wrote:

> >On Fri, Jan 29, 2021 at 06:53:09PM +0100, Matus UHLAR - fantomas wrote:
> >> yes, but when the policy is encryption required for client-server
> >> connections, aNULL would break that IIUC
> >> - please correct me if I'm wrong
> 
> On 29.01.21 15:09, Viktor Dukhovni wrote:
> >You're wrong.  The "a" in aNULL ciphers stands for "authentication".
> >These ciphers just do anonymous Diffie-Hellman, but do not authenticate
> >either party.  They encrypt the traffic just as well as the ciphers
> >that present certificates that you ignore anyway.
> 
> so, the connection/encryption would work, but with aNULL will be
> unauthenticated, which means certificates won't be checked?

No, with aNULL certificates are not even *sent* (exchanged between
client and server).  With opportunistic TLS (security level "may")
the "!aNULL" ciphers send server certificates the client never
checks (sends mail anyway, regardless of the content of the
certificate).

When the Postfix TLS security level requires authentication (mandatory
TLS stronger than just "encrypt"), Postfix automatically disables the
aNULL ciphers internally.  You never need to do explicitly, except to
satisfy some clueless auditor's checklist.

That said, my support for aNULL ciphers in Postfix is a losing battle
against said clueless auditors and even not so clueless maximalists,
who frown on the opportunistic use-case.

In particular, there are no anonymous E(EC)DH ciphers in TLS 1.3, the
server MUST send a certificate, even when the client is going to ignore
it.  The server also has no mechanism to learn that the client intends
to ignore the server's certificate.  I think that leaving out the aNULL
ciphers from TLS 1.3 is a bad idea, but despite RFC7435, the maximalists
have not really changed their attitudes.

-- 
    Viktor.

Reply via email to