SEED — это блочный шифр, разработанный Корейским агентством по информационной безопасности (KISA). Он широко используется в южнокорейской промышленности, но редко встречается в других местах. Он приобрел популярность в Корее, поскольку 40-битное шифрование считалось недостаточно сильным, поэтому Корейское агентство по информационной безопасности разработало свой собственный стандарт. Однако это решение исторически ограничило конкуренцию веб-браузеров в Корее, поскольку ни одна крупная библиотека SSL или веб-браузер не поддерживала алгоритм SEED, требуя от пользователей использовать элемент управления ActiveX в Internet Explorer для защищенных веб-сайтов. [2]
1 апреля 2015 года Министерство науки, ИКТ и планирования будущего (MSIP) объявило о своем плане по удалению зависимости ActiveX как минимум из 90 процентов 100 лучших веб-сайтов страны к 2017 году. Вместо этого будут использоваться технологии на основе HTML5 , поскольку они работают на многих платформах, включая мобильные устройства. Начиная с частного сектора, министерство планирует расширить это и в конечном итоге удалить эту зависимость из государственных веб-сайтов. [3]
SEED — это 16-раундовая сеть Фейстеля с 128-битными блоками и 128-битным ключом . Она использует два 8 × 8 S-блока , которые, как и в SAFER , получены из дискретного возведения в степень (в данном случае x 247 и x 251 — плюс некоторые «несовместимые операции»). Она также имеет некоторое сходство с MISTY1 в рекурсивности своей структуры: 128-битный полный шифр — это сеть Фейстеля с F-функцией, работающей на 64-битных половинах, в то время как сама F-функция — это сеть Фейстеля, состоящая из G-функции, работающей на 32-битных половинах. Однако рекурсия не распространяется дальше, поскольку G-функция не является сетью Фейстеля. В G-функции 32-битное слово рассматривается как четыре 8-битных байта, каждый из которых пропускается через один или другой S-блок, а затем объединяется в умеренно сложный набор булевых функций таким образом, что каждый выходной бит зависит от 3 из 4 входных байтов.
SEED имеет довольно сложную схему ключей , генерируя тридцать два 32-битных подключа посредством применения своей G-функции к серии вращений необработанного ключа в сочетании с раундовыми константами, полученными (как в TEA ) из золотого сечения .
SEED принят несколькими стандартными протоколами: S/MIME (RFC 4010), TLS/SSL (RFC 4162), IPSec (RFC 4196) и ISO/IEC 18033-3:2010.
Библиотека безопасности программного обеспечения NSS на платформе Gecko от Mozilla реализовала поддержку SEED, [4] а Mozilla Firefox начиная с версии 3.5.4 поддерживает SEED в качестве шифра TLS; [5] однако Mozilla решила отказаться от поддержки SEED по умолчанию в Firefox 27 и выше, поскольку поддержка SEED не оказала никакого практического положительного эффекта в плане помощи Южной Корее в отказе от электронной коммерции на основе ActiveX, а другие браузеры не предлагают никаких наборов шифров на основе SEED. [6] [7] NSS по-прежнему поддерживает наборы шифров на основе SEED.
Ядро Linux поддерживает SEED с 2007 года. [8]
Bloombase поддерживает SEED в своем полном наборе решений по криптографии данных. [9]