RFC 4162

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

πŸ“… published September 2005, from ietf

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

Okay bestie, this RFC is a Standards Track doc from August 2005 πŸ’… Its authors are H.J. Lee, J.H. Yoon, and J.I. Lee, all from KISA (Korea Information Security Agency). It's published in the Network Working Group, and it doesn't obsolete or update anything. What it does is add SEED to TLS as a bulk cipher, so TLS can use it πŸ”βœ¨

Here's the title block in one place:

Network Working Group                                           H.J. Lee
Request for Comments: 4162                                     J.H. Yoon
Category: Standards Track                                       J.I. Lee
                                                                    KISA
                                                             August 2005

Status of This Memo πŸ“

This is an Internet standards track protocol for the Internet community, and it's asking for discussion and suggestions for improvements 🫢 For the standardization state and status of this protocol, check the current edition of "Internet Official Protocol Standards" (STD 1). Distribution of this memo is unlimited 🌈

Copyright (C) The Internet Society (2005).

Abstract πŸ¦‹

This doc proposes adding new cipher suites to Transport Layer Security (TLS) so it can support the SEED encryption algorithm as a bulk cipher algorithm πŸ”₯

1. Introduction ✨

Okay so the plan is to add new cipher suites to the TLS protocol [TLS] so it can use SEED as a bulk cipher algorithm. That's the whole vibe πŸ’–

1.1. SEED 🌸

SEED is a symmetric encryption algorithm. Korea Information Security Agency (KISA) and a group of experts developed it, starting in 1998. Its input/output block size is 128-bit, and its key length is also 128-bit. SEED uses a 16-round Feistel structure. A 128-bit input gets split into two 64-bit blocks. The right 64-bit block goes into the round function along with a 64-bit subkey from the key scheduling. It's giving well-organized 🧚

SEED is designed to be easy to implement in lots of software and hardware. It's built to be efficient with memory storage and simple when generating keys, without hurting the algorithm's security. It's also a great fit for restricted environments like mobile devices and smart cards πŸ“±

SEED is a national industrial association standard [TTASSEED]. In South Korea it's widely used for electronic commerce and financial services running on wired and wireless PKI πŸ‡°πŸ‡·πŸ’…

The algorithm specification and object identifiers are described in [SEED-ALG]. The SEED homepage, http://www.kisa.or.kr/seed/seed_eng.html, has a whole wealth of info: detailed specification, evaluation report, test vectors, and more πŸ“

1.2. Terminology πŸŽ€

Here's the key word squad πŸ’… In this document, the words "MUST", "MUST NOT", "REQUIRED", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" (in uppercase, as shown) are to be interpreted as described in [RFC2119].

2. Proposed Cipher Suites πŸ’œ

The new cipher suites proposed here are defined like this:

   CipherSuite TLS_RSA_WITH_SEED_CBC_SHA      = { 0x00, 0x96};
   CipherSuite TLS_DH_DSS_WITH_SEED_CBC_SHA   = { 0x00, 0x97};
   CipherSuite TLS_DH_RSA_WITH_SEED_CBC_SHA   = { 0x00, 0x98};
   CipherSuite TLS_DHE_DSS_WITH_SEED_CBC_SHA  = { 0x00, 0x99};
   CipherSuite TLS_DHE_RSA_WITH_SEED_CBC_SHA  = { 0x00, 0x9A};
   CipherSuite TLS_DH_anon_WITH_SEED_CBC_SHA  = { 0x00, 0x9B};

3. Cipher Suite Definitions πŸ”₯

3.1. Cipher 🌈

Every cipher suite here uses SEED in cipher block chaining (CBC) mode as its bulk cipher algorithm. SEED is a 128-bit block cipher with a 128-bit key size πŸ’–

3.2. Hash 🫢

Every cipher suite here uses SHA-1 [SHA-1] in an HMAC construction, as described in Section 5 of [TLS] ✨

3.3. Key Exchange πŸ”

The cipher suites differ in the type of certificate and key exchange method they use. Here's how it breaks down πŸ‘‘

   CipherSuite                         Key Exchange Algorithm

   TLS_RSA_WITH_SEED_CBC_SHA                    RSA
   TLS_DH_DSS_WITH_SEED_CBC_SHA                 DH_DSS
   TLS_DH_RSA_WITH_SEED_CBC_SHA                 DH_RSA
   TLS_DHE_DSS_WITH_SEED_CBC_SHA                DHE_DSS
   TLS_DHE_RSA_WITH_SEED_CBC_SHA                DHE_RSA
   TLS_DH_anon_WITH_SEED_CBC_SHA                DH_anon

For what RSA, DH_DSS, DH_RSA, DHE_DSS, DHE_RSA, and DH_anon mean, check sections 7.4.2 and 7.4.3 of [TLS] 🧚

4. Security Considerations πŸ”πŸ’€

Okay, this part is seriously important, so listen up πŸ‘€ It's not believed that the new cipher suites are less secure than the corresponding older ones. No security problem has been found on SEED. SEED holds up against known attacks, including differential cryptanalysis, linear cryptanalysis, and related key attacks, among others. SEED has been through wide public scrutiny. It's been evaluated and considered cryptographically secure by trustworthy organizations, including ISO/IEC JTC 1/SC 27 and Japan CRYPTREC (Cryptography Research and Evaluation Committees) [ISOSEED] [CRYPTREC]. SEED has also been submitted to other standardization bodies, including ISO (ISO/IEC 18033-3) and IETF S/MIME Mail Security [SEED-SMIME], and it's under consideration there too. For more security considerations, the reader is encouraged to read [SEED-EVAL] 🫢

For other security considerations, check the security of the corresponding older cipher suites described in [TLS] and [AES-TLS] ✨

5. References πŸ“š

5.1. Normative References

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

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

[TTASSEED]   Telecommunications Technology Association (TTA), South
             Korea, "128-bit Symmetric Block Cipher (SEED)",
             TTAS.KO-12.0004, September 1998, (In Korean)
             http://www.tta.or.kr/English/new/main/index.htm.

5.2. Informative References

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

[CRYPTREC]   Information-technology Promotion Agency (IPA), Japan,
             CRYPTREC. "SEED Evaluation Report", February 2002,
             http://www.kisa.or.kr/seed/seed_eng.html.

[ISOSEED]    ISO/IEC JTC 1/SC 27, "National Body contributions on NP
             18033 'Encryption Algorithms' in Response to SC 27 N2563
             (ATT.3 Korea Contribution)", ISO/IEC JTC 1/SC 27 N2656r1
             (n2656_3.zip), October 2000.

[SEED-EVAL]  KISA, "Self Evaluation Report",
             http://www.kisa.or.kr/seed/seed_eng.html.

[SEED-ALG]   Park, J., Lee, S., Kim, J., and J. Lee, "The SEED
             Encryption Algorithm", RFC 4009, February 2005.

[SEED-SMIME] Park, J., Lee, S., Kim, J., and J. Lee, "Use of the SEED
             Encryption Algorithm in Cryptographic Message Syntax
             (CMS)", RFC 4010, February 2005.

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

Authors' Addresses πŸ’Œ

Hyangjin Lee
Korea Information Security Agency

Phone: +82-2-405-5446
Fax  : +82-2-405-5319
EMail: jiinii@kisa.or.kr


Jaeho Yoon
Korea Information Security Agency

Phone: +82-2-405-5434
Fax  : +82-2-405-5219
EMail: jhyoon@kisa.or.kr


Jaeil Lee
Korea Information Security Agency

Phone: +82-2-405-5300
Fax  : +82-2-405-5219
EMail: jilee@kisa.or.kr

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. It also doesn't represent that it has made any independent effort to identify any such rights. Info on the procedures for rights in RFC documents can be found in BCP 78 and BCP 79.

Copies of IPR disclosures made to the IETF Secretariat, any assurances of licenses to be made available, or the results of an attempt to get a general license or permission for implementers or users to use such proprietary rights can be obtained from the IETF online IPR repository at http://www.ietf.org/ipr.

The IETF invites any interested party to bring to its attention any copyrights, patents, patent applications, or other proprietary rights that may cover technology required to implement this standard. Send that info to the IETF at ietf-ipr@ietf.org πŸ’Œ

Acknowledgement 🌷

Funding for the RFC Editor function is currently provided by the Internet Society πŸ’–

πŸ“¦ where this page comes from