SEED
{{Short description|Block cipher}}
{{other uses|Seed (disambiguation)}}
{{Infobox block cipher
| name = SEED
| designers = KISA
| publish date = 1998
| derived from =
| derived to =
| related to =
| key size = 128 bits
| block size = 128 bits
| structure = Nested Feistel network
| rounds = 16
| cryptanalysis = 2122 against 8-rounds {{cite journal|last1=Sung|first1=Jaechul|title=Differential cryptanalysis of eight-round SEED|journal=Information Processing Letters|doi=10.1016/j.ipl.2011.02.004|volume=111|issue=10|pages=474–478|year=2011}}
}}
SEED is a block cipher developed by the Korea Information Security Agency (KISA). It is used broadly throughout South Korean industry, but seldom found elsewhere. It gained popularity in Korea because 40-bit encryption was not considered strong enough, so the Korea Information Security Agency developed its own standard. However, this decision has historically limited the competition of web browsers in Korea, as no major SSL libraries or web browsers supported the SEED algorithm, requiring users to use an ActiveX control in Internet Explorer for secure web sites.{{cite web |author=Gen Kanai |date=2007-01-26 |title=The Cost of Monoculture |url=http://www.kanai.net/weblog/archive/2007/01/26/00h53m55s#003095 |access-date=2007-01-29 |url-status=dead |archive-url=https://web.archive.org/web/20070202022759/http://www.kanai.net/weblog/archive/2007/01/26/00h53m55s#003095 |archive-date=2007-02-02 }}
On April 1, 2015 the Ministry of Science, ICT and Future Planning (MSIP) announced its plan to remove the ActiveX dependency from at least 90 percent of the country's top 100 websites by 2017. Instead, HTML5-based technologies will be employed as they operate on many platforms, including mobile devices. Starting with the private sector, the ministry plans to expand this further to ultimately remove this dependency from public websites as well.{{cite web |author=Kang Yoon-seung |date=2015-04-01 |title=ICT ministry seeks to drop ActiveX in private sector|url=http://english.yonhapnews.co.kr/news/2015/04/01/0200000000AEN20150401002700320.html |access-date=2015-08-01 }}
Design
SEED is a 16-round Feistel network with 128-bit blocks and a 128-bit key. It uses two 8 × 8 S-boxes which, like those of SAFER, are derived from discrete exponentiation (in this case, x247 and x251 – plus some "incompatible operations"). It also has some resemblance to MISTY1 in the recursiveness of its structure: the 128-bit full cipher is a Feistel network with an F-function operating on 64-bit halves, while the F-function itself is a Feistel network composed of a G-function operating on 32-bit halves. However the recursion does not extend further because the G-function is not a Feistel network. In the G-function, the 32-bit word is considered as four 8-bit bytes, each of which is passed through one or the other of the S-boxes, then combined in a moderately complex set of boolean functions such that each output bit depends on 3 of the 4 input bytes.
SEED has a fairly complex key schedule, generating its thirty-two 32-bit subkeys through application of its G-function on a series of rotations of the raw key, combined with round constants derived (as in TEA) from the Golden ratio.
Use and adoption
SEED has been adopted by several standard protocols: S/MIME (RFC 4010), TLS/SSL (RFC 4162), IPSec (RFC 4196), and ISO/IEC 18033-3:2010.
NSS software security library in Mozilla's Gecko platform has implemented support for SEED,{{cite web|url=https://bugzilla.mozilla.org/show_bug.cgi?id=453234|title=Bug 453234 - Support for SEED Cipher Suites to TLS RFC4010 |publisher=Mozilla|access-date=2013-12-01}} and Mozilla Firefox as of 3.5.4 supports SEED as a TLS cipher;{{cite web|title=Bug 478839 - Firefox should support South Korean SEED crypto cipher suites|url=https://bugzilla.mozilla.org/show_bug.cgi?id=478839|access-date=2009-08-09}} however, Mozilla decided to drop the support of SEED by default in Firefox 27 and above because support for SEED has not had any practical positive effect in terms of helping South Korea migrate away from ActiveX-based e-commerce, and other browsers are not offering any SEED-based cipher suites.{{cite web|title=Bug 934663 - Change set of cipher suites enabled by default in Gecko to match cipher suite proposal |url=https://bugzilla.mozilla.org/show_bug.cgi?id=934663|access-date=2013-11-30}}{{cite web|title=Proposal to Change the Default TLS Ciphersuites Offered by Browsers|url=https://briansmith.org/browser-ciphersuites-01.html|author=Brian Smith|date=2013-08-08|access-date=2013-11-30|archive-date=2013-12-03|archive-url=https://web.archive.org/web/20131203012731/https://briansmith.org/browser-ciphersuites-01.html|url-status=dead}} NSS still supports SEED-based cipher suites.
The Linux kernel has supported SEED since 2007.{{cite web|url=https://github.com/torvalds/linux/commit/e2ee95b8c69e542d6afef3f6f38ea598cc146ba7| title=[CRYPTO] seed: New cipher algorithm | work=Linux kernel | publisher=GitHub | last=Chang | first=Hye-Shik | date=2007-08-21 | access-date=2020-03-11}}
Bloombase supports SEED in their full suite of data cryptography solutions.{{cite web|url=https://kb.bloombase.com/kb/?View=entry&EntryID=78|title=What symmetric block cipher algorithms are supported by Bloombase Crypto Module?}}
References
{{Reflist}}
External links
- [http://seed.kisa.or.kr/iwt/ko/sup/EgovSeedInfo.do SEED - KISA] (Official Site, in Korean)
- [http://seed.kisa.or.kr/html/egovframework/iwt/ds/ko/ref/%5B2%5D_SEED+128_Specification_english_M.pdf SEED official specification document] {{Webarchive|url=https://web.archive.org/web/20130430151555/http://seed.kisa.or.kr/html/egovframework/iwt/ds/ko/ref/%5B2%5D_SEED+128_Specification_english_M.pdf |date=2013-04-30 }} (English)
- {{IETF RFC|4269|link=no}}: The SEED encryption algorithm (obsoletes {{IETF RFC|4009|link=no}})
- {{IETF RFC|4010|link=no}}: Use of the SEED Encryption Algorithm in Cryptographic Message Syntax (CMS)
- {{IETF RFC|4162|link=no}}: Addition of SEED Cipher Suites to Transport Layer Security (TLS)
- {{IETF RFC|4196|link=no}}: The SEED Cipher Algorithm and Its Use with IPsec
- [https://www.iso.org/standard/54531.html ISO/IEC 18033-3:2010]
{{Cryptography navbox | block}}
{{DEFAULTSORT:Seed}}