Re: [TLS] Salsa vs. ChaCha

Samuel Neves <> Thu, 28 November 2013 04:30 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id 23C7F1AE10A for <>; Wed, 27 Nov 2013 20:30:40 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -4.202
X-Spam-Status: No, score=-4.202 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id kMpztMDdTPR2 for <>; Wed, 27 Nov 2013 20:30:37 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 3DB9D1A1DFA for <>; Wed, 27 Nov 2013 20:30:37 -0800 (PST)
Received: from [] ( []) (authenticated bits=0) by (8.14.4/8.14.4) with ESMTP id rAS4UEIT006546 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for <>; Thu, 28 Nov 2013 04:30:20 GMT
Message-ID: <>
Date: Thu, 28 Nov 2013 04:30:15 +0000
From: Samuel Neves <>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.1.1
MIME-Version: 1.0
References: <> <>
In-Reply-To: <>
X-Enigmail-Version: 1.6
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-FCTUC-DEI-SIC-MailScanner-Information: Please contact for more information
X-FCTUC-DEI-SIC-MailScanner-ID: rAS4UEIT006546
X-FCTUC-DEI-SIC-MailScanner: Found to be clean
X-FCTUC-DEI-SIC-MailScanner-SpamCheck: not spam, SpamAssassin (not cached, score=-60.25, required 3.252, autolearn=not spam, ALL_TRUSTED -10.00, BAYES_00 -0.25, L_SMTP_AUTH -50.00)
Subject: Re: [TLS] Salsa vs. ChaCha
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 28 Nov 2013 04:30:40 -0000

On 19-11-2013 08:36, Nikos Mavrogiannopoulos wrote:
>  This was not our intention (and if there is some text that needs to be
> changed to prevent that, please let us know). Mainly what we want to say
> there, is that we do not want to evaluate any new cipher (we are not
> experts in cipher design). We select what is considered secure from the
> existing cryptographic competitions in order to replace RC4.

Section 7 does seem to focus a lot on the performance aspect of ChaCha.
In reality, ChaCha was designed to improve diffusion, which would
hopefully translate to more security per round. The speed advantages
were (mostly) incidental.

> If we follow the path to chacha, which is not the outcome of a cipher
> competition there can be arguments why not consider some other XXX
> stream cipher as well which could be better than ChaCha in some aspect.
> Such arguments would then be hard to confront.

I certainly understand the rationale of picking a co-winner (along with
Rabbit, HC-128, and SOSEMANUK) of a cryptographic competition. Nobody
ever got fired for that!

A few comments, though:

 - The most successful cryptanalysis performed on Salsa20 also analyzed
ChaCha [1, 2]. In each case, ChaCha withstood attacks with one fewer
round than its predecessor. ChaCha does seem to deliver on its goal of
more diffusion per round.

 - Zooko has mentioned BLAKE and its success against cryptanalysis, but
as noted this does not translate to a useful security reduction. It is
worth pointing out, however, that cryptographers chose to base the core
of their algorithm in the ChaCha quarter-round rather than the Salsa
quarter-round. This suggests equal or more confidence in ChaCha (see
also [4]).

 - There is a concurrent proposal to integrate Chacha20 + Poly1305 as a
TLS AEAD mode [3]. Implementors are unlikely to appreciate the
redundancy in having two separate, but very similar ciphers, in TLS (I
do realize that it makes just as much sense to ask Adam Langley to
change to Salsa20).

Ultimately, whatever variant ends up being chosen, I believe it's the
overwhelming consensus that it beats RC4.