RU2141729C1 - Способ криптографического преобразования блоков двоичных данных - Google Patents
Способ криптографического преобразования блоков двоичных данных Download PDFInfo
- Publication number
- RU2141729C1 RU2141729C1 RU98100685A RU98100685A RU2141729C1 RU 2141729 C1 RU2141729 C1 RU 2141729C1 RU 98100685 A RU98100685 A RU 98100685A RU 98100685 A RU98100685 A RU 98100685A RU 2141729 C1 RU2141729 C1 RU 2141729C1
- Authority
- RU
- Russia
- Prior art keywords
- sub
- value
- block
- encrypting
- depends
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000006243 chemical reaction Methods 0.000 claims description 24
- 238000004891 communication Methods 0.000 abstract description 2
- 230000017105 transposition Effects 0.000 abstract 3
- 108010001267 Protein Subunits Proteins 0.000 abstract 2
- 230000000694 effects Effects 0.000 abstract 1
- 239000000126 substance Substances 0.000 abstract 1
- 125000004122 cyclic group Chemical group 0.000 description 10
- 230000009466 transformation Effects 0.000 description 8
- 238000000844 transformation Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013478 data encryption standard Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Radar Systems Or Details Thereof (AREA)
- Near-Field Transmission Systems (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области криптографических способов и устройств для шифрования цифровых данных. Способ заключается в разбиении блока данных на V подблоков, поочередном преобразовании подблоков путем выполнения над подблоком по крайней мере одной операции преобразования, которая зависит от значения входного блока. Новым в заявляемом способе является то, что в качестве операции, зависящей от значения входного блока, используется операция перестановки битов подблока. Новым является также то, что при преобразовании подблока дополнительно выполняют операцию перестановки битов в зависимости от секретного ключа. Кроме того, новым является то, что дополнительно формируют двоичный вектор V, а операцию перестановки битов подблока осуществляют в зависимости от значений V, причем двоичный вектор на текущем шаге преобразования формируют в зависимости от его значения на предшествующем шаге преобразования и от значения одного из подблоков. Техническим результатом является обеспечение повышения числа возможных вариантов операции, зависящей от преобразуемого блока, что обеспечивает повышение стойкости криптографического преобразования к дифференциальному и линейному криптоанализу. 1 з.п. ф-лы. 5 ил.
Description
Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области криптографических способов и устройств для шифрования сообщений (информации).
В совокупности признаков заявляемого способа используются следующие термины:
- секретный ключ представляет из себя двоичную информацию, известную только законному пользователю;
- криптографическое преобразование - это преобразование цифровой информации, которое обеспечивает влияние одного бита исходных данных на многие биты выходных данных, например, с целью защиты информации от несанкционированного чтения, формирования цифровой подписи, выработки кода обнаружения модификаций; одними из важных видов криптографических преобразований являются одностороннее преобразование, хэширование и шифрование;
- хэширование информации есть некоторый способ формирования так называемого хэш-кода, размер которого является фиксированным (обычно 128 бит) для сообщений любого размера; широко применяются способы хэширования, основанные на итеративных хэш-функциях с использованием блочных механизмов криптографического преобразования информации [см. Lai X., Massey J.L. Hash Functions Based on Block Ciphers/Workshop on the Theory and Applications of Cryptographic Techniques. EUROCRYPT'92. Hungary, May 24-28, 1992. Proceedings. P. 53-66.].
- секретный ключ представляет из себя двоичную информацию, известную только законному пользователю;
- криптографическое преобразование - это преобразование цифровой информации, которое обеспечивает влияние одного бита исходных данных на многие биты выходных данных, например, с целью защиты информации от несанкционированного чтения, формирования цифровой подписи, выработки кода обнаружения модификаций; одними из важных видов криптографических преобразований являются одностороннее преобразование, хэширование и шифрование;
- хэширование информации есть некоторый способ формирования так называемого хэш-кода, размер которого является фиксированным (обычно 128 бит) для сообщений любого размера; широко применяются способы хэширования, основанные на итеративных хэш-функциях с использованием блочных механизмов криптографического преобразования информации [см. Lai X., Massey J.L. Hash Functions Based on Block Ciphers/Workshop on the Theory and Applications of Cryptographic Techniques. EUROCRYPT'92. Hungary, May 24-28, 1992. Proceedings. P. 53-66.].
- шифрование есть процесс преобразования информации, который зависит от секретного ключа и преобразует исходный текст в шифртекст, представляющий собой псевдослучайную последовательность знаков, из которой получение информации без знания секретного ключа практически неосуществимо;
- дешифрование есть процесс, обратный процедуре шифрования; дешифрование обеспечивает восстановление информации по криптограмме при знании секретного ключа;
- шифр представляет собой совокупность элементарных шагов преобразования входных данных с использованием секретного ключа; шифр может быть реализован в виде программы для ЭВМ или в виде отдельного устройства;
-двоичный вектор - это некоторая последовательность нулевых и единичных битов, например 101101011; конкретная структура двоичного вектора может быть интерпретирована как двоичное число, если считать, что позиция каждого бита соответствует двоичному разряду, т. е. двоичному вектору может быть сопоставлено численное значение, которое определяется однозначно структурой двоичного вектора;
- криптоанализ - метод вычисления секретного ключа для получения несанкционированного доступа к зашифрованной информации или разработка метода, обеспечивающего доступ к зашифрованной информации без вычисления секретного ключа;
- одностороннее преобразование - это такое преобразование L-битового входного блока данных в L-битовый выходной блок данных, которое позволяет легко вычислить выходной блок по входному блоку, а вычисление входного блока, который бы преобразовывался в случайно выбранный выходной блок, является практически невыполнимой задачей;
- односторонняя функция - это функция, значение которой легко вычисляется по данному аргументу, однако вычисление аргумента по данному значению функции является вычислительно трудной задачей; односторонние функции реализуются как последовательность процедур одностороннего преобразования некоторого входного блока (аргумента), выходное значение которого принимается за значение функции;
- криптостойкость является мерой надежности защиты зашифрованной информации и представляет собой трудоемкость, измеренную в количестве элементарных операций, которые необходимо выполнить для восстановления информации по криптограмме при знании алгоритма преобразования, но без знания секретного ключа; в случае односторонних преобразований под криптостойкостью понимается сложность вычисления входного значения блока по его выходному значению;
- операции циклического сдвига, зависящие от преобразуемых подблоков или зависящие от двоичного вектора - это операции циклического сдвига на число бит, задаваемое значением подблока или значением двоичного вектора; операции циклического сдвига влево (вправо) обозначаются знаком "<<<" (">>>"), например, запись B1<<<B2 обозначает операцию циклического сдвига влево подблока В1 на число бит, равное значению двоичного вектора B2; подобные операции являются базовыми для шифра RC5;
- одноместная операция - это операция, выполняемая над одним операндом (блоком данных или двоичным вектором); значение подблока после выполнения некоторой данной одноместной операции зависит только от его начального значения; примером одноместных операций являются операции циклического сдвига;
- двухместная операция - это операция, выполняемая над двумя операндами; результат выполнения некоторой данной двухместной операции зависит от значения каждого операнда; примером двухместных операций являются операции сложения, вычитания, умножения и др.
- дешифрование есть процесс, обратный процедуре шифрования; дешифрование обеспечивает восстановление информации по криптограмме при знании секретного ключа;
- шифр представляет собой совокупность элементарных шагов преобразования входных данных с использованием секретного ключа; шифр может быть реализован в виде программы для ЭВМ или в виде отдельного устройства;
-двоичный вектор - это некоторая последовательность нулевых и единичных битов, например 101101011; конкретная структура двоичного вектора может быть интерпретирована как двоичное число, если считать, что позиция каждого бита соответствует двоичному разряду, т. е. двоичному вектору может быть сопоставлено численное значение, которое определяется однозначно структурой двоичного вектора;
- криптоанализ - метод вычисления секретного ключа для получения несанкционированного доступа к зашифрованной информации или разработка метода, обеспечивающего доступ к зашифрованной информации без вычисления секретного ключа;
- одностороннее преобразование - это такое преобразование L-битового входного блока данных в L-битовый выходной блок данных, которое позволяет легко вычислить выходной блок по входному блоку, а вычисление входного блока, который бы преобразовывался в случайно выбранный выходной блок, является практически невыполнимой задачей;
- односторонняя функция - это функция, значение которой легко вычисляется по данному аргументу, однако вычисление аргумента по данному значению функции является вычислительно трудной задачей; односторонние функции реализуются как последовательность процедур одностороннего преобразования некоторого входного блока (аргумента), выходное значение которого принимается за значение функции;
- криптостойкость является мерой надежности защиты зашифрованной информации и представляет собой трудоемкость, измеренную в количестве элементарных операций, которые необходимо выполнить для восстановления информации по криптограмме при знании алгоритма преобразования, но без знания секретного ключа; в случае односторонних преобразований под криптостойкостью понимается сложность вычисления входного значения блока по его выходному значению;
- операции циклического сдвига, зависящие от преобразуемых подблоков или зависящие от двоичного вектора - это операции циклического сдвига на число бит, задаваемое значением подблока или значением двоичного вектора; операции циклического сдвига влево (вправо) обозначаются знаком "<<<" (">>>"), например, запись B1<<<B2 обозначает операцию циклического сдвига влево подблока В1 на число бит, равное значению двоичного вектора B2; подобные операции являются базовыми для шифра RC5;
- одноместная операция - это операция, выполняемая над одним операндом (блоком данных или двоичным вектором); значение подблока после выполнения некоторой данной одноместной операции зависит только от его начального значения; примером одноместных операций являются операции циклического сдвига;
- двухместная операция - это операция, выполняемая над двумя операндами; результат выполнения некоторой данной двухместной операции зависит от значения каждого операнда; примером двухместных операций являются операции сложения, вычитания, умножения и др.
Известны способы блочного шифрования данных, см. например стандарт США DES [National Bureau of Standards. Data Encryption Standard. Federal Information Processing Standards Publication 46, January 1977; см. также: С. Мафтик. Механизмы защиты в сетях ЭВМ.- М.: Мир, 1993, с. 42-47]. В данном способе шифрование блоков данных выполняют путем формирования секретного ключа, разбиения преобразуемого блока данных на два подблока L и R и поочередного изменения последних путем выполнения операции поразрядного суммирования по модулю два над подблоком L и двоичным вектором, который формируется как выходное значение некоторой функции F от значения подблока R. После этого блоки переставляются местами. Функция F в указанном способе реализуется путем выполнения операций перестановки и подстановки, выполняемых над подблоком R. Данный способ обладает высокой скоростью преобразований при реализации в виде специализированных электронных схем.
Однако известный способ-аналог использует секретный ключ малого размера (56 бит), что делает его уязвимым к криптоанализу на основе подбора ключа. Последнее связано с высокой вычислительной мощностью современных ЭВМ массового применения.
Наиболее близким по своей технической сущности к заявляемому способу криптографического преобразования блоков двоичных данных является способ, реализованный в шифре RC5, описанный в работе [R.Rivest, The RC5 Encryption Algorithm/Fast Software Encryption, Second International Workshop Proceedings (Leuven, Belgium, December 14-16, 1994), Lecture Notes in Computer Science, v. 1008, Springer-Verlag, 1995, pp. 86-96]. Способ-прототип включает в себя формирование секретного ключа в виде совокупности подключей, разбиение входного блока данных на подблоки A и B и поочередное преобразование подблоков. Подблоки преобразуются путем выполнения над ними одноместных и двухместных операций. В качестве двухместных операций используются операции сложения по модулю 2n, где n = 8, 16, 32, 64, и операция поразрядного суммирования по модулю 2. В качестве одноместной операции используется операция циклического сдвига влево, причем число бит. на которое сдвигается преобразуемый подблок, зависит от значения другого подблока, это определяет зависимость операции циклического сдвига на текущем шаге преобразования подблока от исходного значения входного блока данных. Двухместная операция выполняется над подблоком и подключом, а также над двумя подблоками. Характерным для способа прототипа является использование операции циклического сдвига, зависящей от значения входного блока.
Подблок, например подблок B, преобразуют следующим путем. Выполняется операция поразрядного суммирования по модулю 2 над подблоками A и B и значение, получаемое после выполнения этой операции присваиваются подблоку В. Это записывается в виде соотношения B ←_ B⊕V, где знак "<---" обозначает операцию присваивания и знак "⊕" обозначает операцию поразрядного суммирования по модулю 2. После этого над подблоком В выполняют операцию циклического сдвига на число бит, равное значению подблока A: В<---В<<<A. Затем над подблоком и одним из подключей S выполняют операцию суммирования по модулю 2n, где n - длина подблока в битах: B<---B+S mod 2n. После этого аналогичным образом преобразуется блок A. Выполняется насколько таких шагов преобразования обоих подблоков.
Данный способ обеспечивает высокую скорость шифрования при реализации в виде программы для ЭВМ. Однако способ-прототип имеет недостатки, а именно, при программной реализации для ЭВМ с 32-разрядными микропроцессором он не обеспечивает высокой стойкости криптографического преобразования данных к дифференциальному и линейному криптоанализу [Kaliski В. S., Yin Y.L. On Differential and Linear Cryptanalysis of the RC5 Encryption Algorithm. Advances in Cryptology - CRYPTO'95 Proceedings, SprInger-Verlag, 1995, pp. 171-184]. Этот недостаток связан с тем, что эффективность использования операций зависящих от преобразуемых данных с целью усложнения известных методов криптоанализа снижается тем, что число возможных вариантов операции циклического сдвига равно числу двоичных разрядов подблока n и не превышает 64.
В основу изобретения положена задача разработать способ криптографического преобразования блоков цифровых данных, в котором преобразование входных данных осуществлялось бы таким образом, чтобы обеспечивалось повышение числа различных вариантов операции, зависящей от преобразуемого блока, благодаря чему повышается стойкость к дифференциальному и линейному криптоанализу.
Поставленная задача достигается тем, что в способе криптографического преобразования блоков двоичных данных, заключающемся в разбиении блока данных на N≥2 подблоков, поочередном преобразовании подблоков путем выполнения над подблоком по крайней мере одной операции преобразования, которая зависит от значения входного блока, новым согласно изобретению является то, что в качестве операции, зависящей от значения входного блока, используется операция перестановки битов подблока.
Благодаря такому решению обеспечивается повышение числа возможных вариантов операции, зависящей от преобразуемого блока, что обеспечивает повышение стойкости криптографического преобразования к дифференциальному и линейному криптоанализу.
Новым является также то, что при преобразовании подблока дополнительно выполняют операцию перестановки битов подблока в зависимости от секретного ключа.
Благодаря такому решению обеспечивается дополнительное повышение криптостойкости к дифференциальному и линейному криптоанализу.
Новым является также то, что дополнительно формируют двоичный вектор V, а операцию перестановки битов подблока осуществляют в зависимости от значения V, причем двоичный вектор на текущем шаге преобразования формируют в зависимости от его значения на предшествующем шаге преобразования и от значения одного из подблоков.
Благодаря такому решению обеспечивается дополнительное повышение криптостойкости к атакам, основанным на сбоях устройства шифрования.
Ниже сущность заявляемого изобретения более подробно разъясняется примерами его осуществления со ссылками на прилагаемые чертежи.
На фиг. 1 представлена обобщенная схема криптографического преобразования согласно заявляемому способу.
На фиг. 2 схематично представлена структура блока управляемых перестановок.
На фиг. 3 представлена блок-схема элементарного переключателя.
На фиг. 4 представлена таблица входных и выходных сигналов элементарного переключателя при высоком потенциале управляющего сигнала.
На фиг. 5 представлена таблица входных и выходных сигналов элементарного управляемого переключателя при низком потенциале управляющего сигнала.
Изобретение поясняется обобщенной схемой криптографического преобразования блоков данных на основе заявляемого способа, которая представлена фиг. 1, где: P - блок управляемых перестановок; A и B - преобразуемые подблоки; K4r, K4r-1, K4r-2, K4r-3 - элементы секретного ключа (подключи); V - двоичный вектор, формируемый в зависимости от входных данных; знак ⊕ обозначает операцию поразрядного суммирования по модулю два; знак - операцию суммирования по модулю n, где n - длина подблока данных в битах. Жирные сплошные линии обозначают шину передачи n-битовых сигналов, тонкие сплошные линии - передачу одного бита, тонкие пунктирные линии - передачу одного управляющего бита. Жирные пунктирные линии - шину передачи n управляющих сигналов, в качестве которых используются биты подключей. Использование дополнительной зависимости перестановок от секретного ключа повышает стойкость криптографического преобразования.
Фиг. 1 показывает один раунд преобразований. В зависимости от конкретной реализации блока управляемых перестановок и требуемой скорости преобразований могут быть заданы от 2 до 16 и более раундов. Данная схема процедур криптографических преобразований может использоваться для осуществления шифрования и для осуществления односторонних преобразований. В последнем случае секретный ключ не используется и вместо сигналов подключей на управляющий вход блока P подаются сигналы двоичного вектора V, формируемого в зависимости от значения преобразуемых подблоков на промежуточных шагах преобразования.
Рассмотрим конкретные примеры реализации заявляемого способа криптографических преобразований блоков двоичных данных.
Пример 1.
Данный пример относится к использованию способа для шифрования данных. Секретный ключ представлен в виде четырех подключей K4r, K4r-1, K4r-2 и K4r-3. Один раунд шифрования описывается следующей последовательностью процедур:
1. Преобразовать подблок A в соответствии с выражением:
A ←_A⊕K4r-3,
где "<---" - обозначение операции присваивания.
1. Преобразовать подблок A в соответствии с выражением:
A ←_A⊕K4r-3,
где "<---" - обозначение операции присваивания.
2. Преобразовать подблок B в соответствии с выражением:
3. В зависимости от значения подблока A и от подключа K4r-1 осуществить перестановку битов подблока B.
3. В зависимости от значения подблока A и от подключа K4r-1 осуществить перестановку битов подблока B.
4. Преобразовать подблок A в соответствии с выражением:
5. В зависимости от значения подблока B и от подключа К4r осуществить перестановку битов подблока A.
5. В зависимости от значения подблока B и от подключа К4r осуществить перестановку битов подблока A.
6. Преобразовать подблок B в соответствии с выражением:
B ←_ B⊕A.
Пример 2.
B ←_ B⊕A.
Пример 2.
Данный пример описывает один раунд односторонних преобразований в соответствии со следующей последовательностью процедур:
1. Сформировать двоичный вектор V:
V <--- A <<< B.
1. Сформировать двоичный вектор V:
V <--- A <<< B.
2. Преобразовать подблок B в соответствии с выражением:
3. Сформировать двоичный вектор V в зависимости от его значения на предыдущем шаге и от значения подблоков A и B в соответствии с формулой:
V ←_(V<<<A)⊕(B<<<13).
4. Преобразовать подблок A в соответстствии с выражением:
A ←_ A⊕V.
5. В зависимости от значений A и V осуществить перестановку битов подблока B.
3. Сформировать двоичный вектор V в зависимости от его значения на предыдущем шаге и от значения подблоков A и B в соответствии с формулой:
V ←_(V<<<A)⊕(B<<<13).
4. Преобразовать подблок A в соответстствии с выражением:
A ←_ A⊕V.
5. В зависимости от значений A и V осуществить перестановку битов подблока B.
6. Преобразовать подблок A в соответствии с выражением:
7. Сформировать двоичный вектор V:
V ←_(V<<<A)⊕(B<<<11).
8. В зависимости от значений В и V осуществить перестановку битов подблока A.
7. Сформировать двоичный вектор V:
V ←_(V<<<A)⊕(B<<<11).
8. В зависимости от значений В и V осуществить перестановку битов подблока A.
9. Преобразовать подблок B в соответствии с выражением:
B ←_ B⊕A.
На фиг. 2 показана возможная реализация блока управляемых перестановок, использующая совокупность элементарных переключателей s. Данный пример соответствует блоку P с 8-битовым входом для сигналов данных и 8-битовым входом для управляющих сигналов, обозначенных пунктирными линиями аналогично обозначению на фиг. 1.
B ←_ B⊕A.
На фиг. 2 показана возможная реализация блока управляемых перестановок, использующая совокупность элементарных переключателей s. Данный пример соответствует блоку P с 8-битовым входом для сигналов данных и 8-битовым входом для управляющих сигналов, обозначенных пунктирными линиями аналогично обозначению на фиг. 1.
Число различных вариантов операции перестановки равно числу возможных кодовых комбинаций на входе управления и составляет для блока P со структурой, представленной на фиг. 2, 28=256, что превышает число операций циклического сдвига, используемых в способе-прототипе. Аналогичным способом может быть составлена схема для блока P с произвольными размерами входа для данных и входа для управляющих сигналов, в частности для блока P с 32-битовым входом данных и 32-битовым входом для управляющих сигналов. В последнем случае достигается число различных вариантов операции перестановки, равное 232 > 109.
Фиг. 3, 4 и 5 поясняют работу элементарного переключателя, где u - управляющий сигнал, а и b - входные сигналы данных, с и d - выходные сигналы данных. Таблицы на фиг. 4 и 5 показывают зависимость выходных сигналов от входных и управляющих сигналов. Из данных таблиц видно, что при u = 1 линия а коммутируется с линией с, а линия b - с линией d. При u = 0 линия а коммутируется с линией d, а линия b - с линией d. Благодаря простой структуре современная планарная технология изготовления интегральных схем позволяет легко изготовит криптографические микропроцессоры, содержащие управляемые блоки перестановок с размером входа 32, 64 и 128 бит.
Приведенные примеры показывают, что предлагаемый способ криптографических преобразований блоков двоичных данных технически реализуем и позволяет решить поставленную задачу.
Заявляемый способ может быть реализован, например, в специализированных криптографических микропроцессорах, обеспечивающих скорость шифрования порядка 200 Мбит/с, достаточную для шифрования в масштабе реального времени всех данных, передаваемых по скоростным оптоволоконным каналам связи.
Claims (2)
1. Способ криптографического преобразования блоков двоичных данных, заключающийся в разбиении блока данных на N≥2 подблоков, поочередном преобразовании подблоков путем выполнения над подблоком, по крайней мере, одной операции преобразования, которая зависит от значения входного блока, отличающийся тем, что в качестве операции, зависящей от значения входного блока, используется операция перестановки битов подблока.
2. Способ по п.1, отличающийся тем, что операция перестановки битов подблока, зависящая от значения входного блока, формируется в зависимости от секретного ключа.
Priority Applications (15)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| RU98100685A RU2141729C1 (ru) | 1998-01-19 | 1998-01-19 | Способ криптографического преобразования блоков двоичных данных |
| PCT/RU1998/000182 WO1999036942A1 (en) | 1998-01-19 | 1998-06-19 | Method for the cryptographic conversion of binary data blocks |
| JP2000540561A JP2002510058A (ja) | 1998-01-19 | 1998-06-19 | 2進データ・ブロックの暗号変換のための方法 |
| PL98342036A PL342036A1 (en) | 1998-01-19 | 1998-06-19 | Method of cryptographically converting binary data blocks |
| SI9820084A SI20349A (sl) | 1998-01-19 | 1998-06-19 | Postopek kriptografske pretvorbe binarnih podatkovnih blokov |
| AT98935436T ATE358369T1 (de) | 1998-01-19 | 1998-06-19 | Verfahren zur kryptographischen umwandlung von binären datenblöcken |
| UA2000084934A UA49102C2 (ru) | 1998-01-19 | 1998-06-19 | Способ криптографического преобразования блоков двоичных данных |
| ES98935436T ES2287978T3 (es) | 1998-01-19 | 1998-06-19 | Metodo para la conversion criptografica de bloques de datos binarios. |
| EP98935436A EP1087425B1 (en) | 1998-01-19 | 1998-06-19 | Method for the cryptographic conversion of binary data blocks |
| KR10-2000-7007667A KR100411684B1 (ko) | 1998-01-19 | 1998-06-19 | 이진 데이터 블록의 암호 변환 방법 |
| SK1038-2000A SK286323B6 (en) | 1998-01-19 | 1998-06-19 | Method for the cryptographic conversion of binary data blocks |
| CNB988131781A CN100393026C (zh) | 1998-01-19 | 1998-06-19 | 二进制数据块加密变换方法 |
| DE69837449T DE69837449D1 (de) | 1998-01-19 | 1998-06-19 | Verfahren zur kryptographischen umwandlung von binären datenblöcken |
| CZ20002653A CZ296186B6 (cs) | 1998-01-19 | 1998-06-19 | Zpusob kryptografické konverze binárních datovýchbloku |
| US11/002,972 US20050169471A1 (en) | 1998-01-19 | 2004-12-03 | Method for cryptographic conversion of binary data blocks |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| RU98100685A RU2141729C1 (ru) | 1998-01-19 | 1998-01-19 | Способ криптографического преобразования блоков двоичных данных |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| RU2141729C1 true RU2141729C1 (ru) | 1999-11-20 |
Family
ID=20201205
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| RU98100685A RU2141729C1 (ru) | 1998-01-19 | 1998-01-19 | Способ криптографического преобразования блоков двоичных данных |
Country Status (15)
| Country | Link |
|---|---|
| US (1) | US20050169471A1 (ru) |
| EP (1) | EP1087425B1 (ru) |
| JP (1) | JP2002510058A (ru) |
| KR (1) | KR100411684B1 (ru) |
| CN (1) | CN100393026C (ru) |
| AT (1) | ATE358369T1 (ru) |
| CZ (1) | CZ296186B6 (ru) |
| DE (1) | DE69837449D1 (ru) |
| ES (1) | ES2287978T3 (ru) |
| PL (1) | PL342036A1 (ru) |
| RU (1) | RU2141729C1 (ru) |
| SI (1) | SI20349A (ru) |
| SK (1) | SK286323B6 (ru) |
| UA (1) | UA49102C2 (ru) |
| WO (1) | WO1999036942A1 (ru) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2211541C2 (ru) * | 2001-11-08 | 2003-08-27 | Государственное унитарное предприятие Специализированный центр программных систем "Спектр" | Способ криптографического преобразования блоков цифровых данных |
| RU2239290C2 (ru) * | 2001-12-24 | 2004-10-27 | Воронежский государственный университет | Способ поточного шифрования данных |
| RU2239955C1 (ru) * | 2003-05-05 | 2004-11-10 | Молдовян Николай Андреевич | Криптографический преобразователь двоичных данных |
| RU2241314C2 (ru) * | 2002-10-14 | 2004-11-27 | Государственное унитарное предприятие Специализированный центр программных систем "Спектр" | Управляемый операционный блок |
| RU2284666C1 (ru) * | 2005-06-21 | 2006-09-27 | Федеральное государственное унитарное предприятие "Воронежский научно-исследовательский институт связи" | Способ передачи и приема дискретной информации с псевдослучайными сигналами |
| RU2734829C1 (ru) * | 2020-03-03 | 2020-10-23 | Российская Федерация, от имени которой выступает Государственная корпорация по атомной энергии "Росатом" (Госкорпорация "Росатом") | Способ криптографического преобразования данных |
| RU2837327C1 (ru) * | 2024-05-06 | 2025-03-28 | Общество с ограниченной ответственностью "Научно- Производственная компания "РВТС" | Способ криптографической защиты данных, передаваемых по открытому каналу связи |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100403820B1 (ko) * | 2001-07-03 | 2003-10-30 | 삼성에스디에스 주식회사 | 암호화 처리장치 그 방법 |
| KR100446336B1 (ko) * | 2003-05-20 | 2004-09-01 | 엔에이치엔(주) | 데이터 암호화 방법 및 장치 |
| EP2487827A3 (en) * | 2004-08-12 | 2013-03-27 | Cmla, Llc. | Permutation data transform to enhance security |
| US7577250B2 (en) | 2004-08-12 | 2009-08-18 | Cmla, Llc | Key derivation functions to enhance security |
| US8077861B2 (en) | 2004-08-12 | 2011-12-13 | Cmla, Llc | Permutation data transform to enhance security |
| US20070061835A1 (en) * | 2005-08-05 | 2007-03-15 | Realnetworks, Inc. | System and method for registering users and devices |
| CN104091129B (zh) * | 2014-06-26 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4275265A (en) * | 1978-10-02 | 1981-06-23 | Wisconsin Alumni Research Foundation | Complete substitution permutation enciphering and deciphering circuit |
| WO1988001119A1 (en) * | 1986-08-08 | 1988-02-11 | British Broadcasting Corporation | Data encipherment |
| WO1993011619A1 (en) * | 1991-12-04 | 1993-06-10 | Enco-Tone, Ltd. | Method and apparatus for data encryption and transmission |
| EP0676876A1 (en) * | 1994-04-05 | 1995-10-11 | International Business Machines Corporation | Encryption method and system |
| RU2097931C1 (ru) * | 1995-01-12 | 1997-11-27 | Борис Владимирович Березин | Способ шифрования двоичной информации и устройство для его осуществления |
| RU2099890C1 (ru) * | 1994-04-19 | 1997-12-20 | Борис Владимирович Березин | Способ шифрования двоичной информации и устройство для осуществления способа - "албер" |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2582174B1 (fr) * | 1985-05-15 | 1990-03-09 | Thomson Csf | Dispositif de chiffrement par substitutions-permutations |
| US5001754A (en) * | 1990-02-01 | 1991-03-19 | The Trustees Of Princeton University | Encryption system and method |
| US5696823A (en) * | 1995-03-31 | 1997-12-09 | Lucent Technologies Inc. | High-bandwidth encryption system with low-bandwidth cryptographic modules |
| KR970005596A (ko) * | 1995-07-13 | 1997-02-19 | 전중호 | 합성수지 필름의 고주파융착방법 |
| SE506619C2 (sv) * | 1995-09-27 | 1998-01-19 | Ericsson Telefon Ab L M | Metod för kryptering av information |
| KR980007156A (ko) * | 1997-12-09 | 1998-03-30 | 임종인 | 비밀키 블록 암호화 및 복호화 방법 |
| KR101937887B1 (ko) * | 2016-12-09 | 2019-01-14 | 한국생산기술연구원 | 아이소소바이드 유도체 화합물을 포함하는 치과용 충전재 조성물 |
-
1998
- 1998-01-19 RU RU98100685A patent/RU2141729C1/ru not_active IP Right Cessation
- 1998-06-19 EP EP98935436A patent/EP1087425B1/en not_active Expired - Lifetime
- 1998-06-19 JP JP2000540561A patent/JP2002510058A/ja active Pending
- 1998-06-19 WO PCT/RU1998/000182 patent/WO1999036942A1/ru not_active Ceased
- 1998-06-19 ES ES98935436T patent/ES2287978T3/es not_active Expired - Lifetime
- 1998-06-19 PL PL98342036A patent/PL342036A1/xx not_active Application Discontinuation
- 1998-06-19 UA UA2000084934A patent/UA49102C2/ru unknown
- 1998-06-19 KR KR10-2000-7007667A patent/KR100411684B1/ko not_active Expired - Fee Related
- 1998-06-19 CZ CZ20002653A patent/CZ296186B6/cs not_active IP Right Cessation
- 1998-06-19 DE DE69837449T patent/DE69837449D1/de not_active Expired - Lifetime
- 1998-06-19 SK SK1038-2000A patent/SK286323B6/sk not_active IP Right Cessation
- 1998-06-19 SI SI9820084A patent/SI20349A/sl not_active IP Right Cessation
- 1998-06-19 AT AT98935436T patent/ATE358369T1/de not_active IP Right Cessation
- 1998-06-19 CN CNB988131781A patent/CN100393026C/zh not_active Expired - Fee Related
-
2004
- 2004-12-03 US US11/002,972 patent/US20050169471A1/en not_active Abandoned
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4275265A (en) * | 1978-10-02 | 1981-06-23 | Wisconsin Alumni Research Foundation | Complete substitution permutation enciphering and deciphering circuit |
| WO1988001119A1 (en) * | 1986-08-08 | 1988-02-11 | British Broadcasting Corporation | Data encipherment |
| WO1993011619A1 (en) * | 1991-12-04 | 1993-06-10 | Enco-Tone, Ltd. | Method and apparatus for data encryption and transmission |
| EP0676876A1 (en) * | 1994-04-05 | 1995-10-11 | International Business Machines Corporation | Encryption method and system |
| RU2099890C1 (ru) * | 1994-04-19 | 1997-12-20 | Борис Владимирович Березин | Способ шифрования двоичной информации и устройство для осуществления способа - "албер" |
| RU2097931C1 (ru) * | 1995-01-12 | 1997-11-27 | Борис Владимирович Березин | Способ шифрования двоичной информации и устройство для его осуществления |
Non-Patent Citations (1)
| Title |
|---|
| R.RIVEST, THE RC5 ENCRYPTION ALGORITHM FAST SOFTWARE ENCRYPTION, SECOND INTERNATIONAL WORKSHOP PROCEEDINGS (LEUVEN, BELGIUM, DECEMBER 14-16, 1994), LECTURE NOTES IN COMPUTER SCIENCE, V.1008, SPRINGER-VERLAG, 1995 p.p.86-96. * |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2211541C2 (ru) * | 2001-11-08 | 2003-08-27 | Государственное унитарное предприятие Специализированный центр программных систем "Спектр" | Способ криптографического преобразования блоков цифровых данных |
| RU2239290C2 (ru) * | 2001-12-24 | 2004-10-27 | Воронежский государственный университет | Способ поточного шифрования данных |
| RU2241314C2 (ru) * | 2002-10-14 | 2004-11-27 | Государственное унитарное предприятие Специализированный центр программных систем "Спектр" | Управляемый операционный блок |
| RU2239955C1 (ru) * | 2003-05-05 | 2004-11-10 | Молдовян Николай Андреевич | Криптографический преобразователь двоичных данных |
| RU2284666C1 (ru) * | 2005-06-21 | 2006-09-27 | Федеральное государственное унитарное предприятие "Воронежский научно-исследовательский институт связи" | Способ передачи и приема дискретной информации с псевдослучайными сигналами |
| RU2734829C1 (ru) * | 2020-03-03 | 2020-10-23 | Российская Федерация, от имени которой выступает Государственная корпорация по атомной энергии "Росатом" (Госкорпорация "Росатом") | Способ криптографического преобразования данных |
| RU2837327C1 (ru) * | 2024-05-06 | 2025-03-28 | Общество с ограниченной ответственностью "Научно- Производственная компания "РВТС" | Способ криптографической защиты данных, передаваемых по открытому каналу связи |
Also Published As
| Publication number | Publication date |
|---|---|
| WO1999036942A1 (en) | 1999-07-22 |
| SI20349A (sl) | 2001-02-28 |
| US20050169471A1 (en) | 2005-08-04 |
| SK286323B6 (en) | 2008-07-07 |
| CZ296186B6 (cs) | 2006-01-11 |
| PL342036A1 (en) | 2001-05-21 |
| CZ20002653A3 (cs) | 2001-03-14 |
| KR20010034058A (ko) | 2001-04-25 |
| DE69837449D1 (de) | 2007-05-10 |
| EP1087425B1 (en) | 2007-03-28 |
| EP1087425A1 (en) | 2001-03-28 |
| KR100411684B1 (ko) | 2003-12-18 |
| SK10382000A3 (sk) | 2001-09-11 |
| ATE358369T1 (de) | 2007-04-15 |
| JP2002510058A (ja) | 2002-04-02 |
| UA49102C2 (ru) | 2002-09-16 |
| CN1286855A (zh) | 2001-03-07 |
| CN100393026C (zh) | 2008-06-04 |
| ES2287978T3 (es) | 2007-12-16 |
| EP1087425A4 (en) | 2004-08-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| AU729638B2 (en) | A non-deterministic public key encryption system | |
| KR100296958B1 (ko) | 블록 데이터 암호화 장치 | |
| EP0839418B1 (en) | Cryptographic method and apparatus for non-linearly merging a data block and a key | |
| US5623549A (en) | Cipher mechanisms with fencing and balanced block mixing | |
| Jaffe | A first-order DPA attack against AES in counter mode with unknown initial counter | |
| JP2002366029A (ja) | Dpaに対して安全な暗号化 | |
| RU2124814C1 (ru) | Способ шифрования блоков цифровых данных | |
| RU2141729C1 (ru) | Способ криптографического преобразования блоков двоичных данных | |
| RU2103829C1 (ru) | Способ шифрования информации, представленной двоичным кодом | |
| RU2459275C1 (ru) | Способ блочного шифрования сообщения м, представленного в двоичном виде | |
| RU2140714C1 (ru) | Способ итеративного шифрования блоков данных | |
| EP1059760A1 (en) | Method for the block-encryption of discrete data | |
| RU2188513C2 (ru) | Способ криптографического преобразования l-битовых входных блоков цифровых данных в l-битовые выходные блоки | |
| RU2140713C1 (ru) | Способ блочного криптографического преобразования двоичной информации | |
| JP2002217898A (ja) | 擬似乱数生成システム | |
| RU2140709C1 (ru) | Способ криптографического преобразования блоков цифровых данных | |
| Ledda et al. | Enhancing IDEA algorithm using circular shift and middle square method | |
| RU2186467C2 (ru) | Способ блочного итеративного шифрования | |
| JP2024053189A (ja) | 暗号処理装置、暗号処理装置の暗号処理方法およびプログラム | |
| RU2206961C2 (ru) | Способ итеративного блочного шифрования двоичных данных | |
| RU2140716C1 (ru) | Способ криптографического преобразования блоков цифровых данных | |
| JPH1124559A (ja) | 暗号装置 | |
| RU2140712C1 (ru) | Способ блочного шифрования двоичной информации | |
| RU2199826C2 (ru) | Способ итеративного шифрования блоков цифровых данных | |
| RU2184423C2 (ru) | Способ блочного итеративного шифрования цифровых данных |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20060120 |