Телефон: +7 (383)-202-16-86

Статья опубликована в рамках: XLV Международной научно-практической конференции «Технические науки - от теории к практике» (Россия, г. Новосибирск, 28 апреля 2015 г.)

Наука: Технические науки

Секция: Информатика, вычислительная техника и управление

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Тюрин С.Ф. COPACOBANA . ОСОБЕННОСТИ РАЗРАБОТКИ И РЕАЛИЗАЦИИ // Технические науки - от теории к практике: сб. ст. по матер. XLV междунар. науч.-практ. конф. № 4(41). – Новосибирск: СибАК, 2015.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

 

COPACOBANA .  ОСОБЕННОСТИ  РАЗРАБОТКИ  И  РЕАЛИЗАЦИИ

Тюрин  Сергей  Феофентович

д-р  техн.  наук,  профессор,  Пермский  национальный  исследовательский  политехнический  университет,  профессор  кафедры,  РФ,  г.  Пермь

E -mailtyurinsergfeo@yandex.ru

Андреев  Роман  Александрович

студент  Пермского  национального  исследовательского  политехнического  университета,  РФ,  г.  Пермь

E -mailabusedroman@gmail.com

Феофилова  Полина  Андреевна

студент  Пермского  национального  исследовательского  политехнического  университета,  РФ,  г.  Пермь

E-mail: 

 

COPACOBANA.  THE  FEATURES  OF  DESIGN  AND  REALIZATION

Tyurin  Sergey

doctor  of  technical  sciences,  professor  of  Perm  national  research  polytechnic  university,  Russia,  Perm

Andreev  Roman

student  of  Perm  national  research  polytechnic  university,  Russia,  Perm

Feofilova  Polina

student  of  Perm  national  research  polytechnic  university,  Russia,  Perm

 

АННОТАЦИЯ

В  данной  статье  рассмотрена  разработка  и  реализация  суперкомпьютера  Copacobana,  который  может  использоваться  для  надежной  оценки  безопасности  криптографических  алгоритмов,  таких  как  RSA  and  ECC.

ABSTRACT

This  paper  reviews  the  design  and  realization  of  the  Copacobana  machine,  which  can  be  used  for  a  reliable  security  estimation  of  cryptosystems  such  as  RSA  and  ECC.

 

Ключевые  слова:   ППВМ;  криптоаналитическое  устройство;  надежность  криптографических  алгоритмов.

Keywords:   FPGA;  cryptanalytical  machine;  cryptographic  algorithms’  reliability.

 

Все  современные  применяющиеся  на  практике  шифры,  будь  то  симметричные  или  ассиметричные,  используют  параметры  безопасности,  которые  защищают  их  от  атак  с  компьютеров.  В  зависимости  от  маржи  безопасности,  выбранной  в  данном  приложении,  многие  шифры  потенциально  уязвимы  для  атак  спецтехники,  которая  имеет  соотношение  цена-качество  на  несколько  порядков  лучше,  чем  в  современных  компьютерах.  В  данной  статье  описывается  конструкция  и  успешная  реализация  прототипа  криптоаналитического  устройства  специального  назначения  на  базе  недорогих  ППВМ  (программируемая  пользователем  вентильная  матрица). 

Copacobana  —  массово-параллельное  устройство,  основанное  на  ППВМ.  Оборудование  подходит  для  вычислительных  задач,  которые  являются  параллелизуемыми  и  имеют  низкие  требования  к  связи  и  может  использоваться,  например,  для  атаки  на  криптосистемы  на  основе  эллиптических  кривых.  Даже,  несмотря  на  то,  что  нарушение  алгоритмов  RSA  (1024  бит  или  больше)  или  ECC  (160  бит  или  больше)  находится  вне  досягаемости  Copacobana,  оно  предусматривает  возможность  для  надежной  оценки  безопасности  RSA  и  ECC.  Еще  более  актуальным  является  тот  факт,  что  ограниченные  ресурсы  приложений,  в  частности  мобильных  устройств,  иногда  определяются  короткими  параметрами,  такими  как  112-битные  и  128-битные  систем  ECC,  рекомендованные  стандартом  SECG,  которые  становятся  уязвимыми  в  устройстве.  Кроме  того,  по  закону  Мура,  можно  предсказать  надежность  RSA  и  ECC  в  ближайшие  годы.  Текущие  реализации  базового  контроля  доступа  применяют  симметричную  криптографию  (Triple  DES)  и  генерируют  соответствующие  ключи  шифрования  и  аутентификации  из  паспортных  данных. 

Оптимизированный  по  стоимости  параллельный  дешифровщик  (Copacobana)  состоит  из  множества  независимых  недорогих  ППВМ,  подключенных  к  центральному  компьютеру  через  стандартный  интерфейс,  например,  USB  или  Ethernet.  Кроме  того,  такой  стандартный  интерфейс  позволяет  легко  расширить  центральный  компьютер  более  чем  одним  устройством  Copacobana.  Запуск  ППВМ,  контроль  и  накопление  результатов  производится  центральным  компьютером.  Поскольку  криптоаналитические  приложения  требуют  большое  количество  вычислительной  мощности,  специальная  платформа  объединяет  вплоть  до  120  ППВМ  (Spartan3-1000).  Построение  системы  такого  размера  с  коммерчески  доступными  платами  ППВМ,  конечно,  возможно,  но  очень  дорого.  Поэтому  разработчики  Copacobana  решили  спроектировать  и  создать  собственно  оборудование.  Реализация  оптимизированного  по  стоимости  проекта  стала  возможной  только  путем  строго  ограничения  всех  функциональных  возможностей  до  непосредственно  необходимых  для  взлома  кодов,  чтобы  сделать  несколько  вариантов  на  основе  легкодоступных  компонентов  и  интерфейсов.  Констукция  Copacobana  изображена  на  рисунке  1  и  состоит  из: 

·     ППВМ  модулей  для  фактической  реализации  представленных  аппаратных  архитектур, 

·     системной  платы,  соединяющей  все  модули  ППВМ  с  общей  шиной  данных,  шиной  адреса  и  питания, 

·     платы  контроллера,  подключающей  шину  данных  и  адресную  шину  к  хост-компьютеру  через  USB.

 

Рисунок  1.  Архитектура  Copacobana

 

Модули  ППВМ:  Было  решено  использовать  недорогие,  современные  ППВМ  для  проектирования:  Xilinx  Spartan3-1000.  Данная  ППВМ  имеет  1  миллион  системных  портов,  17280  эквивалентных  логических  ячеек,  1920  конфигурируемых  логических  блоков,  эквивалентных  7680  секторам,  120  килобит  динамической  оперативной  памяти,  432  килобита  блочной  оперативной  памяти  и  4  цифровых  блока  управления  синхронизацией.  Выбор  данной  ППВМ  был  сделан  путем  сравнения  размеров  и  цены  различных  типов  и  серий  ППВМ.  Разработчики  решили  остановиться  на  небольших  модулях  в  стандартном  формате  двустороннего  модуля  памяти,  включающих  в  себя  6  ППВМ  Xilinx  XC3S1000.  Рисунок  2  показывает  эту  реализацию  на  примере  сделанной  вручную  четырехслойной  печатной  платы.  ППВМ  непосредственно  соединены  с  общей  64-битной  шиной  данных  на  плате  модуля  ППВМ,  который  сопряжен  с  шиной  данных  соединительной  платы  через  приемопередатчики  с  тремя  состояниями  выхода.  В  то  время  как  ППВМ  отключены  от  шины,  они  могут  взаимодействовать  локально  через  внутреннюю  64-битную  шину  на  двустороннем  модуле  памяти.  Данный  формат  двустороннего  модуля  памяти  позволяет  осуществить  компактное  расположение  компонентов,  что  очень  важно  для  тесно  связанных  шиной  модулей. 

 

Рисунок  2.  Модуль  ППВМ

 

Соединительная  плата:  соединительная  плата  связывает  все  модули  ППВМ  и  плату  контроллера.  Все  модули  соединены  64-битной  шиной  данных  и  16-битной  адресной  шиной.  Одну  такую  мастер-шину  легко  контролировать,  так  как  не  требуется  система  разрешения  конфликтов.  Обработка  прерываний  полностью  избегается  для  того  чтобы  сохранить  максимально  простую  конструкцию.  Если  распределение  передачи  данных  заранее  неизвестно,  мастер-шине  нужно  будет  опрашивать  ППВМ.  Кроме  того,  питание  подается  на  каждый  модуль  ППВМ  и  интерфейс  контроллера.  Соединительная  плата  распределяет  два  тактовых  сигнала  от  платы  контроллера  к  слотам.  Каждому  модулю  ППВМ  присваивается  уникальный  аппаратный  адрес,  который  создается  с  помощью  типовой  матричной  логики,  подключенной  к  каждому  разъему  DIMM.  Таким  образом,  все  ядра  ППВМ  могут  иметь  одинаковую  конфигурацию  и  все  модули  ППВМ  могут  иметь  одинаковую  топологию.  Они  могут  быть  легко  заменены  в  случае  дефекта.  На  рисунке  3  показан  прототип  соединительной  платы,  оснащенной  одним  модулем  ППВМ  и  платой  интерфейса  системы  управления,  которая  будет  описана  далее. 

 

Рисунок  3.  Соединительная  плата

 

Интерфейс  управления:  Передача  данных  от  и  до  ППВМ  и  к  хост-компьютеру  осуществляется  интерфейсом  управления.  Была  выбрана  небольшая  макетная  плата  с  ППВМ  (CESYS  USB2FPGA).  Макетная  плата  включает  в  себя  Xilinx  XC2S200  Spartan  II  FPGA  (PQ208),  встроенный  контроллер  USB  (CYPRESS  FX-2)  и  1  Мбайт  статической  памяти  с  произвольным  доступом  (SRAM).  Кроме  того,  плата  имеет  96-контактный  разъем  для  подключения  к  ней.  В  более  поздних  версиях  конструкции  можно  заменить  макетную  плату  ППВМ  микроконтроллером  со  стандартным  USB  или  интерфейсом  Ethernet.  Аппаратный  контроллер  должен  обеспечивать  согласование  различных  тактовых  частот:  интерфейс  USB  использует  тактовую  частоту  24  МГц,  базовая  плата  —  33  МГц,  а  сам  контроллер  работает  на  внутренней  тактовой  частоте  133  МГц.  Главные  задачи  интерфейса  управления  заключаются  в  том,  что  он  используется  для  декодирования  и  выполнения  команд  хоста,  полученных  с  помощью  USB,  для  программирования  ППВМ  через  шину  данных  в  параллельном  подчиненном  режиме,  для  инициализации  ППВМ  и  старта  вычислений,  и  регулярного  опроса  ППВМ  для  получения  результатов. 

Хост-компьютер:  объектом  верхнего  уровня  Copacobana  является  хост-компьютер,  который  используется  для  программирования  и  управления  всеми  работающими  ППВМ.  Для  этого  была  написана  библиотека  программ,  чтобы  давать  команды  плате  контроллера  Copacobana,  которая  подключена  через  USB.  Все  программы  системного  программного  обеспечения  основаны  на  библиотеке  с  закрытым  исходным  кодом,  предоставленной  производителем  платы  (CESYS).  Дополнительные  функции  включают  в  себя  обнаружение  аппаратных  средств  и  некоторые  процедуры  настройки,  такие  как  перезапуск  соединительной  платы.  Функции  более  высокого  уровня  включают  в  себя  команды  на  прикладном  уровне.  Например,  для  DES  Cracker,  можно  хранить  определенный  исходный  текст  в  единицах  DES,  проверять  его  статус,  и  т.  д.

В  данной  работе  был  описан  проект  экономически-эффективного  устройства  Copacobana,  которое  может  быть  реализовано  менее  чем  за  10000  долларов  и  содержать  120  недорогих  ППВМ.  Оно  было  предназначено  для  решения  проблем  шифрования,  но  не  ограничивается  этим.  Будут  существовать  более  интересные  проблемы,  которые  могут  быть  эффективно  решены  с  помощью  этого  устройства.

 

Список  литературы:

1.Sandeep  Kumar,  Christof  Paar,  Jan  Pelzl  ,  Gerd  Pfeiffer,  Manfred  Schimmler  «Breaking  ciphers  with  COPACOBANA  —  a  cost-optimized  parallel  code  breaker»,  Chair  for  Embedded  Security  Ruhr-University  Bochum,  Germany;  Electrical  Department  of  the  University  of  Kiel,  Germany,  2006.

Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий