Способ криптографической защиты данных, передаваемых по открытому каналу связи Российский патент 2025 года по МПК H04L9/14 

Описание патента на изобретение RU2837327C1

1. Область техники

Изобретение относится к сетевым информационным системам и может быть использовано для обеспечения криптографической защиты информации в процессе её передачи по открытым каналам связи.

2. Уровень техники

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

Известны способы шифрования по патентам на изобретения RU 2 542 880 C1, RU 2 691 253 C2.

Известно решение по патенту RU 2 726 930 C1, согласно которому в способе при выполнении операции записи и редактирования файлов электронных документов в моменты времени t1,t2,…,tk в памяти системы обработки данных формируются строки и столбцы, содержащие записи метаданных, над которыми выполняются операции криптографического преобразования на подмножествах ключей, при этом увеличенное изображение (открывается в отдельном окне) в результате чего образуются значения сигнатур соответствующих столбцов и строк, над которыми выполняются операции конкатенации с последующими записями, после чего данные операции выполняются аналогично для всех строк и столбцов.

Близким к предлагаемому решению является криптографический способ аутентификации и идентификации с шифрованием в реальном времени по патенту RU 2 584 500 C2, каковой способ защиты данных и гарантии их происхождения содержит следующие этапы: i) генерация и сохранение RSA-пары ключей, состоящей из первого ключа (Sa) и второго ключа (Ра) для подписывания клиентских сертификатов в центре; ii) генерация и сохранение двух RSA-пар ключей для клиентского устройства, состоящих из третьего ключа клиентского устройства (Sc) и четвертого ключа клиентского устройства (Рс), а также первого ключа (St) шифрования ключа и второго ключа (Pt) шифрования ключа; iii) генерация зашифрованного ключа путем шифрования третьего ключа клиентского устройства (Sc) вторым ключом (Pt) шифрования ключа, а также генерация клиентского сертификата в центре; iv) передача зашифрованного ключа и клиентского сертификата на клиентское устройство; v) передача первого ключа (St) шифрования ключа на клиентское устройство по запросу посредством клиентского устройства; vi) дешифрование зашифрованного ключа первым ключом (St) шифрования ключа в клиентском устройстве, причем получается третий ключ клиентского устройства (Sc); vii) шифрование переупорядоченной числовой последовательности в центре четвертым ключом клиентского устройства (Pc); viii) передача зашифрованной переупорядоченной числовой последовательности; ix) дешифрование зашифрованной переупорядоченной числовой последовательности в клиентском устройстве; х) шифрование первого ввода PIN-кода в клиентском устройстве третьим ключом клиентского устройства (Sc) в шифр; xi) отсылка шифра и клиентского сертификата в центр; xii) дешифрование шифра в центре четвертым ключом клиентского устройства (Pc), дешифрование первого ввода PIN-кода.

Наиболее близким по своей технической сущности к заявляемому способу является способ, описанный в патенте RU 2 141 729 C1, при котором криптографическое преобразование блоков двоичных данных заключается в разбиении блока данных на N≥2 подблоков, поочередном преобразовании подблоков путем выполнения над подблоком, по крайней мере, одной операции преобразования, которая зависит от значения входного блока, а в качестве операции, зависящей от значения входного блока, используется операция перестановки битов подблока.

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

3. Сущность и раскрытие изобретения

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

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

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

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

Для целей данной заявки термины «микроконтроллер» и «микроЭВМ» являются равнозначными.

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

А. Взаимодействие между защищаемым сетевым устройством (СУ) и сервером состоит из трех этапов:

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

- Формирование расширенного набора ключей СУ и их передача серверу в зашифрованном виде совмещенное с аутентификацией сервера.

- Передача целевых данных с контролем подлинности устройств.

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

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

Г. На стороне СУ отсутствует возможность дешифрования любых сообщений.

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

Е. Идентификатор СУ определяется разницей в количестве холостых циклов (необходимых для выполнения фиктивных команд), затраченных на зашифровывание сообщения на стороне клиента и - аналогично - на стороне сервера. Дополнительный идентификатор вычисляется сервером, у клиента отсутствует возможность его вычисления.

Ё. Формирование основного набора ключей на стороне СУ и сервера производится на идентичной для обоих устройств аппаратно-программной платформе и основывается на результате измерения количества базовых циклов микроЭВМ, затраченных на выполнение математических операций с набором случайных чисел, который формируется на стороне сервера и передаются клиенту в открытом виде.

Ж. Сообщение, передаваемое клиентом серверу, состоит из:

- основного идентификатора клиента, передаваемого в открытом виде,

- зашифрованных полезных данных, предварительно дополненных случайным набором символов определенной длины, известной клиенту и серверу,

- поля, в котором содержится число базовых циклов микроЭВМ клиента, затраченных им на зашифровывание сообщения с учетом выполнения фиктивных команд,

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

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

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

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

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

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

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

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

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

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

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

Р. Обмен полезными данным аутентифицированных СУ и сервера (этап 3) производится по упрощенной схеме шифрования с использованием сформированной на этапе аутентификации сервера таблицы перестановок, каждый элемент которой состоит из структуры, описывающей порядок следования символов в зашифрованном сообщении и соответствующего ему значения хеш-функции. Таблица перестановок содержит восемь элементов и обновляется в процессе обмена сообщениями за счет использования дополнительных перестановок с помощью ключей, при этом новый элемент таблицы, сформированный в результате зашифровывания последнего отправленного сообщения, заменяет самый старый. При зашифровывании очередного сообщения клиент выбирает случайную запись из своей таблицы перестановок, производит перестановку символов в сообщении в соответствии с указанным в такой записи порядком их следования, после чего производит дополнительную перестановку символов в сообщении с использованием нескольких (от одного до трех) ключей и записывает в соответствующие поле сообщения значение хеш-функции использованной перестановки и точное количество использованных для зашифровывания ключей. Сервер производит обратную перестановку с использованием указанного в сообщении количества ключей, после чего осуществляет сортировку символов в сообщении в порядке возрастания их номеров, принимая, что порядок следования символов в зашифрованном соответствует указанному в таблице перестановок для соответствующего значения хеш-функции, которое содержится в сообщении. Получившееся сообщение проверяется на корректность путем его повторного зашифровывания и контроля количества затраченных на эту процедуру циклов микроЭВМ. Благодаря такому решению достигается возможность определения и/или обезвреживания вмешательства в сессию (сессии) информационного обмена, отсутствие необходимости передачи ключей шифрования по незащищенному каналу связи, возможность управления сложностью дешифрования сообщений, возможность увеличения надежности и скорости зашифровывания и расшифровывания сообщений при отсутствии вмешательства в сессию, что особенно актуально при передаче видео- и аудиопотоков.

Для целей настоящей заявки, если только прямо не указано иное, термины и сокращения «защищаемое сетевое устройство», «сетевое устройство» и «СУ» являются полностью равнозначными

4. Осуществление изобретения

В основе изобретения лежит использование особенностей аппаратно-программной реализации алгоритма генерирования ключей и алгоритма шифрования.

Поставленная задача достигается тем, что:

Отправитель сообщения:

1. Направляет получателю сообщения запрос на открытие сессии и принимает от получателя подтверждение (автоматическое или лично совершённое) на такое открытие, после чего осуществляет формирование сессионного набора ключей шифрования в начале сессии информационного обмена на основе информации, принятой от получателя сообщения в ответ на запрос открытия сессии, а именно, стартового значения для локального генератора случайных чисел (ГСЧ1) и некоторого набора чисел, при этом ключи генерируются на основе количества вычислительных тактов микроЭВМ отправителя (или ее программного эквивалента), затраченных на выполнение ряда заранее оговоренных математических операций с этими числами, в связи с чем ключи являются уникальными для устройств с конкретной аппаратной и программной реализацией алгоритма генерирования ключей. Передачи ключей между отправителем и получателем сообщений не происходит. В регистр S1 записывается нулевое значение. Число X выбирается случайным образом в заданном диапазоне. Таблица перестановок T очищается. Флаг F сбрасывается. Флаг запроса контроля сессии Y сбрасывается.

2. Производит шифрование исходных данных, которое осуществляется следующим образом:

2.1. На основе значения локального генератора случайных чисел (ГСЧ2) формируется дополнение заранее определенного размера. Значение дополнения аккумулируется в регистре S1.

2.2. Исходные данные и сформированное дополнение объединяются в единую битовую последовательность - сообщение общей длиной len.

2.3. При наличии в таблице перестановок T кратного восьми числа элементов устанавливается флаг F, устанавливается флаг Y и производится переход к п 2.13.

2.4. На основе значения генератора ГСЧ1 выбирается минимальное число циклов перестановки N1.

2.5. На основе значения ГСЧ1 из набора сессионных ключей выбирается один ключ.

2.6. Выбирается участок сообщения (окно), размер которого определяется длиной ключа, начиная с младшего бита.

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

2.8. Далее выбирается следующий участок сообщения (окно сдвигается) так, чтобы начало окна было смещено на один бит в сторону старшего бита сообщения.

2.9. Пункты 2.7 - 2.8 выполняются до тех пор, пока дальнейшее смещение окна станет невозможным - старший бит окна будет соответствовать старшему биту сообщения.

2.10. Пункты 2.5 - 2.9 выполняются пока не будет произведено заданное число циклов перестановки N1 и пока расположение битов в сообщении не будет удовлетворять условию балансирования сообщения:

(1)

, большая восьми

N2 - число дополнительных циклов перестановки, необходимых для выполнения условия (1)

2.11. Порядок следования битов в зашифрованном сообщении, представленный в виде числа Z, а также хеш-функция от этого числа H1 сохраняется в таблице перестановок T в формате “Z-H1”.

2.12. Производится переход к пункту 2.15.

2.13. Из таблицы перестановок T выбирается случайный элемент K.

2.14. Производится перестановка битов в сообщении в соответствии с порядком, указанным в таблице перестановок для элемента K, значение хеш-функции для этого элемента присваивается H1.

2.15. Сообщение дополняется значением H1, хеш-функцией H2 от количества вычислительных тактов микроЭВМ отправителя либо ее программного эквивалента, затраченных на выполнение операций по п. 2.5 - 2.10 в случае сброшенного флага F и операций по п. 2.14 в случае, если флаг F установлен, а также значением остатка от деления D общего количества циклов перестановки N1+N2 на число X и самого числа X в случае, если флаг F не установлен, а также флаг запроса на контроль сессии Y.

2.16. Сообщение передается по каналу связи.

2.17. Если в сообщении был отправлен запрос контроля сессии Y, отправитель ожидает получения контрольного числа S2 от получателя.

2.18. Число S2 сравнивается со значением регистра S1, в случае их неравенства - производится переход к п.1. В случае их равенства производится сброс флага Y и переход к п. 2.1 для зашифровывания нового сообщения.

В свою очередь получатель сообщения осуществляет:

1. Формирование сессионного набора ключей шифрования при получении запроса от отправителя с использованием аппаратно-программного эквивалента микроЭВМ отправителя. Отправка данных для формирования сессионных ключей отправителю.

2. Дешифрование сообщения, в процессе чего:

2.1. При наличии значения хеш-функции в таблице перестановок T, совпадающего с принятым значением H1, выполняется перестановка бит в принятом сообщении в порядке возрастания их номеров (сортировка), принимая во внимание, что изначальный их порядок соответствует указанному в таблице (быстрое дешифрование). Устанавливается флаг F. По окончании выполнения перестановки производится переход к п. 2.9.

2.2. Выбор ранее не использованного при текущем дешифровании минимального числа M, остаток от деления которого на число X, значение которого указано в принятом пакете, соответствует принятому числу D.

2.3. На основе генератора случайных чисел (ГСЧ1) производится нахождение ключа, соответствующего последнему циклу шифрования на стороне отправителя, в соответствие с предполагаемым числом циклом M (он будет являться первым ключом дешифрования на стороне получателя).

2.4. Выбирается участок сообщения (окно), размер которого определяется длиной ключа, начиная со старшего бита.

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

2.6. Далее выбирается следующий участок сообщения (окно сдвигается) так, чтобы начало окна было смещено на один бит в сторону младшего бита сообщения.

2.7. Пункты 2.4 - 2.5 выполняются до тех пор, пока дальнейшее смещение окна станет невозможным - младший бит окна будет соответствовать младшему биту сообщения.

2.8. Пункты 2.3 - 2.6 выполняются пока не будет осуществлено число циклов расшифровывания M.

2.9. Сообщение разделяется на данные E и дополнение A.

2.10. При установленном флаге F происходит переход к п. 2.14.

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

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

2.13. При несовпадении этих значений происходит переход к п. 2.1.

2.14. При совпадении значений производится сравнение значения хеш-функции от числа тактов микроЭВМ, затраченных на зашифровывание сообщения при сброшенном флаге F либо на быстрое дешифрование при установленном флаге F с принятым значением H2. При несовпадении значений и сброшенном флаге F производится переход к п.2.1.

2.15. Дополнение A аккумулируется в регистре S1 получателя.

2.16. Порядок расположения битов в зашифрованном сообщении и значение хеш-функции от него сохраняются в таблице перестановок.

2.17. Данные из сообщения признаются корректными и передаются в обработку.

2.18. При установленном флаге контроля сессии Y, значение регистра S1 отправляется источнику сообщения.

Указанные операции и последовательности проиллюстрированы фигурами 1 и 2 (блок-схема отправителя и блок-схема получателя соответственно).

Защита данных, передаваемых по открытому каналу связи, таким образом, возрастает, как и сложность дешифрования сообщения.

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

Похожие патенты RU2837327C1

название год авторы номер документа
АУТЕНТИФИКАЦИЯ В ЗАЩИЩЕННОЙ КОМПЬЮТЕРИЗОВАННОЙ ИГРОВОЙ СИСТЕМЕ 2003
  • Джексон Марк Д.
RU2302276C2
СПОСОБ И СИСТЕМА ОРГАНИЗАЦИИ ЗАЩИЩЕННОГО ОБМЕНА ИНФОРМАЦИЕЙ С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ БЛОКЧЕЙН И РАСПРЕДЕЛЁННЫХ СИСТЕМ ХРАНЕНИЯ ДАННЫХ 2021
  • Тарасенко Сергей Сергеевич
RU2782153C2
ДИНАМИЧЕСКАЯ ЗАЩИЩЕННАЯ КОММУНИКАЦИОННАЯ СЕТЬ И ПРОТОКОЛ 2016
  • Уилльямс Ричард К.
  • Верзун Евген
  • Голуб Олександр
RU2769216C2
Повышение неоднозначности 2016
  • Фигуеира, Хелдер Сильвестре Паива
RU2737917C1
СПОСОБ И СИСТЕМЫ ДЛЯ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОГО РАСПРЕДЕЛЕНИЯ ДАННЫХ ЧЕРЕЗ СЕТИ ОБЩЕГО ПОЛЬЗОВАНИЯ 2003
  • Питсос Эррикос
RU2300845C2
ДИНАМИЧЕСКАЯ ЗАЩИЩЕННАЯ КОММУНИКАЦИОННАЯ СЕТЬ И ПРОТОКОЛ 2016
  • Уилльямс Ричард К.
  • Верзун Евген
  • Голуб Олександр
RU2707715C2
СОХРАНЯЮЩАЯ КОНФИДЕНЦИАЛЬНОСТЬ СЛУЖБА ДОМЕННЫХ ИМЕН (DNS) 2021
  • Бурчану Елена
  • Болбочану Мэдэлина
  • Халлер Эмануэла
  • Рошка Джорджана Мируна
  • Титиу Раду
  • Чебере Богдан К.
RU2837326C2
СПОСОБ ИЗОЛЯЦИИ ПАКЕТОВ ДАННЫХ, ПЕРЕДАВАЕМЫХ ПО СЕТЯМ ОБЩЕГО ПОЛЬЗОВАНИЯ В ФОРМАТЕ ПРОТОКОЛОВ СЕМЕЙСТВА TCP/IP, С ПОМОЩЬЮ КОМБИНАЦИИ СПОСОБОВ МАСКИРОВАНИЯ, ШИФРОВАНИЯ И КОНТРОЛЯ ПОЛУЧАЕМЫХ ДАННЫХ 2021
  • Кочанов Вячеслав Германович
  • Федоров Серафим Игоревич
  • Фролов Антон Владимирович
RU2762157C1
ГОМОМОРФНОЕ ШИФРОВАНИЕ ДЛЯ ПРОВЕРКИ ПОДЛИННОСТИ С ПОМОЩЬЮ ПАРОЛЯ 2018
  • Де Хог, Себастиан Якобус Антониус
  • Пестрин, Алан
RU2774807C2
СИСТЕМА И СПОСОБ ПЕРЕДАЧИ ДОКУМЕНТОВ И УПРАВЛЕНИЯ ДОКУМЕНТООБОРОТОМ 2006
  • Гарднер Джон С.
  • Ванг Джуин Дж.
  • Скотт Мэттью В.
RU2419137C2

Иллюстрации к изобретению RU 2 837 327 C1

Реферат патента 2025 года Способ криптографической защиты данных, передаваемых по открытому каналу связи

Изобретение относится к сетевым информационным системам. Технический результат заключается в повышении криптографической защиты информации, обеспечивая проверку достоверности принятого сообщения. Такой результат достигается тем, что при взаимодействии между защищаемыми сетевыми устройствами и сервером формируется набор ключей, используется таблица манипуляций, задаётся диапазон используемых ключей, для смены ключей используется генератор случайных чисел, количество базовых циклов микроЭВМ уникально для каждого устройства, идентификатор СУ определяется разницей в количестве холостых циклов, необходимых для выполнения фиктивных команд зашифровывания, сообщение от клиента серверу содержит идентификатор клиента и зашифрованные данные, предварительно дополненные случайным набором символов определенной длины, шифрование сообщения производится путем перестановки символов сообщения в пределах скользящего окна, размер которого связан с размером применяемого ключа, при этом перестановка осуществляется на основе значений последовательно анализируемых битов такого ключа от младшего значащего к старшему: если определенный бит ключа имеет значение единицы, соответствующие ему символы в сообщении меняются местами, а влияние каждого бита ключа на перестановку символов определяется таблицей манипуляций, формируемой на базе идентификатора СУ, при этом после выполнения перестановки в пределах скользящего окна в виде перебора всех битов ключа, последнее сдвигается по сообщению на один символ в сторону его конечного символа, а при достижении окном конечного символа сообщения окно перемещается в начало сообщения, далее выбирается следующий ключ из набора, после чего производится очередной цикл перестановки, при этом количество циклов перестановки выбирается СУ случайным образом, при этом СУ не сообщает количество использованных ключей серверу, после чего дешифрование сообщения на стороне сервера производится путем обратных манипуляций с принятым сообщением на основе сведений о количестве примененных к исходному сообщению и дополнению ключей, при этом получившееся сообщение проверяется на корректность путем его повторного зашифровывания и контроля количества затраченных на эту процедуру циклов микроЭВМ. 2 ил.

Формула изобретения RU 2 837 327 C1

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

А) взаимодействие между защищаемыми сетевыми устройствами и сервером состоит из трех этапов:

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

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

- передача целевых данных с контролем подлинности устройств;

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

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

Г) на стороне СУ отсутствует возможность дешифрования любых сообщений;

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

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

Ё) формирование основного набора ключей на стороне СУ и сервера производится на идентичной для обоих устройств аппаратно-программной платформе и основывается на результате измерения количества базовых циклов микроЭВМ, затраченных на выполнение математических операций с набором случайных чисел, который формируется на стороне сервера и передается клиенту в открытом виде;

Ж) сообщение, передаваемое клиентом серверу, состоит из:

- основного идентификатора клиента, передаваемого в открытом виде,

- зашифрованных полезных данных, предварительно дополненных случайным набором символов определенной длины, известной клиенту и серверу,

- поля, в котором содержится число базовых циклов микроЭВМ клиента, затраченных им на зашифровывание сообщения с учетом выполнения фиктивных команд,

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

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

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

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

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

Л) формирование дополнительного набора ключей выполняется СУ на основе его локального аппаратного генератора случайных чисел и передается серверу в зашифрованном с помощью базового набора ключей виде;

М) аутентификация СУ этапа 1 производится путем формирования СУ от сервера запроса на зашифровывание случайного сообщения, передаваемого вместе с таким запросом в открытом виде, и отправки СУ в ответ на такой запрос зашифрованного им значения хеш-функции содержимого области его оперативной памяти, использующейся функцией зашифровывания на стороне клиента, запрошенного сервером размера начиная с указанного в запросе адреса, при этом сервер на своей стороне производит аналогичные действия с таким сообщением и сравнивает значение хеш-функции, полученной в результате своих манипуляций, и дешифрованного значения хеш-функции, содержащегося в ответе СУ, при этом при совпадении этих значений СУ считается авторизованным и ему присваивается идентификатор, представляющий собой арифметическую разность между количеством циклов микроЭВМ, затраченных на зашифровывание сообщения на стороне сервера и аналогичного на стороне СУ, после чего идентификатор используется сервером для подтверждения подлинности клиента на всех этапах информационного обмена;

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

О) проверка СУ правильного дешифрования сообщения сервером производится путем сравнения значения хеш-функции, вычисленной по исходным данным сообщения, с аналогичным значением, принятым от сервера после успешного расшифровывания им такого сообщения;

П) аутентификация сервера этапа 2 производится в рамках его обмена дополнительными ключами с СУ и заключается в последовательном снижении клиентом сложности расшифровывания сообщения сервером от максимальной, представляющей собой верхнюю границу диапазона ключей, до минимальной, представляющей собой нижнюю границу диапазона ключей, каждый раз при подтверждении сервером правильности дешифрования сообщения, что контролируется клиентом путем сравнения значения хеш-функции исходного сообщения и отправленного сервером в ответ аналогичного значения, а при отсутствии такого ответа от сервера либо при неверном ответе клиент инициирует новую сессию обмена данными со сменой ключей;

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

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

Т) получившееся сообщение проверяется на корректность путем его повторного зашифровывания и контроля количества затраченных на эту процедуру циклов микроЭВМ.

Документы, цитированные в отчете о поиске Патент 2025 года RU2837327C1

СПОСОБ КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ БЛОКОВ ДВОИЧНЫХ ДАННЫХ 1998
  • Молдовян А.А.
  • Молдовян Н.А.
RU2141729C1
СПОСОБ КРИПТОГРАФИЧЕСКОГО РЕКУРСИВНОГО 2-D КОНТРОЛЯ ЦЕЛОСТНОСТИ МЕТАДАННЫХ ФАЙЛОВ ЭЛЕКТРОННЫХ ДОКУМЕНТОВ 2019
  • Тали Дмитрий Иосифович
  • Финько Олег Анатольевич
  • Елисеев Николай Иванович
  • Диченко Сергей Александрович
  • Барильченко Семен Андреевич
RU2726930C1
КРИПТОГРАФИЧЕСКИЙ СПОСОБ АУТЕНТИФИКАЦИИ И ИДЕНТИФИКАЦИИ С ШИФРОВАНИЕМ В РЕАЛЬНОМ ВРЕМЕНИ 2013
  • Байдль Хайнрих
  • Хрди Эрвин
  • Шауэрхубер Юлиус
RU2584500C2
US 9673975 B1, 06.06.2017
Способ получения цианистых соединений 1924
  • Климов Б.К.
SU2018A1
Способ получения цианистых соединений 1924
  • Климов Б.К.
SU2018A1

RU 2 837 327 C1

Авторы

Ушаков Алексей Юрьевич

Даты

2025-03-28Публикация

2024-05-06Подача