Re: [TLS] chacha to replace RC4 (was: Salsa vs. ChaCha)

Nikos Mavrogiannopoulos <nmav@redhat.com> Fri, 06 December 2013 13:15 UTC

Return-Path: <nmav@redhat.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AD0F31ADFAF for <tls@ietfa.amsl.com>; Fri, 6 Dec 2013 05:15:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.903
X-Spam-Level:
X-Spam-Status: No, score=-6.903 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7iDwAybnnN3z for <tls@ietfa.amsl.com>; Fri, 6 Dec 2013 05:15:05 -0800 (PST)
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by ietfa.amsl.com (Postfix) with ESMTP id 00D391ADFAD for <tls@ietf.org>; Fri, 6 Dec 2013 05:15:04 -0800 (PST)
Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id rB6DExW6020413 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Fri, 6 Dec 2013 08:15:00 -0500
Received: from [10.34.2.127] (dhcp-2-127.brq.redhat.com [10.34.2.127]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id rB6DEvmT020060 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 6 Dec 2013 08:14:59 -0500
Message-ID: <1386335697.3430.31.camel@dhcp-2-127.brq.redhat.com>
From: Nikos Mavrogiannopoulos <nmav@redhat.com>
To: Robert Ransom <rransom.8774@gmail.com>
Date: Fri, 06 Dec 2013 14:14:57 +0100
In-Reply-To: <CABqy+spiBPaGrk7ipeWvC2Z_B=MeDVZAmmEbXL-Pa2Lf-6UA2Q@mail.gmail.com>
References: <CAM_a8JzY8VGq+N-5YbDk_3EdXkKJzof1BtUTVY8pJev2HZ9U6g@mail.gmail.com> <1384850165.2542.13.camel@dhcp-2-127.brq.redhat.com> <5296C6D7.2040509@dei.uc.pt> <1386332388.3430.22.camel@dhcp-2-127.brq.redhat.com> <CABqy+spiBPaGrk7ipeWvC2Z_B=MeDVZAmmEbXL-Pa2Lf-6UA2Q@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25
Cc: tls@ietf.org
Subject: Re: [TLS] chacha to replace RC4 (was: Salsa vs. ChaCha)
X-BeenThere: tls@ietf.org
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." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>, <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tls/>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 06 Dec 2013 13:15:06 -0000

On Fri, 2013-12-06 at 04:54 -0800, Robert Ransom wrote:

> > We believe there are merits in selecting a winner of cryptographic
> > competition, but given your comments and that Chacha was the
> > recommendation of the CFRG there is no need to delay things if Chacha vs
> > Salsa20 is only issue to replace RC4.
> The other issue in replacing RC4 with Salsa20 or ChaCha is that the
> currently available efficient implementations of Salsa20 and ChaCha
> encrypt a whole message at once, rather than incrementally generating
> a stream as with RC4.  (And modifying them to do the latter would add
> considerable complexity -- if it must be done, I would generate 3 or 4
> blocks of output at a time and have some other piece of code XOR the
> keystream with the data.)

Which ones are you referring to? I have been using salsa20 with a sane
API that allows encrypting message by message (see nettle's
implementation of salsa20).

> Salsa20 and ChaCha are meant to be used as in Adam Langley's draft,
> not as replacements for RC4.

Are you suggesting that neither is good for TLS? I disagree, as if you
see my IETF88 presentation slides, Salsa20 performs much better than RC4
_in TLS_, making it suitable for a replacement.

Adam's draft proposes a novel scheme. While that this is a good scheme,
it can only be used in TLS 1.2 or later, and there will be competing
AEAD schemes coming from the CAESAR competition. We need a replacement
for RC4 now, that can (ideally) be patched in old implementations as
well.

regards,
Nikos