RFC 4132 PROPOSED STANDARD CRYPTOGRAPHY · TRANSPORT SECURITY

Camellia in TLS: Addition of Camellia Cipher Suites to Transport Layer Security (TLS)

Adding a fast block cipher option for encrypting TLS traffic.

On rfc-editor.org ↗
PUBLISHED
July 2005
AUTHORS
S. Moriai, A. Kato, M. Kanda
STREAM
IETF
OBSOLETED BY
RFC 5932 — Camellia TLS
BLOCK SIZE
128 bits
SUPPORTED KEY SIZES
128, 192, 256 bits
NUMBER OF CIPHER SUITES DEFINED
12
AUTHENTICATION ALGORITHM
SHA-1
DOI
10.17487/RFC4132

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                          S. Moriai
Request for Comments: 4132              Sony Computer Entertainment Inc.
Category: Standards Track                                        A. Kato
                                                NTT Software Corporation
                                                                M. Kanda
                              Nippon Telegraph and Telephone Corporation
                                                               July 2005


  Addition of Camellia Cipher Suites to Transport Layer Security (TLS)

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This document proposes the addition of new cipher suites to the
   Transport Layer Security (TLS) protocol to support the Camellia
   encryption algorithm as a bulk cipher algorithm.

1.  Introduction

   This document proposes the addition of new cipher suites to the TLS
   protocol [TLS] to support the Camellia encryption algorithm as a bulk
   cipher algorithm.  This proposal provides a new option for fast and
   efficient bulk cipher algorithms.

   Note: This work was done when the first author worked for NTT.

1.1.  Camellia

   Camellia was selected as a recommended cryptographic primitive by the
   EU NESSIE (New European Schemes for Signatures, Integrity and
   Encryption) project [NESSIE] and included in the list of
   cryptographic techniques for Japanese e-Government systems, which
   were selected by the Japan CRYPTREC (Cryptography Research and
   Evaluation Committees) [CRYPTREC].  Camellia is also included in
   specification of the TV-Anytime Forum [TV-ANYTIME].  The TV-Anytime
   Forum is an association of organizations that seeks to develop
   specifications to enable audio-visual and other services based on
   mass-market high-volume digital storage in consumer platforms.
   Camellia is specified as Cipher Suite in TLS used by Phase 1 S-7
   (Bi-directional Metadata Delivery Protection) specification and S-5
   (TV-Anytime Rights Management and Protection Information for
   Broadcast Applications) specification.  Camellia has been submitted
   to other several standardization bodies such as ISO (ISO/IEC 18033)
   and IETF S/MIME Mail Security Working Group [Camellia-CMS].

   Camellia supports 128-bit block size and 128-, 192-, and 256-bit key
   sizes; i.e., the same interface specifications as the Advanced
   Encryption Standard (AES) [AES].

   Camellia was jointly developed by NTT and Mitsubishi Electric
   Corporation in 2000 [CamelliaTech].  It was carefully designed to
   withstand all known cryptanalytic attacks and even to have a
   sufficiently large security leeway.  It has been scrutinized by
   worldwide cryptographic experts.

   Camellia was also designed to be suitable for both software and
   hardware implementations and to cover all possible encryption
   applications, from low-cost smart cards to high-speed network
   systems.  Compared to the AES, Camellia offers at least comparable
   encryption speed in software and hardware.  In addition, a
   distinguishing feature is its small hardware design.  Camellia
   perfectly meets one of the current TLS market requirements, for which
   low power consumption is mandatory.

   The algorithm specification and object identifiers are described in
   [Camellia-Desc].  The Camellia homepage,
   http://info.isl.ntt.co.jp/camellia/, contains a wealth of information
   about camellia, including detailed specification, security analysis,
   performance figures, reference implementation, and test vectors.

1.2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHOULD", "SHOULD NOT",
   "RECOMMENDED", "MAY", and "OPTIONAL" in this document (in uppercase,
   as shown) are to be interpreted as described in [RFC2119].

2.  Proposed Cipher Suites

   The new cipher suites proposed here have the following definitions:

   CipherSuite TLS_RSA_WITH_CAMELLIA_128_CBC_SHA      = { 0x00,0x41 };
   CipherSuite TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA   = { 0x00,0x42 };
   CipherSuite TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA   = { 0x00,0x43 };
   CipherSuite TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA  = { 0x00,0x44 };

   CipherSuite TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA  = { 0x00,0x45 };
   CipherSuite TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA  = { 0x00,0x46 };

   CipherSuite TLS_RSA_WITH_CAMELLIA_256_CBC_SHA      = { 0x00,0x84 };
   CipherSuite TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA   = { 0x00,0x85 };
   CipherSuite TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA   = { 0x00,0x86 };
   CipherSuite TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA  = { 0x00,0x87 };
   CipherSuite TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA  = { 0x00,0x88 };
   CipherSuite TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA  = { 0x00,0x89 };

3.  Cipher Suite Definitions

3.1.  Cipher

   All the cipher suites described here use Camellia in cipher block
   chaining (CBC) mode as a bulk cipher algorithm.  Camellia is a 128-
   bit block cipher with 128-, 192-, and 256-bit key sizes; i.e., it
   supports the same block and key sizes as the Advanced Encryption
   Standard (AES).  However, this document only defines cipher suites
   for 128- and 256-bit keys as well as AES cipher suites for TLS
   [AES-TLS].  These cipher suites are efficient and practical enough
   for most uses, including high-security applications.

                            Key       Expanded    Effective   IV   Block
   Cipher           Type  Material  Key Material  Key Bits   Size  Size

   CAMELLIA_128_CBC Block   16          16          128       16    16
   CAMELLIA_256_CBC Block   32          32          256       16    16

3.2.  Hash

   All the cipher suites described here use SHA-1 [SHA-1] in a Hashed
   Message Authentication Code (HMAC) construction, as described in
   section 5 of [TLS].

3.3.  Key Exchange

   The cipher suites defined here differ in the type of certificate and
   key exchange method.  They use the following options:

   Cipher Suite                              Key Exchange Algorithm

   TLS_RSA_WITH_CAMELLIA_128_CBC_SHA         RSA
   TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA      DH_DSS
   TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA      DH_RSA
   TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA     DHE_DSS
   TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA     DHE_RSA
   TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA     DH_anon
   TLS_RSA_WITH_CAMELLIA_256_CBC_SHA         RSA
   TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA      DH_DSS
   TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA      DH_RSA
   TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA     DHE_DSS
   TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA     DHE_RSA
   TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA     DH_anon

   For the meanings of the terms RSA, DH_DSS, DH_RSA, DHE_DSS, DHE_RSA,
   and DH_anon, please refer to sections 7.4.2 and 7.4.3 of [TLS].

4.  Security Considerations

   It is not believed that the new cipher suites are ever less secure
   than the corresponding older ones.  Camellia is considered secure,
   and it has withstood extensive cryptanalytic efforts in several open,
   worldwide cryptographic evaluation projects [CRYPTREC][NESSIE].

   At the time of writing this document, there are no known weak keys
   for Camellia.

   For other security considerations, please refer to the security
   considerations of the corresponding older cipher suites described in
   [TLS] and [AES-TLS].

5.  References

5.1.  Normative References

   [Camellia-Desc] Matsui, M., Nakajima, J., and S. Moriai, "A
                   Description of the Camellia Encryption Algorithm",
                   RFC 3713, April 2004.

   [TLS]           Dierks, T. and C. Allen, "The TLS Protocol Version
                   1.0", RFC 2246, January 1999.

   [RFC2119]       Bradner, S., "Key words for use in RFCs to Indicate
                   Requirement Levels", BCP 14, RFC 2119, March 1997.

5.2.  Informative References

   [CamelliaTech]  Aoki, K., Ichikawa, T., Kanda, M., Matsui, M.,
                   Moriai, S., Nakajima, J., and Tokita, T., "Camellia:
                   A 128-Bit Block Cipher Suitable for Multiple
                   Platforms - Design and Analysis -", In Selected Areas
                   in Cryptography, 7th Annual International Workshop,
                   SAC 2000, August 2000, Proceedings, Lecture Notes in
                   Computer Science 2012, pp.39-56, Springer-Verlag,
                   2001.

   [Camellia-CMS]  Moriai, S. and A. Kato, "Use of the Camellia
                   Encryption Algorithm in Cryptographic Message Syntax
                   (CMS)", RFC 3657, January 2004.

   [AES]           NIST, FIPS PUB 197, "Advanced Encryption Standard
                   (AES)", November 2001.
                   http://csrc.nist.gov/publications/fips/fips197/fips-
                   197.{ps,pdf}.

   [AES-TLS]       Chown, P., "Advanced Encryption Standard (AES)
                   Ciphersuites for Transport Layer Security (TLS)", RFC
                   3268, June 2002.


   [SHA-1]         FIPS PUB 180-1, "Secure Hash Standard", National
                   Institute of Standards and Technology, U.S.
                   Department of Commerce, April 17, 1995.

   [CRYPTREC]      Information-technology Promotion Agency (IPA), Japan,
                   CRYPTREC,
                   http://www.ipa.go.jp/security/enc/CRYPTREC/index-
                   e.html.

   [NESSIE]        The NESSIE project (New European Schemes for
                   Signatures, Integrity and Encryption),
                   http://www.cosic.esat.kuleuven.ac.be/nessie/.

   [TV-ANYTIME]    TV-Anytime Forum, http://www.tv-anytime.org/.

Authors' Addresses

   Shiho Moriai
   Sony Computer Entertainment Inc.

   Phone: +81-3-6438-7523
   Fax:   +81-3-6438-8629
   EMail: shiho@rd.scei.sony.co.jp


   Akihiro Kato
   NTT Software Corporation

   Phone: +81-45-212-7094
   Fax:   +81-45-212-7506
   EMail: akato@po.ntts.co.jp


   Masayuki Kanda
   Nippon Telegraph and Telephone Corporation

   Phone: +81-46-859-2437
   Fax:   +81-46-859-3365
   EMail: kanda.masayuki@lab.ntt.co.jp
          camellia@lab.ntt.co.jp (Camellia team)

Full Copyright Statement

   Copyright (C) The Internet Society (2005).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at ietf-
   ipr@ietf.org.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.

AI ELI5

On this page
PROBLEMTLS needed more options for bulk encryption algorithms beyond the standard ciphers already defined.
MECHANISMRFC 4132 specifies new cipher suites that use Camellia, a 128-bit block cipher with 128-, 192-, and 256-bit keys, in CBC mode with SHA-1 for authentication.
STATUS TODAYTLS implementations could now choose Camellia as an alternative to other encryption algorithms, offering comparable speed and efficient hardware implementations.

§1Introduction and Background

RFC 4132 proposes the addition of new cipher suites to the Transport Layer Security (TLS) protocol to support the Camellia encryption algorithm as a bulk cipher. Camellia is a 128-bit block cipher that supports the same key sizes as the Advanced Encryption Standard (AES): 128, 192, and 256 bits.

Camellia was jointly developed by NTT and Mitsubishi Electric in 2000 and has been extensively evaluated by cryptographic experts worldwide. It was selected as a recommended cipher by the EU NESSIE (New European Schemes for Signatures, Integrity and Encryption) project and included in Japan's CRYPTREC list of approved cryptographic techniques. The cipher is also specified in the TV-Anytime Forum standards for broadcast media protection.

A Japanese company invented a fast, safe secret code called Camellia. Experts all over the world checked it and said it was good. This RFC says TLS can use it.

§2Camellia Algorithm Properties

Camellia offers significant advantages for cryptographic applications. It maintains a 128-bit block size, the same as AES, and provides three key lengths: 128 bits, 192 bits, and 256 bits. RFC 4132 defines cipher suites for both 128-bit and 256-bit keys, treating these as the most practical and efficient options for the widest range of applications.

A distinguishing feature of Camellia is its suitability for both software and hardware implementations with low power consumption. Compared to AES, Camellia offers at least comparable encryption speed in both software and hardware, while maintaining a particularly small hardware design footprint. This makes it ideal for deployment on everything from low-cost smart cards to high-speed network systems.

Camellia works just like AES, the most popular code. But it was designed to be extra small and fast on computer chips, especially ones that don't use much power.

§3New Cipher Suite Definitions

RFC 4132 defines 12 new cipher suites using Camellia in cipher block chaining (CBC) mode, combined with SHA-1 for message authentication. These suites vary by key exchange method and key size. For 128-bit Camellia keys, the cipher suites are: TLS_RSA_WITH_CAMELLIA_128_CBC_SHA, TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA, TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA, TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA, TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA, and TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA.

For 256-bit keys, the same set of key exchange options is available with corresponding cipher suites. Each key exchange method refers to different certificate and authentication approaches already defined in the TLS specification: RSA for direct authentication with RSA certificates, DH_DSS and DH_RSA for Diffie-Hellman key exchange with DSS or RSA certificates, DHE_DSS and DHE_RSA for ephemeral Diffie-Hellman with DSS or RSA signatures, and DH_anon for unauthenticated anonymous key exchange.

The RFC adds 12 new recipes for how to use Camellia in TLS. Each recipe picks a different way for the two computers to prove who they are and share the secret key.

Camellia Cipher Suite Key Exchange Methods
  • RSARSA Key Exchange — Direct authentication using RSA certificates.
  • DH_DSSStatic Diffie-Hellman with DSS — Diffie-Hellman key exchange with DSS-signed certificates.
  • DH_RSAStatic Diffie-Hellman with RSA — Diffie-Hellman key exchange with RSA-signed certificates.
  • DHE_DSSEphemeral Diffie-Hellman with DSS — Temporary Diffie-Hellman key exchange with DSS signatures.
  • DHE_RSAEphemeral Diffie-Hellman with RSA — Temporary Diffie-Hellman key exchange with RSA signatures.
  • DH_anonAnonymous Diffie-Hellman — Unauthenticated key exchange; no certificates used.

§4Security Assurance

The RFC asserts that Camellia is cryptographically secure and has withstood extensive cryptanalytic evaluation in multiple open worldwide cryptographic evaluation projects, specifically CRYPTREC and NESSIE. At the time of publication, there were no known weak keys for Camellia. The new cipher suites are believed to be no less secure than the corresponding cipher suites already defined in TLS using other algorithms.

For additional security guidance beyond what applies specifically to Camellia, RFC 4132 defers to the security considerations of the existing TLS cipher suites and the AES cipher suites defined in RFC 3268. This maintains consistency with the security properties expected of well-vetted cryptographic protocols.

Camellia passed all the tests that smart people use to break codes. It has no known weak spots, so it is as safe as other codes already in TLS.

§5References