Изобретение относится к вычислительной технике и может быть использовано для криптографической защиты данных в компьютерных сетях.
Из уровня техники известен способ шифрования, когда на передающей стороне выполняется поразрядное суммирование по модулю 2 исходных данных с гаммой шифра (гаммирование), который снимается с выходов генератора ключа, а на приемной стороне зашифрованные данные суммируются поразрядно по модулю 2 с гаммой шифра (Иванов М.А. Криптографические методы защиты информации в компьютерных системах и сетях. - М.: КУДИЦ-ОБРАЗ, 2001, с.34).
Недостатком известного технического решения является низкая криптографическая защищенность, т.к. уровень криптозащиты зависит от длины ключа. В указанном способе отсутствуют средства, обеспечивающие изменение ключа в зависимости от объема закрываемой информации. Указанный способ использует только один из возможных способов шифрации, а именно гаммирование, и, следовательно, не является универсальным.
Для повышения криптостойкости используют блочное шифрование данных, когда выполняется разбиение сообщения на отдельные блоки, а ключ разбивают на подключи, затем эти блоки шифруют, причем для каждого блока используется свой подключ.
К способам блочного шифрования относятся стандарты ГОСТ 28147-89 (Россия), DES (Data Encryption Standard, США) и др.
Алгоритм криптографического преобразования ГОСТ 28147-89 использует блочный шифр с 256-битным ключом и 32 циклами преобразования, оперирующий 64-битными блоками. Для шифрования открытый текст сначала разбивается на две половины (младшие биты - A, старшие биты - B). На i-ом цикле используется подключ Ki. Для генерации подключей исходный 256-битный ключ разбивается на восемь 32-битных блоков: K1…K8. Ai и Ki складываются по модулю 232. Результат разбивается на восемь 4-битовых подпоследовательностей (тетрад), каждая из которых поступает на вход своего узла таблицы замен, называемого S-блоком. Таблица задает подстановку, когда одна тетрада заменяется на другую тетраду. Выходы всех восьми S-блоков объединяются в 32-битное слово, затем все слово циклически сдвигается влево (к старшим разрядам) на 11 битов.
Недостатком этого алгоритма является использование постоянного 256-битного ключа, из которого формируются подключи. При программной реализации этот способ шифрования не обеспечивает высокую скорость (более 1 Мбит/с) из-за необходимости преобразования форматов данных. Современные процессоры оперируют данными, размер которых кратен 1 байту (8, 16, 32, 64, 128 битов). В указанном способе используется большое число операций подстановки над 4-битовыми блоками данных (до 32 раундов). При выполнении каждого раунда процессор выполняет преобразование форматов данных. Сначала в байте выделяют 4- битовые тетрады (8 битов → 4+4 бита), а затем выполняют подстановку по таблице и обратное преобразование (8×4 бита → 32 бита). Преобразование форматов данных снижает скорость шифрования. При этом снижается также и уровень криптографической защиты предаваемых данных.
В стандарте США DES шифрование блоков данных выполняют путем формирования секретного ключа, разбиения преобразуемого блока данных на два подблока L и R и поочередного изменения последних путем выполнения операции поразрядного суммирования по модулю два над подблоком L и двоичным вектором, который формируется как выходное значение некоторой функции F от значения подблока R. После этого блоки переставляются местами. Функция F в указанном способе реализуется путем выполнения операций перестановки и подстановки, выполняемых над подблоком R (National Bureau of Standards. Data Encryption Standard. Federal Information Processing Standards Publication 46, January 1977). В DES каждый блок данных шифруется независимо от других. Это позволяет расшифровывать отдельные блоки зашифрованных сообщений или структуры данных, а следовательно, открывает возможность независимой передачи блоков данных или произвольного доступа к зашифрованным данным. DES использует секретный ключ малого размера, что делает его уязвимым к криптоанализу на основе подбора ключа. В DES ключ шифрования представлен в виде совокупности подключей.
Недостатком этого технического решения является то, что для всех i-тых входных блоков данных будет использован одинаковый i-тый подключ, что снижает уровень криптозащиты передаваемых данных.
Известен также и другой способ блочного шифрования двоичной информации, который включает формирование ключа шифрования в виде совокупности подключей, разбиение блока данных на N≥2 подблоков и поочередное преобразование подблоков путем выполнения операции шифрации над подблоком и подключом. Перед выполнением двуместной операции шифрации над i-м подблоком и подключом над подключом выполняют операцию подстановки, зависящую от j-го подблока, где j≠i. В качестве выполняемой над подключом операции подстановки, зависящей от j-го подблока, используют управляющую операцию или операцию подстановки, зависящую от ключа шифрования (Патент РФ №2211541, H04L 9/00, 2001).
Недостатком известного технического решения является использование одного исходного закрытого ключа, из которого с помощью подстановок, перестановок, преобразований, функций и т.п. получают последовательность подключей для подблоков передаваемых данных. Зная правило преобразования, можно подобрать ключ. Криптографическая защита передаваемых данных при этом снижается.
Наиболее близким к заявленному изобретению является известный из уровня техники способ блочного шифрования дискретной информации, включающий формирование ключа шифрования в виде совокупности подключей, разбиение блока данных на N≥2 подблоков и поочередное преобразование подблоков путем выполнения двуместной операции над подблоком и подключом, отличающийся тем, что перед выполнением двуместной операции над i-м подблоком и подключом над подключом выполняют операцию циклического сдвига, зависящую от j-го подблока, где j≠i (Патент РФ №2140711, H04L 9/00, 1998).
Основным недостатком известных из уровня техники решений по отношению к заявленному техническому решению является использование одного исходного закрытого ключа, из которого по функциональной зависимости можно получить последовательность подключей для подблоков передаваемых данных. Узнав правило или закон преобразования, можно подобрать закрытый подключ. Криптографическая стойкость известных способов передачи данных снижается.
Задача, на решение которой направлено заявленное изобретение, заключается в повышении криптографической стойкости системы передачи данных.
Получаемый технический результат подразумевает технический характер заявленного предложения и решаемой задачи.
Заявленный технический результат, получаемый при решении поставленной задачи, достигается посредством того, что в заявленном способе, сначала в приемнике и передатчике, вводят одинаковые закрытые ключи, а затем в передатчике формируют последовательность отдельных k-разрядных блоков данных, после чего из закрытого ключа получают последовательность подключей с возможностью шифрации блоков данных в передатчике и однозначной дешифрации предаваемых блоков данных в приемнике и поблочную передачу данных, при этом значение любого последующего (i+1)-го подключа определяют в соответствии со значением предыдущего i-го подключа этой же последовательности по функциональной зависимости, согласно изобретению перед передачей шифрованных данных в передатчике формируют дополнительную последовательность модификаторов из n-разрядных случайных чисел, не превышающих разрядность блоков данных (k>n), после чего значение последующего (i+1)-го модификатора вводят в предыдущий i-ый блок данных, как в носитель модификатора переменного ключа, и используют для формирования последующего значения (i+1)-го закрытого подключа в передатчике и приемнике.
Целесообразно, чтобы согласно заявленного способа подключ для каждого последующего (i+1)-го блока формировали присоединением n разрядов модификатора к подключу предыдущего 1-го блока, причем при модификации выполняется операция сдвига с потерей n значащих разрядов подключа предыдущего i-го блока.
Целесообразно также, чтобы согласно заявленному способу подключ для каждого последующего (i+1)-го блока формировали из подключа предыдущего i-го блока на основе стохастических или иных методов.
Отличительные признаки заявленного технического решения по отношению к объекту - «прототип», изложенные в независимом пункте формулы изобретения, заключаются в следующем.
Перед передачей шифрованных данных в передатчике формируют дополнительную последовательность модификаторов из n-разрядных случайных чисел, не превышающих разрядность блоков данных (k>n), после чего значение последующего (i+1)-го модификатора вводят в предыдущий i-ый блок данных, как в носитель модификатора переменного ключа, и используют для формирования последующего значения (i+1)-го закрытого подключа в передатчике и приемнике.
Сущность заявленного изобретения заключается в следующем.
В заявленном способе для шифрации сообщения используется закрытый ключ, из которого получают конечную последовательность подключей для шифрации сообщения в передатчике и последующей однозначной дешифрации сообщения в приемнике.
При инициализации вводят одинаковое значение закрытого ключа в передатчике и приемнике.
После этого в передатчике выполняют следующие действия.
Сообщение разбивают на отдельные k-разрядные блоки данных. Затем формируют последовательность n-разрядных (n<k) случайных чисел. Эти числа используются как модификатор ключа, для изменения ключа по функциональному (стохастическому или иному) закону. Модификатор (i+1)-го ключа добавляется к i-тому блоку данных, как к носителю модификатора. В результате получают блок разрядностью (k+n), который включает i-тый блок данных и модификатор (i+1)-го ключа. В передатчике этот блок шифруют с использованием i-того подключа и затем в зашифрованном виде передают по сети в приемник. Для шифрования каждого блока используется свой подключ. После передачи очередного блока данных подключ синхронно меняется по функциональному (стохастическому или иному) закону в передатчике и приемнике. В результате и в передатчике, и в приемнике получают одинаковый закрытый подключ.
В приемнике при этом выполняют следующие действия.
Проводят дешифрацию полученного i-того блока, с использованием i-того подключа. В результате дешифрации получают i-тый блок данных и модификатор (i+1)-го ключа. Модификатор используют для получения следующего (i+1)-го подключа по функциональному (стохастическому или иному) закону.
Модификатор ключа является случайным числом и может формироваться, например, с помощью датчика случайных чисел. Например, последующий (i+1)-ый подключ может получаться путем добавления (присоединения) случайного числа модификатора к предшествующему i-тому закрытому ключу и сдвига с потерей разрядов.
Заявленный способ формирования переменного ключа для блочного шифрования поясняется графическими материалами, где:
- на фиг.1 представлен способ формирования переменного ключа для блочного шифрования и передачи шифрованных данных;
- на фиг.2 представлена схема приемника и передатчика сообщения, где использован переменный ключ для блочного шифрования данных.
Сначала информационное сообщение 1 (фиг.1) разбивается на отдельные k-разрядные блоки данных 2. Передатчик формирует последовательность закрытых подключей 3 для шифрования k-разрядных блоков данных 2. Первый подключ 3 задают при инициализации, а последующий (i+1)-ый подключ 3 зависит от предыдущего i-го подключа 3 функционально (стохастически или иным образом). Согласно изобретению перед передачей i-го блока данных дополнительно формируется n-разрядное случайное число (k>n), являющееся модификатором 4 для (i+1)-го ключа 3. Модификатор для (i+1)-го блока 4 входит в передаваемый 1-ый блок данных и является частью соответствующего (i+1)-го закрытого подключа 3.
Например, подключ для каждого последующего (i+1)-го блока 3 образуется присоединением n разрядов модификатора 4 к подключу предыдущего i-го блока 3 и сдвигом с потерей разрядов, см. фиг.1.
Например, подключ для каждого последующего (i+1)-го блока 3 образуется путем выполнения функционального, стохастического или иного преобразования над модификатором 4 и подключом предыдущего i-го блока 3.
Заявленный способ формирования переменного ключа для блочного шифрования данных можно использовать совместно с протоколом передачи данных в компьютерных сетях TCP/IP.
Прием и передача сообщений, согласно сформированному переменному ключу, поясняется схемой, которая представлена на фиг.2. Показаны передатчик 5, выход которого подсоединен к входу приемника 6 через сеть передачи данных 7. В передатчик 5 входят: первый блок формирования закрытого ключа 8, первый буфер данных 9, первый регистр 10, шифратор 11, буфер передачи 12, устройство вывода 13. Вход первого блока формирования закрытого ключа 8 подсоединен к генератору случайных чисел 4. На выходе генератора случайных чисел формируется модификатор ключа. Выход генератора случайных чисел 4 и выход первого буфера данных 9 подсоединены к первому и второму входам первого регистра 10. Модификатор ключа 4 и передаваемый блок данных 2 заносятся в регистр 10. На выходе блока 8 формируется значение закрытого ключа 3 для шифрации очередного блока данных. Выходы блока формирования закрытого ключа 8 и регистра 10 подсоединены, соответственно, к первому и второму входам шифратора 11. В шифраторе 11 производится шифрация информации с использованием закрытого ключа 3. Шифратор 11 последовательно соединен с буфером передачи 12 и устройством вывода 13. Зашифрованная информация с выхода шифратора 11 поступает в буфер передачи 12, а затем - в устройство вывода 13. Выход устройства вывода 13 подсоединен к сети передачи данных 7.
Приемник 6 содержит: устройство ввода 14, буфер приема 15, дешифратор 16, второй блок формирования закрытого ключа 17, второй регистр 18 и второй буфер данных 19. Устройство ввода 14 последовательно соединено с буфером приема 15 и первым входом дешифратора 16. Второй вход дешифратора 16 подсоединен к выходу второго блока формирования закрытого ключа 17. Выход дешифратора 16 подсоединен к регистру 18. На первом выходе регистра 18 формируется модификатор закрытого ключа 4, а на втором выходе - блок данных 2. Приемник 6 дешифрует информацию с использованием закрытого ключа 3. Первый выход второго регистра 18 подключен к входу второго блока формирования закрытого ключа 17, а его второй выход - к входу второго буфера данных 19. Во втором регистре 18 информация разделяется на две части - модификатор ключа и блок данных. Модификатор ключа 4 поступает на вход второго блока формирования закрытого ключа 17. Блок данных поступает на вход второго буфера данных 19.
После передачи и приема очередного блока данных, закрытый ключ 3 синхронно меняется у передатчика и приемника данных. Фактическая длина закрытого ключа 3 будет существенно увеличена, за счет присоединения модификатора 4.
Таким образом, сущность заявленного способа формирования переменного ключа для блочного шифрования и передачи шифрованных данных можно представить в форме алгоритма (фиг.1):
1. Сначала информационное сообщение разбивается на отдельные k-разрядные блоки данных. Затем при инициализации вводят закрытый подключ. Этот подключ одинаковый у передатчика и приемника. Длина закрытого подключа должна быть больше длины блока данных. Закрытым подключом шифруют блок данных с номером i=1.
2. Для каждого последующего (i+1)-го блока данных формируют новый модификатор ключа. Модификатор ключа является случайным n-разрядным числом. Модификатор ключа можно получать, например, с помощью генератора случайных чисел. Затем формируют последующее (i+1)-oe значение подключа, которое функционально (стохастически или иным способом) зависит от предшествующего i-го подключа и модификатора ключа. Функция модификации обеспечивает взаимно однозначное изменение подключа в соответствии с модификатором. Например, подключ для каждого последующего (i+1)-го блока образуется присоединением n разрядов модификатора к подключу предыдущего i-го блока, причем при модификации выполняется операция сдвига с потерей n значащих разрядов подключа предыдущего блока.
3. Модификатор (i+1)-го подключа присоединяют к i-тому блоку данных и шифруют i-тым подключом. Для шифрации можно использовать любой из известных методов шифрования, например гаммирование. Зашифрованный блок передают по сети передачи данных от отправителя к получателю.
4. Шаги 2-3 выполняют для всех блоков данных, входящих в сообщение. Секретный ключ сообщения образуется последовательностью подключей для блоков данных.
В заявленном способе формирования переменного ключа длина секретного ключа превышает объем блока информации, что существенно повышает криптографическую стойкость системы передачи данных.
Согласно формуле Шеннона, если размер блока данных не превышает размер ключа, то несанкционированная дешифрация (взлом) блока данных невозможна. Для несанкционированной дешифрации необходимо, чтобы объем зашифрованных данных был существенно больше, чем объем ключа. В предложенном способе ключ можно сделать достаточно большим за счет присоединения модификатора.
Таким образом, заявленный способ формирования переменного ключа обеспечивает высокий уровень криптостойкости. При заявленном способе формирования переменного ключа можно использовать любые способы шифрования, даже простые (например, гаммирование). Простота формирования переменного ключа и способа шифрования позволит существенно увеличить скорость передачи и приема сообщений. Заявленный способ можно использовать в устройствах мобильной связи.
Заявленный способ формирования ключа для блочного шифрования данных может быть реализован программно, аппаратно или программно-аппаратно, на базе компьютера с установленной программой.
Анализ заявленного технического решения на соответствие условиям патентоспособности показал, что указанные в независимом пункте формулы признаки являются существенными и взаимосвязаны между собой с образованием устойчивой совокупности необходимых признаков, неизвестной на дату приоритета из уровня техники и достаточной для получения сформулированного в задаче синергетического (сверхсуммарного) технического результата.
Таким образом, вышеизложенные сведения свидетельствуют о выполнении при использовании заявленного технического решения следующей совокупности условий:
- заявленный способ формирования переменного ключа для блочного шифрования и передачи шифрованных данных предназначен для использования в вычислительной технике и может быть реализован для криптографической защиты данных в компьютерных сетях в том виде, как он охарактеризован в независимом пункте формулы изобретения, подтверждена возможность осуществления способа с помощью вышеописанных в материалах заявки известных из уровня техники на дату приоритета средств и методов;
- объект, воплощающий заявленное техническое решение, при его осуществлении способен обеспечить достижение усматриваемого заявителем технического результата: повышение криптографической стойкости системы передачи данных;
- заявленный способ формирования переменного ключа для блочного шифрования и передачи шифрованных данных предназначен для использования в вычислительной технике и может быть реализован для криптографической защиты данных в компьютерных сетях в том виде, как он охарактеризован в независимом пункте формулы изобретения, подтверждена возможность осуществления способа с помощью вышеописанных в материалах заявки известных из уровня техники на дату приоритета средств и методов;
- объект, воплощающий заявленное техническое решение, при его осуществлении способен обеспечить достижение усматриваемого заявителем технического результата: повышение криптографической стойкости системы передачи данных.
Заявленное техническое решение обеспечивает ясное и однозначное понимание его осуществления и реализации указанного назначения в рамках признаков, указанных в формуле. На основании изложенного можно сделать вывод, что заявленное техническое решение, по мнению заявителя, соответствует критерию «промышленная применимость».
Технический характер решения подтверждается наличием технического результата, полученного при осуществлении или использовании технического решения.
Следовательно, заявленный объект соответствует требованиям и условиям патентоспособности «новизна», «изобретательский уровень» и «промышленная применимость» по действующему законодательству.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ БЛОЧНОГО ШИФРОВАНИЯ СООБЩЕНИЙ И ПЕРЕДАЧИ ШИФРОВАННЫХ ДАННЫХ С ЗАКРЫТЫМ КЛЮЧОМ | 2011 |
|
RU2481715C1 |
СПОСОБ БЛОЧНОЙ ШИФРАЦИИ С ЗАКРЫТЫМ КЛЮЧОМ | 2016 |
|
RU2631981C2 |
СПОСОБ КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ С ОДНОВРЕМЕННОЙ ВЫРАБОТКОЙ ПРОИЗВОДНОГО КЛЮЧА ШИФРОВАНИЯ | 2021 |
|
RU2775253C1 |
СПОСОБ КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ БЛОКОВ ЦИФРОВЫХ ДАННЫХ | 2007 |
|
RU2359415C2 |
СПОСОБ ИТЕРАТИВНОГО КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ ДАННЫХ | 2012 |
|
RU2504911C1 |
СПОСОБ БЛОЧНОГО ШИФРОВАНИЯ СООБЩЕНИЯ М, ПРЕДСТАВЛЕННОГО В ДВОИЧНОМ ВИДЕ | 2011 |
|
RU2459275C1 |
СПОСОБ ШИФРОВАНИЯ ИНФОРМАЦИИ, ПРЕДСТАВЛЕННОЙ ДВОИЧНЫМ КОДОМ | 1997 |
|
RU2103829C1 |
СПОСОБ КРИПТОЗАЩИТЫ СИСТЕМЫ ТЕЛЕКОММУНИКАЦИОННЫХ ТЕХНОЛОГИЙ | 1995 |
|
RU2077113C1 |
СПОСОБ КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ БЛОКОВ ДАННЫХ | 1997 |
|
RU2106753C1 |
СПОСОБ ШИФРОВАНИЯ СООБЩЕНИЯ М, ПРЕДСТАВЛЕННОГО В ВИДЕ МНОГОРАЗРЯДНОГО ДВОИЧНОГО ЧИСЛА | 2011 |
|
RU2459276C1 |
Изобретение относится к вычислительной технике, а именно к криптографической защите данных в компьютерных сетях. Техническим результатом является повышение криптографической стойкости системы передачи данных. Технический результат достигается тем, что в приемнике и передатчике вводят одинаковые закрытые ключи, а затем в передатчике формируют последовательность отдельных k-разрядных блоков данных, после чего из закрытого ключа получают последовательность подключей с возможностью шифрации блоков данных в передатчике и дешифрации передаваемых блоков данных в приемнике и поблочную передачу данных, при этом значение любого последующего (i+1)-го подключа определяют в соответствии со значением предыдущего i-го подключа этой же последовательности по функциональной зависимости, причем перед передачей шифрованных данных в передатчике формируют дополнительную последовательность модификаторов из n-разрядных случайных чисел, не превышающих разрядность блоков данных (k>n), после чего значение последующего (i+1)-го модификатора вводят в предыдущий i-ый блок данных, являющийся носителем модификатора переменного ключа, с последующим использованием при формировании последующего значения (i+1)-го закрытого подключа в передатчике и приемнике. 2 з.п. ф-лы, 2 ил.
1. Способ формирования переменного ключа для блочного шифрования и передачи шифрованных данных, при котором сначала в приемнике и передатчике вводят одинаковые закрытые ключи, а затем в передатчике формируют последовательность отдельных k-разрядных блоков данных, после чего из закрытого ключа получают последовательность подключенных с возможностью шифрации блоков данных в передатчике и дешифрации передаваемых блоков данных в приемнике и поблочную передачу данных, при этом значение любого последующего (i+1)-го подключа определяют в соответствии со значением предыдущего i-го подключа этой же последовательности по функциональной зависимости, отличающийся тем, что перед передачей шифрованных данных в передатчике формируют дополнительную последовательность модификаторов из n-разрядных случайных чисел, не превышающих разрядность блоков данных (k>n), после чего значение последующего (i+1)-го модификатора вводят в предыдущий i-й блок данных, являющийся носителем модификатора переменного ключа, с последующим использованием при формировании последующего значения (i+1)-го закрытого подключа в передатчике и приемнике.
2. Способ по п.1, отличающийся тем, что подключ для каждого последующего (i+1)-го блока формируют присоединением n разрядов модификатора к подключу предыдущего i-го блока, причем при модификации выполняется операция сдвига с потерей n значащих разрядов подключа предыдущего i-го блока.
3. Способ по п.1, отличающийся тем, что подключ для каждого последующего (i+1)-го блока формируют из подключа предыдущего i-го блока на основе стохастических или иных методов.
СПОСОБ КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ БЛОКОВ ЦИФРОВЫХ ДАННЫХ | 2007 |
|
RU2359415C2 |
СПОСОБ ИТЕРАТИВНОГО БЛОЧНОГО ШИФРОВАНИЯ ДВОИЧНЫХ ДАННЫХ | 2001 |
|
RU2206961C2 |
Способ приготовления мыла | 1923 |
|
SU2004A1 |
US 20080304664 A1, 11.12.2008 | |||
FR 2836311 A1, 22.08.2003 | |||
Приспособление для суммирования отрезков прямых линий | 1923 |
|
SU2010A1 |
Авторы
Даты
2012-08-20—Публикация
2010-07-16—Подача