RU2239290C2 - Data stream encryption method - Google Patents

Data stream encryption method Download PDF

Info

Publication number
RU2239290C2
RU2239290C2 RU2001135708/09A RU2001135708A RU2239290C2 RU 2239290 C2 RU2239290 C2 RU 2239290C2 RU 2001135708/09 A RU2001135708/09 A RU 2001135708/09A RU 2001135708 A RU2001135708 A RU 2001135708A RU 2239290 C2 RU2239290 C2 RU 2239290C2
Authority
RU
Russia
Prior art keywords
characters
shift register
pseudo
binary
bits
Prior art date
Application number
RU2001135708/09A
Other languages
Russian (ru)
Other versions
RU2001135708A (en
Inventor
Б.Н. Воронков (RU)
Б.Н. Воронков
В.И. Тупота (RU)
В.И. Тупота
А.В. Тупота (RU)
А.В. Тупота
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 RU2001135708/09A priority Critical patent/RU2239290C2/en
Publication of RU2001135708A publication Critical patent/RU2001135708A/en
Application granted granted Critical
Publication of RU2239290C2 publication Critical patent/RU2239290C2/en

Links

Images

Abstract

FIELD: electrical communications and computer engineering; cryptographic conversion.
SUBSTANCE: proposed method includes generation of encryption key in the form of binary vector; delivery of the latter for initial filling of feedback shift register shaping pseudorandom sequence of binary characters; conversion of data stream into encrypted message, and its transfer over communication line; novelty is that pseudorandom sequence of binary characters is shaped as pseudorandom sequence postamble Fp with characteristic of p = 257 in the form of eight-bit vectors by reading information off eight different places of shift register whose numbers are found by value of encryption key being entered, while skipping time steps of shift register where at least one of generated pseudorandom sequence characters of postamble Fp includes character "0"; data stream is converted into encrypted message by dividing source data stream into blocks in the form of eight-bit binary vectors, and blocks are alternately converted into binary vector using pseudorandom sequence characters of postamble Fp in compliance with chosen linear or nonlinear cryptographic conversions including character addition, multiplication, and exponentiation in preamble Fp.
EFFECT: enhanced attack stability of logical number based on known and selected source texts.
1 cl, 2 dwg

Description

Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области способов и устройств криптографического преобразования данных.The invention relates to the field of telecommunications and computing, and more particularly to the field of methods and devices for cryptographic data conversion.

В совокупности признаков заявляемого способа, используются следующие термины:In the aggregate of the features of the proposed method, the following terms are used:

секретный ключ (или пароль) представляет из себя комбинацию битов, известную только законному пользователю;the secret key (or password) is a combination of bits known only to a legitimate user;

ключ шифрования - дешифрования (шифрключ) представляет из себя комбинацию битов, используемых при шифровании информационных сигналов; шифрключ является сменным элементом шифра и используется для преобразования данного сообщения или данной совокупности сообщений; шифрключ является известным только законному пользователю или может быть выработан по детерминированным процедурам по паролю;encryption key - decryption (cipher key) is a combination of bits used in encrypting information signals; the cipher key is a removable cipher element and is used to convert a given message or a given set of messages; the cipher key is known only to the legitimate user or can be generated by deterministic password procedures;

шифр представляет собой совокупность элементарных шагов преобразования входных данных с использованием шифрключа; шифр может быть реализован в виде программы для ЭВМ или в виде отдельного устройства;a cipher is a set of elementary steps for converting input data using a cipher key; the cipher can be implemented as a computer program or as a separate device;

шифрование есть процесс криптографического преобразования данных с использованием шифрключа, переводящий данные в криптограмму, представляющую собой псевдослучайную последовательность знаков, из которой получение информации без знания ключа, практически невыполнимо;encryption is the process of cryptographic data conversion using a cryptographic key, translating data into a cryptogram, which is a pseudorandom sequence of characters from which obtaining information without knowing the key is practically impossible;

дешифрование есть процесс, обратный процедуре шифрования; дешифрование обеспечивает восстановление информации по криптограмме при знании шифрключа;decryption is the opposite of encryption; decryption provides recovery of information from the cryptogram with knowledge of the cipher key;

двоичный вектор - это сигнал в виде последовательности нулевых и единичных символов, соответствующий представлению числа в двоичной системе исчисления.a binary vector is a signal in the form of a sequence of zero and unit characters, corresponding to the representation of a number in the binary system.

Известны способы поточного шифрования данных (см., например, Российский стандарт шифрования стандарт СССР РОСТ 28147-89 [1], Британский алгоритм B-Grypt, Стандарт США DES, Японский алгоритм шифрования данных FEAL [2] стр. 48-52, а также патент Российской Федерации на изобретение №2106752, кл. Н 04 L 9/00).Known methods for stream encryption of data (see, for example, the Russian standard encryption standard USSR ROST 28147-89 [1], the British algorithm B-Grypt, the US Standard DES, the Japanese data encryption algorithm FEAL [2] p. 48-52, as well patent of the Russian Federation for the invention No. 2106752, CL H 04 L 9/00).

В известных способах шифрование данных осуществляется путем формирования ключа шифрования, генерирования псевдослучайной последовательности двоичных символов и поблочного преобразования потока данных, включающего операции сложения символов по модулю два с операциями подстановок и перестановок символов в блоках данных.In known methods, data encryption is carried out by generating an encryption key, generating a pseudo-random sequence of binary characters and block-wise conversion of the data stream, including modulo two symbol addition operations with symbol substitution and symbol permutation operations in the data blocks.

Однако, известные способы-аналоги поточного шифрования данных имеют небольшое быстродействие, поскольку для обеспечения статистической равномерности символов шифрованного текста используется до 32 раундов перемешивания и рассеивания символов в блоках.However, the known analogue methods of stream encryption of data have a small speed, since up to 32 rounds of mixing and scattering of characters in blocks are used to ensure the statistical uniformity of the characters of the ciphertext.

Наиболее близким по своей технической сущности к заявленному способу поточного шифрования данных является способ, представленный в стандарте США DES ([1] стр. 126-127 и в [3] стр. 50-51).The closest in technical essence to the claimed method of streaming data encryption is the method presented in the US standard DES ([1] p. 126-127 and in [3] p. 50-51).

Способ-прототип включает в себя формирование ключа шифрования в виде двоичного вектора длиною n бит, подачу его для начального заполнения регистра сдвига с обратной связью, имеющего n разрядов и вырабатывающего псевдослучайную последовательность максимальной длины, содержащую 2n-1 двоичных символов, генерирование псевдослучайной последовательности символов, преобразование потока данных путем сложения по модулю два символов исходного текста с символами псевдослучайной последовательности и передачу зашифрованного сообщения по линии связи другому пользователю сети.The prototype method includes generating an encryption key in the form of a binary vector with a length of n bits, supplying it for the initial filling of a shift register with feedback, having n bits and generating a pseudo-random sequence of maximum length containing 2 n -1 binary characters, generating a pseudo-random sequence of characters , transforming the data stream by modulo adding two characters of the source text with characters of the pseudo-random sequence and transmitting the encrypted message along the line communication to another network user.

Однако способ-прототип имеет недостаток. Несмотря на то, что шифр, основанный на сложении потока псевдослучайных битов с битами исходного текста по модулю 2 является в общем случае теоретически нераспознаваемым (см. [2], стр. 128), сама криптосистема не отличается стойкостью и может быть раскрыта. Если структура регистра сдвига, имеющего n разрядов, известна, то для нахождения начального состояния регистра сдвига, надо знать n символов известного открытого текста, которые складываются по модулю 2 с соответствующими n символы шифртекста. Полученные n символов псевдослучайной последовательности определяют состояние регистра сдвига на некоторый момент времени. Моделируя работу регистра сдвига в обратном направлении, можно определить его исходное состояние, а следовательно и ключи, используемые пользователями сети при шифровании-дешифровании информации.However, the prototype method has a drawback. Despite the fact that a cipher based on the addition of a pseudo-random bit stream with source text bits modulo 2 is generally theoretically unrecognizable (see [2], p. 128), the cryptosystem itself is not durable and can be disclosed. If the structure of the shift register with n bits is known, then to find the initial state of the shift register, you need to know n characters of the known plaintext, which are added modulo 2 with the corresponding n characters of the ciphertext. The obtained n characters of the pseudo-random sequence determine the state of the shift register at some point in time. By modeling the operation of the shift register in the opposite direction, it is possible to determine its initial state, and therefore the keys used by network users in encrypting-decrypting information.

Если структура регистра сдвига, имеющего n-разрядов, является неизвестной, то достаточно 2· n символов известного открытого текста и им соответствующих 2· n символов шифрованного текста, чтобы сравнительно быстро (в течение нескольких секунд работы ЭВМ) определить состояние регистра сдвига и вычислить используемые ключи (см., например, [4] стр. 93). А это приводит не только к снижению стойкости шифра к атакам на основе известных и подобранных исходных текстов, но и к значительному усложнению процедуры формирования ключа шифрования-дешифрования в вычислительной сети, так как шифроключи могут использоваться только один раз и при очередном сеансе связи должны определяться по-новому.If the structure of a shift register having n-bits is unknown, then 2 · n characters of known plaintext and 2 · n characters of ciphertext corresponding to them are sufficient to quickly (within a few seconds of computer operation) determine the state of the shift register and calculate the keys (see, for example, [4] p. 93). And this leads not only to a decrease in the resistance of the cipher to attacks based on known and selected source texts, but also to a significant complication of the procedure for generating the encryption-decryption key in the computer network, since the cryptographic keys can be used only once and should be determined by the next communication session -new.

Изобретение направлено на повышение стойкости шифра к атакам на основе известных и подобранных исходных текстов.The invention is aimed at increasing the resistance of the cipher to attacks based on well-known and selected source texts.

Это достигается тем, что в известном способе шифрования потока данных, заключающемся в формировании ключа шифрования в виде двоичного вектора, длиною n бит, подаче его для начального заполнения регистра сдвига с обратной связью, имеющего n разрядов и вырабатывающего псевдослучайную последовательность максимальной длины, содержащего 2n-1 символов, формировании псевдослучайной последовательности символов, преобразовании потока данных с использованием псевдослучайной последовательности символов в зашифрованное сообщение и передаче его по линии связи, согласно изобретению дополнительно формируют одну или несколько псевдослучайных последовательностей, при этом все псевдослучайные последовательности формируют как псевдослучайные последовательности символов конечного поля Fp с характеристикой p=257 в виде двоичных векторов длиною 8 бит путем снятия информации с восьми различных разрядов регистра, сдвига и замене символов "0" на символы "256", разбивают поток данных на блоки в виде двоичных векторов длиною 8 бит и поочередно преобразуют блоки путем использования псевдослучайных последовательностей символов конечного поля, а также линейных или нелинейных криптографических преобразований, включающих операции сложения, умножения или возведения в степень символов в конечном поле Fp.This is achieved by the fact that in the known method of encrypting a data stream, which consists in generating an encryption key in the form of a binary vector with a length of n bits, supplying it for the initial filling of the shift register with feedback having n bits and generating a pseudorandom sequence of maximum length containing 2 n -1 characters, forming a pseudo-random sequence of characters, converting the data stream using a pseudo-random sequence of characters into an encrypted message and transmitting it through the communication line according to the invention further form one or more pseudo-random sequences, all pseudo-random sequence is formed as a pseudo-random sequence of finite field symbols F p to the characteristic of p = 257 in the form of binary vectors of length 8 bits by removing information from eight different register bits shift and replacing the characters "0" with the characters "256", divide the data stream into blocks in the form of binary vectors 8 bits long and alternately transform the blocks using pseudo random ynyh sequences of symbols of a finite field, as well as linear or nonlinear cryptographic transformations, including operations of addition, multiplication or raising a degree of symbols in the finite field F p.

Перечисленная совокупность существенных признаков исключает возможность определения ключей шифрования-дешифрования при использовании метода криптоанализа с известным открытым текстом и повышает стойкость шифра к атакам на основе известных и подобранных исходных текстов. В этом случае сформированные псевдослучайные последовательности символов в виде двоичных векторов длиною 8 бит являются псевдослучайной последовательностью символов {0, 1, 2, ..., 255} конечного поля F257, имеют тот же период N=2n-1, что и псевдослучайные последовательности двоичных чисел и обеспечивают статистическую равномерность использованных символов. При замене символов "0" на символы "256" обеспечивается формирование псевдослучайных последовательностей символов мультипликативной группы конечного поля F257 {1, 2, ..., 255}. Это позволяет формировать в поле F257 разнообразные функции для шифрования символов исходного текста α , включающие операции сложения символов по модулю р, умножение символов по модулю р, возведение символов в степень по модулю р и их различные комбинации в отличие от поля F2, в котором для шифрования одного двоичного символа исходного текста сложение по модулю два будет единственным способом построения обратимой функции шифрования.The listed set of essential features excludes the possibility of defining encryption-decryption keys when using the cryptanalysis method with known plaintext and increases the resistance of the cipher to attacks based on known and selected source texts. In this case, the generated pseudo-random sequences of characters in the form of binary vectors with a length of 8 bits are a pseudo-random sequence of characters {0, 1, 2, ..., 255} of the final field F 257 , have the same period N = 2 n -1 as the pseudo-random sequences of binary numbers and ensure the statistical uniformity of the characters used. When replacing the characters "0" with the characters "256", the formation of pseudo-random sequences of characters of the multiplicative group of the final field F 257 {1, 2, ..., 255} is ensured. This allows you to create in the field F 257 a variety of functions for encrypting the characters of the source text α, including operations of adding characters modulo p, multiplying the characters modulo p, raising characters to the power modulo p and their various combinations, unlike the field F 2 , in which to encrypt one binary character of the source text, modulo two addition will be the only way to build a reversible encryption function.

Поскольку с одного регистра сдвига может сниматься несколько псевдослучайных последовательностей символов конечного поля {x, ..., y}, каждая из которых не будет являться циклически сдвинутой относительно других псевдослучайных последовательностей, то могут быть реализованы как линейные, так и нелинейные криптографические преобразования с использованием нескольких псевдослучайных последовательностей символов конечного поля Fp для получения зашифрованных символов β конечного поля Fp Since several pseudo-random sequences of symbols of the finite field {x, ..., y} can be removed from one shift register, each of which will not be cyclically shifted relative to other pseudorandom sequences, both linear and nonlinear cryptographic transformations can be implemented using several pseudo-random sequences of symbols of the final field F p to obtain encrypted symbols β of the final field F p

α x+y≡ β (mod p), α x+y≡ β (mod p), α x· y=β (mod p), ...,.α x + y≡ β (mod p), α x + y≡ β (mod p), α x · y = β (mod p), ...,.

Поскольку символы псевдослучайных последовательностей x и y являются элементами мультипликативной группы конечного поля Fp, то могут быть вычислены обратные величиныSince the symbols of the pseudo-random sequences x and y are elements of the multiplicative group of a finite field F p , inverse quantities can be calculated

x-1≡ xp-2(mod p), y-1≡ yp-2(mod p), ...x -1 ≡ x p-2 (mod p), y -1 ≡ y p-2 (mod p), ...

и сопряженные элементыand conjugated elements

x*=p-x, y*=p-y, ...x * = p-x, y * = p-y, ...

которые позволяют реализовать криптографические преобразования для дешифрования символов шифртекстаwhich allow you to implement cryptographic transformations to decrypt ciphertext characters

(β +y*)x-1≡ α (mod p), (β +y*)x-1≡ α (mod p),(β + y *) x -1 ≡ α (mod p), (β + y *) x -1 ≡ α (mod p),

(β · y-1)x-1≡ α (mod p), ...(β · y -1 ) x -1 ≡ α (mod p), ...

Выбор в качестве характеристики конечного поля числа p=257 обусловлен тем, что для воспроизведения мультимедийных данных современные вычислительные машины используют 256 символов и ближайшим простым числом к числу 256 является 257.The choice as the characteristic of the final field of the number p = 257 is due to the fact that modern computers use 256 characters to play multimedia data and the closest prime number to the number 256 is 257.

Поскольку псевдослучайные последовательности символов конечного поля Fp снимаются с восьми разрядов регистра сдвига, то не воспроизводится один символ конечного поля Fp, так как максимальное число, представленное 8 двоичными разрядами, составляет 255, поэтому снимаемые псевдослучайные последовательности не являются псевдослучайными последовательностями максимальной длины в конечном поле Fp, а представляют нелинейные псевдослучайные последовательности. Общее число возможных псевдослучайных последовательностей символов конечного поля будет определяться числом возможных комбинаций из восьми разрядов регистра сдвига, с которых может сниматься информация, и числом перестановок в рамках одной комбинации, каждая из которых определяет порядок считывания информации и для регистра сдвига, состоящего из n=256 разрядов, число различных псевдослучайных последовательностей символов конечного поля F257 будет составлять Q=8!

Figure 00000002
в то время как для поля F2, с каких бы точек регистра сдвига не снимали бы информацию, псевдослучайная последовательность двоичных чисел будет лишь циклически сдвинутой относительно других псевдослучайных последовательностей двоичных чисел, снимаемых с других разрядов регистра сдвига.Since the pseudo-random sequences of symbols of the final field F p are removed from eight bits of the shift register, one symbol of the final field F p is not reproduced, since the maximum number represented by 8 binary digits is 255, so the pseudorandom sequences removed are not pseudorandom sequences of the maximum length in the final field F p , and represent nonlinear pseudorandom sequences. The total number of possible pseudorandom sequences of characters of the final field will be determined by the number of possible combinations of eight bits of the shift register from which information can be taken, and the number of permutations within one combination, each of which determines the reading order of the information for the shift register consisting of n = 256 bits, the number of different pseudorandom sequences of characters of the final field F 257 will be Q = 8!
Figure 00000002
while for the field F 2 , from whatever points of the shift register the information would be taken, the pseudo-random sequence of binary numbers will only be cyclically shifted relative to other pseudorandom sequences of binary numbers taken from other bits of the shift register.

Так как в криптографических преобразованиях используются две и более псевдослучайных последовательностей символов конечного поля F257, то, при наличии сколь угодно символов исходного и им соответствующих символов шифрованного текста, исключается возможность определения символов псевдослучайных последовательностей, так как для их определения число уравнений всегда будет в два раза меньше числа неизвестных. При этом обеспечивается стойкость шифра к атакам на основе известных и подобранных исходных текстов, так как вскрытие состояния регистра сдвига в этом случае может быть обеспечено только путем тотального перебора всего множества возможных состояний регистра сдвига. Поскольку стандарт США шифрования данных DES предусматривает использование регистра сдвига, имеющего 128 разрядов (длина ключа 128 бит), мощность множества возможных состояний регистра сдвига будет составлять 1038. Если вскрытие состояния регистра сдвига будет осуществляться с помощью ЭВМ, имеющей тактовую частоту 10 ГГц, то число операций, выполняемых этой ЭВМ в течение года будет составлять 3-1019, а время вскрытия составляет 1018 лет.Since cryptographic transformations use two or more pseudorandom sequences of characters of the final field F 257 , then, if there are any characters of the source and corresponding characters of the ciphertext, the possibility of determining the characters of pseudorandom sequences is excluded, since to determine them the number of equations will always be two times less than the number of unknowns. This ensures the resistance of the cipher to attacks based on known and selected source texts, since the opening of the state of the shift register in this case can be achieved only by total enumeration of the entire set of possible states of the shift register. Since the US standard for DES data encryption uses a shift register that has 128 bits (128 bit key length), the power of the many possible states of the shift register will be 10 38 . If the opening of the state of the shift register will be carried out using a computer with a clock frequency of 10 GHz, the number of operations performed by this computer during the year will be 3-10 19 , and the opening time is 10 18 years.

В соответствии с Российским стандартом ГОСТ28147-89 для регистра сдвига, имеющего 256 разрядов (длина ключа 256 бит), время вскрытия состояния регистра сдвига будет составлять 1057 лет.In accordance with the Russian standard GOST28147-89 for a shift register having 256 bits (key length 256 bits), the opening time of the state of the shift register will be 10 57 years.

Возможность технической реализации заявленного способа шифрования потока данных поясняется следующим образом. Формирование шифрключа можно осуществлять путем ввода пароля с клавиатуры или с магнитного носителя информации в генератор псевдослучайных чисел, получая на выходе шифрключ необходимого размера (см., например, [5] стр. 87-89).The possibility of technical implementation of the claimed method of encrypting a data stream is explained as follows. The encryption key can be generated by entering a password from the keyboard or from a magnetic storage medium into a pseudo-random number generator, receiving an encryption key of the required size at the output (see, for example, [5] p. 87-89).

Формирование псевдослучайной последовательности максимальной длины, содержащей 2n-1 символов, можно осуществлять путем использования линейного регистра сдвига, имеющего n разрядов, обратную связь которого определяют по виду выбранного примитивного полинома степени n. Нахождение примитивных полиномов степени n изложено в [4] на стр. 74-75.The formation of a pseudo-random sequence of maximum length containing 2 n -1 characters can be achieved by using a linear shift register with n digits, the feedback of which is determined by the form of the selected primitive polynomial of degree n. Finding primitive polynomials of degree n is described in [4] on pages 74–75.

Формирование псевдослучайных последовательностей символов конечного поля F257 в виде двоичных векторов длиною 8 бит можно осуществить путем снятия информации с восьми различных разрядов регистра сдвига, номера, которых могут определены по значению вводимого шифрключа К. Например, путем определения порождающего элементаThe formation of pseudorandom sequences of characters of the final field F 257 in the form of binary vectors 8 bits long can be accomplished by taking information from eight different bits of the shift register, numbers that can be determined by the value of the entered cipher key K. For example, by determining the generating element

L0=K(mod q), если 10<2, то 10=2,L 0 = K (mod q), if 1 0 <2, then 1 0 = 2,

и вычисления номера разряда регистра сдвига по формулеand calculating the number of the discharge register shift according to the formula

11=10, li≡ l0li-1(mod q), i=

Figure 00000003
1 1 = 1 0 , l i ≡ l 0 l i-1 (mod q), i =
Figure 00000003

Значение q выбирается из простых чисел и для регистра сдвига, имеющего 256 разрядов, q=257, для регистра сдвига, имеющего 128 разрядов, q=127. В этом случае за счет возведения в степень порождающего числа 10 будем переходить от одного элемента поля Fq к другому. При этом, как показано в [4] стр. 44, если 10 - элемент порядка k, то все элементы

Figure 00000004
будут различны. В псевдослучайных последовательностях x и y двоичных векторов осуществляют замену символов "0" на "256".The value of q is selected from primes and for the shift register, which has 256 bits, q = 257, for the shift register, which has 128 bits, q = 127. In this case, by raising to the power of the generating number 1 0 we will pass from one element of the field F q to another. Moreover, as shown in [4] p. 44, if 1 0 is an element of order k, then all elements
Figure 00000004
will be different. In the pseudo-random sequences of x and y binary vectors, the characters "0" are replaced by "256".

Формирование псевдослучайных последовательностей символов конечного поля Fp можно осуществить также по типу "сжимающего генератора" путем снятия информации с восьми разрядов регистра сдвига и пропуска тех тактов работы регистра сдвига, для которых хотя бы в одной из псевдослучайных последовательностей присутствует символ "0".The formation of pseudo-random sequences of symbols of the final field F p can also be carried out as a “compression generator” by taking information from eight bits of the shift register and skipping those clock cycles of the shift register for which at least one of the pseudo-random sequences contains the symbol “0”.

Преобразование потока данных в зашифрованное сообщение можно осуществить путем разбиения исходных данных на блоки в виде символов α двоичных векторов длиною 8 бит, вычисления в конечном поле Fp, (p=257) значений символов β зашифрованного текста в соответствии с выбранной функцией шифрования, например α · x+y=β (mod p), преобразования полученного числа β в двоичный вектор и передачи его по линии связи.Conversion of the data stream into an encrypted message can be done by breaking the source data into blocks in the form of characters α of binary vectors 8 bits long, calculating in the final field F p , (p = 257) the values of the characters β of the encrypted text in accordance with the selected encryption function, for example, α X + y = β (mod p), converting the resulting number β to a binary vector and transmitting it over the communication line.

Могут быть использованы еще три варианта формирования псевдослучайных последовательностей символов конечного поля в виде двоичных векторов.Three more options for the formation of pseudo-random sequences of symbols of the final field in the form of binary vectors can be used.

1. Элементы одной из выделенной и формируемой псевдослучайной последовательности символов конечного поля y в виде двоичных векторов используются как порождающие элементы yn для дополнительной псевдослучайной последовательности z, элементы которой на каждом такте работы регистра сдвига определяются как порожденные элементы поля Fp: z≡ z· yn(mod p)1. Elements of one of the selected and generated pseudo-random sequences of symbols of the final field y in the form of binary vectors are used as generating elements y n for an additional pseudo-random sequence z, elements of which at each clock cycle of the shift register are defined as generated elements of the field F p : z≡ z · y n (mod p)

Если в процессе вычислений на каком-то i такте работы регистра сдвига окажется, что z=1, то в этом случае меняется порождающий элемент yn поля Fp. При этом в качестве нового порождающего элемента yn принимается элемент, сформированный на данном такте работы регистра сдвига выделенной псевдослучайной последовательности y символов конечного поля Fp, yn=y, если y<2, то yn=2. Сформированная дополнительная псевдослучайная последовательность конечного поля z используется в криптографических преобразованиях при преобразовании потока данных в зашифрованное сообщение, например:If in the process of computing at some i clock cycle of the shift register it turns out that z = 1, then in this case the generating element y n of the field F p changes. Moreover, as the new generating element y n, we take the element formed at a given cycle of the shift register of the selected pseudorandom sequence y of characters of the final field F p , y n = y, if y <2, then y n = 2. The generated additional pseudorandom sequence of the final field z is used in cryptographic transformations when converting the data stream into an encrypted message, for example:

α · x+y+z=β (mod p) или α · x+z=β (mod p)αx + y + z = β (mod p) or αx + z = β (mod p)

Поскольку в дополнительной псевдослучайной последовательности конечного поля элементы формируются за счет возведения в степень порождающего элемента yn, имеющего порядок k, то все элементы

Figure 00000005
будут различны на интервале k тактов работы регистра сдвига. Поскольку порождающие элементы yn могут быть разного порядка в конечном поле Fp, то смена порождающих элементов будет осуществляться по псевдослучайному закону. При этом обеспечивается статистическая равномерность символов зашифрованного текста на интервале, равном p-1 тактам работы регистра сдвига, что исключает применение статистических методов криптоанализа для определения состояния регистра сдвига.Since in the additional pseudorandom sequence of the finite field, the elements are formed by raising to the power a generating element y n of order k, then all elements
Figure 00000005
will be different on the interval k cycles of the shift register. Since the generating elements y n can be of different orders in the final field F p , the change of the generating elements will be carried out according to the pseudo-random law. This ensures the statistical uniformity of the characters of the ciphertext on an interval equal to p-1 clock cycles of the shift register, which eliminates the use of statistical methods of cryptanalysis to determine the state of the shift register.

2. Изменяют номера разрядов регистра сдвига, с которых снимается информация для одной из псевдослучайных последовательностей символов конечного поля в соответствии с изменением порождающего элемента дополнительной псевдослучайной последовательности2. Change the numbers of bits of the shift register, from which information is removed for one of the pseudo-random sequences of characters of the final field in accordance with the change in the generating element of the additional pseudo-random sequence

l0=yn, li=ynli-1(mod q),

Figure 00000006
l 0 = y n , l i = y n l i-1 (mod q),
Figure 00000006

3. Изменяют порядок считывания информации для одной из формируемых псевдослучайных последовательностей символов конечного поля в соответствии с изменением поражающего элемента, дополнительной псевдослучайной последовательности символов, например, с использованием соотношений3. Change the reading order of information for one of the generated pseudo-random sequences of characters of the final field in accordance with the change of the striking element, an additional pseudo-random sequence of characters, for example, using the relations

li=lk,l i = l k ,

k≡ i+yn(mod 8),

Figure 00000007
k≡ i + y n (mod 8),
Figure 00000007

Формирование псевдослучайных последовательностей символов конечного поля по п.1, 2 и 3 повышает стойкость шифра к атакам на основе известных и подобранных исходных текстов при формировании ключа шифрования малой длины.The formation of pseudorandom sequences of characters of the final field according to claim 1, 2 and 3 increases the resistance of the cipher to attacks based on known and selected source texts when generating an encryption key of short length.

Предлагаемый способ может быть реализован с помощью ЭВМ или устройства. На фиг.1 представлена структурная схема устройства, гдеThe proposed method can be implemented using a computer or device. Figure 1 presents the structural diagram of the device, where

блок 1 - устройство формирования ключа шифрования;block 1 - device for generating an encryption key;

блок 2 - регистр сдвига;block 2 - shift register;

блок 3 - шифрующее устройство;block 3 - encryption device;

блок 4 - передающее устройство.block 4 - transmitting device.

Для простоты описания работы устройства будем пользоваться малыми числами. Будем считать, что регистр сдвига имеет 6 разрядов (длина ключа 6 бит), а весь алфавит исходного текста содержит 16 символов, тогда для передачи одного символа может быть использован двоичный вектор длиною 4 бита, а, в качестве характеристики конечного поля Fp может быть выбрано число p=17.For simplicity, the description of the operation of the device will use small numbers. We assume that the shift register has 6 digits (the key length is 6 bits), and the entire alphabet of the source text contains 16 characters, then a binary vector 4 bits long can be used to transmit one character, and, as a characteristic of the final field, F p can be the number p = 17 is selected.

Для определения структуры регистра сдвига, выбирают примитивный многочлен шестой степени, например λ 65+1.To determine the structure of the shift register, choose a primitive polynomial of the sixth degree, for example, λ 6 + λ 5 +1.

Для выбранного примитивного многочлена структурная схема регистра сдвига с обратной связью будет иметь вид, представленный на фиг.2, где блоки 5-10 - разряды 1-6 регистра сдвига, а блок 11 - сумматор по модулю два.For the selected primitive polynomial, the structural diagram of the feedback shift register will have the form shown in FIG. 2, where blocks 5-10 are bits 1-6 of the shift register, and block 11 is an adder modulo two.

Сформированный в блоке 1 фиг.1 с помощью генератора случайных чисел ключ шифрования длиною 6 битFormed in block 1 of Fig. 1 using a random number generator, an encryption key of 6 bits in length

6, λ 5, λ 4, λ 3, λ 2, λ l >,6 , λ 5 , λ 4 , λ 3 , λ 2 , λ l >,

где λ I=0, λ 2=0, λ 3=0, λ 4=1, λ 5=1, λ 6=1;where λ I = 0, λ 2 = 0, λ 3 = 0, λ 4 = 1, λ 5 = 1, λ 6 = 1;

поступает в регистр сдвига и используется для начального заполнения разрядов регистра сдвига. Двоичные символы с 5 и 6 разряда регистра сдвига поступают в каждом такте работы на вход сумматора 11 по модулю два, а с выхода сумматора по модулю два символы ε поступают на вход первого разряда регистра сдвига (блок 5, фиг.2). При этом состояния разрядов для каждого такта в процессе работы регистра сдвига определяются выражениемenters the shift register and is used to initially fill the bits of the shift register. Binary symbols from the 5th and 6th bits of the shift register arrive at the input of the adder 11 modulo two in each clock cycle, and from the output of the adder modulo two symbols ε go to the input of the first bit of the shift register (block 5, Fig. 2). In this case, the state of the discharges for each cycle during the operation of the shift register is determined by the expression

λ Ii-1 для

Figure 00000008
λ 1=ελ I = λ i-1 for
Figure 00000008
λ 1 = ε

и представлены в таблице.and are presented in the table.

Если символы будут сниматься с шестого разряда λ 6 регистра сдвига (блок 10, фиг.2), то двоичная псевдослучайная последовательность максимального периода, будет иметь вид {1110000010000110001010011110100011100100101101110110011010101111}.If the characters will be removed from the sixth digit λ 6 of the shift register (block 10, FIG. 2), then the binary pseudorandom sequence of the maximum period will be {1110000010000110001010011110100011100100101101110110011010101111}.

Заметим, что на периоде этой последовательности любой ненулевой набор из шести знаков 0 и 1 встречается только один раз.Note that during the period of this sequence, any nonzero set of six characters 0 and 1 occurs only once.

Если двоичные числа будем снимать с 1, 2, 3 и 4 разряда регистра сдвига, (блоки 5, 6, 7, 8, фиг.2) и на каждом такте работы регистра сдвига и с набором <λ 1, λ 2, λ 3, λ 4> будем сопоставлять двоичный вектор (число) x=λ 1+2λ 2+22λ 3 +23λ 4 , то последовательность двоичных чисел в процессе работы регистра можно рассматривать как последовательность x чисел (символов) {0, 1, 2, ..., 15} в видеIf we take binary numbers from the 1st, 2nd, 3rd and 4th digits of the shift register (blocks 5, 6, 7, 8, Fig. 2) and at each clock cycle of the shift register and with the set <λ 1 , λ 2 , λ 3 , λ 4 > we map the binary vector (number) x = λ 1 + 2λ 2 +2 2 λ 3 + 2 3 λ 4 , then the sequence of binary numbers in the process of register operation can be considered as a sequence of x numbers (characters) {0, 1, 2, ..., 15} in the form

x={8, 0, 0, 1, 2, 4, 8, 0, 1, 3, 6, 12, 8, 1, 2, 5, 10, 4, 9, 3, 7, 15, 14, 13, 10, 4, 8, 1, 3, 7, 14, 12, 9, 2, 4, 9, 2, 5, 11, 6, 13, 11, 7, 14, 13, 11, 6, 12, 9, 3, 6, 13, 10, 5, 10, 5, 11, 7, 15, 15, 15, 14, 12, ...}.x = {8, 0, 0, 1, 2, 4, 8, 0, 1, 3, 6, 12, 8, 1, 2, 5, 10, 4, 9, 3, 7, 15, 14, 13 , 10, 4, 8, 1, 3, 7, 14, 12, 9, 2, 4, 9, 2, 5, 11, 6, 13, 11, 7, 14, 13, 11, 6, 12, 9 , 3, 6, 13, 10, 5, 10, 5, 11, 7, 15, 15, 15, 14, 12, ...}.

Если двоичные числа будем снимать одновременно с 1, 2, 5, 6 разряда, регистра сдвига (блоки 5, 6, 9, 10, фиг.2) и на каждом такте работы регистра сдвига с набором <λ 6, λ 5, λ 2, λ 1> будем сопоставлять число в виде y=λ 6+2λ 5+22λ 2 +23λ 1 , то последовательность двоичных чисел в процессе работы регистра сдвига можно рассматривать как последовательность символовIf we take binary numbers simultaneously from the 1st, 2nd, 5th, 6th digit, shift register (blocks 5, 6, 9, 10, Fig. 2) and at each clock cycle of the shift register with the set <λ 6 , λ 5 , λ 2 , λ 1 > we will compare the number in the form y = λ 6 + 2λ 5 +2 2 λ 2 + 2 3 λ 1 , then the sequence of binary numbers in the process of the shift register can be considered as a sequence of characters

y{0, 1, 2, ..., 15} в видеy {0, 1, 2, ..., 15} in the form

y={3, 3, 1, 8, 4, 0, 0, 2, 9, 12, 4, 0, 2, 11, 5, 8, 4, 2, 9, 14, 13, 12, 6, 11, 7, 3, 1, 10, 13, 12, 4, 2, 11, 7, 1, 8, 6, 9, 12, 6, 9, 14, 15, 5, 10, 15, 7, 1, 10, 15, 5, 8, 6, 11, 5, 10, 13, 14, 13, 14, 15, 7, 3, ...}.y = {3, 3, 1, 8, 4, 0, 0, 2, 9, 12, 4, 0, 2, 11, 5, 8, 4, 2, 9, 14, 13, 12, 6, 11 , 7, 3, 1, 10, 13, 12, 4, 2, 11, 7, 1, 8, 6, 9, 12, 6, 9, 14, 15, 5, 10, 15, 7, 1, 10 , 15, 5, 8, 6, 11, 5, 10, 13, 14, 13, 14, 15, 7, 3, ...}.

Анализ сформированных последовательностей x и y показывает, что на интервале, соответствующем периоду, равному 63 тактам работы регистра сдвига, каждый из символов {1, 2, ..., 15} встречается ровно четыре раза. Символ, соответствующий нулю в обеих последовательностях, встречается ровно три раза, при этом последовательности x и y не могут быть получены друг из друга, в результате циклического сдвига. В последовательностях x и y отсутствуют скрытые периодичности и обеспечивается статистическая равномерность используемых символов. Поскольку один из символов псевдослучайных последовательностей конечного поля F17 не воспроизводится, то символ "0" в обеих последовательностях заменяют на символ "16".An analysis of the generated sequences x and y shows that on the interval corresponding to the period equal to 63 clock cycles of the shift register, each of the symbols {1, 2, ..., 15} occurs exactly four times. The symbol corresponding to zero in both sequences occurs exactly three times, while the sequences x and y cannot be obtained from each other as a result of a cyclic shift. In sequences x and y, there are no hidden periodicities and the statistical uniformity of the symbols used is ensured. Since one of the symbols of the pseudorandom sequences of the final field F 17 is not reproduced, the symbol "0" in both sequences is replaced by the symbol "16".

Помимо псевдослучайных последовательностей символов x, y конечного поля Fp в таблице 1 представлено формирование дополнительной псевдослучайной последовательности z путем использования в качестве порождающих элементов символов псевдослучайной последовательности y, а также формирование псевдослучайной последовательности символов конечного поля v путем изменения порядка считывания информации для псевдослучайной последовательности символов конечного поля x в соответствии с изменением порождающего элемента дополнительной псевдослучайной последовательности z.In addition to the pseudo-random sequences of symbols x, y of the final field F p , Table 1 shows the formation of an additional pseudo-random sequence z by using the pseudo-random sequence y as generating elements of the characters, as well as the formation of a pseudo-random sequence of characters of the final field v by changing the reading order of the information for the pseudo-random sequence of characters of the final field x in accordance with the change in the generating element of the additional pseudo-case fine sequence z.

Сформированные псевдослучайные последовательности символов конечного поля x и y в виде двоичных векторов поступают в шифрующее устройство 3 (фиг.1), где преобразуется поступающий поток данных в зашифрованное сообщение путем использования псевдослучайных последовательностей символов x и y конечного поля F17 в соответствии с выбранным криптографическим преобразованием в конечном поле F17, напримерThe generated pseudo-random sequences of symbols of the final field x and y in the form of binary vectors are sent to the encryption device 3 (Fig. 1), where the incoming data stream is converted into an encrypted message by using pseudo-random sequences of symbols x and y of the final field F 17 in accordance with the selected cryptographic conversion in the final field F 17 for example

Figure 00000009
Figure 00000009

Figure 00000010
Figure 00000010

Figure 00000011
Figure 00000011

Figure 00000012
Figure 00000012

Figure 00000013
Figure 00000013

Источники информацииSources of information

1. Российский стандарт шифрования стандарт СССР ГОСТ 28147-89 Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования.1. Russian encryption standard USSR standard GOST 28147-89 Information processing systems. Cryptographic protection. Cryptographic conversion algorithm.

2. С.Мафтик. Механизмы защиты в сетях ЭВМ, М., 1993 г.2. S. Maftik. Protection mechanisms in computer networks, M., 1993

3. В.И. Нечаев. Элементы криптографии. Основы теории защиты информации. - М.: Высшая школа, 1999 г.3. V.I. Nechaev. Elements of cryptography. Fundamentals of information security theory. - M.: Higher school, 1999.

4. Б.Н. Воронков, В.И. Тупота. Методическое пособие по разработке средств защиты информации в вычислительных сетях. Воронеж: Воронежский государственный университет, 2000.4. B.N. Voronkov, V.I. Stupid. Toolkit for the development of information security tools in computer networks. Voronezh: Voronezh State University, 2000.

5. Э.Ф. Бикелл, Э.М. Одлижко. Криптоанализ: Обзор новейших результатов // ТИИЭР, 1988, т. 16, №5.5. E.F. Bickell, E.M. One by one. Cryptanalysis: A review of the latest results // TIIER, 1988, v. 16, No. 5.

Claims (4)

1. Способ поточного шифрования данных, заключающийся в формировании ключа шифрования в виде двоичного вектора, подачи двоичного вектора для начального заполнения регистра сдвига с обратной связью, формирующего псевдослучайную последовательность двоичных символов, преобразовании потока данных в зашифрованное сообщение и передачи его по линии связи, отличающийся тем, что псевдослучайные последовательности двоичных символов формируют как псевдослучайные последовательности символов конечного поля Fp с характеристикой р=257 в виде двоичных векторов длиной 8 бит путем снятия информации с восьми различных разрядов регистра сдвига, номера которых определяют по значению вводимого ключа шифрования, а общее число возможных псевдослучайных последовательностей символов конечного поля определяют числом возможных комбинаций из восьми разрядов регистра сдвига, с которых снимают информацию, и числом перестановок в рамках одной комбинации, пропускают те такты работы регистра сдвига, в которых хотя бы одна из формируемых псевдослучайных последовательностей символов конечного поля Fp имеет символ 0, преобразование потока данных в зашифрованное сообщение осуществляют путем разбиения потока исходных данных на блоки в виде двоичных векторов длиною 8 бит и поочередно преобразуют блоки в двоичный вектор путем использования псевдослучайных последовательностей символов конечного поля Fp в соответствии с выбранными линейным или нелинейным криптографическим преобразованиями, включающими операции сложения, умножения или возведения в степень символов в конечном поле Fp.1. The method of stream encryption of data, which consists in generating an encryption key in the form of a binary vector, supplying a binary vector for the initial filling of the shift register with feedback, forming a pseudo-random sequence of binary characters, converting the data stream into an encrypted message and transmitting it over the communication line, characterized in that pseudo-random sequences of binary symbols are formed as pseudo-random sequences of symbols of the final field Fp with characteristic p = 257 in the form of binary vectors of length 8 bits by taking information from eight different bits of the shift register, the numbers of which are determined by the value of the entered encryption key, and the total number of possible pseudorandom sequences of characters of the final field is determined by the number of possible combinations of eight bits of the shift register from which the information is removed, and the number permutations within the framework of one combination, skip those steps of the shift register in which at least one of the generated pseudorandom sequences of characters of finite I Fp has the character 0, the data stream is converted into an encrypted message by splitting the source data stream into blocks in the form of binary vectors 8 bits long and alternately converting the blocks into a binary vector by using pseudorandom sequences of characters of the final field Fp in accordance with the selected linear or nonlinear cryptographic transformations, including addition, multiplication or exponentiation of symbols in the final field Fp. 2. Способ по п.1, отличающийся тем, что символы одной из формируемых псевдослучайных последовательностей конечного поля используют как порождающие элементы для формирования дополнительной псевдослучайной последовательности символов, которые на каждом такте работы сдвига определяют как порожденные элементы конечного поля Fp.2. The method according to claim 1, characterized in that the characters of one of the generated pseudo-random sequences of the final field are used as generating elements to form an additional pseudo-random sequence of characters, which are determined as generated elements of the final field Fp at each shift work step. 3. Способ по п.2, отличающийся тем, что изменяют номера разрядов регистра сдвига, с которых снимается информация для одной из формируемых псевдослучайных последовательностей символов конечного поля Fp в соответствии с изменением порождающего элемента дополнительной псевдослучайной последовательности.3. The method according to claim 2, characterized in that the numbers of the bits of the shift register are changed from which information for one of the generated pseudo-random sequences of symbols of the final field Fp is generated in accordance with the change in the generating element of the additional pseudo-random sequence. 4. Способ по п.2, отличающийся тем, что изменяют порядок считывания информации для одной из формируемых псевдослучайных последовательностей символов в соответствии с изменением порождающего элемента дополнительной псевдослучайной последовательности.4. The method according to claim 2, characterized in that the order of reading information for one of the generated pseudo-random sequences of characters is changed in accordance with a change in the generating element of the additional pseudo-random sequence.
RU2001135708/09A 2001-12-24 2001-12-24 Data stream encryption method RU2239290C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2001135708/09A RU2239290C2 (en) 2001-12-24 2001-12-24 Data stream encryption method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2001135708/09A RU2239290C2 (en) 2001-12-24 2001-12-24 Data stream encryption method

Publications (2)

Publication Number Publication Date
RU2001135708A RU2001135708A (en) 2003-08-27
RU2239290C2 true RU2239290C2 (en) 2004-10-27

Family

ID=33536906

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2001135708/09A RU2239290C2 (en) 2001-12-24 2001-12-24 Data stream encryption method

Country Status (1)

Country Link
RU (1) RU2239290C2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2519004C2 (en) * 2012-07-17 2014-06-10 федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский ядерный университет МИФИ" (НИЯУ МИФИ) Method for three-dimensional nonlinear replacement transformation
RU2574804C2 (en) * 2014-01-09 2016-02-10 Федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное училище имени генерала армии С.М.Штеменко" Министерства обороны Российской Федерации (Краснодарское высшее военное училище) Method for adaptive stream encryption with controlled cryptographic robustness and device therefor
WO2017023565A1 (en) * 2015-08-05 2017-02-09 TransferSoft, Inc. Symmetric stream cipher
RU2712827C1 (en) * 2019-04-17 2020-01-31 Акционерное общество Московский научно-производственный комплекс "Авионика" имени О.В. Успенского (АО МНПК "Авионика") Method of forming a pseudorandom binary sequence for single-coordinate displacement sensors

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2519004C2 (en) * 2012-07-17 2014-06-10 федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский ядерный университет МИФИ" (НИЯУ МИФИ) Method for three-dimensional nonlinear replacement transformation
RU2574804C2 (en) * 2014-01-09 2016-02-10 Федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное училище имени генерала армии С.М.Штеменко" Министерства обороны Российской Федерации (Краснодарское высшее военное училище) Method for adaptive stream encryption with controlled cryptographic robustness and device therefor
WO2017023565A1 (en) * 2015-08-05 2017-02-09 TransferSoft, Inc. Symmetric stream cipher
US9887835B2 (en) 2015-08-05 2018-02-06 TransferSoft, Inc. Symmetric stream cipher
RU2712827C1 (en) * 2019-04-17 2020-01-31 Акционерное общество Московский научно-производственный комплекс "Авионика" имени О.В. Успенского (АО МНПК "Авионика") Method of forming a pseudorandom binary sequence for single-coordinate displacement sensors

Similar Documents

Publication Publication Date Title
Jakimoski et al. Chaos and cryptography: block encryption ciphers based on chaotic maps
US5751811A (en) 32N +D bit key encryption-decryption system using chaos
CA2218148C (en) Generating unique and unpredictable values
AU702766B2 (en) A non-deterministic public key encryption system
CN100369404C (en) Chaotic encipher series generator
Lamba Design and analysis of stream cipher for network security
RU2103829C1 (en) Method for encoding information which is represented in binary code
El Hennawy et al. LEA: link encryption algorithm proposed stream cipher algorithm
RU2239290C2 (en) Data stream encryption method
RU2141729C1 (en) Method for encrypting of binary data units
RU2296427C1 (en) Method for stream encoding of discontinuous information
Cardell et al. Recovering the MSS-sequence via CA
RU2291578C1 (en) Method for stream encryption of data
RU2277759C2 (en) Method for generation of encoding-decoding key
Shams et al. Cryptosystem an Implementation of RSA using Verilog
JP3816558B2 (en) Cryptosystem
RU97885U1 (en) DATA STREAM ENCRYPTION DEVICE
RU2251816C2 (en) Method for stream-wise encoding of discontinuous information
RU2205516C1 (en) Procedure of continuous coding of discrete information
Sönmez Turan On statistical analysis of synchronous stream ciphers
Amro et al. Known-plaintext attack and improvement of PRNG-based text encryption
RU2423799C2 (en) Method for data stream encryption
RU2227375C2 (en) Method for transmitting digital information in computer network
Solak et al. Breaking an orbit-based symmetric cryptosystem
Mattsson Stream cipher design

Legal Events

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

Effective date: 20051225