RU2207736C2 - Способ шифрования блоков данных - Google Patents

Способ шифрования блоков данных Download PDF

Info

Publication number
RU2207736C2
RU2207736C2 RU2001110662/09A RU2001110662A RU2207736C2 RU 2207736 C2 RU2207736 C2 RU 2207736C2 RU 2001110662/09 A RU2001110662/09 A RU 2001110662/09A RU 2001110662 A RU2001110662 A RU 2001110662A RU 2207736 C2 RU2207736 C2 RU 2207736C2
Authority
RU
Russia
Prior art keywords
data
block
fragment
sequence
key sequence
Prior art date
Application number
RU2001110662/09A
Other languages
English (en)
Other versions
RU2001110662A (ru
Inventor
А.В. Аграновский
Р.А. Хади
А.В. Балакин
Original Assignee
Государственное предприятие конструкторское бюро "СПЕЦВУЗАВТОМАТИКА"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Государственное предприятие конструкторское бюро "СПЕЦВУЗАВТОМАТИКА" filed Critical Государственное предприятие конструкторское бюро "СПЕЦВУЗАВТОМАТИКА"
Priority to RU2001110662/09A priority Critical patent/RU2207736C2/ru
Publication of RU2001110662A publication Critical patent/RU2001110662A/ru
Application granted granted Critical
Publication of RU2207736C2 publication Critical patent/RU2207736C2/ru

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Facsimile Transmission Control (AREA)

Abstract

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

Description

Изобретение относится к электросвязи и вычислительной технике, а конкретнее к области способов и устройств для криптографического преобразования данных, и может быть использовано в связных, вычислительных и информационных системах для криптографического закрытия двоичной информации при обмене данными правительственными, правоохранительными, оборонными, банковскими и промышленными учреждениями, когда возникает необходимость хранения и передачи конфиденциальной информации.
Известен способ шифрования двоичной информации и устройство для осуществления способа - "Албер" [1], в котором для осуществления криптографического преобразования текста используется набор из информационного и ключевого р-разрядных регистров. Входные данные разбиваются на блоки переменной длины из m ячеек, включающей по р разрядов в каждой. Далее, содержимое этих ячеек преобразуется с помощью n-кратного сложения по модулю 2 или по модулю 2p с содержимым второй р-разрядной ячейки информационного регистра, к полученной сумме прибавляют по модулю 2 или по модулю 2р содержимое очередной р-разрядной ячейки ключевого регистра, результат преобразуют блоком р-разрядного функционального преобразования f, к полученному результату прибавляют по модулю 2 или по модулю 2р содержимое r-й (3≤r≤m-1) ячейки информационного регистра.
Однако данный способ обладает недостатками, которые связаны с возможностью анализа зашифрованных данных путем применения метода дифференциального криптоанализа. Это происходит благодаря тому, что сложение по модулю 2 или по модулю 2р-разрядной ячейки с нулем не приводит к изменению содержимого данной ячейки, а в случае изменения может быть выявлена зависимость изменения содержимого данной ячейки от текущего на момент зашифрования содержания информационного и ключевого регистров.
Известен также способ шифрования блоков данных [2], который ориентирован на шифрование входных блоков данных с помощью неповторяющихся комбинаций генерируемых подключей, а именно на задание зависимости расписания использования подключей от структуры блока данных и от ключа шифрования, т.е. на задание псевдослучайной выборки подключей. Данный способ проявляет хорошую работоспособность при условии достаточного количества операций, производимых генерируемым исполняемым машинным кодом программы шифрования, определяющей способ зашифрования блоков данных.
Однако способ имеет недостаток заключающийся в том, что задаваемый пользователем ключ, в соответствии с которым производится генерирование машинного исполняемого кода программы шифрования, а следовательно, и само шифрование, может послужить причиной генерирования такого машинного исполняемого кода, который позволит применить к зашифрованным с его помощью блокам данных методы криптоанализа, которые позволят расшифровать блоки данных без знания исходной ключевой последовательности с помощью криптоанализа на основе подобранных входных фрагментов открытого текста.
Наиболее близким по технической сущности к предлагаемому является способ защиты информации от несанкционированного доступа [3], принятый за прототип, заключающийся в том, что на передающей стороне блок данных искажается с помощью ключевой последовательности путем его разбиения на фрагменты переменной длины с последующим шифрованием каждого из фрагментов с помощью криптографического преобразования, а на принимающей стороне искаженный блок данных восстанавливается с помощью той же ключевой последовательности.
Недостатками прототипа являются низкая стойкость к несанкционированному расшифрованию зашифрованной с его помощью информации; необходимость хранить ключевую последовательность большого объема, определяющую длину каждого шифруемого блока; сохранение статистических свойств открытого текста, что позволяет получить дополнительную информацию о защищаемой информации, а в ряде случаев расшифровать ее. Кроме того, к зашифрованному этим способом тексту могут быть эффективно применены способы криптоанализа на основе подобранных входных фрагментов открытого текста.
Технический результат, получаемый от внедрения изобретения, заключается в уменьшении зависимости статистических характеристик зашифрованных данных от входных данных и увеличении сложности расшифрования зашифрованных данных за приемлемое время при отсутствии должной ключевой последовательности, а также в затруднении получения приемлемых результатов применения атак дифференциального и линейного методов криптоанализа зашифрованных данных с целью их расшифрования.
Данный технический результат получают за счет того, что в известном способе шифрования блоков данных, заключающемся в том, что на передающей стороне блок данных искажается с помощью ключевой последовательности путем его разбиения на фрагменты переменной длины с последующим шифрованием каждого из фрагментов с помощью криптографического преобразования, а на принимающей стороне искаженный блок данных восстанавливается с помощью той же ключевой последовательности, для шифрования каждого из фрагментов переменной длины применяется функция криптографического преобразования f с дополнительной псевдослучайной последовательностью, зависящей от заданной ключевой последовательности, а также зацепление элементов блока данных с параметром зацепления р внутри каждого фрагмента, при этом в качестве функции криптографического преобразования f используют функцию линейного конгруэнтного преобразования вида f(x)=ax+b mod с, где a, b, с - постоянные коэффициенты, а параметр зацепления р вычисляется с помощью той же функции криптографического преобразования f из ключевой последовательности.
Согласно способу выбор длины фрагментов внутри блока данных производится с помощью функции f преобразования ключевой последовательности в целое значение n, в зависимости от которого выбирается n элементов блока, начиная с текущей позиции i (i=1, 2, 3,...). После этого, текущей позицией становится i+n позиция. Для каждого фрагмента генерируется последовательность псевдослучайных чисел h длиной n элементов в зависимости от заданной ключевой последовательности. Выбранный фрагмент затем преобразуется следующим образом. К каждому k-му элементу (k=1, 2, 3,..., n) фрагмента прибавляется значение k-го элемента последовательности h по модулю 2. Далее происходит зацепление элементов внутри фрагмента, то есть каждый r-й элемент (r=2, 3,..., n) фрагмента суммируется по модулю 2 с n-р элементом в случае, когда r≥р, и суммируется по модулю 2 с s-м (s=1, 2, 3,..., n) элементом, когда r<р. Параметр р является параметром зацепления и вычисляется с помощью функции криптографического преобразования f из ключевой последовательности.
Таким образом, r-й элемент блока данных преобразовывается в соответствии с правилом:
yr=xr+hk,rn-р, если r≥р
yr=xr+hk,r+ys, при r<р,
где zr - результирующий r-й элемент, xr- r-й элемент фрагмента данных, hk,r - r-й элемент последовательности псевдослучайных чисел h, зависящей от ключевой последовательности, уn-р и ys - уже вычисленные n-i и s элементы соответственно.
Причем s принимается равным целому числу, полученному округлением результата выражения r/2.
Функция преобразования f ключевой последовательности выбирается так, чтобы множество ее значений было ограничено некоторой константой с (с=2, 3, 4,...), определяемой исходя из экспериментальных данных в зависимости от типа шифруемой информации и длины исходного файла. В качестве функции преобразования f выбирают произвольную вычислительно-необратимую или труднообратимую функцию, например функцию линейного конгруэнтного преобразования вида f(x)= ax+b mod с, с начальным значением, зависящим от заданной ключевой последовательности. Константы а и b выбираются так, чтобы генерируемая последовательность не обладала периодом максимальной длины (как описано, например, в [4]), а константа с выбирается равной максимальной длине фрагментов, на которые должен разбиваться блок данных. В общем случае, значение константы с выбирается на порядок меньше длины исходного файла данных.
При обратном криптографическом преобразовании последовательность действий сохраняется, преобразования производятся аналогично, но уn-р и ys принимаются из блока зашифрованных данных.
Способ может быть реализован с помощью ЭВМ или вычислительного устройства, представленного в виде блок-схемы на фиг.1. На фиг.2 представлена схема преобразования каждого r-го элемента текущего фрагмента данных.
Устройство для реализации способа состоит из блока 1 ввода ключевой последовательности; блока 2 ввода данных исходного файла; блока 3 разбиения исходного файла на фрагменты варьируемой длины; операционного блока 4, реализующего преобразование f; блока 5 памяти устройства шифрования; устройства 6 выработки псевдослучайной последовательности h; операционного блока 7, реализующего зацепление элементов в текущем фрагменте; блока 8 выходных данных. Через блок 9 обозначен соответствующий элемент ключевой последовательности, блок 10 - операционный блок, реализующий преобразование f; 11 - элемент соответствующей текущему фрагменту данных последовательности псевдослучайных чисел h; 12 - текущий фрагмент данных. Фрагмент данных 12 состоит из n элементов. На фиг.2 показаны первый элемент фрагмента данных 12i, r-й элемент фрагмента данных 121, n-p элемент фрагмента данных 12n-р, n-1 и n-й элементы фрагмента данных 12n-i и 12n.
Способ реализуется следующим образом. Используя блок 1 (алфавитно-цифровое устройство ввода информации, как, например, описанное в [5]), в устройство вводят секретную ключевую последовательность, которая передается на вход блока 3 (операционный блок, организованный согласно [6]). С помощью блока 2 (аналогичного по устройству блоку 1) в устройство вводят данные, предназначенные для зашифрования, после чего данные помещаются в блок 4 (длинный сдвиговой регистр, описанный, например, в [7]), где разбиваются на фрагменты варьируемой длины. Длина каждого фрагмента определяется с помощью выходных значений блока 3 (операционный блок-дешифратор, описанный в [7]). После этого производится поочередная последовательная выборка каждого из фрагментов из блока 4 (как описано, к примеру, в [7]). Выбранный фрагмент данных помещается в блок 6 (реализованный, например, в виде сумматора). Одновременно с этим, на вход блока 5 (операционный блок, описанный, например, в [6] ) подаются выходные значения блока 3, а на выходе блока 5 генерируется последовательность псевдослучайных чисел, которая затем передается в блок 6. В блоке 6 к каждому k-му элементу (k=1, 2, 3,..., n) фрагмента данных прибавляется значение k-го элемента последовательности h по модулю 2. Далее фрагмент передается в блок 7 (дешифратор согласно описанному также в [7]), где происходит операция зацепления элементов фрагмента, то есть каждый r-й элемент (r = 2, 3,.... n) фрагмента суммируется по модулю 2 с n-p элементом в случае, когда r≥р, и суммируется по модулю 2 с s-м (s=1, 2, 3,..., n) элементом в противном случае. Параметр р берется как одно из выходных значений блока 2. Таким образом, r-й элемент блока данных преобразовывается в соответствии с правилом:
yr=xr+hk,r+yn-р, если r≥р
yr=xr+hk,r+ys, при r<р,
где zr - результирующий r-й элемент, xr - r-й элемент фрагмента данных, hk,r - r-й элемент последовательности псевдослучайных чисел h, зависящей от ключевой последовательности, уn-р и ys - уже вычисленные n-i и s элементы соответственно. Причем s принимается равным целому числу, полученному округлением результата выражения r/2. Затем преобразованный описанным выше способом фрагмент данных передается в блок 8 (алфавитно-цифровое устройство вывода описанное, например, в [8]), где размещается соответственно тому, как был размещен в блоке 1 устройства. Процесс шифрования завершается, как только обработан последний фрагмент исходного файла данных. Зашифрованные данные извлекаются из блока 8.
При обратном криптографическом преобразовании для расшифрования данных используется устройство, идентичное данному. Расшифрование данных происходит в том же порядке.
Источники информации
1. Патент РФ 2099890 С1, кл. Н 04 L 9/00.
2. Патент РФ 2106752 С1, кл. Н 04 L 9/00.
3. Патент РФ 2130641 C1, кл. G 06 F 13/00, G 09 С 1/00, Н 04 L 9/00 - прототип.
4. Д. Кнут. Искусство программирования для ЭВМ. - М.: Мир, 1977, т.2.
5. Л. З. Бобровников. Радиотехника и электроника, 4-е изд-ие. - М.: Недра, 1990.
6. Э. Клингман. Проектирование специализированных микропроцессорных систем. - М.: Мир, 1985.
7. Й. Янсен. Курс цифровой электроники. - М.: Мир, 1987, т.2.
8. Г. Зангер. Электронные системы. Теория и применение. - М.: Мир, 1980.

Claims (1)

  1. Способ шифрования блоков данных, заключающийся в том, что на передающей стороне блок данных разбивают на фрагменты, выбор длины которых внутри блока данных производят с помощью криптографического преобразования ключевой последовательности, затем каждый из фрагментов поочередно зашифровывают, а на приемной стороне блок данных восстанавливают, отличающийся тем, что для каждого фрагмента генерируют псевдослучайную последовательность в зависимости от заданной ключевой последовательности, затем фрагмент преобразуют путем суммирования его элементов с соответствующими им элементами псевдослучайной последовательности, а затем проводят зацепление элементов внутри фрагмента с параметром зацепления р, при этом в качестве криптографического преобразования f используют функцию вида f(x)=ax+b mod с, где с=2, 3, 4..., а и b выбираются так, чтобы псевдослучайная последовательность не обладала периодом максимальной длины, а параметр p вычисляют с помощью функции преобразования f из ключевой последовательности.
RU2001110662/09A 2001-04-20 2001-04-20 Способ шифрования блоков данных RU2207736C2 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2001110662/09A RU2207736C2 (ru) 2001-04-20 2001-04-20 Способ шифрования блоков данных

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2001110662/09A RU2207736C2 (ru) 2001-04-20 2001-04-20 Способ шифрования блоков данных

Publications (2)

Publication Number Publication Date
RU2001110662A RU2001110662A (ru) 2003-03-10
RU2207736C2 true RU2207736C2 (ru) 2003-06-27

Family

ID=29209523

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2001110662/09A RU2207736C2 (ru) 2001-04-20 2001-04-20 Способ шифрования блоков данных

Country Status (1)

Country Link
RU (1) RU2207736C2 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2756976C1 (ru) * 2020-06-08 2021-10-07 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Способ шифрования информации и устройство для осуществления способа

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2756976C1 (ru) * 2020-06-08 2021-10-07 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Способ шифрования информации и устройство для осуществления способа

Similar Documents

Publication Publication Date Title
KR100594265B1 (ko) 매스킹 방법이 적용된 데이터 암호처리장치, aes암호시스템 및 aes 암호방법.
Lim A revised version of CRYPTON: CRYPTON V1. 0
US20210165633A1 (en) Protection system and method
US20050147243A1 (en) Cryptographic apparatus, cryptographic method, and storage medium thereof
EP2460310B1 (en) Symmetric-key encryption method and cryptographic system employing the method
WO2011029753A1 (en) A method of diversification of a round function of an encryption algorithm
Agrawal et al. Elliptic curve cryptography with hill cipher generation for secure text cryptosystem
CN109639423B (zh) 一种解密算法的构成装置
Achuthshankar et al. A novel symmetric cryptography algorithm for fast and secure encryption
KR101506499B1 (ko) 마스킹이 적용된 seed를 이용한 암호화 방법
Courtois Security evaluation of GOST 28147-89 in view of international standardisation
Ghosh et al. A comprehensive analysis between popular symmetric encryption algorithms
Saha et al. White-box cryptography based data encryption-decryption scheme for iot environment
EP1416664A2 (en) Data encryption method
US6553120B1 (en) Method for data decorrelation
RU2207736C2 (ru) Способ шифрования блоков данных
Chambers et al. Comments on" Chaotic digital encoding: an approach to secure communication" and reply
RU2226041C2 (ru) Способ криптографического преобразования двоичных данных
SI20349A (sl) Postopek kriptografske pretvorbe binarnih podatkovnih blokov
RU2188513C2 (ru) Способ криптографического преобразования l-битовых входных блоков цифровых данных в l-битовые выходные блоки
KR100350207B1 (ko) 디지털 데이터의 엘-비트 입력 블록들을 엘-비트 출력비트들로 암호 변환하는 방법
Sharma et al. Comparative analysis of block key encryption algorithms
RU2186467C2 (ru) Способ блочного итеративного шифрования
Fadhil et al. The study on usage of table functions instead of basic operators inside encryption algorithm
Verma et al. Coherent Caesar Cipher for Resource Constrained Devices

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20040421

RH4A Copy of patent granted that was duplicated for the russian federation

Effective date: 20120725

RZ4A Other changes in the information about an invention