DEVELOPMENT OF A DISTRIBUTED SYSTEM FOR CRYPTANALYSIS OF THE RSA ALGORITHM

Review article
DOI:
https://doi.org/10.23670/IRJ.2024.142.11
Issue: № 4 (142), 2024
Suggested:
03.03.2024
Accepted:
11.04.2024
Published:
17.04.2024
125
2
XML
PDF

Abstract

One of the most important stages in the creation of modern cryptographic algorithms is their subsequent cryptanalysis, which ultimately determines the possibility of using a particular algorithm in a specific area of information security. In this context, the requirements for cryptanalysis, its efficiency and accuracy are significantly increased. The security of RSA depends on the size and quality of the keys, as well as the choice of parameters and filling schemes. The most common attack on RSA is the brute-force attack, which attempts to factorize the public key and find the private key. The work discusses an approach to the development of a distributed cryptanalysis system for the RSA algorithm. The model of a distributed computer system of cryptanalysis based on Raspberry Pi is presented, which is implemented as a cluster based on eight mini-computers to organize message encryption/decryption computations.

1. Введение

Актуальность криптоанализа асимметричных криптоалгоритмов заключается в том, что они используются для защиты каналов передачи данных во многих сферах жизнедеятельности человека: шифрование сеансовых ключей и данных, генерирование цифровых электронных подписей и др. С целью своевременного обнаружения факта, что определенный алгоритм или некоторое множество его ключей являются неустойчивыми для дальнейшего использования, необходимо проводить исследования криптостойкости, т.е. криптоанализ.

Криптоанализ – это искусство и наука оценивания информационных систем с целью изучения их скрытых аспектов

. Методы криптоанализа напрямую зависят от криптоалгоритма и информации, которая известна о самой системе, ключах, сообщениях. Особое внимание на сегодняшний день уделяется алгоритму RSA, использование которого позволяет эффективно защитить конфиденциальность и целостность данных в различных приложениях, таких как онлайн-банкинг, электронная коммерция и цифровые подписи. Это один из наиболее распространенных шифров, используемых в протоколе SSL/TLS, позволяющий надежно передавать конфиденциальную информацию через Интернет. Безопасность RSA зависит от размера и качества ключей, а также от выбора параметров и схем заполнения. Наиболее распространенной атакой на RSA является атака методом перебора, которая пытается факторизовать открытый ключ и найти закрытый ключ. Чтобы предотвратить это, ключи RSA должны иметь длину не менее 2048 бит, а лучше 4096 бит или более
.

На сегодняшний день наиболее эффективными по быстродействию и стоимости вычислительных ресурсов для проведения криптоанализа являются распределенные системы. Узлы таких систем могут иметь SMP-, MPP- или PVP-архитектуры, а также создаваться с помощью специализированных FPGA и/или DSP-процессоров

. Такие системы с распределенной памятью хорошо масштабируются и могут быть использованы для криптоанализа различных шифров. Условием эффективного использования распределенных систем является оптимальная декомпозиция вычислительной задачи криптоанализа соответствующего шифра относительно учета особенностей процессорных систем, памяти и коммуникационных средств.

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

Авторы многих актуальных работ по этой тематике (например, Петренко А.С.

, Ясашный О.П.
, Vijesh Bhagat
и др.) приводят ряд аргументов, указывающих на то, что для использования методов криптоанализа на параллельных и распределенных компьютерных системах целесообразно создавать специализированное программное обеспечение. Наряду с этим ведутся разработки в области создания методологии для реализации современных криптоаналитических методов в грид-среде (Ожиганова М.И.
, Абелян В.З.
).

Цель исследования – рассмотрение подходов к разработке распределенной системы криптоанализа алгоритма RSA.

Методы исследования – анализ, синтез, моделирование, систематизация, обобщение, группировка.

2. Результаты исседования

При разработке алгоритмов программ, положенных в основу распределенной системы криптоанализа алгоритма RSA необходимо учитывать:

1) особенности вычислительных систем, предназначенных для функционирования соответствующего программного обеспечения, в частности: типы и производительность процессорных систем вычислительных узлов; топологии вычислительных сетей; надежность межузловых соединений; скорость передачи данных и латентность коммуникационных интерфейсов; скорость доступа отдельных узлов к централизованным хранилищам данных;

2) особенности алгоритма RSA, в частности: его способность к функциональной декомпозиции и декомпозиции по данным; требования к синхронизации между отдельными частями программы; количество итераций этого метода для повышения достоверности результата.

С точки зрения применимости системы распределенного криптоанализа для RSA можно сформулировать следующие требования к ее компонентам:

1) максимальная универсальность к типам зашифрованных данных;

2) открытые исходные коды и лицензия свободного программного обеспечения;

3) функционирование на различных платформах;

4) вычисления как на центральных, так и на графических процессорах клиентских персональных компьютеров;

5) операционная система Windows на клиентских персональных компьютерах;

6) неограниченное количество клиентов.

Необходимо отметить, что методология разработки программного обеспечения для распределенных сетей существенно отличается от традиционного подхода, поскольку программы работают в распределенной среде с высокой латентностью, а следовательно, задача усложняется проблемами синхронизации подпрограмм, что может быть обусловлено временной недоступностью или занятостью вычислительных ресурсов

.

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

Для того чтобы визуализировать нагрузку на каждый из серверов в кластере, рекомендуется установить светодиодные матрицы Pimoroni Unicorn HAT 8x8 на каждый сервер. Сценарий управления bash на клиентской машине можно использовать для изменения шаблонов на Unicorn HAT

.

На рис. 1 показана схема организации распределенной компьютерной системы криптоанализа на основе Raspberry PI.

Схема организации распределенной компьютерной системы криптоанализа на основе Raspberry PI

Рисунок 1 - Схема организации распределенной компьютерной системы криптоанализа на основе Raspberry PI

Примечание: составлено автором

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

В качестве примера использования распараллеливания на практике можно рассмотреть XSL-атаку. Она распараллеливается на нескольких этапах (рис. 2): на первом этапе – по входным данным – это множество шифротекстов, подмножества которых могут быть использованы отдельными кластерными системами, на пятом этапе – решение системы линейных алгебраических уравнений для отдельного шифротекста может выполнять целая кластерная система или отдельный ее GPU-узел (вложенная декомпозиция).

Схема алгебрического криптоанализа и подходы к декомпозиции задачи

Рисунок 2 - Схема алгебрического криптоанализа и подходы к декомпозиции задачи

Примечание: составлено автором

3. Заключение

Современные требования к безопасности данных требуют постоянного развития криптографии, а вместе с ней и криптоанализа. Для проверки безопасности и эффективности алгоритмов шифрования разрабатываются новые техники и инструменты. В настоящее время квантовые вычисления, машинное обучение и облачные вычисления являются одними из тенденций и вызовов в криптоанализе RSA.

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

Article metrics

Views:125
Downloads:2
Views
Total:
Views:125