Алхимия безопасности
 
16.03.2004
Сергей Озеров

Словосочетание «AMD Alchemy» пока знакомо, пожалуй, лишь специалистам и узкому кругу просвещенных любителей. Вместе с тем это семейство микропроцессоров обладает многими качествами, способными вывести его в лидеры некоторых сегментов рынка. Речь пойдет о Security Engine недавно появившегося процессора AMD Alchemy Au1550 как об одном из удачных аппаратных решений в области защиты компьютеров.

Как известно, популяция современных процессоров не ограничивается семействами AMD Athlon и Intel Pentium. Для таких вычислительных устройств, как «умное» сетевое оборудование, «тонкие клиенты», бытовая электроника и PDA, давно существуют специализированные CPU, и гиганты «настольной» процессорной индустрии всеми силами стараются захватить и этот перспективный рынок. Располагающая куда большими возможностями Intel фактически уже закрепилась в этих нишах со своими процессорами IXP, IXC, StrongArm и XScale. AMD тоже не сидела сложа руки и два года назад, несмотря на свое тяжелое финансовое положение, приобрела компанию Alchemy Semiconductors1, выпускавшую встраиваемые процессоры архитектуры MIPS32. В результате на свет появилось семейство AMD Alchemy, ориентированное в первую очередь на так называемый Internet Edge Device market — рынок сетевого и «околосетевого» оборудования. Впрочем, семейство Au получилось универсальным — эти процессоры могут быть использованы в сетевых маршрутизаторах, в устройствах беспроводного доступа, в «тонких клиентах», PDA, принтерах, бытовой электронике — одним словом, AMD пытается отхватить как можно больший сегмент нового для себя рынка. Свежий Au1550 является старшим в линейке Alchemy, но интересен он нам совсем не этим, а уникальным Security Engine — интегрированным блоком, который сам бог велел использовать в системах безопасности компьютеров.

Специализированные криптографические решения (например, Intel IPX 2850), предназначенные для высокопроизводительного сетевого оборудования, известны давно — в 10-гигабитной сети количество проходящих через маршрутизатор IP-пакетов огромно, и каждый пакет нужно прочитать, проверить контрольную сумму, принять решение о его дальнейшем пути следования, — одного этого с легкостью хватит, чтобы загрузить по горло даже очень мощный процессор2, а если добавить к стандартным задачам еще и защиту пропускаемых данных, то скорость обработки без дополнительных мер рискует упасть до неприемлемой величины. Немудрено, что процессора «общего назначения» с подобными возможностями нам еще не встречалось.

AMD Alchemy, как и последние Intel XScale, относятся к категории «System-On-Chip». На одном кристалле помимо процессорного ядра размещаются почти все необходимые для полноценного компьютера компоненты (см. блок-схему) — контроллер динамической памяти (DDR/SDRAM, вплоть до DDR400), статической (флэш-память — NOR и NAND, PCMCIA, SRAM, ROM), DMA-контроллер, два сетевых 10/100 Мбит/с, контроллеры PCI 2.2 и USB 1.1, четыре PSC (поддерживается AC’97, I2S, SPI, SMBus) и UART-контроллер. Это позволяет заметно снизить энергопотребление системы (а интегрированный контроллер памяти — еще и достичь большего быстродействия). В Alchemy, похоже, есть решительно всё — и PDA можно организовать, и веб-панель, и «тонкий клиент», и для сетевого оборудования умеренной производительности Au1550 прекрасно подойдет. Тактовые частоты — 333, 400, 500 МГц, энергопотребление на частоте 400 МГц — всего 500 мВт. Процессорное ядро реализовано на RISC-архитектуре MIPS32 (см. www.mips.com/content/Corporate/AboutUs). Впрочем, все это уже было в процессоре Au1500, нас же сейчас интересует фирменный Security Engine. Как и сам процессор Alchemy, это не «родная» разработка AMD, — SE родился в компании SafeNet3 и был куплен и адаптирован корпорацией «под себя»4.

На аппаратном уровне в SE поддерживаются:

- Технология виртуальных частных сетей (Virtual Private Network, VPN). Au1550 способен сопровождать неограниченное число VPN-соединений. Пакеты IPSec обрабатываются полностью аппаратно, сильно ускоряется обработка SSL.
- Криптографические алгоритмы DES, 3DES, AES, ARC-4, SHA-1, MD5
- Генератор случайных чисел.

Начнем с первого пункта — с VPN. Сегодня, когда глобальные компьютерные сети получили широчайшее распространение, строить свою локальную сеть (например, чтобы соединить офисные сети) совершенно невыгодно. Гораздо дешевле подключиться к одной из глобальных сетей и работать через нее. Однако передаваемую по глобальной сети информацию легко перехватить или подменить. VPN позволяет защититься от этих напастей, создавая в обычной, «физической» сети сеть виртуальную. С точки зрения пользователя все выглядит так, будто он находится в «частной» внутренней сети, сетевое оборудование работает по собственным каналам, а не через глобальную сеть. На самом деле сетевые пакеты просто шифруются (чтобы их было невозможно прочитать или подменить), упаковываются в другие пакеты, после чего передаются по глобальной сети получателю, который распаковывает пакет, расшифровывает данные и передает их виртуальной сети пользователя.

Протоколов, позволяющих организовать VPN, — два. Первый — хорошо знакомый нам SSL (Secure Socket Layer), который обладает изрядной универсальностью и потому широко используется в Интернете. Вы наверняка работали с shtml-страницами и видели предупреждения Internet Explorer о входе в «защищенную зону» и выходе из нее. В эти моменты ваш компьютер создавал маленькую частную сеть на две машины — вашу и сервер, с которым вы работали и безопасно передавал данные. Второй протокол — IPSec, разработанный специально для организации VPN.

Как вы уже поняли, Security Engine от Alchemy Au1550 может работать с обоими способами организации VPN практически без потерь в скорости, что позволяет организовывать маломощные сетевые маршрутизаторы для VPN-сетей либо разрабатывать на его основе системы (те же банкоматы, например), напрямую подключающиеся к глобальной сети и работающие по VPN.

Следующий пункт SE от Alchemy — аппаратная поддержка протоколов шифрования. Здесь все просто — поддерживаются старые надежные стандарты DES и 3DES, новый AES (с ключами 128, 192 и 256 бит), известнейший алгоритм хэширования MD5 и некоторые другие. Шифрование пригодится в тех случаях, когда VPN может и не защитить (например, злоумышленник находится в самой компании и имеет доступ к внутренней сети), — для пересылки данных без использования VPN или для безопасного хранения данных. Криптография — достаточно ресурсоемкое приложение, и аппаратная поддержка позволяет создавать на Au1550 гораздо более быстрые безопасные системы, чем на обычных контроллерах, не оснащенных этими специализированными возможностями и использующих мощности процессоров общего назначения.

Остался последний пункт Security Engine — аппаратный генератор случайных чисел. Зачастую криптографические алгоритмы сильно зависят от способа выбора случайных чисел, используемых в качестве ключей к алгоритмам. Если генератор случайных чисел слаб, то перебрать все возможные ключи к зашифрованным данным не составит труда. В Alchemy Au1550 используется генератор «настоящих» случайных чисел (основанный на физическом тепловом шуме) — сверхнадежный вариант. Без него пришлось бы работать с псевдослучайными числовыми последовательностями.

В общем — полку «защищенных процессоров» прибыло. Au1550, безусловно, найдет применение в банковской аппаратуре, да и вообще везде, где требуется компьютеризованное устройство, подключающееся к сети и требующее обеспечения своей безопасности. Наверняка чип будет использован и в «домашних» и «офисных» маршрутизаторах.

1 Компания была основана в 1999 году и принимала непосредственное участие в разработке StrongARM, перекупленного позднее Intel.
2 Недаром в сетевом оборудовании используется настолько быстрая память, насколько вообще возможно, — там до сих пор живет и здравствует Rambus и QDR. А эксперименты с современными гигабитными контроллерами наглядно показывают, что для полного раскрытия их потенциала требуется процессор с частотой от 1,7–2 ГГц, иначе драйверы просто не успевают «упаковывать» поток данных, передающийся по сети.
3 SafeNet (www.safenet-inc.com), основанная в 1983 году, сегодня является лидером в области систем безопасности.
4 Это, кстати, вовсе не плохо — разработка процессора и системы безопасности к нему растянулась бы на долгие годы, и неочевидно, что результат получился бы лучше, чем то, что корпорация имеет сейчас, не говоря уже о необходимости маркетинга и продвижения «совершенно нового» продукта.

 


<<Стена
Все материалы номера
Кванты становятся ближе >>