УДК 004.75+ 519.688
Р.Т. Файзуллин, А.А. Свенч, И.Г. Хныкин
Применение гибридной суперкомпьютерной системы в задачах криптоанализа
Рассматривается создание гибридной суперкомпьютерной системы с использованием узлов на базе центральных и графических процессоров, анализируется ее применение в методах криптографического анализа, а также использование в качестве инструментальной базы для обучения по специальностям, связанным с защитой информации. Ключевые слова: информационная безопасность, криптографический анализ, высокопроизводительные вычисления, образовательные технологии.
Одним из наиболее важных направлений исследований при создании и усовершенствовании криптографических алгоритмов, а также при подготовке специалистов по защите информации является непосредственная реализация криптографического анализа шифров. Эта задача подразумевает применение различных стандартных атак, включая атаку грубой силы, которые являются трудоемкими переборными задачами. Сложность же используемых алгоритмов шифрования, равно как и количество возможных ключей шифра, неуклонно возрастает и решение проблемы проверки стойкости лежит в области использования высокопроизводительной вычислительной техники, кластеров, серверов и. т.п. Также применение высокопроизводительной техники позволяет осуществить качественную подготовку специалистов в области информационной безопасности. Очевидно, речь идет о специализированной технике, ориентированной не только на распараллеливание вычислений, но и позволяющей работать с большими и сверхбольшими массивами данных.
На базе оборудования нескольких производителей суперкомпьютеров (HP, NVidia, Sun) в Омском государственном техническом университете (ОмГТУ) авторами реализован инновационный проект в виде масштабируемой суперкомпьютерной системы, объединяющей вычислительные ресурсы центральных процессоров (CPU), графических процессоров (GPU), систему хранения данных и позволяющей получать актуальные оценки криптографической стойкости современных алгоритмов шифрования. Разработан интерфейс, ориентированный на применение системы в учебном процессе в курсах «Крипо-графические методы защиты информации», «Криптографические протоколы», «Защита программ и данных».
Описание суперкомпьютерной системы
В настоящее время существует множество вычислительных кластеров различных мощностей. Одни основаны на стандартной архитектуре CPU, другие - на менее известной архитектуре CUDA. Проведенный анализ показал, что вычислительных систем, объединяющих данные архитектуры в единый кластер, на сегодняшний момент.
Архитектура CPU позволяет использовать практически любые шаблоны параллельных вычислений, в то время как архитектура CUDA в каждый определенный момент времени позволяет выполнять на всех своих ядрах только одну инструкцию. Поэтому архитектура CUDA может эффективно применяться только при вычислениях с большим параллелизмом и интенсивной арифметикой. Все функции, выполнимые на GPU, не поддерживают рекурсии и имеют некоторые другие ограничения, которых нет в архитектуре CPU. Таким образом, сегодня имеется возможность либо использовать «гибкие» параллельные вычисления на CPU, либо высокоскоростные вычисления на GPU. С помощью разработанного авторами шаблона программирования стало возможным проектировать сложные параллельные проекты, которые одновременно могут использовать «гибкость» CPU и более скоростные вычисления GPU.
Другим недостатком существующих кластерных систем является непрозрачный доступ пользователя к своим проектам на кластере. Сегодня пользователю предлагается обучиться работать с арсеналом программного обеспечения (программой удаленного доступа, командной строкой, структурой файловой системы, компилятором, планировщиком и т.д.), установленным на целевом кластере, т.е. фактически обучиться работать в новой операционной системе, причем через командную строку интерпретатора. Поэтому авторами разработано программное обеспечение, позволяющее осуществлять удаленную работу с проектами без необходимости погружаться пользователем в устройство операционной системы кластера.
62
АУДИТ БЕЗОПАСНОСТИ
Сегодня в распоряжении Омского государственного технического университета находится пять вычислительных узлов с архитектурой центральных процессоров (CPU) -mgr, cn01, cn02, cn03, cn04. Каждый вычислительный узел включает два 4-ядерных процессора HP X5472 DL 160G5. Пиковая производительность достигает 1 Tflop, а объем оперативной памяти составляет 40 GB. Структура масштабируема и расширяема. Вычислительная мощность может быть увеличена за счет добавления дополнительных узлов.
В рамках гибридизации к суперкомпьютеру добавлен вычислительный узел cn05, осуществляющий управление кластером графическх процессоров (GPU). Для его построения выбрана платформа NVidia Tesla 10 c архитектурой CUDA GPU. Узел представляет собой персональный компьютер с подключенными к нему ячейками NVidia Tesla S1070, каждая из которых включает в себя 4 GPU с суммарной пиковой вычислительной мощностью 4 Tflops в операциях с одинарной точностью. То есть производительность всей системы, при относительно малых затратах увеличивается до 5 Tflops (при задействовании одной ячейки Tesla S1070). Для выполнения параллельных вычислений используется NVidia CUDA API для языков программирования C, C++, Fortran.
Другим дополнением суперкомпьютерной системы является система хранения данных (СХД) на базе Sun StorEdge 9980-V и программной системы Sun StorageTek - ssd. Данная система отличается высокой отказоустойчивостью.
Все узлы объединены в локальную высокоскоростную сеть (1 Gb/с). Параллельное выполнение программ осуществляется с помощью технологий MPI (Message Passing Interface) и NVidia CUDA. Поддерживаемые реализации MPI: OpenMPI, HPMPI, MPICH.
Для управления кластером один из его узлов выделен как управляющий (mgr), при необходимости он может быть использован для вычислений. На управляющем узле установлена авторская программная система для управления проектами на кластере (HIG_Cluster_Pack). С её помощью узел принимает и выполняет команды авторизованных пользователей через Интернет. Все соединения осуществляются по защищенному HTTPS протоколу с ключом длиной 2048 бит (рис. 1).
Рис. 1. Концептуальная схема гибридного кластера
Программная система прозрачного доступа к кластеру
Программная система доступа к кластеру разработана авторами проекта и основана на базе web-сервера Apache. Данная система является переносимой и расширяемой и может работать на вычислительных кластерах с любой аппаратной конфигурацией, операционной системой и программным обеспечением. На сегодняшний день данная система (HIG_Cluster_Pack) не имеет аналогов и успешно используется на кластере ОмГТУ.
Программа предоставляет следующие возможности:
- Трехфакторная авторизация на уровне web-сервера самой программы и операционной системы.
- Для каждого пользователя создается так называемая «песочница», т.е. все исполняемые файлы проекта могут обращаться только к ресурсам своего проекта и, таким образом, исчезает возможность злонамеренного повреждения кластера или проектов других пользователей.
- Пользователю предоставляется удобный web-интерфейс, который позволяет создать/удалить проект, загрузить проект, скомпилировать проект, запустить проект, посмотреть файлы проекта и т.п. При этом поддерживаются все необходимые настройки работы с проектом. Например (с определенными оговорками), существует возможность использовать практически любой язык программирования при написании проектов. Пользователю нет необходимости разбираться в опциях компилятора и планировщика заданий. Грубо говоря, достаточно нажать две кнопки: «Скомпилировать» и «Запустить».
- Существует система полуавтоматической обработки заданий, когда пользователь с помощью определенных HTTPS запросов управляет работой проекта на кластере. Таким образом, появляется возможность создания программ, работающих на обычном персональном компьютере и использующих вычислительные мощности кластера для просчета ресурсоемких блоков посредством сети Интернет.
- Благодаря дружественному интерфейсу регистрация нового пользователя производится удобным как самому пользователю, так и администратору кластера способом. Пользователю достаточно сгенерировать запрос на сертификат доступа, где указываются необходимые данные. Администратору достаточно разрешить работу на кластере с данным сертификатом. Все остальные действия выполняются автоматически.
Файзуллин Рашит Тагирович
Доктор техн. наук, профессор, проректор по информатизации Омского Государственного Технического Университета (ОмГТУ), г. Омск Тел.: (381-2) 62-87-07 Эл. адрес: [email protected]
Свенч Андрей Александрович
Инженер-программист центра телекоммуникаций и вычислительной техники ОмГТУ
Тел.: +7-960-999-74-30
Эл. адрес: [email protected]
Хныкин Иван Геннадьевич
Канд. физ.-мат. наук, инженер-программист центра телекоммуникаций и вычислительной техники ОмГТУ Тел.: +7-913-678-28-28 Эл. адрес: [email protected]
R.T. Faizullin, A.A. Svench, I.G. Khnykin
Hybrid supercomputer system in cryptographic analysis tasks
In this paper, authors cover creation of hybrid supercomputer system with central processor- and graphic processor-based nodes. Article contains analysis of possible application of this system in cryptographic analysis methods and as tool base for education in information security area. Keywords: information security, cryptographic analysis, high performance computations, educational technologies.