RU2759862C1 - Способ шифрования данных - Google Patents

Способ шифрования данных Download PDF

Info

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
Application number
RU2020143079A
Other languages
English (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 RU2020143079A priority Critical patent/RU2759862C1/ru
Application granted granted Critical
Publication of RU2759862C1 publication Critical patent/RU2759862C1/ru

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic 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)

  1. Способ шифрования данных в блочных запоминающих устройствах, в котором шифрование осуществляется алгоритмом блочного шифрования «Кузнечик», отличающийся тем, что шифрование осуществляется с применением ключей, вырабатываемых алгоритмом блочного шифрования «Магма» на основе 8 независимых блоков, на вход каждого из которых поступает 32-битный логический адрес сектора (LSA), где результат i-го блока задается формулой S_i(LSA+a_i), где S_i - 32-битная перестановка, a_i - натуральное число, а “+” - операция сложения натуральных чисел и исходного ключа шифрования устройства.
RU2020143079A 2020-12-25 2020-12-25 Способ шифрования данных RU2759862C1 (ru)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2801707C1 (ru) * 2022-10-18 2023-08-15 Федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский университет "Московский институт электронной техники" Устройство шифрования данных алгоритма "Магма" по стандарту ГОСТ 34.12-2015

Citations (4)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)