RU2226041C2 - Method for binary data cryptographic conversion - Google Patents

Method for binary data cryptographic conversion Download PDF

Info

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

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Storage Device Security (AREA)

Abstract

FIELD: electrical communications and converter engineering. SUBSTANCE: proposed method can be used in communication systems, computing and data-processing systems during data exchange and includes following procedures: input data are divided into fixed-length blocks and coded by means of arithmetic operation with cryptographic pseudorandom functions F1, F2, and F3 dependent of mentioned key sequence; data are entered during each step for arithmetic coding in character-by-character manner and coded with aid of F2 conversion implementing character table and occurrence probability interval table of F3 conversion implementing characters; character table is updated by interchanging characters in character table; then occurrence probability intervals are exchanged in mentioned table, whereupon converted input data are transferred to input data block. EFFECT: enhanced reliability of protection against cryptographic analysis and unauthorized data decoding. 3 cl, 1 dwg

Description

Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области способов и устройств для криптографического преобразования данных, и может быть использовано в связных, вычислительных и информационных системах для криптографического закрытия двоичной информации при обмене данными правительственными, правоохранительными, оборонными, банковскими и промышленными учреждениями, когда возникает необходимость хранения и передачи конфиденциальной информации.The invention relates to the field of telecommunications and computer technology, and more particularly to the field of methods and devices for cryptographic data conversion, and can be used in communication, computing and information systems for cryptographic closing of binary information in the exchange of data by government, law enforcement, defense, banking and industrial institutions when it becomes necessary to store and transmit confidential information.

Известен способ шифрования двоичной информации и устройство для осуществления способа - "Албер" [1], в котором для осуществления криптографического преобразования текста используется набор из информационного и ключевого р-разрядных регистров. Входные данные разбиваются на блоки переменной длины из m ячеек, включающей по р разрядов в каждой. Далее, содержимое этих ячеек преобразуется с помощью n-кратного сложения по модулю 2 или по модулю 2p с содержимым второй р-разрядной ячейки информационного регистра, к полученной сумме прибавляют по модулю 2 или по модулю 2p содержимое очередной р-разрядной ячейки ключевого регистра, результат преобразуют блоком р-разрядного функционального преобразования f, к полученному результату прибавляют по модулю 2 или по модулю 2p содержимое r-й (3≤r≤m-1) ячейки информационного регистра.A known method of encrypting binary information and a device for implementing the method is "Alber" [1], in which a set of information and key p-bit registers is used to implement cryptographic text conversion. The input data is divided into blocks of variable length from m cells, including p bits in each. Next, the contents of these cells are transformed using n-fold addition modulo 2 or modulo 2 p with the contents of the second p-bit cell of the information register, to the resulting sum are added modulo 2 or modulo 2 p the contents of the next p-bit cell of the key register , the result is transformed by the p-bit functional transformation block f, the contents of the rth (3≤r≤m-1) cell of the information register are added modulo 2 or modulo 2 p to the result obtained.

Однако, данный способ обладает недостатками, которые связаны с возможностью анализа зашифрованных данных путем применения метода дифференциального криптоанализа. Это происходит благодаря тому, что сложение по модулю 2 или по модулю 2p р-разрядной ячейки с нулем не приводит к изменению содержимого данной ячейки, а в случае изменения может быть выявлена зависимость изменения содержимого данной ячейки от текущего на момент зашифрования содержания информационного и ключевого регистров.However, this method has disadvantages that are associated with the ability to analyze encrypted data by using the differential cryptanalysis method. This is due to the fact that the addition of a p -bit cell with zero modulo 2 or modulo 2 p does not lead to a change in the contents of this cell, and in case of a change, the dependence of the change in the contents of this cell on the current at the time of encryption of the information and key contents can be detected registers.

Известен также способ шифрования блоков данных [2], который ориентирован на шифрование входных блоков данных с помощью присоединения к входным блокам псевдослучайных двоичных блоков той же длины и использования неповторяющихся комбинаций генерируемых подключей. Способ включает формирование ключа шифрования, формирование К≥1 блоков данных, содержащих Р≥1 участков двоичной информации и преобразование блоков данных под управлением ключа шифрования. Дополнительно генерируют D≥1 двоичных векторов, а блоки данных формируют путем присоединения двоичных векторов к участкам двоичного кода информации. Двоичные вектора генерируют по случайному или псевдослучайному закону. Двоичные вектора присоединяют к участкам двоичного кода информации в зависимости от ключа шифрования или по фиксированному правилу.There is also a method of encrypting data blocks [2], which is focused on encrypting input data blocks by attaching pseudorandom binary blocks of the same length to input blocks and using non-repeating combinations of generated subkeys. The method includes generating an encryption key, generating K≥1 data blocks containing P≥1 sections of binary information and converting the data blocks under the control of the encryption key. Additionally, D≥1 binary vectors are generated, and data blocks are formed by attaching binary vectors to portions of the binary information code. Binary vectors are generated according to a random or pseudo-random law. Binary vectors are attached to sections of the binary code of information depending on the encryption key or according to a fixed rule.

Однако способ имеет недостаток, заключающийся в том, что входные данные обрабатываются блоками большого размера, а не посимвольно; размер двоичного вектора выходных данных превосходит в два раза размер входного вектора, приводит к снижению быстродействия выполнения как прямой задачи по шифрованию информации, так и обратной по ее дешифрованию, также снижает надежность работы и увеличивает энергетические затраты на дальнейшую обработку, передачу и хранение зашифрованной информации.However, the method has the disadvantage that the input data is processed in large blocks, and not character by character; the size of the binary vector of the output data is twice as large as the size of the input vector, which reduces the performance of both the direct task of encrypting information and the inverse of decrypting it, also reduces the reliability of work and increases the energy cost of further processing, transmission and storage of encrypted information.

Наиболее близким по технической сущности к предлагаемому является способ защиты информации от несанкционированного доступа [3], принятый за прототип, заключающийся в том, что на передающей стороне исходная информация искажается с помощью ключевой последовательности, а на приемной стороне искаженная информация восстанавливается с помощью того же ключа, при этом исходные данные обрабатываются посимвольно. Существо способа прототипа заключается в том, что исходный файл информации разбивается на информационные блоки переменной длины i (i=1, 2, 3,...), после чего в каждом блоке осуществляется варьируемый сдвиг ASCII-кода каждого символа блока на t (t=1, 2, 3,...) разрядов. Сдвиг может осуществляться как влево, так и вправо, при этом для предотвращения потерь информации сдвиг осуществляется по замкнутому кольцу в блоке, результат преобразования фиксируют в памяти по адресу исходного файла.The closest in technical essence to the proposed is a method of protecting information from unauthorized access [3], adopted as a prototype, which consists in the fact that on the transmitting side, the original information is distorted using a key sequence, and on the receiving side, the distorted information is restored using the same key , while the source data is processed character by character. The essence of the prototype method is that the original information file is divided into information blocks of variable length i (i = 1, 2, 3, ...), after which a variable shift of the ASCII code of each block symbol by t (t = 1, 2, 3, ...) bits. The shift can be carried out both left and right, while to prevent information loss, the shift is carried out in a closed ring in the block, the result of the conversion is recorded in memory at the address of the source file.

Ключ, определяемый пользователем, является w (w=1, 2, 3,...) разрядным целым беззнаковым числом. Преобразованный файл можно оперативно восстановить путем обратного сдвига символов блоков файла.The user-defined key is w (w = 1, 2, 3, ...) a bit unsigned integer. The converted file can be quickly restored by reverse shifting the characters of the file blocks.

Недостатками прототипа являются низкая стойкость к несанкционированному расшифрованию зашифрованной с его помощью информации; необходимость хранить ключевую последовательность большого объема, определяющую длину каждого шифруемого блока; отсутствие процедуры избавления от информационной избыточности во входных данных, а в следствие этого - повышенные энергетические затраты на дальнейшую обработку, передачу и хранение избыточной информации.The disadvantages of the prototype are low resistance to unauthorized decryption of information encrypted with it; the need to store a key sequence of large volume that determines the length of each encrypted block; the absence of a procedure for getting rid of information redundancy in the input data, and as a result of this - increased energy costs for further processing, transmission and storage of redundant information.

Техническим результатом, получаемым от внедрения изобретения, является устранение указанных недостатков, то есть повышение сложности криптоанализа и несанкционированного дешифрования зашифрованной с его помощью информации, а также снижение энергетических затрат на обработку, передачу и хранение информации.The technical result obtained from the implementation of the invention is the elimination of these shortcomings, that is, increasing the complexity of cryptanalysis and unauthorized decryption of information encrypted with it, as well as reducing energy costs for processing, transmitting and storing information.

Данный технический результат достигается за счет того, что в известном способе криптографического преобразования двоичных данных, заключающемся в том, что на передающей стороне исходная информация искажается с помощью ключевой последовательности, а на приемной стороне искаженная информация восстанавливается с помощью той же ключевой последовательности, при этом исходные данные обрабатываются посимвольно, входные данные подвергаются преобразованию методом арифметического кодирования с введенными криптографическими преобразованиями, зависящими от ключевой последовательности, и при кодировании преобразуются с помощью кодирующей функции Е (в качестве функции Е выбирается функция арифметического кодирования согласно [5]) совместно с криптографическими преобразованиями F1, F2 и F3 в вещественное число из интервала [0,1), которое записывается двоичной последовательностью конечной переменной длины и вместе с ключевой последовательностью однозначно определяет входные данные.This technical result is achieved due to the fact that in the known method of cryptographic conversion of binary data, namely, that on the transmitting side, the original information is distorted using the key sequence, and on the receiving side, the distorted information is restored using the same key sequence, while the original data is processed character by character, the input data is converted by arithmetic coding with the entered cryptographic transformations by coding depending on the key sequence, and during coding, they are transformed using the coding function E (the function of arithmetic coding is chosen as the function E according to [5]) together with cryptographic transformations F 1 , F 2 and F 3 into a real number from the interval [0, 1), which is written by a binary sequence of finite variable length and together with the key sequence uniquely determines the input data.

При этом в качестве функции преобразования F2 используют функцию линейного конгруэнтного преобразования вида F(x)=ax+b mod с, с начальным значением x, зависящим от ключевой последовательности (т.е. x представляет собой последовательность значений ключевой последовательности), где константы a и b выбираются так, чтобы вычисленная последовательность не обладала периодом максимальной длины, а константа с выбирается равной М, где М - это количество всевозможных значений формируемых блоков из входной последовательности данных.Moreover, as a transformation function F 2 , a linear congruent transformation function of the form F (x) = ax + b mod с is used, with the initial value x depending on the key sequence (i.e., x is a sequence of values of the key sequence), where the constants a and b are chosen so that the calculated sequence does not have a period of maximum length, and the constant c is chosen equal to M, where M is the number of all possible values of the generated blocks from the input data sequence.

А в качестве составляющей функций преобразования F1 и F3 используют нормированную функцию линейного конгруэнтного преобразования видаAnd as a component of the transformation functions F 1 and F 3 use the normalized linear congruent transformation function of the form

Figure 00000001
Figure 00000002
,
Figure 00000001
Figure 00000002
,

с начальным значением x (т.е. x представляет собой последовательность значений ключевой последовательности), зависящим от ключевой последовательности и разным для обеих F1 и F3, где константы а и b выбираются так, чтобы вычисленная последовательность не обладала периодом максимальной длины, а константа с для F1 и F3 выбирается равной целой части 0.25N, где N - фиксированное простое целое число большого порядка, выбранное произвольно до начала кодирования.with an initial value of x (i.e., x is a sequence of values of the key sequence), depending on the key sequence and different for both F 1 and F 3 , where the constants a and b are chosen so that the calculated sequence does not have a period of maximum length, and the constant c for F 1 and F 3 is chosen equal to the integer part 0.25N, where N is a fixed prime integer of a large order, chosen arbitrarily before encoding.

Другими словами, данный технический результат достигается по существу за счет введения посимвольных криптографических преобразований, зависящих от данной ключевой последовательности, с использованием метода арифметического кодирования двоичной информации, который состоит в том, что при кодировании входные данные преобразуются с помощью кодирующей функции Е в вещественное число из интервала [0,1), который называют отображающим интервалом. Результат функции Е (см. [4, 5]) является вещественным числом из отображающего интервала, которое записывается двоичной последовательностью конечной длины и однозначно определяет входные данные. Таким образом, входные данные и выходные данные представляют собой двоичную последовательность переменной длины. Перед началом процесса кодирования входные данные разбиваются на блоки фиксированной длины, и кодируются поочередно, как и в прототипе. Значением блока является двоичное представление битов блока. Совокупность значений всех блоков образует алфавит, а сами значения блоков являются символами алфавита. Количество возможных значений формируемых блоков из входной последовательности данных обозначим через М. По мере кодирования входных данных, отображающий интервал уменьшается, а количество бит для его представления возрастает.In other words, this technical result is achieved essentially by introducing symbolic cryptographic transformations depending on this key sequence using the method of arithmetic coding of binary information, which consists in the fact that, when encoding, the input data is converted using the encoding function E into a real number from interval [0,1), which is called the mapping interval. The result of the function E (see [4, 5]) is a real number from the mapping interval, which is written in a binary sequence of finite length and uniquely determines the input data. Thus, the input and output are a binary sequence of variable length. Before starting the encoding process, the input data is divided into blocks of a fixed length, and encoded alternately, as in the prototype. A block value is a binary representation of the bits of a block. The set of values of all blocks forms the alphabet, and the values of the blocks themselves are symbols of the alphabet. The number of possible values of generated blocks from the input data sequence is denoted by M. As the input data is encoded, the display interval decreases, and the number of bits for its representation increases.

Каждому символу алфавита ставят в соответствие априорную вероятность его появления в потоке входных данных. Дополнительно, каждому символу присваивают интервал вероятности на промежутке [0, 1), такой что его длина равна вероятности появления данного символа. Нижнюю границу вероятности обозначают через L, а верхнюю границу вероятности через Н. В таком случае, совокупность пар [L(символ), Н(символ)) для всех символов входных данных однозначно определяет вероятностную модель появления каждого символа в кодируемом тексте.Each symbol of the alphabet is associated with the a priori probability of its occurrence in the input data stream. Additionally, each symbol is assigned a probability interval on the interval [0, 1), such that its length is equal to the probability of occurrence of this symbol. The lower limit of probability is denoted by L, and the upper limit of probability by N. In this case, the set of pairs [L (symbol) , H (symbol) ) for all symbols of the input data uniquely determines the probability model for the appearance of each symbol in the encoded text.

Очередные кодируемые символы входных данных сокращают величину отображающего интервала исходя из значений их априорных вероятностей, определяемых имеющейся моделью. Более вероятные символы делают это в меньшей степени, чем менее вероятные, добавляя меньше бит к выходным данным. В процессе кодирования, вероятностная модель изменяется так, чтобы учитывать фактические появления символов во входных данных. Данный эффект достигается за счет увеличения вероятности появления текущего символа и соответственного уменьшения всех остальных. Таким образом, достигается оптимальное сжатие входных данных [4,5]. Данный метод сжатия называют адаптивным сжатием. Для того, чтобы сигнализировать окончание кодирования используют специальный символ, который обозначают EOF.The next coded input data symbols reduce the size of the display interval based on the values of their a priori probabilities determined by the existing model. More likely characters do this to a lesser extent than less likely characters, adding fewer bits to the output. In the encoding process, the probabilistic model is modified to take into account the actual occurrence of characters in the input. This effect is achieved by increasing the likelihood of the appearance of the current symbol and a corresponding decrease in all others. Thus, optimal compression of the input data is achieved [4,5]. This compression method is called adaptive compression. In order to signal the end of coding, a special character is used, which is designated EOF.

Процесс кодирования текста можно описать с помощью формального алгоритмического языка следующим образом (см. [5]):The process of encoding text can be described using a formal algorithmic language as follows (see [5]):

1. Начальное построение вероятностной модели (вероятности также могут быть выбраны произвольно),1. Initial construction of a probabilistic model (probabilities can also be chosen arbitrarily),

L=0,0, Н=1,0;L = 0.0, H = 1.0;

2. (Символ)=Очередной символ входного текста,2. (Character) = The next character of the input text,

Интервал=Н-L,Interval = H-L,

Н=L+Интервал·Н(символ),H = L + Interval · N (symbol) ,

L=L+Интервал·L(символ),L = L + Interval · L (character) ,

Изменить вероятностную модель в зависимости от (Символ);Change the probabilistic model depending on (Symbol);

3. Если (Символ) не равен EOF перейти к пункту 2;3. If (Symbol) is not equal to EOF go to step 2;

4. Выходные данные=L.4. Output = L.

Тогда процесс декодирования входного потока данных можно описать с помощью формального алгоритмического языка следующим образом (также см. [5]):Then the decoding process of the input data stream can be described using the formal algorithmic language as follows (also see [5]):

1. Начальное построение вероятностной модели,1. Initial construction of a probabilistic model,

(Число)=Прочитать двоичные данные;(Number) = Read binary data;

2. (Символ)=Найти символ, в интервал которого попадает (Число),2. (Symbol) = Find the symbol in the interval of which falls (Number),

Добавить к выходным данным (Символ),Add to output (Symbol),

Интервал=Н(символ)-L(символ),Interval = H (character) -L (character) ,

Число=Число-L(символ),Number = Number-L (character) ,

Число=Число/Интервал,Number = Number / Interval,

Изменить вероятностную модель в зависимости от (Символ);Change the probabilistic model depending on (Symbol);

3. Если Символ не равен EOF, перейти к пункту 2.3. If the Symbol is not equal to EOF, go to step 2.

Начальное построение вероятностной модели и ее изменение при обработке очередного символа должны совпадать для процессов кодирования и декодирования, иначе входные данные не будут должным образом декодированы.The initial construction of the probabilistic model and its change during processing of the next symbol must coincide for the encoding and decoding processes, otherwise the input data will not be properly decoded.

Согласно предлагаемому способу, начальное построение вероятностной модели, а также ее изменение при обработке очередного символа модифицируется с использованием ключевой последовательности К, называемой также ключом. Таким образом, не имея должного ключа, невозможно адекватно восстановить исходные входные данные, преобразованные с помощью данного способа.According to the proposed method, the initial construction of the probabilistic model, as well as its change during processing of the next character, is modified using the key sequence K, also called the key. Thus, without the proper key, it is impossible to adequately restore the original input data converted using this method.

Для этого предлагается вводить три дополнительных вида криптографических преобразований в алгоритм кодирования и, в частности, в вероятностную модель символов входных данных.For this, it is proposed to introduce three additional types of cryptographic transformations into the encoding algorithm, and, in particular, into the probabilistic model of input data symbols.

Первый вид дополнительного криптографического преобразования изменяет начальную таблицу априорных вероятностей увеличением вероятности появления одних символов и уменьшением других, с помощью некоторой функции F1 в зависимости от ключевой последовательности К. Данный вид дополнительного криптографического преобразования применяется в начале процесса кодирования и декодирования один раз.The first type of additional cryptographic conversion changes the initial table of a priori probabilities by increasing the probability of occurrence of some symbols and decreasing others, using some function F 1 depending on the key sequence K. This type of additional cryptographic conversion is used once at the beginning of the encoding and decoding process.

Второй и третий виды дополнительного криптографического преобразования действуют на каждом шаге кодирования, то есть один раз при кодировании каждого символа.The second and third types of additional cryptographic conversion operate at each encoding step, that is, once during the encoding of each symbol.

Второй вид дополнительного криптографического преобразования изменяет таблицу интервалов вероятности всех символов, переставляя интервалы вероятности на отрезке [0, 1) с помощью преобразования F2 в зависимости от ключевой последовательности К и сквозного номера текущего символа. Данный вид дополнительного криптографического преобразования не влияет на длину выходных данных, а влияет лишь на скорость обработки закодированной последовательности при декодировании и потому является наиболее предпочтительным в случае, когда используются не все из предлагаемых видов дополнительного криптографического преобразования вероятностной модели.The second type of additional cryptographic conversion modifies the table of probability intervals of all symbols, rearranging the probability intervals on the interval [0, 1) using the F 2 transformation depending on the key sequence K and the end-to-end number of the current symbol. This type of additional cryptographic conversion does not affect the length of the output data, but only affects the processing speed of the encoded sequence during decoding and therefore is most preferred when not all of the proposed types of additional cryptographic conversion of the probability model are used.

Третий вид дополнительного криптографического преобразования изменяет таблицу интервалов вероятности всех символов, переназначая каждому символу новый интервал вероятности на отрезке [0, 1) с помощью преобразования F3 в зависимости от ключевой последовательности К и сквозного номера текущего символа. Данный вид дополнительного криптографического преобразования, в отличие от второго и первого видов, влияет на длину выходных данных.The third type of additional cryptographic conversion modifies the table of probability intervals of all symbols, reassigning each symbol a new probability interval on the interval [0, 1) using the F 3 transformation depending on the key sequence K and the end-to-end number of the current symbol. This type of additional cryptographic conversion, unlike the second and first types, affects the length of the output data.

Согласно предлагаемому способу, в качестве криптографического преобразования данных используются все три вида дополнительных криптографических преобразований алгоритма арифметического кодирования. В качестве преобразования F1 выбирается псевдослучайная функция, зависящая от ключевой последовательности К, с вещественным результатом на отрезке [0,0,25]. Вероятность Рi каждого i-го (i=1, 2,3,...,М) символа увеличивается на результат F1:According to the proposed method, all three types of additional cryptographic transformations of the arithmetic coding algorithm are used as a cryptographic data conversion. As the transformation F 1 , a pseudo-random function is selected, depending on the key sequence K, with a real result on the interval [0,0,25]. The probability P i of each i-th (i = 1, 2,3, ..., M) symbol increases by the result of F 1 :

Pi=Pi+F1(K, i)P i = P i + F 1 (K, i)

После чего все Pi нормируются так, чтобы соответствовать условию полной системы i несовместных событий [7], так чтоAfter that, all P i are normalized so as to correspond to the condition of the complete system i of incompatible events [7], so that

Figure 00000003
Figure 00000003

Для этого все Pi умножаются на нормирующий множитель 0<μ≤1, который вычисляется по формулеTo do this, all P i are multiplied by the normalizing factor 0 <μ≤1, which is calculated by the formula

Figure 00000004
Figure 00000004

В качестве преобразования F2 выбирается псевдослучайная функция, зависящая от ключевой последовательности К, с целочисленным результатом на отрезке [1, М]. Множество ее 2М первых значений разбивается на пары (aq, bq), где q=1,...,M. Затем выполняется перестановка местами символа aq с символом bq в таблице символов.As the transformation F 2 , a pseudo-random function is selected depending on the key sequence K, with an integer result on the interval [1, M]. The set of its 2M first values is divided into pairs (a q , b q ), where q = 1, ..., M. Then a permutation of the symbol a q with the symbol b q in the symbol table is performed.

В качестве преобразования F3 выбирается псевдослучайная функция, зависящая от ключевой последовательности К, с целочисленным результатом на отрезке [1, М]. Множество ее 2М первых значений разбивается на пары (aq, bq), где q=1,...,M. Затем выполняется обмен интервалов вероятностей символа aq и символа bq в таблице интервалов вероятностей, то есть:As the transformation F 3 , a pseudo-random function is selected that depends on the key sequence K, with an integer result on the interval [1, M]. The set of its 2M first values is divided into pairs (a q , b q ), where q = 1, ..., M. Then, the probability intervals of the symbol a q and symbol b q are exchanged in the table of probability intervals, that is:

Laq заменяется на Lbq и Lbq заменяется на Laq; La q is replaced by Lb q and Lb q is replaced by La q;

Haq заменяется на Hbq и Hbq заменяется на Haq. Ha q is replaced by Hb q and Hb q is replaced by Ha q.

При обратном криптографическом преобразовании последовательность действий сохраняется и все виды дополнительных криптографических преобразований производятся аналогично.In the reverse cryptographic transformation, the sequence of actions is preserved and all types of additional cryptographic transformations are performed in a similar way.

Изобретение поясняется фиг.1,на которой представлена блок-схема устройства для реализации способа с помощью ЭВМ или вычислительного устройства.The invention is illustrated in figure 1, which shows a block diagram of a device for implementing the method using a computer or computing device.

Устройство для реализации способа состоит из блока 1 ввода ключевой последовательности; блока 2 ввода входных данных; блока 3 хранения таблицы обрабатываемых символов; блока 4 хранения таблицы интервалов вероятности для каждого символа; операционного блока 5, реализующего преобразование F1; операционного блока 6, реализующего преобразование F2; операционного блока 7, реализующего преобразование F3; операционного блока 8, реализующего арифметическое сжатие с использованием блока 2, блока 3 и блока 4; блока 9 выходных данных.A device for implementing the method consists of a key sequence input unit 1; input input unit 2; block 3 storing the table of processed characters; a probability interval table storage unit 4 for each symbol; an operation unit 5 implementing the transformation F 1 ; an operation unit 6 implementing the transformation F 2 ; an operation unit 7 implementing the F 3 transformation; operating unit 8, which implements arithmetic compression using block 2, block 3 and block 4; block 9 output.

Согласно предлагаемому способу, устройство работает следующим образом. Используя блок 1 (алфавитно-цифровое устройство ввода информации, как, например, описанное в [6]), в устройство вводят секретную ключевую последовательность, которая передается на вход блока 5, блока 6 и блока 7 (операционные блоки, организованные согласно [8]), а выходные данные блока 5 в блок 4, где преобразовывается таблица вероятностей появления символов. Вероятность Pi каждого i-гo (i=1, 2, 3,...,М) символа увеличивается на результат преобразования F1:According to the proposed method, the device operates as follows. Using block 1 (an alphanumeric information input device, such as described in [6]), a secret key sequence is introduced into the device, which is transmitted to the input of block 5, block 6, and block 7 (operation blocks organized according to [8] ), and the output of block 5 to block 4, where the table of probabilities of occurrence of symbols is converted. The probability P i of each i-th (i = 1, 2, 3, ..., M) symbol increases by the result of the transformation F 1 :

Pi=Pi+F1(K, i)P i = P i + F 1 (K, i)

После чего все Pi умножаются на нормирующий множитель 0<μ≤1, который вычисляется по формулеThen all P i are multiplied by the normalizing factor 0 <μ≤1, which is calculated by the formula

Figure 00000005
Figure 00000005

Таким образом, содержимое блока 3 и 4 определяется один раз в начале кодирования с помощью блока 5 и ключевой последовательности. С помощью блока 2 (аналогичного по устройству блоку 1) в устройство по одному символу вводят данные, предназначенные для зашифрования, после чего данные помещаются в блок 8, где посимвольно кодируются с использованием таблиц из блока 3 и блока 4 [4]. Затем на каждом шаге кодирования содержимое блока 3 обновляется с помощью блока 6 следующим образом: из блока 6 извлекается 2М первых значений, которые разбиваются на М пар (aq, bq), где q=1,...,М. Затем с помощью блока 6 выполняется перестановка местами символа aq с символом bq в таблице символов блока 3. Также, на каждом шаге кодирования содержимое блока 4 обновляется с помощью блока 7 следующим образом: из блока 7 извлекается 2М первых значений, которые разбиваются на М пар (aq, bq), где q=1,...,M. Затем выполняется переприсвоение интервалов вероятностей символа aq и символа bq в таблице интервалов вероятностей, то есть:Thus, the contents of block 3 and 4 are determined once at the beginning of coding using block 5 and a key sequence. Using block 2 (block 1 similar to the device), the data intended for encryption is entered one by one character into the device, after which the data is placed in block 8, where it is encoded using the tables from block 3 and block 4 [4]. Then, at each coding step, the contents of block 3 are updated using block 6 as follows: 2M of the first values are extracted from block 6, which are divided into M pairs (a q , b q ), where q = 1, ..., M. Then, using block 6, the symbol a q is replaced with the symbol b q in the symbol table of block 3. Also, at each coding step, the contents of block 4 are updated using block 7 as follows: 2M first values are extracted from block 7, which are divided into M pairs (a q , b q ), where q = 1, ..., M. Then the reassignment of the probability intervals of the symbol a q and the symbol b q is performed in the table of probability intervals, that is:

Laq заменяется на Lbq и Lbq заменяется на Laq; La q is replaced by Lb q and Lb q is replaced by La q;

Haq заменяется на Hbq и Hbq заменяется на Haq. Ha q is replaced by Hb q and Hb q is replaced by Ha q.

Затем входные данные, преобразованные описанным выше способом, посимвольно передаются в блок 9 (алфавитно-цифровое устройство вывода, описанное, например, в [8]), откуда могут быть непосредственно извлечены. Процесс зашифрования завершается, как только обработан последний символ входных данных. После чего зашифрованные данные извлекаются из блока 9.Then, the input data converted by the method described above is transmitted symbolically to block 9 (alphanumeric output device described, for example, in [8]), from where it can be directly extracted. The encryption process ends as soon as the last character of the input data is processed. After that, the encrypted data is extracted from block 9.

При обратном криптографическом преобразовании для расшифрования данных используется устройство, идентичное данному. Расшифрование данных происходит в том же порядке.In reverse cryptographic conversion, a device identical to this is used to decrypt the data. Data decryption occurs in the same order.

Таким образом, в данном способе повышается сложность криптоанализа и несанкционированного дешифрования зашифрованной информации, снижаются энергетические затраты на обработку, передачу и хранение зашифрованной информации, чем достигается поставленный технический результат.Thus, in this method, the complexity of cryptanalysis and unauthorized decryption of encrypted information is increased, the energy cost of processing, transmitting and storing encrypted information is reduced, thereby achieving the technical result.

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

1. Патент РФ №2099890 С1, кл. Н 04 L 9/00.1. RF patent No. 2099890 C1, cl. H 04 L 9/00.

2. Патент РФ №2103829 С1, кл. Н 04 L 9/20.2. RF patent No. 2103829 C1, cl. H 04 L 9/20.

3. Патент РФ №2130641 С1, кл. G 06 F 13/00, G 09 С 1/00, Н 04 L 9/00 - прототип.3. RF patent No. 2130641 C1, cl. G 06 F 13/00, G 09 C 1/00, H 04 L 9/00 - prototype.

4. Witten Ian H., Neal Radford M., Cleary John G. Arithmetic coding for data compression. Communications of the ACM. - June 1987, Vol.30, N6.4. Witten Ian H., Neal Radford M., Cleary John G. Arithmetic coding for data compression. Communications of the ACM. - June 1987, Vol.30, N6.

5. Мастрюков Д. Алгоритмы сжатия информации. Арифметическое кодирование. - M.: Монитор, N1, 1994.5. Mastryukov D. Algorithms for information compression. Arithmetic coding. - M .: Monitor, N1, 1994.

6. Клингман Э. Проектирование специализированных микропроцессорных систем. - M.: Мир, 1985.6. Klingman E. Designing specialized microprocessor systems. - M .: Mir, 1985.

7. Гмурман В. Теория вероятностей и математическая статистика. - М.: Высшая школа, 2000.7. Gmurman V. Probability Theory and Mathematical Statistics. - M.: Higher School, 2000.

8. Зангер Г. Электронные системы. Теория и применение. - М.: Мир, 1980.8. Zanger G. Electronic systems. Theory and application. - M .: Mir, 1980.

Claims (3)

1. Способ криптографического преобразования двоичных данных, заключающийся в том, что на передающей стороне исходная информация искажается с помощью ключевой последовательности, а на приемной стороне искаженная информация восстанавливается с помощью ключевой последовательности с посимвольной обработкой, отличающийся тем, что входные двоичные данные разбивают на блоки фиксированной длины и кодируют поочередно, подвергая их преобразованию методом арифметического кодирования с криптографическими функциями F1, F2 и F3, зависящими от указанной ключевой последовательности, в качестве криптографического преобразования F2 и F3 выбирают псевдослучайные функции, на каждом шаге кодирования вводят данные для арифметического кодирования посимвольно и кодируют их с использованием таблицы символов, реализующих преобразование F2 и таблицы интервалов вероятности появления символов, реализующих преобразование F3, на каждом шаге кодирования обновляют таблицу символов путем извлечения из нее N ее первых значений, разбивают их на пары, переставляют местами извлеченные символы в таблице символов, а также на каждом шаге кодирования из таблицы интервалов вероятности появления каждого символа извлекают N ее первых значений, разбивают их на пары, затем выполняют обмен интервалами вероятности появления в указанной таблице, после чего преобразованные входные данные передают в блок выходных данных.1. The method of cryptographic conversion of binary data, namely, that on the transmitting side, the original information is distorted using a key sequence, and on the receiving side, the distorted information is restored using a key sequence with character processing, characterized in that the input binary data is divided into fixed blocks lengths and encode alternately, subjecting them to conversion by the method of arithmetic encoding with cryptographic functions F 1 , F 2 and F 3 depending on yk pseudorandom functions are selected as the cryptographic transformation F 2 and F 3 , at each coding step enter data for arithmetic coding character-by-character and encode them using a symbol table implementing the F 2 transformation and a table of probability intervals for the occurrence of the symbols implementing the F 3 transformation , at each coding step, the symbol table is updated by extracting N of its first values from it, break them into pairs, rearrange the extracted characters in t blitz symbols, and at each step of the encoding table of intervals occurrence probability of each character is extracted its first N values, divide them into pairs and then performing the exchange intervals probability of occurrence in said table, after which the converted input data is transmitted to the output data block. 2. Способ по п.1, отличающийся тем, что в качестве функции преобразования F2 используют функцию линейного конгруэнтного преобразования вида F(х)=ax+b·mod с, с начальным значением, зависящим от заданной ключевой последовательности, где а и b выбираются так, чтобы генерируемая последовательность не обладала периодом максимальной длины, а константа с выбирается равной М, где М - количество символов.2. The method according to claim 1, characterized in that, as a transformation function F 2 , a linear congruent transformation function of the form F (x) = ax + b · mod c is used, with an initial value depending on a given key sequence, where a and b are chosen so that the generated sequence does not have a period of maximum length, and the constant c is chosen equal to M, where M is the number of characters. 3. Способ по п.1, отличающийся тем, что в качестве составляющей функций преобразования F1 и F3, используют нормированную функцию линейного конгруэнтного преобразования вида3. The method according to claim 1, characterized in that as a component of the transformation functions F 1 and F 3 , use the normalized linear congruent transformation function of the form
Figure 00000006
Figure 00000006
с начальным значением, зависящим от заданной ключевой последовательности и разным для обеих F1 и F3, где константы а и b выбираются так, чтобы генерируемая последовательность не обладала периодом максимальной длины, константа с для F1 и F3 выбирается равной целой части 0,25N, где N - фиксированное простое целое число большого порядка, выбранное произвольно до начала кодирования.with the initial value depending on the given key sequence and different for both F 1 and F 3 , where the constants a and b are chosen so that the generated sequence does not have a period of maximum length, the constant c for F 1 and F 3 is chosen equal to the integer part 0, 25N, where N is a fixed prime integer of a large order, chosen arbitrarily before encoding.
RU2001129345/09A 2001-11-01 2001-11-01 Method for binary data cryptographic conversion RU2226041C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2001129345/09A RU2226041C2 (en) 2001-11-01 2001-11-01 Method for binary data cryptographic conversion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2001129345/09A RU2226041C2 (en) 2001-11-01 2001-11-01 Method for binary data cryptographic conversion

Publications (2)

Publication Number Publication Date
RU2001129345A RU2001129345A (en) 2003-08-10
RU2226041C2 true RU2226041C2 (en) 2004-03-20

Family

ID=32390094

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2001129345/09A RU2226041C2 (en) 2001-11-01 2001-11-01 Method for binary data cryptographic conversion

Country Status (1)

Country Link
RU (1) RU2226041C2 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2325039C2 (en) * 2006-06-06 2008-05-20 Сергей Николаевич Молотков Method of encoding and encryption keys transmission
RU2434266C2 (en) * 2009-05-19 2011-11-20 Федеральное государственное учреждение "Государственный научно-исследовательский испытательный институт проблем технической защиты информации Федеральной службы по техническому и экспортному контролю" Method of protecting information from unauthorised access
RU2446449C2 (en) * 2010-06-23 2012-03-27 Федеральное государственное военное образовательное учреждение высшего профессионального образования Военная академия Ракетных войск стратегического назначения имени Петра Великого МО РФ Bijective cryptographic mathematical function generator
RU2469484C2 (en) * 2010-09-06 2012-12-10 Государственное образовательное учреждение высшего профессионального образования "Поволжский государственный университет телекоммуникаций и информатики" (ГОУВПО ПГУТИ) Method of coding by adaptive method of multialphabetical replacement
RU2510942C1 (en) * 2012-12-05 2014-04-10 Владимир Петрович Панов Method of transmitting and receiving information
RU2510941C1 (en) * 2012-12-05 2014-04-10 Владимир Петрович Панов Information transmission and reception system
RU2595953C1 (en) * 2015-08-04 2016-08-27 Акционерное общество "Концерн радиостроения "Вега" Method for arithmetic encoding with encryption
RU2656713C1 (en) * 2017-02-13 2018-06-06 федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации Method for arithmetic encoding with encryption

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2099890C1 (en) * 1994-04-19 1997-12-20 Борис Владимирович Березин Method and device for binary data encryption
RU2103829C1 (en) * 1997-04-02 1998-01-27 Государственное унитарное предприятие "Специализированный центр программных систем "Спектр" Method for encoding information which is represented in binary code
US5778011A (en) * 1995-06-07 1998-07-07 International Business Machines Corporation Method and apparatus for writing and protecting against random and cluster errors in image blocks
RU2130641C1 (en) * 1998-08-24 1999-05-20 Таганрогский государственный радиотехнический университет Method and device for information protection against unauthorized access
US6046744A (en) * 1996-01-11 2000-04-04 Microsoft Corporation Selective refinement of progressive meshes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2099890C1 (en) * 1994-04-19 1997-12-20 Борис Владимирович Березин Method and device for binary data encryption
US5778011A (en) * 1995-06-07 1998-07-07 International Business Machines Corporation Method and apparatus for writing and protecting against random and cluster errors in image blocks
US6046744A (en) * 1996-01-11 2000-04-04 Microsoft Corporation Selective refinement of progressive meshes
RU2103829C1 (en) * 1997-04-02 1998-01-27 Государственное унитарное предприятие "Специализированный центр программных систем "Спектр" Method for encoding information which is represented in binary code
RU2130641C1 (en) * 1998-08-24 1999-05-20 Таганрогский государственный радиотехнический университет Method and device for information protection against unauthorized access

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2325039C2 (en) * 2006-06-06 2008-05-20 Сергей Николаевич Молотков Method of encoding and encryption keys transmission
RU2434266C2 (en) * 2009-05-19 2011-11-20 Федеральное государственное учреждение "Государственный научно-исследовательский испытательный институт проблем технической защиты информации Федеральной службы по техническому и экспортному контролю" Method of protecting information from unauthorised access
RU2446449C2 (en) * 2010-06-23 2012-03-27 Федеральное государственное военное образовательное учреждение высшего профессионального образования Военная академия Ракетных войск стратегического назначения имени Петра Великого МО РФ Bijective cryptographic mathematical function generator
RU2469484C2 (en) * 2010-09-06 2012-12-10 Государственное образовательное учреждение высшего профессионального образования "Поволжский государственный университет телекоммуникаций и информатики" (ГОУВПО ПГУТИ) Method of coding by adaptive method of multialphabetical replacement
RU2510942C1 (en) * 2012-12-05 2014-04-10 Владимир Петрович Панов Method of transmitting and receiving information
RU2510941C1 (en) * 2012-12-05 2014-04-10 Владимир Петрович Панов Information transmission and reception system
WO2014088455A1 (en) * 2012-12-05 2014-06-12 Panov Vladimir Petrovich Method for transmitting and receiving information
WO2014088456A1 (en) * 2012-12-05 2014-06-12 Panov Vladimir Petrovich System for transmitting and receiving information
RU2595953C1 (en) * 2015-08-04 2016-08-27 Акционерное общество "Концерн радиостроения "Вега" Method for arithmetic encoding with encryption
RU2656713C1 (en) * 2017-02-13 2018-06-06 федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации Method for arithmetic encoding with encryption

Similar Documents

Publication Publication Date Title
KR100471738B1 (en) Method and apparatus for encrypting data
Wong et al. Simultaneous arithmetic coding and encryption using chaotic maps
KR100296958B1 (en) Apparatus for encoding block data
US5751811A (en) 32N +D bit key encryption-decryption system using chaos
US7218733B2 (en) Encryption method, program for encryption, memory medium for storing the program, and encryption apparatus, as well as decryption method and decryption apparatus
Alsaidi et al. Compression multi-level crypto stego security of texts utilizing colored email forwarding
US10419207B2 (en) Cryptographic apparatuses and methods for encrypting and decrypting data using automata
EP1553490A2 (en) Cryptographic apparatus, cryptographic method, and storage medium thereof
Bouslehi et al. Innovative image encryption scheme based on a new rapid hyperchaotic system and random iterative permutation
Zhdanov et al. Block symmetric cryptographic algorithm based on principles of variable block length and many-valued logic
RU2226041C2 (en) Method for binary data cryptographic conversion
KR20050076015A (en) Finite field multiplier
RU2141729C1 (en) Method for encrypting of binary data units
RU2130641C1 (en) Method and device for information protection against unauthorized access
Biryukov et al. Cryptanalysis of the “kindle” cipher
RU2188513C2 (en) Method for cryptographic conversion of l-bit digital-data input blocks into l-bit output blocks
Yang et al. A new cryptosystem based on chaotic map and operations algebraic
Alaojan et al. A modified Blowfish algorithm to secure data in cloud
RU2140709C1 (en) Process of cryptographic conversion of blocks of digital data
Young et al. Backdoor attacks on black-box ciphers exploiting low-entropy plaintexts
Mani et al. Enhancing security in cryptographic algorithm based on LECCRS
RU2207736C2 (en) Process encoding data blocks
KR100350207B1 (en) Method for cryptographic conversion of l-bit input blocks of digital data into l-bit output blocks
KR960006386A (en) Encryption and Decryption Method of Digital Information
Samid A Unary Cipher with Advantages over the Vernam Cipher

Legal Events

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

Effective date: 20041102

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

Effective date: 20120725

RZ4A Other changes in the information about an invention