RU2266622C1 - Способ блочного шифрования информации - Google Patents
Способ блочного шифрования информации Download PDFInfo
- Publication number
- RU2266622C1 RU2266622C1 RU2004108916/09A RU2004108916A RU2266622C1 RU 2266622 C1 RU2266622 C1 RU 2266622C1 RU 2004108916/09 A RU2004108916/09 A RU 2004108916/09A RU 2004108916 A RU2004108916 A RU 2004108916A RU 2266622 C1 RU2266622 C1 RU 2266622C1
- Authority
- RU
- Russia
- Prior art keywords
- values
- bytes
- encryption
- byte
- transformation
- Prior art date
Links
Landscapes
- Storage Device Security (AREA)
Abstract
Изобретение относится к криптографии и средствам защиты информации. Техническим результатом является обеспечение высокой скорости обработки информации и обеспечение после шифрования квазислучайной последовательности сигналов, независимо от статистики отдельных букв в исходном тексте. Технический результат достигается тем что, способ шифрования и дешифрования информации включает использование блочных взаимообратных однозначных двухпараметрических шифрующего и дешифрующего преобразований на основе таблиц со случайным заполнением размером N строк каждая с участием последовательности гаммы от независимого от информации датчика случайных чисел, причем для блока шифрования длиной α байт вырабатывают последовательность гаммы длиной α байт, изменяющейся для каждого блока, при этом каждый байт преобразуют с помощью двухпараметрического преобразования байт vi=F(ui,ξi) с участием квазислучайных значений последовательность гаммы ξi длиной 1 байт, затем выполняется в два этапа операция формирования блока шифрования путем объединения байт, причем шифрующее преобразование объединения байт первой ступени с номерами i, имеющими значения от 1 до α, выполняют суммированием определенных исходных ui и преобразованных значений vi байт: ai=vi+vi+1+ui для i=1,..., (α-1), aα=vα+u1+u2+...+uα, шифрующее преобразование объединения байт второй ступени ai с номерами i, имеющими значения от 1 до α, выполняют в виде рекуррентных операций F следующим образом: χi=F(ai, ai+1) для i=1,..., (α-1), χα=aα, дешифрующие преобразование байт выполняют в обратной последовательности, сначала выполняют дешифрующее преобразование второй ступени для значений каждого принятого байта χ'i с номером i, имеющим значения от 1 до α, в виде рекуррентных операций F-1 следующим образом: а'α=χ'α; a'I=F-1(χ'i,a'i+1) для i=α-1, α-2,..., 1, затем выполняют дешифрующее преобразование первой ступени для значений каждого байта ai с номером i, имеющим значения от 1 до α в виде рекуррентных операций F-1 следующим образом:
Description
Изобретение относится к криптографии и средствам защиты информации от несанкционированного ознакомления, изменения содержания (модификации) при хранении и передаче информации и может применяться при построении программных, аппаратных и программно-аппаратных средств криптографической защиты информации от ознакомления и контроля и восстановления целостности информации.
Известны способы шифрования информации, основанные на использовании криптографического преобразования информации с помощью случайных таблиц замены. Первый из известных способов такого шифрования, называемый полибианский квадрат, предполагает использование таблицы, в которой случайным образом записаны значения букв используемого алфавита. Значение шифруемой буквы используется как адрес, по которому считывается из таблицы записанная там буква, которая является результатом криптографического преобразования. С позиций современной криптографии, такое преобразование не изменяет вероятности появления отдельных букв в шифруемом тексте, а лишь меняет соотношение вероятностей отдельных букв в криптограмме. Если буква «а», в соответствии с таблицей замены, переходит а букву «т», то вероятность появления в исходном тексте буквы «а» будет равна вероятности появления в криптограмме буквы «т». Известно, что анализ статистики отдельных букв в тексте криптограммы дает возможность для дешифрования теста противником. Подобные таблицы замены, как одно параметрическая операция криптографического преобразования используется в различных криптографических алгоритмах, в том числе в отечественном стандарте шифрования ГОСТ 28147-89, в качестве одной из операций усложнения преобразования.
Известен способ криптографического блочного преобразования, реализованный в стандарте США AES (Advanced Encryption Standart), предназначенный для защиты информации от ознакомления, контроля целостности и подлинности.
Известны математические принципы построения абсолютно стойких шифров, сформулированные К.Шенноном. В соответствии с этими принципами абсолютно секретным может быть только шифр, обеспечивающий на выходе шифратора последовательность, близкую по своим статистическим свойствам к случайной равновероятной последовательности, вне зависимости от статистики появления отдельных букв в исходной шифруемой последовательности.
В соответствии с изобретением в способе шифрующего преобразования предполагается строить шифрование как двухпараметрическую операцию, где результат шифрующего преобразования зависит как от значения исходного шифруемой комбинации ui длиной L бит (в простейшем случае это буква или байт, в более общем - это q-ичный символ или блок, содержащий несколько байт) и квазислучайного параметра преобразования ξi длиной не менее L бит - F(ui,ξi). Знак i указывает на принадлежнось этих операндов, участвующих в преобразовании, к определенному интервалу времени. Для каждого очередного значения шифруемой комбинации ui вырабатывается новое значение ξi.
Для построения блочного шифра, сочетающего быструю реализацию с большой длиной блока L, величину которой можно было бы делать произвольной, процедуры шифрования и дешифрования выполняют как шифрование букв (байт) и операции объединения байт. Причем объединение байт выполняется в два этапа, целями которых является усложнение преобразования и «размножение» искажения любого двоичного символа блока на весь блок, то есть превращение значения блока после дешифрования в равновероятную последовательность на длине блока L. Операции объединения байт при шифровании и дешифровании позволяют применять их при любом числе α букв (байт) в блоке шифрования, например от α=2 (L=16 для применения в качестве q-ичного символа для стохастических q-ичных кодов) до α=32 (L=256 для применения в процедурах хэширования для выработки и проверки электронной цифровой подписи (ЭЦП)).
Для реализации преобразования байт и одной из операций объединения байт способа строятся кодовые таблицы Тк (i), каждая объемом 2l, где l - длина шифруемой за один такт последовательности (блока), а величина 2l=N - определяет размер алфавита обрабатываемых знаков. При длине блока α байт используется до 2α-1 таблица Тк, из которых α таблиц используется для преобразования байт и α-1 таблица - для второй операции объединения байт при шифровании.
В каждую таблицу Тк(i) до начала шифрования записывают без повторения случайным образом все возможные значения обрабатываемых в процессе шифрования знаков длиной l бит. Процесс заполнения может осуществляться одним из двух способов. В соответствии с первым в таблицу заносятся последовательно в порядке возрастания числа с 0 до 2l-1. Затем производится случайная перестановка записанных в таблицу значений без введения новых или исключения имеющихся значений букв. Число таких возможных перестановок равно (2l)!. Например, при l=8 число перестановок (28)! превышает 10300. Такая математическая интерпретация формирования таблицы Тк дает представление о числе вариантов заполнения таблицы, но не дает конкретного варианта реализации заполнения. Практически заполнения осуществляют с помощью следующих операций. Предварительное заполнение таблицы Тк выполняют с помощью датчика случайных чисел (ДСЧ) в следующем порядке, первое значение полученного от ДСЧ знака записывают в первую строку таблицы Тк с номером 0, полученное от ДСЧ второе значение знака сравнивают с ранее записанным первым знаком, при их несовпадении второе значение записывают во вторую ячейку таблицы с номером 1, в противном случае значение второго знака, полученного от ДСЧ, отбрасывается, вырабатывается третье значение знака, сравниваемое затем с записанным в таблице значением, для заполнения очередной строки таблицы Тк с номером i (i имеет значение от 1 до 2l-1) получают очередное значение знака от ДСЧ, сравнивают полученное значение с каждым из i-1 значением записанных в таблицу знаков, в случае несовпадения ни с одним из знаков этот знак записывается в строку с номером i, при совпадении с одним из ранее записанным в таблицу знаков полученное от ДСЧ значение отбрасывается и процесс заполнения таблицы повторяется до полного ее заполнения.
В шифровании очередного знака исходного текста ui, производимого с помощью двухпараметрической операции F(ui,ξi), участвует значение комбинации гаммы ξi, полученное от независимого от шифруемого сообщения источника гаммы, выполняющего роль датчика случайных чисел (ДСЧ). Полученное с помощью операции F(ui,ξi) значение зашифрованного знака vi в соответствии с изобретением получают следующим образом: находят таблице Тк значение исходного знака ui, причем в этой таблице любое возможное значение исходного знака присутствует обязательно в единственной строке таблицы, в результате этой операции получают адрес исходной комбинации в кодовой таблице А(ui). Затем отступают по строкам таблицы Тк на ξi строк "вниз", считая комбинацию ξi двоичным числом. Из строки таблицы Тк, отстоящей от строки с номером А(ui) на ξi строк "вниз", считывается результат преобразования vi. Операцию смещения «вниз» по таблице можно выразить через операцию с адресами, то есть адрес результата преобразования равен
A(vi)=A(ui)+ξi mod N, где N - размер таблицы.
Дешифрование выполняется с помощью обратной относительно шифрования операцией. Эта операция состоит в поиске в кодовой таблице Тк подлежащей дешифрованию комбинации vi смещению по таблице «вверх» на число строк, определяемое комбинацией гаммы дешифрования ξi. To есть дешифрование выполняется с помощью вычисления адреса результата:
A(ui)=A(vi)-ξi mod N, где N - размер таблицы.
Для упрощения поиска строки в таблице Тк адреса исходной комбинации строится дополнительная таблица адресов Та на основании заполненной кодовой таблицы. Если в первой строке таблицы Тк с номером 0 записана комбинация g, то в строке таблицы Та с адресом g записано значение 0, если во второй строке таблицы Тк с адресом 1 хранится комбинация t, то в строке t таблицы Та хранится значение 1 и т.д. Тогда поиск исходной комбинации ui при шифровании и vi при дешифровании сводится к считыванию из таблицы Та значений комбинаций соответственно из строк с номерами ui и vi таблицы Та.
Зашифрованные с помощью операции vi=F(ui,ξi) каждого i-го из α байт с использованием для каждого байта собственной таблицы Тк(i), число которых α, подвергаются операции шифрующего преобразования объединения байт первой ступени с номерами i, имеющими значения от 1 до α. Для этого выполняют суммирование определенных исходных ui и преобразованных значений vi:
ai=vi+vi+1+ui для i=1,..., (α-1),
аα=vα+u1+u2+...+uα
Для полученных после операции объединения байт первой ступени аi выполняют шифрующее преобразование объединения байт второй ступени. Для этого для значений аi с номером i, имеющим значения от 1 до α, выполняют рекуррентные операции
χi=F(ai,ai+1) для i=1,..., (α-1),
χα=aα.
Каждое их (α-1) преобразований χi=Р(аi,ai+1) выполняется с использованием собственной таблицы Тк(i).
Дешифрование принятого по каналу связи (или считанного из памяти компьютера) блока, состоящего из α символов (байт) χ'i, где i=1,..., α, выполняются в обратном порядке операции над байтами.
Дешифрующее преобразование второй ступени выполняют для значений каждого байта χ'i, с номером i, имеющем значения от 1 до α, в виде рекуррентных операций
a'α=χ'α;
a'i=F-1(χ'i,a'i+1) для i=α-1, a-2,..., 1
Дешифрующее преобразование первой ступени выполняют для значений каждого байта аi с номером i, имеющим значения от 1 до α в виде рекуррентных операций
Для α=4 (преобразование 4 байт) это дешифрующее преобразование, с учетом обозначения операции обратного преобразования байт F-1(∑i,ξi) как операции деления, имеет вид:
Предложенный и описанный выше способ шифрования может рассматриваться как блочный шифр с длиной блока L=lα, имеющий пространство ключей размером Vk=Vξ+Vt, где Vξ - размер ключа, используемого при преобразовании знаков (байт), равный длине блока L=lα, a Vt - длина ключа, применяемого при заполнении случайных таблиц замены, равная в битах величине Vt=l(2α-1)2l.
Способ может применяться как блочный шифр, то есть при постоянных значениях ключа для каждого из последовательности шифруемых боков исходной информации, а также как блочно-поточный шифр, когда для очередного (i+1)-го блока изменяется значение ключа, используемого при шифровании знаков (байт), то есть последовательность значений ξi длиной L=lα от независимого от шифруемой информации ДСЧ.
Способ может применяться для решения следующих задач:
- шифрования для обеспечения криптографической защиты от ознакомления и НСД;
- для контроля и восстановления целостности информации с помощью помехоустойчивого стохастического кодирования с обнаружением и исправлением естественных и преднамеренных искажений информации, когда операции шифрования выполняют роль стохастического преобразования q-ичных символов (n,k,q)-кода; в этом режиме способ может применяться только как блочно-поточный шифр со сменой ключа для каждого очередного q-ичного символа;
- для выполнения операции хэширования при формировании и проверки электронно-цифровой подписи (ЭЦП).
Описанный способ обладает следующими преимуществами:
- высокая скорость обработки информации;
- обеспечение после шифрования квазислучайной последовательности сигналов, независимо от статистики отдельных букв в исходном тексте;
- сложное нелинейное преобразование, не имеющее никакого другого формального описания, кроме описания заполнения кодовой таблицы Тк;
- возможность рассматривать начальное заполнение таблиц как ключ шифрования, кроме начального заполнения ДСЧ, вырабатывающего поток гаммы.
Источники информации
1. ГОСТ 28147-89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования. - М.: ГК СССР по стандартам, 1989.
2. Романец Ю.В., Тимофеев П.А., Шаньгин В.Ф. Защита информации в компьютерных системах и сетях. - М.: Радио и связь, 1999.
3. Зенин О.С., Иванов М.А. Стандарт криптографической защиты - AES. Конечные поля. - М.: КУДИЦ-ОБРАЗ, 2002.
4. Зима В.М., Молдовян А.А., Молдовян Н.А. Безопасность глобальных сетевых технологий. - СПб.; БХВ-Петербург, 2001.
5. Московский университет и развитие криптографии в России. Материалы конференции в МГУ 17-18 2002 г. - М.: МЦНМО, 2003. - 287 с.
Claims (4)
1. Способ шифрования и дешифрования информации, характеризуемый использованием блочных взаимообратных однозначных двухпараметрических шифрующего и дешифрующего преобразований на основе таблиц со случайным заполнением размером N строк каждая с участием последовательности гаммы от независимого от информации датчика случайных чисел, причем для блока шифрования длиной α байт вырабатывают последовательность гаммы длиной α байт, изменяющейся для каждого блока, при этом каждый байт преобразуют с помощью двухпараметрического преобразования байт vi=F(ui,ξi) с участием квазислучайных значений последовательность гаммы ξi длиной 1 байт, затем выполняется в два этапа операция формирования блока шифрования путем объединения байт, причем шифрующее преобразование объединения байт первой ступени с номерами i, имеющими значения от 1 до α, выполняют суммированием определенных исходных ui и преобразованных значений vi байт:
ai=vi+vi+1+ui для i=1,..., (α-1);
aα=vα+u1+u2+...+uα,
шифрующее преобразование объединения байт второй ступени ai с номерами i, имеющими значения от 1 до α, выполняют в виде рекуррентных операций F следующим образом:
χi=F(ai,ai+1) для i=1,..., (α-1);
χα=аα,
дешифрующее преобразование байт выполняют в обратной последовательности, причем сначала выполняют дешифрующее преобразование второй ступени для значений каждого принятого байта χ'i с номером i, имеющим значения от 1 до α, в виде рекуррентных операций F-1 следующим образом:
a'α=χ'α;
a'I=F-1 (χ'i, a'i+1) для i=α-1, α-2,..., 1,
затем выполняют дешифрующее преобразование первой ступени для значений каждого байта ai с номером i, имеющим значения от 1 до α, в виде рекуррентных операций F1 следующим образом:
2. Способ по п.1, отличающийся тем, что шифрующее преобразование vi=F(ui,ξi) каждого из α байт производят с помощью своей таблицы со случайным однозначным заполнением, при числе таблиц α, путем поиска в таблице исходного значения ui и считывания результата преобразования vi, отстоящего на ξi строк "вниз" по модулю размера таблицы N.
3. Способ по п.1, отличающийся тем, что дешифрующее преобразование ui=F-1(vi,ξi) каждого из α байт производят с помощью своей таблицы со случайным однозначным заполнением, при числе таблиц α, путем поиска в таблице исходного значения vi и считывания результата преобразования ui, отстоящего на ξi строк "вверх" по модулю размера таблицы N.
4. Способ по п.1, отличающийся тем, что для повышения стойкости шифрования операции шифрования и дешифрования блока может повторяться М раундов.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2004108916/09A RU2266622C1 (ru) | 2004-03-29 | 2004-03-29 | Способ блочного шифрования информации |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2004108916/09A RU2266622C1 (ru) | 2004-03-29 | 2004-03-29 | Способ блочного шифрования информации |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2003100489/09A Substitution RU2003100489A (ru) | 2003-01-13 | Способ блочного шифрования информации |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2004108916A RU2004108916A (ru) | 2005-09-27 |
RU2266622C1 true RU2266622C1 (ru) | 2005-12-20 |
Family
ID=35849764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2004108916/09A RU2266622C1 (ru) | 2004-03-29 | 2004-03-29 | Способ блочного шифрования информации |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2266622C1 (ru) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009028982A1 (fr) | 2007-08-30 | 2009-03-05 | Osmolovsky Stanislav Antonovic | Dispositif de transmission et de protection intégrée d'informations |
RU2498416C1 (ru) * | 2012-05-15 | 2013-11-10 | Закрытое акционерное общество "Современные беспроводные технологии" | Устройство шифрования данных по стандарту гост 28147-89 |
RU2675435C1 (ru) * | 2016-02-25 | 2018-12-20 | Федеральное государственное казенное военное образовательное учреждение высшего образования "Военный учебно-научный центр Военно-Морского Флота "Военно-морская академия имени Адмирала флота Советского Союза Н.Г. Кузнецова" | Устройство аппаратурного шифрования и передачи данных в локальных сетях |
RU2737917C1 (ru) * | 2016-12-27 | 2020-12-04 | Хелдер Сильвестре Паива ФИГУЕИРА | Повышение неоднозначности |
-
2004
- 2004-03-29 RU RU2004108916/09A patent/RU2266622C1/ru not_active IP Right Cessation
Non-Patent Citations (1)
Title |
---|
Стандарт СССР ГОСТ 28147-89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования, Москва, ГК СССР по стандартам 1989 г. * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009028982A1 (fr) | 2007-08-30 | 2009-03-05 | Osmolovsky Stanislav Antonovic | Dispositif de transmission et de protection intégrée d'informations |
RU2498416C1 (ru) * | 2012-05-15 | 2013-11-10 | Закрытое акционерное общество "Современные беспроводные технологии" | Устройство шифрования данных по стандарту гост 28147-89 |
RU2675435C1 (ru) * | 2016-02-25 | 2018-12-20 | Федеральное государственное казенное военное образовательное учреждение высшего образования "Военный учебно-научный центр Военно-Морского Флота "Военно-морская академия имени Адмирала флота Советского Союза Н.Г. Кузнецова" | Устройство аппаратурного шифрования и передачи данных в локальных сетях |
RU2737917C1 (ru) * | 2016-12-27 | 2020-12-04 | Хелдер Сильвестре Паива ФИГУЕИРА | Повышение неоднозначности |
Also Published As
Publication number | Publication date |
---|---|
RU2004108916A (ru) | 2005-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1834438B1 (en) | Cryptography related to keys | |
US20020172359A1 (en) | Method and apparatus for improved pseudo-random number generation | |
KR100994841B1 (ko) | 다중키를 이용한 스트림 암호 생성 방법 및 기록 매체 | |
JP2002314534A (ja) | 非決定論的ミクスチャー発生器ストリーム暗号化システム | |
AU2005200388A1 (en) | Stream cipher design with revolving buffers | |
US20180054301A1 (en) | Method and device for data encryption | |
Dey et al. | An advanced combined symmetric key cryptographic method using bit manipulation, bit reversal, modified caesar cipher (SD-REE), DJSA method, TTJSA method: SJA-I Algorithm | |
US20140112469A1 (en) | Novel encryption processes based upon irrational numbers and devices to accomplish the same | |
JP2008513811A (ja) | 計算変換の方法及びシステム | |
RU2266622C1 (ru) | Способ блочного шифрования информации | |
CN115987490A (zh) | 一种适用于arx结构的轻量级分组密码算法白盒化构造方法 | |
RU2254685C2 (ru) | Способ шифрующего преобразования информации | |
Kadry et al. | An improvement of RC4 cipher using vigenère cipher | |
Narayanaswamy et al. | HIDE: Hybrid symmetric key algorithm for integrity check, dynamic key generation and encryption | |
Ramakrishnan et al. | Wireless security protocol using a low cost pseudo random number generator | |
Aryan et al. | Cloud Cryptography: A Cutting-Edge Method to Protect Your Cloud | |
Vavrenyuk et al. | Synchronous stream encryption using an additional channel to set the key | |
Sonawane et al. | Synthesis and simulation of FPGA based hardware design of RC4 stream cipher | |
Sharp | Cryptography | |
Lakshmi et al. | A cryptographic scheme of finite fields using logical operators | |
AU750408B2 (en) | A method of combining a serial keystream output with binary information | |
Weatherley | Additional Modes for LWC Finalists Technical Report, Version 1.0 | |
RU2542880C1 (ru) | Способ шифрования блока двоичных данных | |
Wahba | Memristive Coupled Neural Network Based Audio Signal Encryption | |
Berlin et al. | An Approach to Achieve Modern Cryptographic Encryption System for Preserving Secrets using Number System Generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20140330 |