Принимая во внимание потребность в сервисах приложений для массового шифрования и дешифрования данных с высокой степенью параллелизма в области безопасности, в этой статье предлагается двухканальная конвейерная модель параллельной обработки данных (ПОД) в соответствии с характеристиками криптографических операций и реализованными криптографическими операциями перекрестного доступа. потоки данных с различными требованиями к обслуживанию в многопользовательской среде.
Ключевые слова: обработка данных, криптография, безопасность.
Введение
С развитием компьютерных и сетевых технологий большое количество пользователей и предприятий всех видов бизнес-систем ставит огромные проблемы для анализа, обработки и хранения данных бизнес-систем. Между тем, также выдвигается острая потребность в возможностях службы безопасности бизнес-систем. В финансовом бизнесе отражаются не только потребности в безопасности, но и анализ больших данных для поведения пользователей может легко раскрыть личную конфиденциальность пользователей. Уязвимость передачи информации в Интернете вещей может легко стать угрозой безопасности в области промышленного контроля. Использование криптографических методов для обеспечения безопасности бизнеса и данных, а также защиты конфиденциальности пользователей является актуальной задачей на данном этапе и даже в будущем. Следовательно, необходимо изучить быстрые криптографические операции для массовых данных. Поэтому, учитывая требования к безопасности и высокой скорости обработки, крайне важно разработать параллельную систему, которая могла бы удовлетворить требования различных алгоритмов и различных криптографических режимов работы.
Являясь основным направлением исследований и проектирования компьютерной архитектуры, многоядерность играет незаменимую роль в повышении производительности вычислений. Люди провели много исследований по высокоскоростной разработке и реализации самого криптографического алгоритма, а также гетерогенных многоядерных криптопроцессоров. Однако отсутствуют исследования высокоскоростной обработки криптографических сервисов, которые пересекаются друг с другом в многопользовательских сценариях.
Сопутствующие исследования
Являясь основным направлением развития архитектуры процессоров, многоядерные процессоры привели к исследовательскому росту параллельной обработки. Скорость обработки данных повышается за счет многоядерного параллельного выполнения. Здесь возникают две проблемы: многопоточный параллелизм и многозадачный параллелизм. Для многопоточных задач одновременное выполнение нескольких потоков многоядерными процессорами может улучшить производительность обработки. Например, одна задача может быть разделена на три потока для выполнения в следующем порядке: инициализация А, операция В и вывод результатов С. Затем мы можем выполнить ее с помощью трех ядер, как показано на рис. 1. Однопоточная задача. обычно переносится на несколько ядер для выполнения с помощью методов автоматического распараллеливания.
Рис. 1. Выполнение многопоточной задачи
Параллелизм должен обеспечивать высокую производительность без значительных накладных расходов. Синхронизация между потоками часто приводит к упорядочиванию параллельных операций, тем самым подрывая потенциальные преимущества параллельного выполнения. Следовательно, эффективное использование синхронизации и координации имеет решающее значение для достижения высокой производительности. Одним из способов достижения этой цели является спекулятивное выполнение, которое обеспечивает одновременную синхронизацию посредством спекуляции потоков или предсказания ветвлений [1]. Успешное предположение сократит часть непрерывного выполнения, но ложное предположение увеличит накладные расходы на отзыв и восстановление.
В многозадачном параллелизме, если каждая задача является многопоточной задачей, из-за независимости задач и независимости потоков метод обработки эквивалентен многопоточной задаче. Если есть однопоточные задачи после того, как они распараллеливаются на несколько потоков, в процессе многозадачного параллельного выполнения появятся некоторые связанные потоки, которые должны обрабатываться по-другому.
Криптографическая служба включает в себя несколько элементов. Например, алгоритм блочного шифрования включает в себя криптографические алгоритмы, ключи, начальные векторы, режимы работы и т. д. Различные криптографические службы имеют разные рабочие элементы. Быстрое внедрение многопользовательских криптографических сервисов относится к области многозадачности параллельного программирования. Высокопроизводительный криптографический сервер как устройство для реализации многопользовательских служб шифрования больших данных должен достигать следующих двух пунктов: во-первых, это корректность пользовательских служб: запросы обработки разных пользователей не могут быть перепутаны, а во-вторых, скорость выполнения обработка данных. Существует много видов исследований по быстрой реализации самого криптографического алгоритма, таких как повышение вычислительной производительности алгоритма блочного шифрования за счет конвейерной обработки [2] и оптимизация ключевых операций алгоритма криптографии с открытым ключом для повышения скорости работы [3]. Некоторые исследования также ускоряют выполнение криптографических операций за счет многоядерного параллелизма. Например, в литературе используются графические процессоры для реализации параллельной обработки части криптографических алгоритмов [4]. Эти результаты исследования обычно представляют собой улучшение производительности одного криптографического алгоритма. В литературе используется гетерогенный многоядерный подход для завершения параллельной обработки нескольких криптографических алгоритмов [5]. Однако не существует предлагаемого метода обработки данных для многопользовательских криптографических служб при наличии нескольких криптографических алгоритмов, нескольких ключей и нескольких потоков данных.
Заключение
Основываясь на характеристиках криптографических операций, в этой статье предлагается двухканальная конвейерная модель параллельной обработки данных DPP для реализации криптографических операций для перекрестных потоков данных с различными требованиями к услугам в многопользовательской среде. Эксперименты с прототипами доказывают, что система в рамках этой модели может реализовать правильную и быструю обработку мультисервисных и персонализированных потоков кросс-данных. Увеличение глубины конвейера криптографического алгоритма и улучшение производительности обработки каждого модуля в конвейере может улучшить общую производительность системы.
Литература:
1. 1. AS Rajam, LE Campostrini, JMM Caamaño и P. Clauss, «Спекулятивное распараллеливание гнезд циклов во время выполнения: к большему объему и эффективности» — Хайдарабад, Индия, 2015.
2. П. Китсос и А. Н. Скодрас, «Реализация FPGA и оценка производительности блочного шифра начального числа» — Корфу, Греция, 2011.
3. С. Линь, С. Хе, Х. Го и Д. Го, «Эффективный алгоритм для вычисления модульного деления по GF в криптографии с эллиптическими кривыми» — Сямэнь, Китай, 2017.
4. Дж. Ма, Х. Чен, Р. Сю и Дж. Ши, «Реализация и оценка различных параллельных проектов AES с использованием CUDA», — Шэньчжэнь, Китай, 2017.
5. С. Ван, Дж. Хан, Й. Ли, Й. Бо и Х. Цзэн, «Четырехъядерный криптографический процессор с частотой 920 МГц, ускоряющий параллельную обработку задач алгоритмов с открытым ключом» — Сан-Хосе, Калифорния, США, 2013.