RFC 4132

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

πŸ“… published July 2005, from ietf

RFC 4132: Addition of Camellia Cipher Suites to Transport Layer Security (TLS) πŸŽ€

Okay bestie, so this RFC is from July 2005 and it's on the Standards Track πŸ’…. It was written by S. Moriai (Sony Computer Entertainment Inc.), A. Kato (NTT Software Corporation), and M. Kanda (Nippon Telegraph and Telephone Corporation). It doesn't list any Obsoletes or Updates, so it's not replacing or changing anything else πŸ¦‹

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 (C) The Internet Society (2005).

Abstract πŸ’–

This document proposes adding new cipher suites to the Transport Layer Security (TLS) protocol so it can support the Camellia encryption algorithm as a bulk cipher algorithm. It's giving encryption upgrade πŸ”

1. Introduction 🧚

Okay so this doc proposes new cipher suites for the TLS protocol [TLS] to support the Camellia encryption algorithm as a bulk cipher algorithm. It's a new option for fast and efficient bulk cipher algorithms, and honestly it's iconic πŸ‘‘

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]. It was also included in the list of cryptographic techniques for Japanese e-Government systems, which were picked by the Japan CRYPTREC (Cryptography Research and Evaluation Committees) [CRYPTREC]. Camellia is also in the 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 a Cipher Suite in TLS used by the Phase 1 S-7 (Bi-directional Metadata Delivery Protection) specification and the S-5 (TV-Anytime Rights Management and Protection Information for Broadcast Applications) specification. Camellia has also been submitted to other standardization bodies such as ISO (ISO/IEC 18033) and the IETF S/MIME Mail Security Working Group [Camellia-CMS]. Main character energy ✨

Camellia supports a 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 work well 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 AES, Camellia offers at least comparable encryption speed in software and hardware. 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/, has a wealth of information about Camellia, including the detailed specification, security analysis, performance figures, a 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)

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

okay so bestie, the IETF is basically saying "we're not picking a side on who owns what" πŸ’… πŸ™ˆ They don't say whether any patents or other IP rights on the tech in this doc are valid or how far they reach, and they don't say whether you can actually get a license for them. They also haven't gone hunting for any of that stuff themselves. ngl, that's a very lawyer-coded energy πŸ’€ If you want the details on how RFC rights work, check out BCP 78 and BCP 79 ✨

Copies of IPR disclosures sent to the IETF Secretariat live in the IETF's online IPR repository at http://www.ietf.org/ipr. That's where you'll find any promises to license, plus the results of anyone trying to get a general license or permission to use those rights if you're an implementer or user of this spec πŸ—‚οΈπŸ«Ά

And if you know about a copyright, patent, patent application, or other proprietary right that might cover tech you'd need to build this standard, the IETF invites you to tell them! πŸ“£ Send it to ietf-ipr@ietf.org and spill the tea 🍡 Not gonna lie, I love that they're literally asking for the drama. Main character energy πŸ‘‘

Acknowledgement

The RFC Editor function is currently funded by the Internet Society. So the people keeping these RFCs running get their paycheck from them right now 🌈 Thank you, Internet Society, you're iconic πŸ’œ

πŸ“¦ where this page comes from