RU2759862C1 - Способ шифрования данных - Google Patents
Способ шифрования данных Download PDFInfo
- Publication number
- RU2759862C1 RU2759862C1 RU2020143079A RU2020143079A RU2759862C1 RU 2759862 C1 RU2759862 C1 RU 2759862C1 RU 2020143079 A RU2020143079 A RU 2020143079A RU 2020143079 A RU2020143079 A RU 2020143079A RU 2759862 C1 RU2759862 C1 RU 2759862C1
- Authority
- RU
- Russia
- Prior art keywords
- encryption
- block
- data
- sector
- key
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
Изобретение относится к компьютерной технике и предназначено для шифрования данных на носителях информации. Технический результат заключается в упрощении шифрование данных с сохранением надежности их защиты. Технический результат достигается за счет того, что шифрование осуществляется алгоритмом блочного шифрования «Кузнечик» с применением ключей, вырабатываемых алгоритмом блочного шифрования «Магма» на основе логического адреса зашифровываемого сектора и исходного ключа шифрования устройства. Адрес используется в качестве идентификатора сектора, поэтому известен и не требует хранения на носителе информации. 1 ил.
Description
Изобретение относится к компьютерной технике и предназначено для шифрования данных на носителях информации.
Из уровня техники известен способ криптографической защиты информации, описанный в ГОСТ Р 34.13 - 2015, дата введения 01.01.2016. Данный способ заключается в том, что информация зашифровывается и расшифровывается с помощью одного и того же ключа, генерируемого алгоритмом блочного шифрования Кузнечик. При этом ключ шифрования в 256 бит подается на носитель информации извне и на нем самом не содержится. Поэтому при подаче на носитель информации неправильного ключа вместо исходных данных будут получены произвольные данные. И тогда при попадании носителя информации в нежелательные руки (к злоумышленнику) сложность раскрытия информации определяется сложностью подбора 256-битного ключа.
Недостатком данного способа защиты информации является то, что данные с одинаковым изначальным содержанием после шифрования также будут одинаковыми. Что все-таки дает некоторую дополнительную информацию злоумышленнику.
Для устранения этого недостатка, т.е. чтобы разные данные с одинаковым содержанием после шифрования оказывались разными, ГОСТ Р 34.13 - 2015 предлагает воспользоваться шифрованием в режиме гаммирования. В этом режиме помимо блока шифрования Кузнечик реализуется блок выработки уникальной синхропосылки, которая представляет 64-битное число. При этом данная синхропосылка должна быть своя для каждого зашифровываемого сектора, и при расшифровке сектора эту синхропосылку необходимо знать. Это означает, что синхропосылка для каждого сектора должна сохраняться на носителе информации, причем в незашифрованном виде. Последнее и является главным недостатком данной схемы шифрования при использовании ее для носителей данных. Помимо того, что синхропосылка хранится на носителе данных в открытом виде, она занимает область памяти, которую можно было бы использовать для хранения проверочных бит помехоустойчивого кода, и тем самым усилить надежность и долговечность носителя данных. Другим недостатком является необходимость реализации блока выработки синхропосылки, обеспечивающего её уникальность.
Техническим результатом заявленного изобретения является упрощение шифрования данных с сохранением надежности их защиты от взлома.
Указанный результат обеспечивается тем, что в качестве дополнительной информации при выработке ключей шифрования использовать логический адрес сектора. Этот адрес используется в качестве идентификатора сектора и поэтому известен и не требует отдельного места для хранения на носителе данных.
Таким образом, предлагается способ шифрования данных в блочных запоминающих устройствах, в котором шифрование осуществляется алгоритмом блочного шифрования «Кузнечик» с применением раундовых ключей, в котором выработка раундовых ключей происходит блоком выработки раундовых ключей, на который подают ключ шифрования, сформированный путем зашифрования производных логического адреса сектора на исходном ключе алгоритмом «Магма».
Алгоритмы «Кузнечик» и «Магма» реализуются в соответствии с ГОСТ Р 34.12 - 2015.
Заявленное изобретение поясняется фигурой, на которой приведен пример схемы выработки раундовых ключей на основе логического адреса сектора и ключа шифрования, применяемой для шифрования.
Далее будет подробно изложено заявленное изобретение с приведением примера реализации.
Шифрование данных в блочных запоминающих устройствах происходит следующим образом (см. фиг.). На вход блока «Булев оператор» поступает 32-битный логический адрес сектора LSA. На выходе получается 256-битная последовательность, которую назовем «сырым» ключом. В качестве булевого оператора предлагается использовать 8 независимых блоков, на вход каждого из которых поступает 32-битный LSA, где результат i-го блока задается формулой S_i(LSA+a_i). Здесь S_i - некоторая 32-битная перестановка, a_i - некоторое натуральное число, а “+” - операция сложения натуральных чисел. В принципе перестановки S_i и числа a_i могут быть разными у разных носителей и, например, прожигаться в контроллере носителя после изготовления, и тем самым будут неизвестны злоумышленнику.
Выход блока «Булев оператор» поступает на 256 регистров, которые раз в 32 такта сдвигаются влево на 64 бита. Тем самым на блок «Магма» в первый момент попадают младшие 64 бита сырого ключа, через 32 такта на блок «Магма» попадают следующие 64 бита сырого ключа, через 32 такта - следующая порция из 64-х бит и, наконец, еще через 32 бита на блок «Магма» поступают старшие 64 бита сырого ключа.
Блок «Магма» реализует алгоритм блочного шифрования Магма, описанного в ГОСТ Р 34.12 - 2015. Аппаратная реализация данного алгоритма позволяет за 32 такта зашифровать поступившие на вход 64 бита и через 32 такта выдать на выход зашифрованные 64 бита. Шифрование осуществляется в режиме простой замены с помощью фиксированного 256-битного ключа, который подается на устройство извне.
Выходы блока «Магма» подаются на старшие биты 256-битного регистра, которые каждые 32 такта сдвигаются влево на 64 бита. Тем самым через 32*4=128 тактов на этом регистре сформировывается 256-битный ключ шифрования, который подается на блок выработки раундовых ключей.
Блок выработки раундовых ключей для алгоритма Кузнечик реализован в соответствии с ГОСТом Р 34.12 - 2015 и через 32 такта выдает 10 раундовых ключей необходимых для алгоритма Кузнечик.
Тем самым через 1+128+1+32=162 такта после поступления LSA мы получаем 10 раундовых ключей.
Если на вход модуля шифрования поступают данные сектора по 64 бита за такт, то Модуль шифрования, состоящий из пяти модулей Кузнечик сможет обрабатывать такой поток данных в режиме конвейера и через 10 тактов каждый такт выдавать зашифрованные 64 бита сектора. Тем самым сектор размера 4096 байт будет обрабатываться 4096*8/64=512 тактов. Если на вход модуля шифрования поступают данные сектора по 128 бит за такт, то сектор размера 4096 байт будет обрабатываться 256 тактов.
Более того, поскольку 162<256<512, то если подавать LSA заранее, т.е. во время шифрования некоторого сектора Модулем шифрования на вход Модуля выработки раундовых ключей подавать LSA следующего сектора, то такая схема шифрования позволит без пауз справлять с потоком данных как в 64 бита за такт, так и в 126 бит за такт.
Накопителями информации могут быть различные устройства, известные в настоящее время и предназначенные для хранения информации, например жесткие диски, съемные флеш-памяти и т.д.
Claims (1)
- Способ шифрования данных в блочных запоминающих устройствах, в котором шифрование осуществляется алгоритмом блочного шифрования «Кузнечик», отличающийся тем, что шифрование осуществляется с применением ключей, вырабатываемых алгоритмом блочного шифрования «Магма» на основе 8 независимых блоков, на вход каждого из которых поступает 32-битный логический адрес сектора (LSA), где результат i-го блока задается формулой S_i(LSA+a_i), где S_i - 32-битная перестановка, a_i - натуральное число, а “+” - операция сложения натуральных чисел и исходного ключа шифрования устройства.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020143079A RU2759862C1 (ru) | 2020-12-25 | 2020-12-25 | Способ шифрования данных |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020143079A RU2759862C1 (ru) | 2020-12-25 | 2020-12-25 | Способ шифрования данных |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2759862C1 true RU2759862C1 (ru) | 2021-11-18 |
Family
ID=78607460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2020143079A RU2759862C1 (ru) | 2020-12-25 | 2020-12-25 | Способ шифрования данных |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2759862C1 (ru) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2801707C1 (ru) * | 2022-10-18 | 2023-08-15 | Федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский университет "Московский институт электронной техники" | Устройство шифрования данных алгоритма "Магма" по стандарту ГОСТ 34.12-2015 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6289454B1 (en) * | 1998-06-29 | 2001-09-11 | Vlsi Technology, Inc. | Memory configuration which support multiple cryptographical algorithms |
RU173234U1 (ru) * | 2017-03-06 | 2017-08-17 | Общество с ограниченной ответственностью "КАСКАД" | Устройство раунда шифрования данных по алгоритму "магма" и стандарту гост р 34.12-2015 |
RU2649429C1 (ru) * | 2017-03-06 | 2018-04-03 | Общество с ограниченной ответственностью "КАСКАД" | Устройство шифрования данных по стандарту гост р 34.12-2015 и алгоритмам "магма" и aes |
RU2654078C1 (ru) * | 2017-03-06 | 2018-05-16 | Общество с ограниченной ответственностью "КАСКАД" | Устройство раунда шифрования данных по алгоритму "магма" и стандарту гост р 34.12-2015 |
-
2020
- 2020-12-25 RU RU2020143079A patent/RU2759862C1/ru active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6289454B1 (en) * | 1998-06-29 | 2001-09-11 | Vlsi Technology, Inc. | Memory configuration which support multiple cryptographical algorithms |
RU173234U1 (ru) * | 2017-03-06 | 2017-08-17 | Общество с ограниченной ответственностью "КАСКАД" | Устройство раунда шифрования данных по алгоритму "магма" и стандарту гост р 34.12-2015 |
RU2649429C1 (ru) * | 2017-03-06 | 2018-04-03 | Общество с ограниченной ответственностью "КАСКАД" | Устройство шифрования данных по стандарту гост р 34.12-2015 и алгоритмам "магма" и aes |
RU2654078C1 (ru) * | 2017-03-06 | 2018-05-16 | Общество с ограниченной ответственностью "КАСКАД" | Устройство раунда шифрования данных по алгоритму "магма" и стандарту гост р 34.12-2015 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2801707C1 (ru) * | 2022-10-18 | 2023-08-15 | Федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский университет "Московский институт электронной техники" | Устройство шифрования данных алгоритма "Магма" по стандарту ГОСТ 34.12-2015 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8799679B2 (en) | Message authentication code pre-computation with applications to secure memory | |
US8428251B2 (en) | System and method for stream/block cipher with internal random states | |
US8737606B2 (en) | Method and system for high throughput blockwise independent encryption/decryption | |
JP5167374B2 (ja) | データ暗号化装置、及び、メモリカード | |
US8301905B2 (en) | System and method for encrypting data | |
US20210021405A1 (en) | Key sequence generation for cryptographic operations | |
KR20150064148A (ko) | 물리적 복제방지 기능으로서 이용되는 메모리로부터 암호 키를 생성하기 위한 시스템 | |
US8913740B2 (en) | Method and apparatus for generating an Advanced Encryption Standard (AES) key schedule | |
US11258579B2 (en) | Method and circuit for implementing a substitution table | |
US20230386541A1 (en) | Puf applications in memories | |
AU2012382467A1 (en) | A method of cryption | |
US20040120521A1 (en) | Method and system for data encryption and decryption | |
RU2759862C1 (ru) | Способ шифрования данных | |
JP2019122046A (ja) | 物理的複製困難関数技術を用いたエンタングルメント・リコールシステム | |
JPS6281145A (ja) | デ−タ暗号化方式 | |
Landge et al. | VHDL based Blowfish implementation for secured embedded system design | |
US11960769B2 (en) | High performance secure read in secure memory providing a continuous output of encrypted information and specific context | |
US20230281305A1 (en) | Method for protecting against side-channel attacks | |
TW202403576A (zh) | 密碼裝置及其密碼方法 | |
Alenezi et al. | On the performance of AES algorithm variants | |
JP2005050116A (ja) | 命令実行装置およびその方法 | |
Anderson | Random Access Counter (RAC) |