RU2542929C1 - Method to code data unit represented as bit string - Google Patents

Method to code data unit represented as bit string Download PDF

Info

Publication number
RU2542929C1
RU2542929C1 RU2014114769/08A RU2014114769A RU2542929C1 RU 2542929 C1 RU2542929 C1 RU 2542929C1 RU 2014114769/08 A RU2014114769/08 A RU 2014114769/08A RU 2014114769 A RU2014114769 A RU 2014114769A RU 2542929 C1 RU2542929 C1 RU 2542929C1
Authority
RU
Russia
Prior art keywords
bit
bit string
cryptogram
binary
auxiliary
Prior art date
Application number
RU2014114769/08A
Other languages
Russian (ru)
Inventor
Александр Андреевич Молдовян
Николай Андреевич Молдовян
Михаил Алексеевич Еремеев
Сергей Владимирович Пилькевич
Original Assignee
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина)"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина)" filed Critical Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина)"
Priority to RU2014114769/08A priority Critical patent/RU2542929C1/en
Application granted granted Critical
Publication of RU2542929C1 publication Critical patent/RU2542929C1/en

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

FIELD: information technologies.
SUBSTANCE: method to code a data unit represented as a bit string consisting in formation of a secret key in the form of subkeys K and Q, which represent bit strings, formation of an auxiliary n-bit string T, formation of an n-bit auxiliary cryptogram CM by performance of operation of E coding on the data unit M depending on K according to the formula CM=EK(M), formation of an n-bit auxiliary cryptogram CT by performance of operation of E coding on the n-bit string T depending on Q according to the formula CT=EQ(T), formation of 2n-bit cryptogram C depending on subkeys K and Q and auxiliary cryptograms CM and CT, differing by the fact that the subkey K is formed as a 2n-bit string, representing concatenation o two n-bit strings k1 and k2, the subkey Q is formed as a 2n-bit string, representing concatenation of two n-bit strings q1 and q2, the (n+1)-bit string m is formed, and the 2n-bit cryptogram C is formed as concatenation of two binary polynomials of degree n-1, being the solution to the system of two linear equations k1C1+k2C2=CM mod m and q1C1+q2C2=CT mod m with two unknown binary polynomials C1 and C2, in which m is an additionally formed polynomial of degree n, and n-bit strings k1, k2, q1, q2, CM, CT are considered as binary polynomials of degree n-1, and (n+1)-bit string m is considered as a binary polynomial of degree n.
EFFECT: increased level of protection of coded information.
2 cl

Description

Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области криптографических способов и устройств для защиты информации, передаваемой по телекоммуникационным сетям путем шифрования1 (1 Толкование используемых в описании терминов приведено в Приложении 1) сообщений (информации).The invention relates to the field of telecommunications and computing, and more particularly to the field of cryptographic methods and devices for protecting information transmitted over telecommunication networks by encryption 1 ( 1 The interpretation of the terms used in the description is given in Appendix 1) messages (information).

Известны способы шифрования электронных сообщений, представленных в цифровом виде, а именно, в виде двоичных данных, выполняемые по секретному ключу, например способ, реализованный в виде алгоритма блочного шифрования RC5 [B. Schneier, "Applied Cryptography", Second Eddition, John Wiley & Sons, Inc., New York, 1996, рр. 344-346]. Способ включает в себя формирование секретного ключа в виде совокупности подключей, разбиение n-битового двоичного блока информации на n/2-битовые информационные подблоки A и B и поочередное преобразование данных подблоков. Подблоки преобразуются путем последовательного выполнения над ними линейных и нелинейных операций, в качестве которых используются операции суммирования по модулю 2m, где m=n/2=8, 16, 32, 64, поразрядного суммирования по модулю 2 и циклического сдвига влево, причем число бит, на которое сдвигается преобразуемый подблок, зависит от значения другого подблока. Последнее свойство является характерным для способа RC5 и определяет зависимость операции циклического сдвига на текущем шаге преобразования подблока от исходного значения входного блока данных. Подблок информации, например подблок B, преобразуют путем наложения подблока A на подблок B с помощью операции поразрядного суммирования по модулю 2 B:=B⊕A. После этого над подблоком B выполняют операцию циклического сдвига влево на число бит, равное значению подблока A:B:=B<<<A. Затем над подблоком B и одним из подключей K выполняют операцию суммирования по модулю 2m, где m - длина подблока в битах: B:=(B+K)mod 2m. После этого аналогичным образом преобразуется подблок A. В зависимости от размеров ключа выполняется несколько таких итераций преобразования обоих подблоков. Данный способ обеспечивает достаточно высокую скорость шифрования при программной реализации. Недостатком способа шифрования RC5 является невысокая стойкость к дифференциальному и линейному видам криптоанализа [Kaliski B.S., Yin Y.L. On Differential and Linear Cryptanalysis of the RC5 Encryption Algorithm. Advances in Cryptology - CRYPTO 95. Proceedings, Springer-Verlag, 1995, pp. 171-184].Known methods for encrypting electronic messages presented in digital form, namely, in the form of binary data, performed using a secret key, for example, a method implemented in the form of a block encryption algorithm RC5 [B. Schneier, "Applied Cryptography", Second Eddition, John Wiley & Sons, Inc., New York, 1996, pp. 344-346]. The method includes generating a secret key in the form of a set of subkeys, splitting the n-bit binary information block into n / 2-bit information subunits A and B, and sequentially converting the data of the subunits. The subunits are transformed by sequentially performing linear and nonlinear operations on them, using the summation modulo 2 m , where m = n / 2 = 8, 16, 32, 64, bitwise summation modulo 2 and a cyclic shift to the left, and the number the bit by which the converted subblock is shifted depends on the value of the other subblock. The latter property is characteristic of the RC5 method and determines the dependence of the cyclic shift operation at the current step of converting a subunit on the initial value of the input data block. The information subblock, for example subblock B, is transformed by superimposing subblock A onto subblock B using the bitwise summing operation modulo 2 B: = B⊕A. After that, the operation of cyclic left shift by the number of bits equal to the value of subunit A is performed on subblock B: B: = B <<< A. Then, the summing operation modulo 2 m is performed on subblock B and one of the K subkeys, where m is the length of the subblock in bits: B: = (B + K) mod 2 m . After that, the subunit A is similarly converted. Depending on the size of the key, several such iterations of the conversion of both subunits are performed. This method provides a fairly high encryption speed in software implementation. The disadvantage of the RC5 encryption method is its low resistance to differential and linear types of cryptanalysis [Kaliski BS, Yin YL On Differential and Linear Cryptanalysis of the RC5 Encryption Algorithm. Advances in Cryptology - CRYPTO 95. Proceedings, Springer-Verlag, 1995, pp. 171-184].

Известен способ шифрования n-битовых блоков данных [B. Schneier, "Applied Cryptography", Second Eddition, John Wiley & Sons, Inc., New York, 1996, pp. 193-194] путем генерации секретного ключа K, разбиения сообщения M на n-битовые блоки данных M1, M2, …, Mk где k - число блоков в сообщении; n≥64 бит, и последующего шифрования блоков данных M1, M2, …, Mk, причем процесс шифрования выполняют следующим путем. Шифруют блок M1 по секретному ключу, получая блок криптограммы C1, затем, начиная со значения i=2 и до значения i=k, суммируют с помощью операции поразрядного суммирования блок криптограммы Ci-1 и блок Mi, полученный в результате суммирования блок данных, шифруют по секретному ключу, получая в результате текущий блок криптограммы Ci. Совокупность блоков криптограммы C1, C2, …, Ck представляет собой криптограмму, содержащую сообщение в скрытом виде. Извлечение сообщения из криптограммы практически возможно только с использованием секретного ключа, использованного при шифровании, за счет чего достигается защита информации, содержащейся в сообщении при его передачи по открытым каналам связи. Данный способ обеспечивает улучшение статистических свойств криптограммы, однако он имеет недостаток, состоящий в том, что теряется возможность независимого расшифрования отдельных блоков криптограммы.A known method of encryption of n-bit data blocks [B. Schneier, "Applied Cryptography", Second Eddition, John Wiley & Sons, Inc., New York, 1996, pp. 193-194] by generating the secret key K, splitting the message M into n-bit data blocks M 1 , M 2 , ..., M k where k is the number of blocks in the message; n≥64 bits, and subsequent encryption of the data blocks M 1 , M 2 , ..., M k , and the encryption process is performed in the following way. The block M 1 is encrypted with the secret key, obtaining a cryptogram block C 1 , then, starting from the value i = 2 and up to the value i = k, the cryptogram block C i-1 and the block M i obtained by summing are summed using the bitwise summing operation a data block is encrypted with a secret key, resulting in the current cryptogram block C i . The set of blocks of the cryptogram C 1 , C 2 , ..., C k is a cryptogram containing a message in a hidden form. Removing a message from a cryptogram is practically possible only using the secret key used in encryption, which ensures protection of the information contained in the message when it is transmitted over open communication channels. This method provides an improvement in the statistical properties of the cryptogram, however, it has the disadvantage that the ability to independently decrypt individual blocks of the cryptogram is lost.

Наиболее близким по своей технической сущности к заявляемому способу шифрования блока данных M, представленного в виде n-битовой строки, является способ, описанный в патенте №2459275 [Молдовян А.А., Молдовян Н.А. Способ блочного шифрования сообщения M, представленного в двоичном виде. Патент №2459275] по п. 2 формулы изобретения указанного патента. Способ-прототип включает в себя формирование секретного ключа, включающего подключи K и Q, формирование вспомогательного n-битового блока двоичных данных T, формирование n-битовой вспомогательной криптограммы CM путем выполнения над M операции блочного шифрования E в зависимости от K по формуле CM=EK(M), формирование n-битовой вспомогательной криптограммы CT путем выполнения над T операции блочного шифрования E в зависимости от Q по формуле CT=EQ(T), формирование криптограммы C в зависимости от секретного ключа и вспомогательных криптограмм CM и CT.The closest in technical essence to the claimed method of encrypting a data block M, represented as an n-bit string, is the method described in patent No. 2459275 [Moldovyan A.A., Moldovyan N.A. A method for block encrypting a binary M message. Patent No. 2459275] according to claim 2 of the claims of the specified patent. The prototype method includes generating a secret key, including subkeys K and Q, generating an auxiliary n-bit block of binary data T, generating an n-bit auxiliary cryptogram C M by performing block encryption operation E on M depending on K using the formula C M = E K (M), generating an n-bit auxiliary cryptogram C T by performing block ciphering operations E on Q depending on Q using the formula C T = E Q (T), generating a cryptogram C depending on the secret key and auxiliary cryptograms C M and C T.

Способ-прототип позволяет реализовать защиту информации с использованием механизма обманных ловушек, который состоит в том, что потенциальному злоумышленнику подставляется часть секретного ключа, включающая подключ Q, в качестве ключа расшифрования, а в качестве вспомогательного n-битового блока двоичных данных T используется n-битовый блок фиктивного сообщения. Блок криптограммы C расшифровывается путем его преобразования по дополнительному ключу, приводящего к получению вспомогательной криптограммы C*, представляющей собой конкатенациию двух n-битовых строк CM и C T : C = C M C T

Figure 00000001
. Затем правая n-битовая строка CT расшифровывается путем выполнения операции блочного преобразования D, обратной к операции блочного шифрования E, т.е. по формуле T=DQ(CT). Аналогичная процедура расшифрования выполняется с использованием подключа K и левой n-битовой строки CM вспомогательной криптограммы C = C M C T
Figure 00000002
, а именно данных М, восстанавливается по формуле M=DK(CM). Недостатком способа прототипа является то, что различные части вспомогательной криптограммы C* используются при расшифровании блока данных M и блока фиктивного сообщения T. Это демаскирует факт наличия в блоке криптограммы C блока данных M.The prototype method allows to protect information using the mechanism of fraudulent traps, which consists in the fact that the potential attacker is substituted with a part of the secret key, including subkey Q, as the decryption key, and n-bit is used as an auxiliary n-bit block of binary data T dummy message block. The cryptogram block C is decrypted by converting it with an additional key, resulting in an auxiliary cryptogram C *, which is a concatenation of two n-bit strings C M and C T : C = C M C T
Figure 00000001
. Then, the right n-bit string C T is decrypted by performing the block transform operation D inverse to the block encryption operation E, i.e. by the formula T = D Q (C T ). A similar decryption procedure is performed using subkey K and the left n-bit string C M auxiliary cryptogram C = C M C T
Figure 00000002
, namely the data M, is restored by the formula M = D K (C M ). The disadvantage of the prototype method is that the various parts of the auxiliary cryptogram C * are used when decrypting the data block M and the fictitious message block T. This unmasks the fact that the cryptogram block C contains the data block M.

Задачей, на решение которой направлено заявляемое техническое решение, является разработка способа шифрования блока данных M, представленного в виде n-битовой строки, обеспечивающего эффективную маскировку факта наличия n-битового блока данных M в 2n-битовом блоке криптограммы C за счет формирования n-битовой вспомогательной криптограммы и использования всех ее битов при выполнении процедур расшифрования как n-битового блока данных M, так и вспомогательной n-битовой строки T.The problem to which the claimed technical solution is directed is to develop a method for encrypting a data block M, presented in the form of an n-bit string, which provides an effective masking of the presence of an n-bit data block M in a 2n-bit block of cryptogram C due to the formation of an n-bit auxiliary cryptogram and the use of all its bits when decrypting both the n-bit data block M and the auxiliary n-bit string T.

Техническим результатом нового способа шифрования блока данных, представленного в виде битовой строки, является повышение уровня защищенности информации, шифруемой с его применением. Данный технический результат достигается тем, что в способе шифрования блока данных M, представленного в виде n-битовой строки, заключающемся в формировании секретного ключа в виде подключей K и Q, представляющих собой битовые строки, формировании вспомогательной n-битовой строки T, формировании n-битовой вспомогательной криптограммы CM путем выполнения над блоком данных M операции блочного шифрования E в зависимости от K по формуле CM=EK(M), формировании n-битовой вспомогательной криптограммы CT путем выполнения над n-битовой строкой T операции блочного шифрования E в зависимости от Q по формуле CT=EQ(T), формировании 2n-битовой криптограммы C в зависимости от подключей K и Q и вспомогательных криптограмм CM и CT,The technical result of a new method of encrypting a data block represented as a bit string is to increase the level of security of information encrypted with its use. This technical result is achieved in that in a method of encrypting a data block M represented as an n-bit string, which consists in generating a secret key in the form of subkeys K and Q, which are bit strings, forming an auxiliary n-bit string T, forming n- auxiliary bit cryptogram C M by performing the above operations data block M the block cipher E K according to the formula C M = E K (M), forming an auxiliary n-bit cryptogram C T by subjecting the n-bit string step T the block cipher E according to the formula C Q T Q = E (T), forming 2n-bit cryptogram C depending on subkey K and Q and auxiliary cryptograms C M and C T,

новым является то, что подключ K формируют в виде 2n-битовой строки, представляющей собой конкатенацию двух n-битовых строк k1 и k2, подключ Q формируют в виде 2n-битовой строки, представляющей собой конкатенацию двух n-битовых строк q1 и q2, формируют (n+1)-битовую строку m и формируют 2n-битовую криптограмму C в виде конкатенации двух двоичных многочленов степени n-1, являющихся решением системы из двух линейных уравнений k1C1+k2C2=CM mod m и q1C1+q2C2=CT mod m с двумя неизвестными двоичными многочленами C1 и C2, в которой m есть дополнительно сформированный многочлен степени n, а n-битовые строки k1, k2, q1, q2, CM, CT рассматриваются как двоичные многочлены степени n-1 и (n+1)-битовая строка m рассматривается как двоичный многочлен степени n.new is that subkey K is formed as a 2n-bit string representing the concatenation of two n-bit strings k 1 and k 2 , subkey Q is formed as a 2n-bit string representing the concatenation of two n-bit strings q 1 and q 2 , form an (n + 1) -bit string m and form a 2n-bit cryptogram C in the form of a concatenation of two binary polynomials of degree n-1, which are a solution of a system of two linear equations k 1 C 1 + k 2 C 2 = C M mod m, and c 1 q 1 + q 2 c 2 = T c mod m with two unknown binary polynomials c 1 and c 2 in which m is additionally sformirovannosti polynomial of degree n, and the n-bit string k 1, k 2, q 1, q 2, C M, C T are considered as binary polynomials of degree n-1 and (n + 1) -bit string m is considered as a binary polynomial of degree n .

Новым также является то, что формируют (n+1)-битовую строку m в виде неприводимого двоичного многочлена степени n.Also new is that they form an (n + 1) -bit string m in the form of an irreducible binary polynomial of degree n.

Формирование (n+1)-битовой строки m в виде неприводимого двоичного многочлена степени n снижает сложность вычисления решения системы линейных уравнений, за счет чего уменьшается время, необходимое для шифрования блока данных M, представленного в виде n-битовой строки.The formation of an (n + 1) -bit string m in the form of an irreducible binary polynomial of degree n reduces the complexity of computing the solution of a system of linear equations, thereby reducing the time required to encrypt a data block M represented as an n-bit string.

Благодаря указанной новой совокупности существенных признаков за счет формирования n-битовых вспомогательных криптограмм CM и CT обеспечивается использование всех битов вспомогательной криптограммы при выполнении процедуры расшифрования как блока данных M, так и вспомогательной n-битовой строки T, в качестве которой может быть применен n-битовой блок фиктивного сообщения. Это обеспечивает эффективную маскировку факта наличия n-битового блока данных M в 2n-битовом блоке криптограммы C при ее расшифровании потенциальным нарушителем при использовании им элементов ключа Q и m2 в качестве ключа расшифрования, поскольку процедура расшифрования выполняется по одной и той же формуле при расшифровании блока данных M и блока фиктивного сообщения T.Thanks to this new set of essential features, by generating n-bit auxiliary cryptograms C M and C T, it is possible to use all bits of the auxiliary cryptogram when decrypting both the data block M and the auxiliary n-bit string T, which can be used as n bit block dummy message. This provides an effective masking of the presence of an n-bit data block M in the 2n-bit block of the cryptogram C when it is decrypted by a potential intruder when he uses the key elements Q and m 2 as the decryption key, since the decryption procedure is performed using the same formula for decryption a data block M and a dummy message block T.

Корректность заявленного способа шифрования блока данных M, представленного в виде n-битовой строки, состоит в том, что по 2n-битовой криптограмме C = C 1 C 2

Figure 00000003
может быть восстановлен n-битовый блока данных M по подключу K = k 1 k 2
Figure 00000004
по формуле M=DK((k1C1+k2C2)mod m), где D - операция блочного расшифрования, обратная операции блочного шифрования E, и вспомогательная n-битовая строка T по подключу Q = q 1 q 2
Figure 00000005
по формуле T=DQ((q1C1+q2C2)mod m).The correctness of the claimed method of encrypting a data block M, presented as an n-bit string, is that 2n-bit cryptogram C = C one C 2
Figure 00000003
can be restored n-bit data block M by subkey K = k one k 2
Figure 00000004
according to the formula M = D K ((k 1 C 1 + k 2 C 2 ) mod m), where D is the operation of block decryption, the inverse of the operation of block encryption E, and the auxiliary n-bit string T by connection Q = q one q 2
Figure 00000005
by the formula T = D Q ((q 1 C 1 + q 2 C 2 ) mod m).

Действительно, при выполнении процедуры расшифрования по подключу K = k 1 k 2

Figure 00000006
имеемIndeed, when performing the decryption procedure on the subkey K = k one k 2
Figure 00000006
we have

Figure 00000007
.
Figure 00000007
.

а при выполнении процедуры расшифрования по подключу Q = q 1 q 2

Figure 00000008
имеемand when I perform the decryption procedure on the plug Q = q one q 2
Figure 00000008
we have

Figure 00000009
.
Figure 00000009
.

Далее реализуемость и корректность заявленного способа шифрования блока данных M, представленного в виде n-битовой строки, иллюстрируется частными примерами его реализации.Further, the feasibility and correctness of the claimed method of encrypting a data block M, presented as an n-bit string, is illustrated by particular examples of its implementation.

Пример 1. Шифрование блока данных M, представленного в виде 65-битовой строки. Формируют секретный ключ в виде подключей K и Q, причем подключ K формируют в виде 130-битовой строки, представляющей собой конкатенацию двух 65-битовых строк k1 и k2, т.е. K=(k1, k2), а подключ Q формируют в виде 130-битовой строки, представляющей собой конкатенацию двух 65-битовых строк q1 и q2, т.е. Q=(q1, q2). Формируют 66-битовую строку

Figure 00000010
представляющую собой последовательность коэффициентов неприводимого двоичного многочлена степени 65, т.е. двоичного многочлена x65+x18+1 [см. таблицу неприводимых двоичных многочленов на с. 209 в книге Болотов А.А., Гашков С.Б., Фролов А.Б. Элементарное введение в эллиптическую криптографию: Протоколы криптографии на эллиптических кривых. - М.: КомКнига, 2006. - 280 с.]. Затем формируют вспомогательную 65-битовую строку T и 65-битовую вспомогательную криптограмму CM путем выполнения над блоком данных M операции блочного шифрования E в зависимости от подключа K=(k1, k2) по формуле CM=EK(M), где операция блочного шифрования описывается следующим алгоритмом:Example 1. Encryption of a data block M represented as a 65-bit string. The secret key is formed in the form of subkeys K and Q, and subkey K is formed in the form of a 130-bit string representing the concatenation of two 65-bit strings k 1 and k 2 , i.e. K = (k 1 , k 2 ), and the subkey Q is formed in the form of a 130-bit string representing the concatenation of two 65-bit strings q 1 and q 2 , i.e. Q = (q 1 , q 2 ). Form a 66-bit string
Figure 00000010
which is a sequence of coefficients of an irreducible binary polynomial of degree 65, i.e. binary polynomial x 65 + x 18 +1 [see table of irreducible binary polynomials on p. 209 in the book Bolotov A.A., Gashkov S.B., Frolov A.B. An Elementary Introduction to Elliptic Cryptography: Protocols of Cryptography on Elliptic Curves. - M .: KomKniga, 2006. - 280 p.]. Then, an auxiliary 65-bit string T and a 65-bit auxiliary cryptogram C M are formed by performing block ciphering operation E on the data block M depending on the subkey K = (k 1 , k 2 ) according to the formula C M = E K (M), where the operation of block encryption is described by the following algorithm:

1. Установить значение счетчика i←1 и переменной CM←M, где знак ← обозначает операцию присваивания.1. Set the value of the counter i ← 1 and the variable C M ← M, where the sign ← denotes the assignment operation.

2. Рассматривая 65-битовые строки k1 и M как двоичные многочлены, сформировать 65-битовую строку CM, представляющую собой последовательность коэффициентов двоичного многочлена, вычисленного по формуле CM←(k1CM mod m)<23<, где (…)<23< обозначает операцию циклического сдвига битовой строки (…) на 23 бита влево.2. Considering the 65-bit strings k 1 and M as binary polynomials, form a 65-bit string C M , which is a sequence of coefficients of the binary polynomial calculated by the formula C M ← (k 1 C M mod m) <23 < , where ( ...) <23 < denotes the operation of cyclic shift of the bit string (...) 23 bits to the left.

3. Рассматривая 65-битовую строку k2, преобразовать 65-битовую строку CM по формуле CM←(k2CM mod m)<17<, где (…)<17< обозначает операцию циклического сдвига битовой строки (…) на 17 бит влево.3. Considering the 65-bit string k 2 , convert the 65-bit string C M according to the formula C M ← (k 2 C M mod m) <17 < , where (...) <17 < denotes the operation of cyclic shift of the bit string (...) 17 bits to the left.

4. Прирастить значение счетчика i: i←i+1. Если i<10, то перейти к шагу 2, в противном случае текущее значение CM взять в качестве выходного значения операции блочного шифрования EK, выполненной над 65-битовым блоком данных M.4. Increase the value of counter i: i ← i + 1. If i <10, then go to step 2, otherwise, take the current value C M as the output value of the block encryption operation E K performed on the 65-bit data block M.

Затем формируют 65-битовую вспомогательную криптограмму CT путем выполнения над 65-битовой строкой T операции блочного шифрования E в зависимости от подключа Q=(q1, q2) по формуле CT=EQ(T) в соответствии со следующим алгоритмом:Then, a 65-bit auxiliary cryptogram C T is formed by performing block ciphering operation E on a 65-bit string T depending on the subkey Q = (q 1 , q 2 ) according to the formula C T = E Q (T) in accordance with the following algorithm:

1. Установить значение счетчика i←1 и переменной CT←T.1. Set the value of the counter i ← 1 and the variable C T ← T.

2. Рассматривая 65-битовые строки k2 и T как двоичные многочлены, сформировать 65-битовую строку CT, представляющую собой последовательность коэффициентов двоичного многочлена, вычисленного по формуле CT←(q1CT mod m)<23<.2. Considering the 65-bit strings k 2 and T as binary polynomials, form a 65-bit string C T , which is a sequence of coefficients of the binary polynomial calculated by the formula C T ← (q 1 C T mod m) <23 < .

3. Преобразовать 65-битовую строку CT по формуле CT←(q2CT mod m)<17<.3. Convert a 65-bit string C T according to the formula C T ← (q 2 C T mod m) <17 < .

4. Прирастить значение счетчика i: i←+1. Если i<10, то перейти к шагу 2, в противном случае текущее значение CM взять в качестве выходного значения операции блочного шифрования EQ(T), выполненной над 65-битовой строкой T.4. Increase the value of counter i: i ← + 1. If i <10, then go to step 2, otherwise, take the current value C M as the output value of the block encryption operation E Q (T) performed on the 65-bit string T.

После формирования вспомогательных криптограмм CM и CT в виде двоичных многочленов, представленных в виде 65-битовых строк, формируют 130-битовую криптограмму C путем решения следующей системы из двух линейных уравненийAfter the formation of auxiliary cryptograms C M and C T in the form of binary polynomials represented as 65-bit strings, a 130-bit cryptogram C is formed by solving the following system of two linear equations

Figure 00000011
.
Figure 00000011
.

Решением данной системы являются два двоичных многочлена C1 и C2, представленных в виде 65-битовых строк. Объединяя 65-битовые строки C1 и C2, получают 130-битовую криптограмму C = C 1 C 2

Figure 00000003
, где знак ║ обозначает операцию конкатенации (объединения) битовых строк.The solution to this system are two binary polynomials C 1 and C 2 , presented in the form of 65-bit strings. Combining the 65-bit strings C 1 and C 2 gives a 130-bit cryptogram C = C one C 2
Figure 00000003
, where the sign ║ denotes the operation of concatenation (union) of bit strings.

Доказательство корректности данного частного варианта заявленного способа шифрования блока данных M, представленного в виде 65-битовой строки, доказывается аналогично описанному ранее общему доказательству корректности заявленного способа с учетом того, что операция блочного расшифрования DK(CM), обратная операции блочного шифрования EK(M), реализуется следующей процедурой преобразования:The proof of the correctness of this particular variant of the claimed method of encrypting the data block M, presented as a 65-bit string, is proved similarly to the general proof of the correctness of the claimed method described above, given that the block decryption operation D K (C M ) is the opposite of the block encryption operation E K (M) is implemented by the following conversion procedure:

1. Установить значение счетчика i←1 и переменной M←CM.1. Set the value of the counter i ← 1 and the variable M ← C M.

2. Преобразовать 65-битовую строку М, выполняя последовательно вычисления по формулам M←M>17> и M M k 2 1 mod m

Figure 00000012
, где (…)>17>, обозначает операцию циклического сдвига битовой строки (…) на 17 бит вправо.2. Convert the 65-bit string M, performing sequential calculations using the formulas M ← M >17> and M M k 2 - one mod m
Figure 00000012
, where (...) >17> , denotes the operation of cyclic shift of the bit string (...) by 17 bits to the right.

3. Преобразовать 65-битовую строку М, выполняя последовательно вычисления по формулам M←M>23> и M M k 1 1 mod m

Figure 00000013
, где (…)>23>, обозначает операцию циклического сдвига битовой строки (…) на 23 бита вправо.3. Convert the 65-bit string M, performing sequential calculations using the formulas M ← M >23> and M M k one - one mod m
Figure 00000013
, where (...) >23> , denotes the operation of cyclic shift of the bit string (...) by 23 bits to the right.

4. Прирастить значение счетчика i: i←i+1. Если i<10, то перейти к шагу 2, в противном случае текущее значение M взять в качестве выходного значения операции DK, выполненной над 65-битовым блоком данных CM.4. Increase the value of counter i: i ← i + 1. If i <10, then go to step 2, otherwise, take the current value of M as the output value of the operation D K performed on the 65-bit data block C M.

Аналогично записывается процедура для реализации операции блочного расшифрования DQ(CT), обратная операции блочного шифрования EQ(T).The procedure for implementing the block decryption operation D Q (C T ), the inverse of the block encryption operation E Q (T), is written similarly.

Рассмотренная частная реализация заявленного способа может быть применена для совместного шифрование двух сообщений M и T, каждое из которых, например, имеет размер 65 Кбит. Сообщение M разбивается на 65-битовые блоки данных M1, M2, …, Mw, где w=1000. Сообщение T разбивается на на 65-битовые блоки данных T1, T2, …, Tw. Поочередно для значений i=1, 2, …, 1000 пары блоков данных (Mi, Ti,) совместно шифруются в соответствии с описанным примером реализации заявленного способа, в результате чего формируется шифртекст в виде последовательности 130-битовых криптограмм ( C 1 C 2 ) i

Figure 00000014
, i=1, 2, …, 1000.The considered private implementation of the claimed method can be used to jointly encrypt two messages M and T, each of which, for example, has a size of 65 Kb. The message M is divided into 65-bit data blocks M 1 , M 2 , ..., M w , where w = 1000. Message T is divided into 65-bit data blocks T 1 , T 2 , ..., T w . Alternately, for values i = 1, 2, ..., 1000, pairs of data blocks (M i , T i ,) are jointly encrypted in accordance with the described implementation example of the inventive method, resulting in ciphertext in the form of a sequence of 130-bit cryptograms ( C one C 2 ) i
Figure 00000014
, i = 1, 2, ..., 1000.

Пример 2. Шифрование блока данных M, представленного в виде 52-битовой строки. Формируют секретный ключ в виде подключей K и Q, причем подключ K формируют в виде 104-битовой строки, представляющей собой конкатенацию двух 52-битовых строк k1 и k2, т.е. K=(k1, k2), а подключ Q формируют в виде 104-битовой строки, представляющей собой конкатенацию двух 52-битовых строк q1 и q2, т.е. Q=(q1, q2). Формируют 53-битовую строкуExample 2. Encryption of a data block M represented as a 52-bit string. The secret key is formed in the form of subkeys K and Q, and subkey K is formed in the form of a 104-bit string, which is a concatenation of two 52-bit strings k 1 and k 2 , i.e. K = (k 1 , k 2 ), and the subkey Q is formed as a 104-bit string representing the concatenation of two 52-bit strings q 1 and q 2 , i.e. Q = (q 1 , q 2 ). Form a 53-bit string

Figure 00000015
Figure 00000015

представляющую собой последовательность коэффициентов неприводимого двоичного многочлена степени 52, т.е. двоичного многочлена x53+x3+1 [см. таблицу неприводимых двоичных многочленов на с. 209 в книге Болотов А.А., Гашков С.Б., Фролов А.Б. Элементарное введение в эллиптическую криптографию: Протоколы криптографии на эллиптических кривых. - М.: КомКнига, 2006. - 280 с.]. Затем формируют вспомогательную 52-битовую строку T и 52-битовую вспомогательную криптограмму CM путем выполнения над блоком данных M операции блочного шифрования E в зависимости от подключа K=(k1, k2) по формуле CM=EK(M), где операция блочного шифрования описывается следующим алгоритмом:which is a sequence of coefficients of an irreducible binary polynomial of degree 52, i.e. binary polynomial x 53 + x 3 +1 [see table of irreducible binary polynomials on p. 209 in the book Bolotov A.A., Gashkov S.B., Frolov A.B. An Elementary Introduction to Elliptic Cryptography: Protocols of Cryptography on Elliptic Curves. - M .: KomKniga, 2006. - 280 p.]. Then, an auxiliary 52-bit string T and a 52-bit auxiliary cryptogram C M are formed by performing block encryption operation E on the data block M depending on the subkey K = (k 1 , k 2 ) according to the formula C M = E K (M), where the operation of block encryption is described by the following algorithm:

1. Установить значение счетчика i←1 и переменной CM←M, где знак ← обозначает операцию присваивания.1. Set the value of the counter i ← 1 and the variable C M ← M, where the sign ← denotes the assignment operation.

2. Рассматривая 52-битовые строки k1 и M как двоичные многочлены, сформировать 52-битовую строку CM, представляющую собой последовательность коэффициентов двоичного многочлена, вычисленного по формуле CM←(k1CM mod m)<19<, где (…)<19<, обозначает операцию циклического сдвига битовой строки (…) на 19 бит влево.2. Considering the 52-bit strings k 1 and M as binary polynomials, form a 52-bit string C M , which is a sequence of coefficients of the binary polynomial calculated by the formula C M ← (k 1 C M mod m) <19 < , where ( ...) <19 < , denotes the operation of cyclic shift of the bit string (...) by 19 bits to the left.

3. Рассматривая 52-битовую строку k2, преобразовать 65-битовую строку CM по формуле CM←(k2CM mod m)<11<, где (…)<11< обозначает операцию циклического сдвига битовой строки (…) на 11 бит влево.3. Considering the 52-bit string k 2 , convert the 65-bit string C M according to the formula C M ← (k 2 C M mod m) <11 < , where (...) <11 < denotes the operation of cyclic shift of the bit string (...) 11 bits to the left.

4. Прирастить значение счетчика i: i←i+1. Если i<10, то перейти к шагу 2, в противном случае текущее значение CM взять в качестве выходного значения операции блочного шифрования EK, выполненной над 52-битовым блоком данных M.4. Increase the value of counter i: i ← i + 1. If i <10, then go to step 2, otherwise, take the current value C M as the output value of the block encryption operation E K performed on the 52-bit data block M.

Затем формируют 52-битовую вспомогательную криптограмму CT путем выполнения над 52-битовой строкой T операции блочного шифрования E в зависимости от подключа Q=(q1, q2) по формуле CT=EQ(T) в соответствии со следующим алгоритмом:Then, a 52-bit auxiliary cryptogram C T is formed by performing block ciphering operation E on a 52-bit string T depending on the subkey Q = (q 1 , q 2 ) according to the formula C T = E Q (T) in accordance with the following algorithm:

1. Установить значение счетчика i←1 и переменной CT←T.1. Set the value of the counter i ← 1 and the variable C T ← T.

2. Сформировать 52-битовую строку CT, представляющую собой последовательность коэффициентов двоичного многочлена, вычисленного по формуле CT←(q1CT mod m)<19<.2. Generate a 52-bit string C T , which is a sequence of coefficients of the binary polynomial calculated by the formula C T ← (q 1 C T mod m) <19 < .

3. Преобразовать 52-битовую строку CT по формуле CT←(q2CT mod m)<11<.3. Convert the 52-bit string C T according to the formula C T ← (q 2 C T mod m) <11 < .

4. Прирастить значение счетчика i: i←i+1. Если i<10, то перейти к шагу 2, в противном случае текущее значение CM взять в качестве выходного значения операции блочного шифрования EQ(T), выполненной над 65-битовой строкой T.4. Increase the value of counter i: i ← i + 1. If i <10, then go to step 2, otherwise, take the current value C M as the output value of the block encryption operation E Q (T) performed on the 65-bit string T.

После формирования вспомогательных криптограмм CM и CT в виде двоичных многочленов, представленных в виде 52-битовых строк, формируют 130-битовую криптограмму C путем решения следующей системы из двух линейных уравнений

Figure 00000016
.After the formation of auxiliary cryptograms C M and C T in the form of binary polynomials represented as 52-bit strings, a 130-bit cryptogram C is formed by solving the following system of two linear equations
Figure 00000016
.

Решением данной системы являются два двоичных многочлена C1 и C2, представленных в виде 52-битовых строк. Объединяя 52-битовые строки C1 и C2, получают 104-битовую криптограмму C = C 1 C 2

Figure 00000003
, где знак ║ обозначает операцию конкатенации (объединения) битовых строк.The solution to this system are two binary polynomials C 1 and C 2 , presented in the form of 52-bit strings. Combining the 52-bit strings C 1 and C 2 , you get a 104-bit cryptogram C = C one C 2
Figure 00000003
, where the sign ║ denotes the operation of concatenation (union) of bit strings.

Доказательство корректность данного частного варианта заявленного способа шифрования блока данных M, представленного в виде 52-битовой строки, доказывается аналогично описанному ранее общему доказательству корректности заявленного способа с учетом того, что операция блочного расшифрования DK(CM), обратная операции блочного шифрования EK(M), реализуется следующей процедурой преобразования:The proof of the correctness of this particular variant of the claimed method of encrypting the data block M, presented as a 52-bit string, is proved similarly to the general proof of the correctness of the claimed method described above, given that the block decryption operation D K (C M ) is the opposite of the block encryption operation E K (M) is implemented by the following conversion procedure:

1. Установить значение счетчика i←1 и переменной M←CM.1. Set the value of the counter i ← 1 and the variable M ← C M.

2. Преобразовать 52-битовую строку M, выполняя последовательно вычисления по формулам M←M>11> и M M k 2 1 mod m

Figure 00000017
, где (…)>11> обозначает операцию циклического сдвига битовой строки (…) на 11 бит влево.2. Convert the 52-bit string M, performing sequential calculations using the formulas M ← M >11> and M M k 2 - one mod m
Figure 00000017
, where (...) >11> denotes the operation of cyclic shift of the bit string (...) by 11 bits to the left.

3. Преобразовать 52-битовую строку M, выполняя последовательно вычисления по формулам M←M>19> и M M k 1 1 mod m

Figure 00000018
, где (…)>19> обозначает операцию циклического сдвига битовой строки (…) на 19 бит влево.3. Convert the 52-bit string M, performing sequential calculations using the formulas M ← M >19> and M M k one - one mod m
Figure 00000018
, where (...) >19> denotes the operation of cyclic shift of the bit string (...) by 19 bits to the left.

4. Прирастить значение счетчика i: i←i+1. Если i<10, то перейти к шагу 2, в противном случае текущее значение M взять в качестве выходного значения операции DK, выполненной над 65-битовым блоком данных CM.4. Increase the value of counter i: i ← i + 1. If i <10, then go to step 2, otherwise, take the current value of M as the output value of the operation D K performed on the 65-bit data block C M.

Аналогично записывается процедура для реализации операции блочного расшифрования DQ(CT), обратная операции блочного шифрования EQ(T).The procedure for implementing the block decryption operation D Q (C T ), the inverse of the block encryption operation E Q (T), is written similarly.

Рассмотренная частная реализация заявленного способа может быть применена для совместного шифрование двух сообщений M и T, каждое из которых, например, имеет размер 520 кбит. Сообщение M разбивается на 52-битовые блоки данных M1, M2, …, Mw, где w=10000. Сообщение T разбивается на 52-битовые блоки данных T1, T2, …, Tw. Поочередно для значений i=1, 2, …, 10000 пары 52-битовых блоков данных (Mi, Ti) совместно шифруются в соответствии с описанным примером реализации заявленного способа, в результате чего формируется шифртекст в виде последовательности 130-битовых криптограмм ( C 1 C 2 ) i

Figure 00000014
, i=1, 2, …, 1000.The considered private implementation of the claimed method can be applied for joint encryption of two messages M and T, each of which, for example, has a size of 520 kbps. Message M is divided into 52-bit data blocks M 1 , M 2 , ..., M w , where w = 10000. Message T is split into 52-bit data blocks T 1 , T 2 , ..., T w . Alternately, for values i = 1, 2, ..., 10000, pairs of 52-bit data blocks (M i , T i ) are jointly encrypted in accordance with the described implementation example of the claimed method, resulting in ciphertext in the form of a sequence of 130-bit cryptograms ( C one C 2 ) i
Figure 00000014
, i = 1, 2, ..., 1000.

Приведенные примеры показывают, что заявляемый способ шифрования блока данных M, представленного в виде n-битовой строки, функционирует корректно, технически реализуем и позволяет решить поставленную задачу.The above examples show that the claimed method of encrypting a data block M, represented as an n-bit string, functions correctly, is technically feasible and allows us to solve the problem.

Заявляемый способ шифрования блока данных M, представленного в виде n-битовой строки, может быть применен для разработки средств комплексной защиты информации от несанкционированного доступа, обеспечивающих дополнительную защищенность информации за счет навязывания потенциальным злоумышленникам ложных сообщений. Данный способ также может быть применен для защищенной широковещательной рассылки сообщений с управлением доступа к сообщениям со стороны получателей при обеспечении идентичности процедуры расшифрования одной и той же криптограммы. Такие средства защищенной широковещательной рассылки сообщений решают задачу неотслеживаемости трафика при передаче информации по телекоммуникационным каналам.The inventive method of encrypting a data block M, represented as an n-bit string, can be used to develop means of comprehensive protection of information from unauthorized access, providing additional information security by imposing false messages to potential attackers. This method can also be used for secure broadcast messages with control of access to messages from the recipients while ensuring the identity of the decryption of the same cryptogram. Such means of secure broadcast messaging solve the problem of traffic non-tracking when transmitting information over telecommunication channels.

Толкование терминов, используемых в описании изобретенияThe interpretation of the terms used in the description of the invention

1. Двоичный цифровой электромагнитный сигнал - последовательность битов в виде нулей и единиц.1. Binary digital electromagnetic signal - a sequence of bits in the form of zeros and ones.

2. Параметры двоичного цифрового электромагнитного сигнала: разрядность и порядок следования единичных и нулевых битов.2. Parameters of a binary digital electromagnetic signal: bit depth and order of single and zero bits.

3. Разрядность двоичного цифрового электромагнитного сигнала - общее число его единичных и нулевых битов, например, число 10011 является 5-разрядным.3. The bit depth of a binary digital electromagnetic signal is the total number of its single and zero bits, for example, the number 10011 is 5-bit.

4. Битовая строка (БС) - двоичный цифровой электромагнитный сигнал, представляемый в виде конечной последовательности цифр «0» и «1».4. Bit string (BS) - a binary digital electromagnetic signal, presented in the form of a finite sequence of digits "0" and "1".

5. Секретный ключ - двоичный цифровой электромагнитный сигнал, используемый для формирования подписи к заданному электронному документу. Секретный ключ представляется, например, в двоичном виде как последовательность цифр «0» и «1».5. Secret key - a binary digital electromagnetic signal used to generate a signature for a given electronic document. The secret key is represented, for example, in binary form as a sequence of digits "0" and "1".

6. Многоразрядное двоичное число (МДЧ) - двоичный цифровой электромагнитный сигнал, интерпретируемый как двоичное число и представляемый в виде последовательности цифр «0» и «1».6. A multi-bit binary number (MDC) is a binary digital electromagnetic signal, interpreted as a binary number and represented as a sequence of digits "0" and "1".

7. Многочлен - это упорядоченная последовательность коэффициентов, каждый из которых является одноразрядным или многоразрядным двоичным числом (МДЧ). Над многочленами определены операции сложения многочленов и умножения многочленов, которые сводятся к выполнению действий с коэффициентами многочленов, являющихся операндами. Многочлены и правила действия над ними подробно рассмотрены в книгах [Кострикин А.И. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.] и [Курош А.Г. Курс высшей алгебры. - М., «Наука», 1971. - 431 с.]. В вычислительных устройствах многочлены представляются в виде битовой строки, в которой каждый бит или каждая подстрока битов фиксированной длины интерпретируется как один из коэффициентов многочлена, над которыми определены операции сложения и умножения коэффициентов.7. A polynomial is an ordered sequence of coefficients, each of which is a single-bit or multi-bit binary number (MDC). The operations of addition of polynomials and multiplication of polynomials are defined over polynomials, which are reduced to performing actions with coefficients of polynomials that are operands. Polynomials and the rules of action on them are discussed in detail in books [Kostrikin A.I. Introduction to Algebra. Fundamentals of Algebra. M .: Fizmatlit. 1994. - 320 p.] And [Kurosh A.G. Course of higher algebra. - M., "Science", 1971. - 431 p.]. In computing devices, polynomials are represented as a bit string in which each bit or each substring of bits of a fixed length is interpreted as one of the coefficients of the polynomial over which the operations of addition and multiplication of coefficients are defined.

8. Двоичный многочлен - это многочлен, коэффициентами которого являются одноразрядными двоичными числами «0» и «1». Двоичный многочлен записывается в виде битовой строки, старший разряд которой равен единичному биту. Степенью многочлена является значение S, равное длине битовой строки, представляющей двоичный многочлен минус единица. В алгебраической форме двоичный многочлен записывается в виде суммы некоторых степеней si<S формальной переменной x, например в виде x S + x s 1 + x s 2 + x s 3 + 1

Figure 00000019
. В алгебраической форме указываются только слагаемые с ненулевыми коэффициентами, так как позиция коэффициента связана однозначно со степенью формальной переменной, при которой он записан.8. A binary polynomial is a polynomial whose coefficients are single-digit binary numbers “0” and “1”. The binary polynomial is written as a bit string, the highest bit of which is equal to a single bit. The degree of the polynomial is the value of S equal to the length of the bit string representing the binary polynomial minus one. In algebraic form, the binary polynomial is written as the sum of some degrees s i <S of the formal variable x, for example, in the form x S + x s one + x s 2 + x s 3 + one
Figure 00000019
. In an algebraic form, only terms with nonzero coefficients are indicated, since the position of the coefficient is uniquely related to the degree of the formal variable at which it is written.

9. Неприводимый двоичный многочлен - это двоичный многочлен, который не делится без остатка на какой-либо другой двоичный многочлен, т.е. неприводимый двоичный многочлен не может быть представлен в виде произведения двух двоичных многочленов.9. An irreducible binary polynomial is a binary polynomial that cannot be divisible without remainder by any other binary polynomial, that is, an irreducible binary polynomial cannot be represented as the product of two binary polynomials.

10. Сравнимыми по модулю некоторого многочлена m называются многочлены, разность которых делится на многочлен m без остатка или, что то же самое, многочлены, при делении которых на многочлен m получаются равные остатки.10. Comparable in absolute value of a polynomial m are polynomials whose difference is divided by a polynomial m without remainder or, which is the same, polynomials, when divided by a polynomial m, equal residues are obtained.

11. Операция умножения двух многочленов по модулю (по mod) многочлена m выполняется как обычное алгебраическое умножение многочленов с последующим взятием остатка от деления полученного результата на многочлен m.11. The operation of multiplying two polynomials modulo (mod) the polynomial m is performed as ordinary algebraic multiplication of polynomials, followed by taking the remainder of dividing the result by the polynomial m.

12. Операция сложения двух многочленов выполняется как сложение всех коэффициентов при одинаковых степенях формальной переменной, как элементов поля, которому принадлежат коэффициенты многочленов (это поле называется полем, над которым заданы многочлены).12. The operation of adding two polynomials is performed as the addition of all the coefficients for the same degrees of the formal variable, as the elements of the field to which the coefficients of the polynomials belong (this field is called the field over which the polynomials are given).

13. Алгебраическая структура - это множество математических элементов, некоторой природы. В качестве математических элементов могут выступать, например, многочлены, МДЧ, пары МДЧ, пары многочленов, тройки МДЧ, тройки многочленов, матрицы МДЧ, матрицы многочленов и т.д., над которыми заданы математические действия (операции). Математически алгебраическая структура определяется путем задания конкретного множества математических элементов и одной или нескольких операций, выполняемых над элементами.13. An algebraic structure is a set of mathematical elements of some nature. As mathematical elements, for example, polynomials, MDCs, pairs of MDCs, pairs of polynomials, triples of MDCs, triples of polynomials, matrices of MDCs, matrices of polynomials, etc., over which mathematical actions (operations) are specified, can act. A mathematically algebraic structure is determined by specifying a specific set of mathematical elements and one or more operations performed on the elements.

14. Элемент алгебраической структуры - это одна битовая строка или набор из нескольких битовых строк, над которыми определена алгебраическая операция. При определении конкретного типа алгебраической структуры определяются операции над элементами алгебраической структуры, которые указывают однозначно правила интерпретации и преобразования битовых строк, представляющих эти элементы. Реализуемые в вычислительных устройствах преобразования битовых строк соответствуют операциям, выполняемым над элементами заданной алгебраической структуры.14. An element of an algebraic structure is a single bit string or a set of several bit strings over which an algebraic operation is defined. When determining a specific type of algebraic structure, operations are determined on elements of the algebraic structure, which uniquely indicate the rules for interpretation and transformation of bit strings representing these elements. The transformations of bit strings implemented in computing devices correspond to operations performed on elements of a given algebraic structure.

15. Группа - это алгебраическая структура (т.е. множество элементов различной природы), над элементами которой определена одна операция, и которая при заданной операции обладает заданным набором свойств: операция ассоциативна, результатом выполнения операции над двумя элементами является также элемент этой же структуры, существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Детальное описание групп дано в книгах [А.Г. Курош. Теория групп. - М., изд-во «Наука», 1967. - 648 с.] и [М.И. Каргаполов, Ю.И. Мерзляков. Основы теории групп. - М., изд-во «Наука. Физматлит», 1996. - 287 с.]. Операция, определенная над элементами группы, называется групповой операцией.15. A group is an algebraic structure (that is, a set of elements of various nature), on the elements of which one operation is defined, and which for a given operation has a given set of properties: the operation is associative, the result of the operation on two elements is also an element of the same structure there is a neutral element such that when performing operations on them and some other element of a group is the result of element a. A detailed description of the groups is given in the books [A.G. Kurosh. Group theory. - M., publishing house "Science", 1967. - 648 p.] And [M.I. Kargapolov, Yu.I. Merzlyakov. Fundamentals of group theory. - M., publishing house "Science. Fizmatlit ", 1996. - 287 p.]. An operation defined on group elements is called a group operation.

16. Кольцо - это алгебраическая структура (т.е. множество математических элементов природы), над элементами которой определены две операции, одна из которых называется сложением, а вторая - умножением. При этом при заданных операциях эта алгебраическая структура обладает заданным набором свойств: операции сложения и умножения ассоциативны и коммутативны, операция умножения является дистрибутивной относительно операции сложения, а результатом выполнения каждой из этих операций над двумя элементами является также элемент этой же структуры. Кроме того, для сложения существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Нейтральный элемент относительно сложения называется нулевым элементом (или просто нулем). Детальное описание колец дано в книгах [Кострикин А.И. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.] и [Курош А.Г. Курс высшей алгебры. - М., «Наука», 1971. - 431 с.].16. A ring is an algebraic structure (that is, a set of mathematical elements of nature), on the elements of which two operations are defined, one of which is called addition, and the second - multiplication. Moreover, for given operations, this algebraic structure has a given set of properties: addition and multiplication operations are associative and commutative, the multiplication operation is distributive with respect to the addition operation, and the result of each of these operations on two elements is also an element of the same structure. In addition, for addition there is a neutral element such that when performing an operation on it and some other element a of the group, the result is element a . A neutral element with respect to addition is called a zero element (or simply zero). A detailed description of the rings is given in the books [Kostrikin A.I. Introduction to Algebra. The basics of algebra. M .: Fizmatlit. 1994. - 320 p.] And [Kurosh A.G. Course of higher algebra. - M., "Science", 1971. - 431 p.].

17. Поле - это алгебраическая структура (т.е. множество математических элементов различной природы), над элементами которой определены две операции, одна из которых называется сложением, а вторая - умножением. При этом при заданных операциях эта алгебраическая структура обладает заданным набором свойств: операции сложения и умножения ассоциативны и коммутативны, операция умножения является дистрибутивной относительно операции сложения, а результатом выполнения каждой из этих операций над двумя элементами является также элемент этой же структуры. Причем для каждой из указанных двух операций существует нейтральный элемент такой, что при выполнении операции над ним и другим некоторым элементом а группы результатом является элемент а. Нейтральный элемент относительно сложения называется нулевым элементом (или просто нулем), а нейтральный элемент относительно умножения называется единичным элементом (или просто единицей). Кроме того, каждому ненулевому элементу а может быть сопоставлен в соответствие единственный элемент а -1, называемый обратным элементом по отношению к данному элементу, такой, что произведение a -1 a (а значит и aa -1) равно единице. Детальное описание полей дано в книгах [А.И. Кострикин. Введение в алгебру. Основы алгебры. М.: Физматлит. 1994. - 320 с.] и [Курош А.Г. Курс высшей алгебры. - М., «Наука», 1971. - 431 с.].17. A field is an algebraic structure (that is, a set of mathematical elements of various nature), on the elements of which two operations are defined, one of which is called addition, and the second - multiplication. Moreover, for given operations, this algebraic structure has a given set of properties: addition and multiplication operations are associative and commutative, the multiplication operation is distributive with respect to the addition operation, and the result of each of these operations on two elements is also an element of the same structure. Wherein for each of said two operations exists a neutral element such that when performing operations on them and some other element of a group is the result of element a. The neutral element with respect to addition is called the zero element (or simply zero), and the neutral element with respect to multiplication is called the unit element (or simply unit). In addition, each nonzero element a can be associated with a single element a -1 , called the inverse element with respect to this element, such that the product a -1 a (and therefore aa -1 ) is equal to one. A detailed description of the fields is given in the books [A.I. Kostrikin. Introduction to Algebra. The basics of algebra. M .: Fizmatlit. 1994. - 320 p.] And [Kurosh A.G. Course of higher algebra. - M., "Science", 1971. - 431 p.].

18. Операция деления двоичного многочлена A на двоичный многочлен B по модулю двоичного многочлена m выполняется как операция умножения по модулю m двоичного многочлена A на двоичный многочлен B-1, который является обратным к двоичному многочлену B по модулю двоичного многочлена m.18. The operation of dividing the binary polynomial A by the binary polynomial B modulo the binary polynomial m is performed as the operation of multiplying modulo m of the binary polynomial A by the binary polynomial B -1 , which is the inverse of the binary polynomial B modulo the binary polynomial m.

19. Совокупность всех двоичных многочленов степени, которая не превосходит значения S, вместе с операцией сложения и умножения по модулю неприводимого многочлена степени S+1 образует поле GF(2S) с числом элементов, равным 2S. В таком поле, также как и в других полях, системы, включающие два линейно независимых уравнения с двумя неизвестными, имеют единственное решение.19. The set of all binary polynomials of degree that does not exceed the value of S, together with the addition and multiplication modulo an irreducible polynomial of degree S + 1, forms a field GF (2 S ) with the number of elements equal to 2 S. In such a field, as well as in other fields, systems including two linearly independent equations with two unknowns have a unique solution.

Claims (2)

1. Способ шифрования блока данных, представленного в виде битовой строки, заключающийся в формировании секретного ключа в виде подключей K и Q, представляющих собой битовые строки, формировании вспомогательной n-битовой строки T, формировании n-битовой вспомогательной криптограммы CM путем выполнения над блоком данных M операции блочного шифрования E в зависимости от K по формуле CM=EK(M), формировании n-битовой вспомогательной криптограммы CT путем выполнения над n-битовой строкой T операции блочного шифрования E в зависимости от Q по формуле CT=EQ(T), формировании 2n-битовой криптограммы C в зависимости от подключей K и Q и вспомогательных криптограмм CM и CT, отличающийся тем, что подключ K формируют в виде 2n-битовой строки, представляющей собой конкатенацию двух n-битовых строк k1 и k2, подключ Q формируют в виде 2n-битовой строки, представляющей собой конкатенацию двух n-битовых строк q1 и q2, формируют (n+1)-битовую строку m и формируют 2n-битовую криптограмму C в виде конкатенации двух двоичных многочленов степени n-1, являющихся решением системы из двух линейных уравнений k1C1+k2C2=CM mod m и q1C1+q2C2=CT mod m с двумя неизвестными двоичными многочленами C1 и C2, в которой m есть дополнительно сформированный многочлен степени n, а n-битовые строки k1, k2, q1, q2, CM, CT рассматриваются как двоичные многочлены степени n-1 и (n+1)-битовая строка m рассматривается как двоичный многочлен степени n.1. A method of encrypting a data block represented as a bit string, which consists in generating a secret key in the form of subkeys K and Q, which are bit strings, forming an auxiliary n-bit string T, forming an n-bit auxiliary cryptogram C M by executing on the block data M, the operation of block encryption E depending on K by the formula C M = E K (M), the formation of an n-bit auxiliary cryptogram C T by performing the operation of block encryption E on the n-bit string T, depending on Q, by the formula C T = E Q (T), the formation of a 2n-bit cryptogram C depending on the subkeys K and Q and auxiliary cryptograms C M and C T , characterized in that the subkey K is formed as a 2n-bit string, which is a concatenation of two n-bit lines k 1 and k 2 , sub Q are formed in the form of a 2n-bit string representing the concatenation of two n-bit strings q 1 and q 2 , a (n + 1) -bit string m is formed, and a 2n-bit cryptogram C is formed in the form concatenations of two binary polynomials of degree n-1, which are a solution of a system of two linear equations k 1 C 1 + k 2 C 2 = C M mod m and q 1 C 1 + q 2 C 2 = C T mod m with two unknown binary polynomials C 1 and C 2 , in which m is an additionally formed polynomial of degree n, and n-bit strings k 1 , k 2 , q 1 , q 2 , C M , C T are considered as binary polynomials of degree n-1 and a (n + 1) -bit string m is considered as a binary polynomial of degree n. 2. Способ по п.1, отличающийся тем, что формируют (n+1)-битовую строку m в виде неприводимого двоичного многочлена степени n. 2. The method according to claim 1, characterized in that they form an (n + 1) -bit string m in the form of an irreducible binary polynomial of degree n.
RU2014114769/08A 2014-04-14 2014-04-14 Method to code data unit represented as bit string RU2542929C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2014114769/08A RU2542929C1 (en) 2014-04-14 2014-04-14 Method to code data unit represented as bit string

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2014114769/08A RU2542929C1 (en) 2014-04-14 2014-04-14 Method to code data unit represented as bit string

Publications (1)

Publication Number Publication Date
RU2542929C1 true RU2542929C1 (en) 2015-02-27

Family

ID=53290017

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2014114769/08A RU2542929C1 (en) 2014-04-14 2014-04-14 Method to code data unit represented as bit string

Country Status (1)

Country Link
RU (1) RU2542929C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2782740C1 (en) * 2022-03-24 2022-11-01 Акционерное общество "Научно-исследовательский и проектно-конструкторский институт информатизации, автоматизации и связи на железнодорожном транспорте" Method for transmitting information in an open optical communication system

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2103828C1 (en) * 1997-02-10 1998-01-27 Управление Федеральной службы безопасности России по Санкт-Петербургу и Ленинградской области Method for block data encryption
US7397916B2 (en) * 2000-12-08 2008-07-08 Cloakware Corporation System and method for protecting computer software from a white box attack
US7831827B2 (en) * 2002-12-02 2010-11-09 Silverbrook Research Pty Ltd Authenticated communication between multiple entities
RU2411666C1 (en) * 2009-08-26 2011-02-10 Николай Андреевич Молдовян Method of coding
RU2459367C2 (en) * 2010-07-16 2012-08-20 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Московский государственный технологический университет "СТАНКИН" (ФГБОУ ВПО МГТУ "СТАНКИН") Method to generate alternating key for unit coding and transfer of coded data
RU2459275C1 (en) * 2011-08-02 2012-08-20 Николай Андреевич Молдовян Method for unit coding of m message represented in binary form
RU2459276C1 (en) * 2011-08-12 2012-08-20 Николай Андреевич Молдовян Method for coding of m message represented as multidigit binary number

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2103828C1 (en) * 1997-02-10 1998-01-27 Управление Федеральной службы безопасности России по Санкт-Петербургу и Ленинградской области Method for block data encryption
US7397916B2 (en) * 2000-12-08 2008-07-08 Cloakware Corporation System and method for protecting computer software from a white box attack
US7831827B2 (en) * 2002-12-02 2010-11-09 Silverbrook Research Pty Ltd Authenticated communication between multiple entities
RU2411666C1 (en) * 2009-08-26 2011-02-10 Николай Андреевич Молдовян Method of coding
RU2459367C2 (en) * 2010-07-16 2012-08-20 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Московский государственный технологический университет "СТАНКИН" (ФГБОУ ВПО МГТУ "СТАНКИН") Method to generate alternating key for unit coding and transfer of coded data
RU2459275C1 (en) * 2011-08-02 2012-08-20 Николай Андреевич Молдовян Method for unit coding of m message represented in binary form
RU2459276C1 (en) * 2011-08-12 2012-08-20 Николай Андреевич Молдовян Method for coding of m message represented as multidigit binary number

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2782740C1 (en) * 2022-03-24 2022-11-01 Акционерное общество "Научно-исследовательский и проектно-конструкторский институт информатизации, автоматизации и связи на железнодорожном транспорте" Method for transmitting information in an open optical communication system

Similar Documents

Publication Publication Date Title
Toughi et al. An image encryption scheme based on elliptic curve pseudo random and advanced encryption system
US9973334B2 (en) Homomorphically-created symmetric key
Saha et al. RK‐AES: An Improved Version of AES Using a New Key Generation Process with Random Keys
RU2459276C1 (en) Method for coding of m message represented as multidigit binary number
Agrawal et al. Elliptic curve cryptography with hill cipher generation for secure text cryptosystem
RU2459275C1 (en) Method for unit coding of m message represented in binary form
Liu et al. Chaos-based image hybrid encryption algorithm using key stretching and hash feedback
Kuang et al. Shannon perfect secrecy in a discrete Hilbert space
Reyad et al. Key-based enhancement of data encryption standard for text security
Razaq et al. A novel technique for the construction of safe substitution boxes based on cyclic and symmetric groups
Girija et al. A new substitution-permutation network cipher using Walsh Hadamard Transform
Li et al. Cryptanalyzing a chaotic encryption algorithm for highly autocorrelated data
Scripcariu et al. AES vulnerabilities study
WO2010070579A1 (en) System and method for countering side-channel attacks against encryption based on cyclic groups
Khare et al. Secure and fast chaos based encryption system using digital logic circuit
Ledda et al. Enhancing IDEA algorithm using circular shift and middle square method
Scripcariu et al. On the substitution method of the AES algorithm
RU2542929C1 (en) Method to code data unit represented as bit string
RU2518950C1 (en) METHOD OF ENCRYPTING n-BIT UNIT M
WO2018011825A1 (en) Encryption and decryption of messages
Ali et al. Image Encryption Using New Non-Linear Stream Cipher Cryptosystem
RU2542880C1 (en) Method of encrypting binary data unit
RU2359415C2 (en) Method for cryptographic transformation of digital data units
Ghosh et al. Performance analysis of AES, DES, RSA and AES-DES-RSA hybrid algorithm for data security
Agrawal et al. Implementation of various cryptosystem using chaos

Legal Events

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

Effective date: 20210415