RU2518950C9 - Method of encrypting n-bit unit m - Google Patents

Method of encrypting n-bit unit m Download PDF

Info

Publication number
RU2518950C9
RU2518950C9 RU2013120577/08A RU2013120577A RU2518950C9 RU 2518950 C9 RU2518950 C9 RU 2518950C9 RU 2013120577/08 A RU2013120577/08 A RU 2013120577/08A RU 2013120577 A RU2013120577 A RU 2013120577A RU 2518950 C9 RU2518950 C9 RU 2518950C9
Authority
RU
Russia
Prior art keywords
bit
auxiliary
cryptogram
block
generating
Prior art date
Application number
RU2013120577/08A
Other languages
Russian (ru)
Other versions
RU2518950C1 (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 RU2013120577/08A priority Critical patent/RU2518950C9/en
Application granted granted Critical
Publication of RU2518950C1 publication Critical patent/RU2518950C1/en
Publication of RU2518950C9 publication Critical patent/RU2518950C9/en

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

FIELD: radio engineering, communication.
SUBSTANCE: method of encrypting an n-bit data unit M includes generating a secret key by generating subkeys Q and R and auxiliary subkeys in form of mutually simple multi-bit binary numbers m1 and m2, generating an auxiliary n-bit data unit T, generating an n-bit auxiliary cryptogram CM by performing a block encryption operation E over the M depending on Q using the formula CM=EQ(M), generating n-bit auxiliary cryptograms CT by performing a block encryption operation E over T depending on R using the formula CT=ER(T), generating a cryptogram C in form of a solution of a system of two identities C≡CMmodm1 and C≡CTmodm2 with unknown C. In a particular version of the method, m1 and m2 are prime numbers.
EFFECT: high level of security of information encrypted using said method.
2 cl

Description

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

Известны способы шифрования электронных сообщений, представленных в цифровом виде, а именно, в виде двоичных данных, выполняемые по секретному ключу, например способ, реализованный в виде алгоритма блочного шифрования RC5 [B.Schneier, "Applied Cryptography", Second Eddition, John Wiley & Sons, Inc., New York, 1996, 758 p.; см. с.344-346]. Способ включает в себя формирование секретного ключа в виде совокупности подключей, разбиение n-битового двоичного блока информации на n/2-битовые информационные подблоки А и В и поочередное преобразование этих подблоков. Подблоки преобразуются путем последовательного выполнения над ними линейных и нелинейных операций, в качестве которых используются операции суммирования по модулю 2m, где m=n/2=8, 16, 32, 64, поразрядного суммирования по модулю 2 и циклического сдвига влево, причем число бит, на которое сдвигается преобразуемый подблок, зависит от значения другого подблока. Последнее свойство является характерным для способа RC5 и определяет зависимость операции циклического сдвига на текущем шаге преобразования подблока от исходного значения входного блока данных. Подблок информации, например подблок В, преобразуют путем наложения подблока А на подблок В с помощью операции поразрядного суммирования по модулю 2 В:=В⊕А. После этого над подблоком В выполняют операцию циклического сдвига влево на число бит, равное значению подблока А: В:=В<<<А. Затем над подблоком В и одним из подключей К выполняют операцию суммирования по модулю 2m, где m - длина подблока в битах: В:=(В+К)mod2m. После этого аналогичным образом преобразуется подблок А. В зависимости от размеров ключа выполняется несколько таких итераций преобразования обоих подблоков. Данный способ обеспечивает достаточно высокую скорость шифрования при программной реализации. Недостатком способа шифрования 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. P.171-184].There are known methods of 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, 758 p .; see p. 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 subblocks A and B, and alternately converting these subblocks. 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, over the subblock B and one of the subkeys K, the summation operation is performed modulo 2 m , where m is the length of the subblock in bits: B: = (B + K) mod2 m . After that, 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. P.171-184].

Известен способ шифрования n-битовых блоков данных [B.Schneier, "Applied Cryptography", Second Eddition, John Wiley & Sons, Inc., New York,1996, 758 p; см. с.193-194] путем генерации секретного ключа К, разбиения сообщения М на n-битовые блоки данных М1, М2, …, Mk, где k - число блоков в сообщении; n≥64 бит, и последующего шифрования блоков данных M1, M2, …, Mk, причем процесс шифрования выполняют следующим путем. Шифруют блок М1 по секретному ключу, получая блок криптограммы С1, затем, начиная со значения i=2 и до значения i=k, суммируют с помощью операции поразрядного суммирования блок криптограммы Ci-1 и блок Mi, полученный в результате суммирования, блок данных шифруют по секретному ключу, получая в результате текущий блок криптограммы Ci. Совокупность блоков криптограммы С1, С2, …, Ck представляет собой криптограмму, содержащую сообщение М в скрытом виде. Извлечение сообщения М из криптограммы практически возможно только с использованием секретного ключа, использованного при шифровании, за счет чего достигается защита информации, содержащейся в сообщении М, при его передаче по открытым каналам связи. Данный способ обеспечивает улучшение статистических свойств криптограммы, однако он имеет недостаток, состоящий в том, что теряется возможность независимого расшифрования отдельных блоков криптограммы.A known method of encryption of n-bit data blocks [B. Schneier, "Applied Cryptography", Second Eddition, John Wiley & Sons, Inc., New York, 1996, 758 p; see p.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 the 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 bitwise summation operation , the 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 the message M in hidden form. Removing the message M from the cryptogram is practically possible only using the secret key used in encryption, due to which the information contained in the message M is protected 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.

Близким аналогом к заявляемому способу шифрования n-битового блока двоичных данных М является способ, описанный в патенте №2459275 [Молдовян А.А., Молдовян Н.А. Способ блочного шифрования сообщения М, представленного в двоичном виде. Патент №2459275. Опубл. 20.08.2012].A close analogue to the claimed method of encrypting an n-bit block of binary data M is the method described in patent No. 2459275 [Moldovyan A.A., Moldovyan N.A. A method for block encrypting message M in binary form. Patent No. 2459275. Publ. 08/20/2012].

Наиболее близким по своей технической сущности к заявляемому способу шифрования n-битового блока двоичных данных М является частный вариант реализации способа по патенту №2459275, приведенный в примере 1 описания этого патента. В указанном частном способе шифрование 64-битового блока данных Mi осуществляют, выполняя следующую последовательность действий:The closest in technical essence to the claimed method of encrypting an n-bit block of binary data M is a particular embodiment of the method according to patent No. 2459275, shown in example 1 of the description of this patent. In the specified private method, the encryption of the 64-bit data block M i is carried out by performing the following sequence of actions:

1. Формируют секретный ключ путем генерации подключей K, Q (Q≠K) и R (R≠K; R≠Q), где Q и R - 64-битовые подключи; K - 128-битовый подключ.1. Generate a secret key by generating the subkeys K, Q (Q ≠ K) and R (R ≠ K; R ≠ Q), where Q and R are 64-bit subkeys; K is a 128-bit subkey.

2. Формируют вспомогательный 64-битовый блок данных Ti.2. Form an auxiliary 64-bit data block T i .

3. Шифруют 64-битовый блок данных Mi с помощью процедуры блочного шифрования Е по подключу Q, в результате чего получают блок данных EQ(Mi), который представляет собой вспомогательную криптограмму CM, т.е. на этом шаге осуществляется формирование 64-битовой вспомогательной криптограммы CM=EQ(Mi).3. A 64-bit data block M i is encrypted using the block encryption procedure E over sub Q, resulting in a data block E Q (M i ), which is an auxiliary cryptogram C M , i.e. at this step, the formation of a 64-bit auxiliary cryptogram C M = E Q (M i ) is carried out.

4. Шифруют вспомогательный 64-битовый блок данных Ti с помощью процедуры блочного шифрования Е по подключу R, в результате чего получают блок данных ER(Ti), который представляет собой вспомогательную криптограмму CT, т.е. на этом шаге осуществляется формирование 64-битовой вспомогательной криптограммы CT=ER(Ti).4. The auxiliary 64-bit data block T i is encrypted using the block encryption procedure E over the subkey R, as a result of which the data block E R (T i ) is obtained, which is an auxiliary cryptogram C T , i.e. at this step, the formation of a 64-bit auxiliary cryptogram C T = E R (T i ) is carried out.

5. Формируют 128-битовый блок данных Bi путем объединения вспомогательных криптограмм CM и CT (т.е. путем объединения преобразованных 64-битовых блоков Mi и Ti) в единый 128-битовый блок данных Bi=CM||CT=EQ(Mi)||ER(Ti).5. A 128-bit data block B i is formed by combining auxiliary cryptograms C M and C T (that is, by combining the converted 64-bit blocks M i and T i ) into a single 128-bit data block B i = C M | | C T = E Q (M i ) || E R (T i ).

6. Шифруют 128-битовый блок данных Bi с помощью процедуры блочного шифрования F по подключу К:6. The 128-bit data block B i is encrypted using the block encryption procedure F on sub-K:

Ci=FK(Bi)=FK(EQ(Mi)||ER(Ti)).C i = F K (B i ) = F K (E Q (M i ) || E R (T i )).

Таким образом, способ-прототип включает в себя формирование секретного ключа, включающего подключи Q и R, формирование вспомогательного n-битового блока двоичных данных Т, формирование n-битовой вспомогательной криптограммы CM путем выполнения над М операции блочного шифрования Е в зависимости от Q по формуле CM=EQ(M), формирование n-битовой вспомогательной криптограммы CT путем выполнения над Т операции блочного шифрования Е в зависимости от R по формуле CT=ER(T), формирование криптограммы С в зависимости от секретного ключа и вспомогательных криптограмм CM и CT.Thus, the prototype method includes generating a secret key, including plug Q and R, generating an auxiliary n-bit block of binary data T, generating an n-bit auxiliary cryptogram C M by performing block ciphering operations E on M depending on Q according to the formula C M = E Q (M), the formation of an n-bit auxiliary cryptogram C T by performing block ciphering operations E on T depending on R according to the formula C T = E R (T), the formation of cryptogram C depending on the secret key and auxiliary cryptograms C M and C T.

Способ-прототип позволяет реализовать защиту информации с использованием механизма обманных ловушек, который состоит в том, что потенциальному злоумышленнику подставляется часть секретного ключа, включающая подключ R, в качестве ключа расшифрования, а в качестве вспомогательного n-битового блока двоичных данных Т используется n-битовый блок фиктивного сообщения. Блок криптограммы С расшифровывается путем его преобразования по дополнительному ключу, приводящего к получению промежуточной 2n-битовой криптограммы С*, представляющей собой конкатенацию двух n-битовых вспомогательных криптограмм CM и CT: С*=CM||CT. Вспомогательные криптограммы CM и CT составляют правую и левую половины промежуточной 2n-битовой криптограммы С*. По подключу R выполняется расшифрование правой n-битовой вспомогательной криптограммы CT путем выполнения операции блочного преобразования D, обратной к операции блочного шифрования Е, т.е. по формуле Т=DR(CT). Аналогичная процедура расшифрования выполняется с использованием подключа К и левой n-битовой строки CM промежуточной 2n-битовой криптограммы С*=CM||CT. Недостатком способа прототипа является то, что различные части промежуточной 2n-битовой криптограммы С* используются при восстановлении блока данных М и блока фиктивного сообщения Т. Это демаскирует факт наличия в блоке криптограммы С блока данных М, что снижает уровень защищенности информации, шифруемой с использованием способа-прототипа.The prototype method allows you 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 R, 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 intermediate 2n-bit cryptogram C *, which is a concatenation of two n-bit auxiliary cryptograms C M and C T : C * = C M || C T. The auxiliary cryptograms C M and C T comprise the right and left halves of the intermediate 2n-bit cryptogram C *. Using subkey R, the right n-bit auxiliary cryptogram 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 R (C T ). A similar decryption procedure is performed using the subkey K and the left n-bit string C M of the intermediate 2n-bit cryptogram C * = C M || C T. The disadvantage of the prototype method is that the various parts of the intermediate 2n-bit cryptogram C * are used when restoring the data block M and the fictitious message block T. This unmasks the fact that the cryptogram block C contains the data block M, which reduces the level of security of the information encrypted using the method prototype.

Задачей заявленного нового технического решения является разработка способа шифрования блока данных М, представленного в виде n-битовой строки, обеспечивающего повышение уровня защищенности информации за счет повышения эффективности маскировки факта наличия n-битового блока данных М в блоке криптограммы С. Повышение эффективности маскировки достигается за счет того, что при выполнении процедуры расшифрования осуществляется преобразование 2n-битовой криптограммы С непосредственно в n-битовую вспомогательную криптограмму, зависящую от ключа, использованного при преобразовании 2n-битовой криптограммы С, и использование всех битов вспомогательной криптограммы при выполнении процедур восстановления как n-битового блока данных М, так и вспомогательной n-битовой строки Т.The objective of the claimed new technical solution is to develop a method of encrypting a data block M, presented in the form of an n-bit string, which provides increased information security by improving the masking efficiency of the presence of an n-bit data block M in the cryptogram block C. The masking efficiency is improved by of the fact that during the decryption procedure, the conversion of the 2n-bit cryptogram C directly to the n-bit auxiliary cryptogram, depending on t of the key used in the conversion of the 2n-bit cryptogram C, and the use of all bits of the auxiliary cryptogram when performing recovery procedures for both the n-bit data block M and the auxiliary n-bit string T.

Техническим результатом нового способа шифрования n-битового блока данных М является повышение уровня защищенности информации, шифруемой с его применением.The technical result of a new method for encrypting an n-bit data block M is to increase the level of security of information encrypted with its use.

Указанный технический результат достигается тем, что в способе шифрования n-битового блока данных М, заключающемся в формировании секретного ключа путем генерации подключей Q и R, формировании вспомогательного n-битового блока данных Т, формировании n-битовой вспомогательной криптограммы CM путем выполнения над М операции блочного шифрования Е в зависимости от Q по формуле CM=EQ(М), формировании n-битовой вспомогательной криптограммы CT путем выполнения над Т операции блочного шифрования Е в зависимости от R по формуле CT=ER(T), формировании криптограммы С в зависимости от секретного ключа и вспомогательных криптограмм CM и CT, кроме того, при формировании секретного ключа дополнительно генерируют вспомогательные подключи в виде взаимно простых многоразрядных двоичных чисел m1 и m2, а криптограмму С формируют в виде решения системы двух сравнений С≡CMmodm1 и С≡CTmodm2 с неизвестным С.The indicated technical result is achieved by the fact that in the method of encrypting an n-bit data block M, which consists in generating a secret key by generating Q and R subkeys, forming an auxiliary n-bit data block T, forming an n-bit auxiliary cryptogram C M by executing on M block encryption operations E depending on Q using the formula C M = E Q (M), generating an n-bit auxiliary cryptogram C T by performing block T encryption operations E depending on R using the formula C T = E R (T), shaping to cryptograms C, depending on the secret key and auxiliary cryptograms C M and C T , in addition, when generating the secret key, auxiliary sub-keys are additionally generated in the form of mutually simple multi-bit binary numbers m 1 and m 2 , and cryptogram C is formed as a solution to the system of two comparisons С≡C M modm 1 and С≡C T modm 2 with unknown С.

Новым также является то, что, по крайней мере, одно из многоразрядных двоичных чисел m1 и m2 является простым.Also new is that at least one of the multi-bit binary numbers m 1 and m 2 is prime.

Использование простых чисел в качестве модулей системы сравнений упрощает процедуру формирования секретного ключа, поскольку устраняется необходимость выполнения алгоритма Евклида для проверки условия взаимной простоты МДЧ m1 и m2.The use of primes as modules of the comparison system simplifies the procedure for generating the secret key, since the need to execute the Euclidean algorithm to verify the mutual simplicity conditions of the MDC m 1 and m 2 is eliminated.

Благодаря указанной новой совокупности существенных признаков за счет формирования n-битовых вспомогательных криптограмм CM и CT обеспечивается использование всех битов вспомогательной криптограммы при выполнении процедуры расшифрования как блока данных М, так и вспомогательного n-битового блока данных Т, в качестве которой может быть применен n-битовой блок некоторого фиктивного сообщения. Это обеспечивает эффективную маскировку факта наличия n-битового блока данных М в блоке криптограммы С при ее расшифровании криптограммы С потенциальным нарушителем по подключам Q и m2, поскольку процедура расшифрования выполняется по одной и той же формуле как при расшифровании блока данных М, так и при расшифровании блока фиктивного сообщения Т.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 data block T, which can be used as An n-bit block of some dummy message. This provides an effective masking of the presence of an n-bit data block M in the block of cryptogram C when it is decrypted by cryptogram C by a potential intruder using Q and m 2 subkeys, since the decryption procedure is performed using the same formula both when decrypting the M data block and decrypting the fictitious message block T.

Корректность заявленного способа шифрования n-битового блока двоичных данных М состоит в том, что по криптограмме С может быть восстановлен n-битовый блок двоичных данных М по подключам Q и m1 по формуле M=DQ(Cmodm1), где D - операция блочного расшифрования, обратная операции блочного шифрования Е, и вспомогательный n-битовый блок данных Т по подключам R и m2 по формуле Т=DR(Cmodm2).The correctness of the claimed method of encrypting an n-bit block of binary data M is that, according to the cryptogram C, an n-bit block of binary data M can be restored using subkeys Q and m 1 according to the formula M = D Q (Cmodm 1 ), where D is the operation block decryption, the inverse of the operation of block encryption E, and an auxiliary n-bit data block T on the subkeys R and m 2 according to the formula T = D R (Cmodm 2 ).

Действительно, при выполнении процедуры расшифрования по подключам Q и m1 имеемIndeed, when performing the decryption procedure for the subkeys Q and m 1, we have

C mod m 1 = C M D ( C mod m 1 ) Q = D Q ( C M ) = D Q ( E Q ( M ) ) = E Q 1 ( E Q ( M ) ) = M ,

Figure 00000001
C mod m one = C M D ( C mod m one ) Q = D Q ( C M ) = D Q ( E Q ( M ) ) = E Q - one ( E Q ( M ) ) = M ,
Figure 00000001

а при выполнении процедуры расшифрования по подключам R и m2 имеемand when performing the decryption procedure for the R and m 2 subkeys, we have

C mod m 2 = C T D ( C mod m 2 ) R = D R ( C T ) = D R ( E R ( T ) ) = E R 1 ( E R ( T ) ) = T .

Figure 00000002
C mod m 2 = C T D ( C mod m 2 ) R = D R ( C T ) = D R ( E R ( T ) ) = E R - one ( E R ( T ) ) = T .
Figure 00000002

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

Пример 1. Шифрование 64-битового блока двоичных данных М (n=64). Формируют секретный ключ в виде подключей Q, R, m1 и m2, причем подключ Q формируют в виде 128-битовой строки, представляющей собой конкатенацию двух нечетных 64-разрядных двоичных чисел q1 и q2, т.е. Q=q1||q2, где знак || обозначает операцию конкатенации, подключ R формируют в виде 128-битовой строки, представляющей собой конкатенацию двух нечетных 64-битовых двоичных чисел r1 и r2, т.е. R=r1||r2, подключи m1 и m2 формируют в виде двух случайных 65-битовых двоичных чисел, удовлетворяющих условию взаимной простоты, т.е. их наибольший общий делитель равен единице. Затем формируют вспомогательный 64-битовый блок данных Т и 64-битовую вспомогательную криптограмму CM путем выполнения над блоком данных М операции блочного шифрования Е в зависимости от подключа Q=q1||q2 по формуле CM=EQ(M), где операция блочного шифрования описывается следующим алгоритмом:Example 1. Encryption of a 64-bit block of binary data M (n = 64). The secret key is formed in the form of subkeys Q, R, m 1 and m 2 , and subkey Q is formed as a 128-bit string, which is a concatenation of two odd 64-bit binary numbers q 1 and q 2 , i.e. Q = q 1 || q 2 , where the sign || denotes a concatenation operation, subkey R is formed as a 128-bit string representing the concatenation of two odd 64-bit binary numbers r 1 and r 2 , i.e. R = r 1 || r 2 , plug m 1 and m 2 form in the form of two random 65-bit binary numbers that satisfy the condition of mutual simplicity, i.e. their greatest common factor is one. Then, an auxiliary 64-bit data block T and a 64-bit auxiliary cryptogram C M are formed by performing block ciphering E on the data block M depending on the subkey Q = q 1 || q 2 according to the formula C M = E Q (M), where the operation of block encryption is described by the following algorithm:

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

2. Сформировать 64-битовую строку CM в виде МДЧ, вычисленного по формуле CM←(q1(CM⊕q2)mod264)<29<, где (…)<29< обозначает операцию циклического сдвига битовой строки (...) на 29 бит влево; знак ⊕ обозначает операцию поразрядного суммирования по модулю 2.2. Generate a 64-bit string C M in the form of MDC calculated by the formula C M ← (q 1 (C M ⊕q 2 ) mod2 64 ) <29 < , where (...) <29 < denotes the operation of cyclic shift of the bit string ( ...) 29 bits to the left; the sign ⊕ denotes the operation of bitwise summation modulo 2.

3. Преобразовать 64-битовую строку CM по формуле CM←(q2(CM⊕q1)mod264)<17<, где (…)<17< обозначает операцию циклического сдвига битовой строки (…) на 17 бит влево.3. Convert a 64-bit string C M according to the formula C M ← (q 2 (C M ⊕q 1 ) mod2 64 ) <17 < , where (...) <17 < denotes the operation of cyclic shift of the bit string (...) by 17 bits to the left.

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

Затем формируют 64-битовую вспомогательную криптограмму CT путем выполнения над вспомогательным 64-битовым блоком двоичных данных Т операции блочного шифрования Е в зависимости от подключа R=r1||r2 no формуле CT=ER(T) в соответствии со следующим алгоритмом:Then a 64-bit auxiliary cryptogram C T is formed by performing block ciphering operation E on the auxiliary 64-bit binary data block T depending on the subkey R = r 1 || r 2 no formula C T = E R (T) in accordance with the following algorithm:

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

2. Сформировать 64-битовую строку CT в виде МДЧ, вычисленного по формуле CT←(r1(CT⊕r2)mod264)<29<.2. Generate a 64-bit string C T in the form of MDC calculated by the formula C T ← (r 1 (C T ⊕r 2 ) mod2 64 ) <29 < .

3. Преобразовать 64-битовую строку CT по формуле CT←(r2(CT⊕r1)mod264)<17<.3. Convert a 64-bit string C T according to the formula C T ← (r 2 (C T ⊕r 1 ) mod2 64 ) <17 < .

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

После формирования вспомогательных криптограмм CM и CT, рассматривая их как 64-битовые МДЧ, формируют криптограмму С в виде решения следующей системы из двух линейных сравнений с неизвестным значением С:After the formation of auxiliary cryptograms C M and C T , considering them as 64-bit MDCs, cryptogram C is formed in the form of a solution of the following system of two linear comparisons with an unknown value of C:

{ C C M mod m 1 C C T mod m 2

Figure 00000003
. { C C M mod m one C C T mod m 2
Figure 00000003
.

Поскольку m1 и m2 представляют собой 65-битовые взаимно простые числа, то m1>CM; m2>CT и в соответствии с китайской теоремой об остатках указанная система имеет единственное решение С<m1m2. Данное решение берется в качестве криптограммы С и вычисляется по следующей формуле [Молдовян Н.А. Теоретический минимум и алгоритмы цифровой подписи. СПб., БХВ-Петербург, 2010. - 304 с.; см. с.15-16]:Since m 1 and m 2 are 65-bit coprime numbers, then m 1 > C M ; m 2 > C T and, in accordance with the Chinese remainder theorem, this system has a unique solution C <m 1 m 2 . This decision is taken as a cryptogram C and is calculated by the following formula [N. Moldovyan Theoretical minimum and digital signature algorithms. SPb., BHV-Petersburg, 2010 .-- 304 p .; see p. 15-16]:

C = ( C M m 2 ( m 2 1 mod m 1 ) + C T m 1 ( m 1 1 mod m 2 ) ) mod m 1 m 2

Figure 00000004
. C = ( C M m 2 ( m 2 - one mod m one ) + C T m one ( m one - one mod m 2 ) ) mod m one m 2
Figure 00000004
.

Доказательство корректности данного частного варианта реализации заявленного способа шифрования n-битового блока двоичных данных М доказывается аналогично описанному ранее общему доказательству корректности заявленного способа с учетом того, что для нечетных МДЧ q1, q2, r1, r2 по модулю 264 существуют и легко вычисляются по расширенному алгоритму Евклида соответствующие обратные значения q 1 1

Figure 00000005
, q 2 1
Figure 00000006
, r 1 1
Figure 00000007
, r 2 1
Figure 00000008
, а операция блочного расшифрования DQ(CM), обратная операции блочного шифрования EQ(M), реализуется следующей процедурой преобразования:The proof of the correctness of this particular embodiment of the claimed method for encrypting an n-bit block of binary data M is proved similarly to the general proof of the correctness of the claimed method described above, given that for odd MDCs q 1 , q 2 , r 1 , r 2 modulo 2 64 exist and the corresponding inverse values are easily calculated using the extended Euclidean algorithm q one - one
Figure 00000005
, q 2 - one
Figure 00000006
, r one - one
Figure 00000007
, r 2 - one
Figure 00000008
and the operation of block decryption D Q (C M ), the inverse of the operation of block encryption E Q (M), is implemented by the following conversion procedure:

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

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

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

3. Преобразовать 64-битовую строку М, выполняя последовательно вычисления по формулам М←M>29>, M Mq 1 1 mod2 64

Figure 00000010
и M←M⊕q2, где (...)>29>обозначает операцию циклического сдвига битовой строки (...) на 29 бит вправо.3. Convert a 64-bit string M, performing sequential calculations according to the formulas M ← M >29> , M Mq one - one mod2 64
Figure 00000010
and M ← M⊕q 2 , where (...) >29> denotes the operation of cyclic shift of the bit string (...) by 29 bits to the right.

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

Аналогично записывается процедура для реализации операции блочного расшифрования DR(CT), обратная операции блочного шифрования ER(Т).Similarly, the procedure for implementing the block decryption operation D R (C T ), the inverse of the block encryption operation E R (T), is recorded.

Рассмотренная частная реализация заявленного способа может быть применена для совместного шифрования двух сообщений Message и Text, каждое из которых, например, имеет размер 64 Кбит. Сообщение Message разбивается на 64-битовые блоки данных M1, M2, …, Mw, где w=1000. Сообщение Text разбивается на 64-битовые блоки данных Т1, Т2, …, Tw. Поочередно для значений i=1, 2, …, 1000 пары блоков данных (Mi, Ti) совместно шифруются в соответствии с описанным примером реализации заявленного способа, в результате чего формируется шифртекст в виде последовательности 128-битовых криптограмм (C1||C2)i, i=1, 2, …, 1000.The considered private implementation of the claimed method can be used to jointly encrypt two Messages and Text messages, each of which, for example, has a size of 64 Kb. Message Message is divided into 64-bit data blocks M 1 , M 2 , ..., M w , where w = 1000. The Text message is divided into 64-bit data blocks T 1 , T 2 , ..., T w . Alternately, for the values i = 1, 2, ..., 1000, the pairs of 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 128-bit cryptograms (C 1 || C 2 ) i , i = 1, 2, ..., 1000.

Пример 2. Шифрование 128-битового блока двоичных данных М (n=128). Формируют секретный ключ в виде подключей Q, R, m1 и m2, причем подключ Q формируют в виде 256-битовой строки, представляющей собой конкатенацию двух нечетных 128-разрядных двоичных чисел q1 и q2, т.е. Q=q1||q2, где знак || обозначает операцию конкатенации, подключ R формируют в виде 256-битовой строки, представляющей собой конкатенацию двух нечетных 64-битовых двоичных чисел r1 и r2, т.е. R=r1||r2, подключи m1 и m2 формируют в виде двух случайных простых 129-битовых двоичных чисел, удовлетворяющих условию m1≠m2 (в силу последнего условия m1 и m2 являются взаимно простыми МДЧ). Затем формируют вспомогательный 128-битовый блок данных Т и 128-битовую вспомогательную криптограмму CM путем выполнения над блоком данных М операции блочного шифрования Е в зависимости от подключа Q=q1||q2 по формуле CM=EQ(M), где операция блочного шифрования описывается следующим алгоритмом:Example 2. Encryption of a 128-bit block of binary data M (n = 128). The secret key is formed in the form of subkeys Q, R, m 1 and m 2 , and subkey Q is formed in the form of a 256-bit string, which is a concatenation of two odd 128-bit binary numbers q 1 and q 2 , i.e. Q = q 1 || q 2 , where the sign || denotes a concatenation operation, subkey R is formed as a 256-bit string representing the concatenation of two odd 64-bit binary numbers r 1 and r 2 , i.e. R = r 1 || r 2 , plug m 1 and m 2 form in the form of two random simple 129-bit binary numbers satisfying the condition m 1 ≠ m 2 (due to the last condition, m 1 and m 2 are coprime MDCs). Then, an auxiliary 128-bit data block T and a 128-bit auxiliary cryptogram C M are formed by performing block encryption operation E on the data block M depending on the subkey Q = q 1 || q 2 according to the formula C M = E Q (M), where the operation of block encryption is described by the following algorithm:

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

2. Сформировать 128-битовую строку CM в виде МДЧ, вычисленного по формуле CM←(q1(CM⊕q2)mod2128)<80<, где (…)<80< обозначает операцию циклического сдвига битовой строки (…) на 80 бит влево.2. Generate a 128-bit string C M in the form of MDC calculated by the formula C M ← (q 1 (C M ⊕q 2 ) mod2 128 ) <80 < , where (...) <80 < denotes the operation of cyclic shift of the bit string ( ...) 80 bits to the left.

3. Преобразовать 128-битовую строку CM по формуле CM←(q2(CM⊕q1)mod2128)<40<, где (…)<40< обозначает операцию циклического сдвига битовой строки (…) на 40 бит влево.3. Convert a 128-bit string C M according to the formula C M ← (q 2 (C M ⊕q 1 ) mod2 128 ) <40 < , where (...) <40 < denotes the operation of cyclic shift of the bit string (...) by 40 bits to the left.

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

Затем формируют 128-битовую вспомогательную криптограмму CT путем выполнения над вспомогательным 128-битовым блоком двоичных данных Т операции блочного шифрования Е в зависимости от подключа R=r1||r2 по формуле CT=ER(T) в соответствии со следующим алгоритмом:Then, a 128-bit auxiliary cryptogram C T is formed by performing block encryption operation E on the auxiliary 128-bit binary data block T, depending on the subkey R = r 1 || r 2 according to the formula C T = E R (T) in accordance with the following algorithm:

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

2. Сформировать 128-битовую строку CT в виде МДЧ, вычисленного по формуле CT←(r1(CT⊕r2)mod2128)<80<.2. Generate a 128-bit string C T in the form of MDC calculated by the formula C T ← (r 1 (C T ⊕r 2 ) mod2 128 ) <80 < .

3. Преобразовать 128-битовую строку CT по формуле CT←(r2(CT⊕r1)mod2128)<40<.3. Convert a 128-bit string C T according to the formula C T ← (r 2 (C T ⊕r 1 ) mod2 128 ) <40 < .

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

После формирования вспомогательных криптограмм CM и CT, рассматривая их как 64-битовые МДЧ, формируют криптограмму С в виде решения следующей системы из двух линейных сравнений с неизвестным значением С:After the formation of auxiliary cryptograms C M and C T , considering them as 64-bit MDCs, cryptogram C is formed in the form of a solution of the following system of two linear comparisons with an unknown value of C:

{ C C M mod m 1 C C T mod m 2

Figure 00000003
{ C C M mod m one C C T mod m 2
Figure 00000003

Поскольку m1 и m2 (m2≠m1) представляют собой 129-битовые простые числа, то m1>CM, m2>CT и в соответствии с китайской теоремой об остатках указанная система имеет единственное решение С<m1m2. Данное решение берется в качестве криптограммы С и вычисляется по следующей формулеSince m 1 and m 2 (m 2 ≠ m 1 ) are 129-bit primes, then m 1 > C M , m 2 > C T and, in accordance with the Chinese remainder theorem, this system has a unique solution C <m 1 m 2 . This decision is taken as a cryptogram C and is calculated by the following formula

C = ( C M m 2 ( m 2 1 mod m 1 ) + C T m 1 ( m 1 1 mod m 2 ) ) mod m 1 m 2

Figure 00000011
C = ( C M m 2 ( m 2 - one mod m one ) + C T m one ( m one - one mod m 2 ) ) mod m one m 2
Figure 00000011

Доказательство корректности данного частного варианта реализации заявленного способа шифрования n-битового блока двоичных данных М доказывается аналогично описанному ранее общему доказательству корректности заявленного способа с учетом того, что для нечетных МДЧ q1, q2, r1, r2 по модулю 2128 существуют и легко вычисляются по расширенному алгоритму Евклида соответствующие обратные значения q 1 1

Figure 00000005
, q 2 1
Figure 00000006
, r 1 1
Figure 00000007
, r 2 1
Figure 00000008
, а операция блочного расшифрования DQ(CM), обратная операции блочного шифрования EQ(M), реализуется следующей процедурой преобразования:The proof of the correctness of this particular embodiment of the claimed method of encrypting an n-bit block of binary data M is proved similarly to the general proof of the correctness of the claimed method described above, given that for odd MDCs q 1 , q 2 , r 1 , r 2 modulo 2 128 exist and the corresponding inverse values are easily calculated using the extended Euclidean algorithm q one - one
Figure 00000005
, q 2 - one
Figure 00000006
, r one - one
Figure 00000007
, r 2 - one
Figure 00000008
and the operation of block decryption D Q (C M ), the inverse of the operation of block encryption E Q (M), is implemented by the following conversion procedure:

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

2. Преобразовать 128-битовую строку М, выполняя последовательно вычисления по формулам M←M<40<, M M q 2 1 mod 2 128

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

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

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

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

Рассмотренная частная реализация заявленного способа может быть применена для совместного шифрования двух сообщений Message и Text, каждое из которых, например, имеет размер 128 кбайт. Сообщение Message разбивается на 128-битовые блоки данных М1, M2, …, Mw, где w=8000. Сообщение Text разбивается на 128-битовые блоки данных Т1, Т2, …, Tw. Поочередно для значений i=1, 2, …, 8000 пары блоков данных (Mi, Ti) совместно шифруются в соответствии с описанным примером реализации заявленного способа, в результате чего формируется шифртекст в виде последовательности 256-битовых криптограмм (C1||C2)i, i=1, 2, …, 8000.The considered private implementation of the claimed method can be used to jointly encrypt two Messages and Text messages, each of which, for example, has a size of 128 KB. Message Message is divided into 128-bit data blocks M 1 , M 2 , ..., M w , where w = 8000. The Text message is split into 128-bit data blocks T 1 , T 2 , ..., T w . Alternately, for values i = 1, 2, ..., 8000, pairs of 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 256-bit cryptograms (C 1 || C 2 ) i , i = 1, 2, ..., 8000.

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

Заявляемый способ шифрования блока данных М, представленного в виде 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 broadcasting of messages solve the problem of untraceability of the schedule when transmitting information via telecommunication channels.

Приложение 1Annex 1

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

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", ie as a bit string.

7. Сравнимыми по модулю некоторого числа m называются числа, разность которых делится на число m без остатка или, что то же самое, числа, при делении которых на число m получаются равные остатки. Сравнимость двух МДЧ а и b по модулю m обозначается как а≡bmodm или а≡b(modm), а также как равенство по модулю, т.е. а=bmodm или а=b(modm).7. Comparable in absolute value of a certain number m are called the numbers whose difference is divided by the number m without remainder or, which is the same, the numbers, when divided by the number m, equal residues are obtained. The comparability of the two MDCs a and b modulo m is denoted as a≡bmodm or a≡b (modm), and also as equality modulo, i.e. a = bmodm or a = b (modm).

8. Операция умножения двух МДЧ по модулю m выполняется как обычное алгебраическое умножение МДЧ с последующим взятием остатка от деления полученного результата на модуль m.8. The operation of multiplying two MDC modulo m is performed as a normal algebraic multiplication of MDC followed by taking the remainder of dividing the result by module m.

9. Операция сложения двух МДЧ по модулю m выполняется как обычное алгебраическое сложение МДЧ с последующим взятием остатка от деления полученного результата на модуль m.9. The operation of adding two MDC modulo m is performed as the usual algebraic addition of MDC followed by taking the remainder of dividing the result by module m.

10. Каждому МДЧ а, взаимно простому с модулем m, может быть сопоставлен в соответствие единственный элемент а-1, называемый обратным элементом по отношению к данному элементу, такой, что произведение a-1a (а значит и аа-1) сравнимо с единицей по модулю m. Для вычисления обратных значений а-1 по модулю m используется расширенный алгоритм Евклида, детально описанный в книге [Молдовян Н.А. Молдовян А.А. Введение в криптосистемы с открытым ключом. СПб., БХВ - Петербург, 2005. - 288 с.; см. с.78-79].10. For each MDC a, which is coprime to the module m, there can be associated a single element a -1 , called the inverse element with respect to this element, such that the product a -1 a (and hence aa -1 ) is comparable to unit modulo m. To calculate the inverse values of a -1 modulo m, we use the extended Euclidean algorithm described in detail in the book [N. Moldovyan Moldovyan A.A. Introduction to public key cryptosystems. SPb., BHV - Petersburg, 2005 .-- 288 p .; see p. 78-79].

11. Операция деления МДЧ а на МДЧ b по модулю m выполняется как операция умножения по модулю m МДЧ а на МДЧ b-1, которое является обратным к МДЧ b по модулю m.11. The operation of dividing the MDC a by the MDC b modulo m is performed as the operation of multiplying the modulo m of the MDC a by the MDC b -1 , which is the inverse of the MDC b modulo m.

12. Операции сложения и умножения по модулю m являются ассоциативными и коммутативными, а также операция умножения по модулю m по отношению к умножению по модулю m является дистрибутивной.12. The operations of addition and multiplication modulo m are associative and commutative, and the operation of multiplication modulo m with respect to multiplication modulo m is distributive.

13. Система из двух линейных уравнений по модулю m с двумя неизвестными имеет единственное решение, если выполняется условие взаимной простоты коэффициентов и модуля m и условие взаимной простоты главного определителя системы и модуля m.13. A system of two linear equations modulo m with two unknowns has a unique solution if the condition of mutual simplicity of the coefficients and the module m and the condition of mutual simplicity of the main determinant of the system and the module m are satisfied.

Claims (2)

1. Способ шифрования n-битового блока данных М, заключающийся в формировании секретного ключа путем генерации подключей Q и R, формировании вспомогательного n-битового блока данных T, формировании n-битовой вспомогательной криптограммы CM путем выполнения над М операции блочного шифрования Е в зависимости от Q по формуле CM=EQ(М), формировании n-битовой вспомогательной криптограммы CТ путем выполнения над Т операции блочного шифрования Е в зависимости от R по формуле CT=ER(t), формировании криптограммы С в зависимости от секретного ключа и вспомогательных криптограмм CM и CT, отличающийся тем, что при формировании секретного ключа дополнительно генерируют вспомогательные подключи в виде взаимно простых многоразрядных двоичных чисел m1 и m2, а криптограмму С формируют в виде решения системы двух сравнений С≡CMmodm1 и С≡CTmodm2 с неизвестным С.1. A method of encrypting an n-bit data block M, which consists in generating a secret key by generating Q and R subkeys, generating an auxiliary n-bit data block T, forming an n-bit auxiliary cryptogram C M by performing block encryption operation E on M depending from Q according to the formula C M = E Q (M), the formation of an n-bit auxiliary cryptogram C T by performing block ciphering operations E on T depending on R by the formula C T = E R (t), the formation of cryptogram C depending on secret key and pop ogatelnyh cryptograms C M and C T, characterized in that when forming a secret key further comprises generating the auxiliary plug as coprime multibit binary numbers m 1 and m 2, and the ciphertext C is formed as a system of two solutions S≡C comparisons 1 and M modm С≡C T modm 2 with unknown С. 2. Способ по п.1, отличающийся тем, что, по крайней мере, одно из многоразрядных двоичных чисел m1 и m2 является простым. 2. The method according to claim 1, characterized in that at least one of the multi-bit binary numbers m 1 and m 2 is simple.
RU2013120577/08A 2013-05-06 2013-05-06 Method of encrypting n-bit unit m RU2518950C9 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2013120577/08A RU2518950C9 (en) 2013-05-06 2013-05-06 Method of encrypting n-bit unit m

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2013120577/08A RU2518950C9 (en) 2013-05-06 2013-05-06 Method of encrypting n-bit unit m

Publications (2)

Publication Number Publication Date
RU2518950C1 RU2518950C1 (en) 2014-06-10
RU2518950C9 true RU2518950C9 (en) 2014-09-10

Family

ID=51216540

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2013120577/08A RU2518950C9 (en) 2013-05-06 2013-05-06 Method of encrypting n-bit unit m

Country Status (1)

Country Link
RU (1) RU2518950C9 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2620730C1 (en) * 2015-12-07 2017-05-29 федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации Method of secured transmission of encrypted information over communication channels

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
RU2620730C1 (en) * 2015-12-07 2017-05-29 федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации Method of secured transmission of encrypted information over communication channels

Also Published As

Publication number Publication date
RU2518950C1 (en) 2014-06-10

Similar Documents

Publication Publication Date Title
US9973334B2 (en) Homomorphically-created symmetric key
US9172529B2 (en) Hybrid encryption schemes
Balajee et al. Evaluation of key dependent S-box based data security algorithm using Hamming distance and balanced output
JPH08505275A (en) Device and method for generating a cipher stream
JP2015158665A (en) Variable-length block encrypting device and method for form storage encryption
RU2459275C1 (en) Method for unit coding of m message represented in binary form
RU2459276C1 (en) Method for coding of m message represented as multidigit binary number
Reyad et al. Key-based enhancement of data encryption standard for text security
Pradeep et al. Random key and key dependent s-box generation for aes cipher to overcome known attacks
CN111030801A (en) Multi-party distributed SM9 key generation and ciphertext decryption method and medium
Hoobi Efficient hybrid cryptography algorithm
EP1692807B1 (en) A secure cryptographic communication system using kem-dem
Scripcariu A study of methods used to improve encryption algorithms robustness
WO2010070579A1 (en) System and method for countering side-channel attacks against encryption based on cyclic groups
EP2571192A1 (en) Hybrid encryption schemes
RU2518950C9 (en) Method of encrypting n-bit unit m
JP2004246350A (en) Enciphering device, deciphering device, enciphering system equipped with the same, enciphering method, and deciphering method
Ledda et al. Enhancing IDEA algorithm using circular shift and middle square method
Sun et al. A lightweight secure protocol for wireless sensor networks
Djordjevic et al. Conventional Cryptography Fundamentals
RU2542880C1 (en) Method of encrypting binary data unit
Moldovyan et al. Randomized pseudo-probabilistic encryption algorithms
RU2542929C1 (en) Method to code data unit represented as bit string
Mihaljević et al. A security evaluation of certain stream ciphers which involve randomness and coding
Almuhammadi et al. Double-hashing operation mode for encryption

Legal Events

Date Code Title Description
TH4A Reissue of patent specification
TK4A Correction to the publication in the bulletin (patent)

Free format text: AMENDMENT TO CHAPTER -FG4A- IN JOURNAL: 16-2014 FOR TAG: (54)

MM4A The patent is invalid due to non-payment of fees

Effective date: 20180507