RU2291579C1 - Способ подтверждения подлинности дискретного сообщения - Google Patents

Способ подтверждения подлинности дискретного сообщения Download PDF

Info

Publication number
RU2291579C1
RU2291579C1 RU2005129371/09A RU2005129371A RU2291579C1 RU 2291579 C1 RU2291579 C1 RU 2291579C1 RU 2005129371/09 A RU2005129371/09 A RU 2005129371/09A RU 2005129371 A RU2005129371 A RU 2005129371A RU 2291579 C1 RU2291579 C1 RU 2291579C1
Authority
RU
Russia
Prior art keywords
vector
binary
binary vector
bits
discrete message
Prior art date
Application number
RU2005129371/09A
Other languages
English (en)
Inventor
Виктор Иванович Тупота (RU)
Виктор Иванович Тупота
Алексей Анатольевич Бурушкин (RU)
Алексей Анатольевич Бурушкин
Владимир Александрович Минаков (RU)
Владимир Александрович Минаков
к Владимир Кириллович Железн (RU)
Владимир Кириллович Железняк
Владимир Феликсович Комарович (RU)
Владимир Феликсович Комарович
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 RU2005129371/09A priority Critical patent/RU2291579C1/ru
Application granted granted Critical
Publication of RU2291579C1 publication Critical patent/RU2291579C1/ru

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Изобретение сообщения относится к области электросвязи и вычислительной техники, а конкретнее к области способов и устройств для криптографического преобразования данных. Технический результат - обеспечение отбраковки ложных сообщений и повышение быстродействия процесса подтверждения подлинности дискретного сообщения. Сущность данного способа заключается в формировании двоичного вектора, соответствующего дате и времени передачи дискретного сообщения, формировании двоичного вектора секретного параметра, формировании двоичного вектора идентификации и добавлении их к дискретному сообщению, отличается от известных способов тем, что дополнительно формируют случайный двоичный вектор и двоичный вектор ключа защиты, при этом двоичный вектор секретного параметра формируют путем сжатия в два раза случайного двоичного вектора, а двоичный вектор идентификации формируют путем преобразования в кольце класса вычетов по модулю р двоичного вектора, соответствующего дате и времени передачи дискретного сообщения, и двоичного вектора секретного параметра. 1 ил.

Description

Изобретение относится к области электросвязи и вычислительной техники, а конкретнее к области способов и устройств криптографического преобразования данных.
В совокупности признаков заявляемого способа используются следующие термины:
ключ (или ключ защиты) представляет собой комбинацию битов, известную только законному пользователю;
шифрование есть процесс криптографического преобразования блоков данных с использованием ключа, переводящий данные в криптограмму, представляющую собой псевдослучайную последовательность знаков, из которой получение информации без знания ключа практически невыполнимо;
дешифрование есть процесс, обратный процедуре шифрования; дешифрование обеспечивает восстановление информации по криптограмме при знании ключа;
двоичный вектор числа - это сигнал в виде последовательности нулевых и единичных битов, соответствующей представлению числа в двоичной системе исчисления.
Известны способы подтверждения подлинности дискретного сообщения с использованием функций подтверждения подлинности, с использованием механизмов симметричного шифрования, с использованием шифрования с открытым ключом (см., например, [1] стр.136-147).
В известных способах подтверждение подлинности дискретного сообщения реализуется путем включения дополнительной избыточной информации. Эта информация является частью формата сообщения.
Однако известные способы-аналоги подтверждения подлинности дискретного сообщения требуют поддержания специальным сервером ключей.
Наиболее близким по своей технической сущности к заявляемому способу подтверждения подлинности дискретного сообщения является способ с использованием механизмов симметричного шифрования, описанный в [1] на стр.139-147.
Способ-прототип включает в себя формирование на передающей стороне ключа К между пользователями сети длиною n бит, шифрование с использованием ключа К дискретного сообщения, формирование двоичного вектора D, соответствующего дате и времени передачи дискретного сообщения, формирование двоичного вектора секретного параметра β, формирование двоичного вектора идентификации I длиною k бит путем шифрования двоичного вектора секретного параметра β с использованием ключа К, добавление к дискретному сообщению двоичного вектора D, соответствующему дате и времени передачи дискретного сообщения, и двоичного вектора идентификации I, а на приемной стороне осуществляют формирование двоичного вектора ключа К между пользователями сети, определяют двоичный вектор секретного параметра β путем дешифрования двоичного вектора идентификации I и при его совпадении с установленным секретным параметром осуществляют дешифрование дискретного сообщения с использованием ключа К.
Однако способ-прототип имеет недостаток. Поскольку для шифрования и дешифрования ключ К между пользователями сети используется многократно при передаче различный дискретных сообщений, то это позволяет злоумышленнику реализовать задержку дискретных сообщений, их удаление, подмену или повтор (см. [1], стр.144). При этом не обеспечивается защита от таких действий, поскольку само дискретное сообщение не изменяется. Для того, чтобы быть уверенным, что принимаемое дискретное сообщение не является копией ранее полученного, используют механизм перезапроса, что снижает быстродействие процесса подтверждения подлинности дискретного сообщения (см. [1], стр.144), или используют механизм нумерации сообщений. Однако в этом случае в вычислительной сети с большим числом пользователей отдельный пользователь не в состоянии отслеживать информацию о всех взаимодействиях в сети (см. [1], стр.143)
Изобретение направлено на обеспечение отбраковки ложных сообщений и повышение быстродействия процесса подтверждения подлинности дискретного сообщения.
Это достигается тем, что в известном способе подтверждения подлинности дискретного сообщения, заключающемся в том, что на передающей стороне формируют ключ К между пользователями сети длиною n бит, осуществляют шифрование дискретного сообщения, формируют двоичный вектор D, соответствующий дате и времени передачи дискретного сообщения, формируют двоичный вектор секретного параметра β, формируют двоичный вектор идентификации I длиною k бит путем преобразования двоичного вектора секретного параметра β, добавляют к дискретному сообщению двоичный вектор D, соответствующий дате и времени передачи дискретного сообщения, и двоичный вектор идентификации I, а на приемной стороне осуществляют формирование двоичного вектора ключа К между пользователями сети, выделяют двоичный вектор секретного параметра β и осуществляют дешифрование дискретного сообщения, согласно изобретению на передающей стороне пользователи сети дополнительно формируют случайный двоичный вектор ξ длиною n бит, дополнительно формируют двоичный вектор ключа защиты α путем сложения по модулю два битов случайного двоичного вектора ξ с битами двоичного вектора ключа К и передают его вместе с дискретным сообщением, формируют двоичный вектор секретного параметра β путем сжатия случайного двоичного вектора ξ до n/2 бит и используют его для шифрования дискретного сообщения, формируют двоичный вектор идентификации I путем преобразования в кольце класса вычетов по модулю p двоичного вектора D, соответствующего дате и времени передачи дискретного сообщения, и двоичного вектора секретного параметра β D·β≡I(mod p), где p=2k, а на приемной стороне осуществляют выделение случайного двоичного вектора ξ путем сложения по модулю два битов двоичного вектора ключа К с битами двоичного вектора ключа защиты α, формируют двоичный вектор секретного параметра β путем сжатия случайного двоичного вектора ξ до n/2 бит, формируют двоичный вектор идентификации I путем преобразования в кольце класса вычетов по модулю p двоичного вектора D, соответствующего дате и времени передачи дискретного сообщения, и двоичного вектора секретного параметра β D·β≡I(mod p), где p=2k, сравнивают полученный двоичный вектор идентификации I с переданным и при их совпадении осуществляют дешифрование дискретного сообщения с использованием двоичного вектора секретного параметра β.
Перечисленная совокупность существенных признаков исключает возможность определения секретного параметра β, а также ключей К между пользователями сети, так как для их определения требуется знание случайного двоичного вектора ξ, который изменяется для каждого передаваемого дискретного сообщения случайным образом. Это не позволяет злоумышленнику сформировать двоичный вектор идентификации I, соответствующий заданному времени передачи дискретного сообщения, и реализовать задержку дискретных сообщений, их удаление, подмену или повтор. При этом исключается применение механизма перезапроса для повторной передачи дискретного сообщения, что повышает быстродействие процесса подтверждения подлинности дискретного сообщения.
Возможность технической реализации заявленного способа поясняется следующим образом.
Случайный двоичный вектор ξ длиною n бит сформируют, например, путем использования генератора случайных чисел в комбинации с показаниями таймера (см. [1], стр.66).
Двоичный вектор секретного параметра β формируют путем сжатия случайного двоичного вектора ξ до n/2 бит. Для этого случайный двоичный вектор ξ разбивают на два блока одинаковой длины n/2 бит и формируют из двух блоков двоичный вектор путем сложения их битов по модулю два (см. [1], стр.101).
Ключ К пользователи сети определяют путем вычислений, использующих свой секретный ключ и открытый ключ пользователя, вступающего в связь, и выполняемых в соответствии с протоколом 7, представленным в [1] на стр.71, или алгоритмом, представленным в [2] на стр.61 и [4] на стр.139.
Двоичный вектор идентификации I формируют путем перемножения числа, соответствующего двоичному вектору, дате и времени передачи дискретного сообщения D, на число, соответствующее двоичному вектору секретного параметра β, и приведения полученного результата по модулю p=2k, то есть определения остатка от деления полученного результата на число p=2k. При этом знание чисел I и D не позволяет определить число β за приемлемое время, так как из-за отсутствия обратных элементов по отношению к числу D для четных чисел в кольце класса вычетов по модулю p=2k задача нахождения числа β может быть решена методом тотального перебора и сводится к нахождению целого числа x, удовлетворяющего уравнению x·p+I=β·D. Поскольку числа p и I имеют порядок 2k а число β имеет порядок 2n/2, то порядок числа x будет иметь значение не менее 2n/2-k. Так как длину двоичного вектора идентификации I выбирают равной 16-32 бит (см.[1], стр.137) k=16-32, то, в соответствии с Российским стандартом ГОСТ 28147-89 [4], для ключа длиною 256 бит n/2=128 потребуется 296=1028 вычислений для определения числа x. Если вскрытие ключа будет осуществляться с помощью ЭВМ, имеющей тактовую частоту 1 ГГц (109 операций в сек), то число операций, выполняемое этой ЭВМ в течение года, будет составлять 3·1015, а время вскрытия числа β не превысит 3·1012 лет. В соответствии с стандартами США DES и AES, использующих ключи длиною 128 бит, время вскрытия числа β составит не менее 1 месяца. При этом вскрытие числа β не позволяет вскрывать случайный двоичный вектор ξ и ключ К.
Предлагаемый способ может быть реализован с помощью ЭВМ или вычислительного устройства, представленного блок-схемой на чертеже, где
блок 1 - устройство ввода-вывода;
блок 2 - устройство формирования ключа;
блок 3 - устройство формирования случайного двоичного вектора;
блок 4 - устройство формирования ключа защиты;
блок 5 - устройство формирования секретного параметра;
блок 6 - устройство формирования даты и времени передачи дискретного сообщения;
блок 7 - устройство формирования идентификатора дискретного сообщения;
блок 8 - шифрующее устройство;
блок 9 - передающее устройство;
блок 10 - устройство ввода-вывода;
блок 11 - устройство формирования ключа;
блок 12 - приемное устройство;
блок 13 - устройство выделения случайного двоичного вектора;
блок 14 - устройство формирования секретного параметра;
блок 15 - устройство формирования идентификатора дискретного сообщения;
блок 16 - сравнивающее устройство;
блок 17 - дешифрующее устройство.
Для простоты описания работы устройства будем пользоваться малыми числами. Будем считать, что пользователи сети используют ключи длиною 32 бита (n=32), а для идентификатора дискретного сообщения используют 8 бит (k=8).
С помощью блока 1 осуществляют ввод дискретного сообщения, своего секретного ключа и открытого ключа пользователя, которому передается дискретное сообщение.
В блоке 2 формируют ключ между пользователями сети в виде двоичного вектора длиною n=32 бита, используя при этом свой секретный ключ и открытый ключ пользователя, которому передается дискретное сообщение.
К={11100000100001100010100111101000}.
В блоке 3 формируют случайный двоичный вектор
ξ={11100100101101110110011010101111}.
В блоке 4 формируют двоичный вектор ключа защиты путем сложения по модулю два битов ключа К с битами случайного двоичного вектора ξ
α={00000100001100010100111101000111}.
В блоке 5 формируют двоичный вектор секретного параметра β путем разбиения случайного двоичного вектора ξ на два блока
ξ={11100100101101110110011010101111}.
и формирования двоичного вектора длиною 16 бит путем сложения по модулю два битов двоичного вектора первого блока с битами двоичного вектора второго блока
β={1000001000011000}.
Этому двоичному вектору соответствует число β=215+29+24+23=33304 в десятичной системе исчисления.
В блоке 6 формируют двоичный вектор, соответствующий дате и времени передачи дискретного сообщения. Для этого 4 бита выделяют для передачи месяца, следующие 5 бит используют для передачи дня месяца, следующие 4 биты используют для передачи часа, а следующие 6 бит используют для передачи минут. Например, для января (первого) месяца, 7-го числа, 8 часов и 13 минут двоичный вектор D будет иметь вид
D={0001001111000001101}.
Этому двоичному вектору соответствует число D=215+212+211+210+29+23+22+1=40461 в десятичной системе исчисления.
В блоке 7 формируют двоичный вектор идентификации дискретного сообщения I путем умножения числа D на число β и приведения полученного результата по модулю p=2k=256
40461·33304=133683144=200 mod(256).
Этому числу соответствует двоичный вектор
I={11001000}.
В блоке 8 осуществляют шифрование дискретного сообщения, а в блоке 9 присоединяют к зашифрованному дискретному сообщению двоичный вектор, соответствующий дате и времени передачи дискретного сообщения D, двоичный вектор ключа защиты α, двоичный вектор идентификации дискретного сообщения I и передают их по линии связи.
С помощью блока 10 осуществляют ввод дискретного сообщения, своего секретного ключа и открытого ключа отправителя дискретного сообщения.
В блоке 11 формируют ключ между пользователями сети в виде двоичного вектора длиною n=32 бита, используя при этом свой секретный ключ и открытый ключ отправителя дискретного сообщения.
К={11100000100001100010100111101000}.
В блоке 12 осуществляют прием переданных данных.
В блоке 13 выделяют случайный двоичный вектор ξ. Для этого складывают по модулю два биты сформированного на приемной стороне двоичного вектора ключа К с битами принятого двоичного вектора ключа защиты α
α={00000100001100010100111101000111}.
ξ={11100100101101110110011010101111}.
В блоке 14 формируют двоичный вектор секретного параметра β. Для этого разбивают случайный двоичный вектор ξ на два блока
ξ={11100100101101110110011010101111}.
и формируют двоичный вектор длиною 16 бит путем сложения по модулю два битов двоичного вектора первого блока с битами двоичного вектора второго блока
β={1000001000011000}.
Этому двоичному вектору соответствует число β=215+29+24+23=33304 в десятичной системе исчисления.
В блоке 15 формируют двоичный вектор идентификации дискретного сообщения I путем умножения принятого числа D на сформированное на приемной стороне число β и приведения полученного результата по модулю p=256
40461·33304=133683144
Figure 00000002
200 mod(256).
Этому числу соответствует двоичный вектор
I={11001000}.
В блоке 16 сравнивают сформированный на приемной стороне двоичный вектор идентификации дискретного сообщения I с переданным и при их совпадении осуществляют декодирование дискретного сообщения. При этом двоичный вектор идентификации дискретного сообщения I изменяется случайным образом для каждого передаваемого дискретного сообщения и для каждого двоичного вектора, соответствующего дате и времени передачи дискретного сообщения. При приеме дискретного сообщения от того же пользователя сети с двоичным вектором, соответствующим дате и времени передачи предыдущего дискретного сообщения, и двоичным вектором идентификации предыдущего дискретного сообщения его классифицируют как ложное дискретное сообщение и его отбраковывают.
Реализация предлагаемого способа не вызывает затруднений, так как все блоки и узлы, входящие в устройство, реализующее способ, общеизвестны и широко описаны в технической литературе.
Источники информации
1. С.Мафтик. Механизмы защиты в сетях ЭВМ, М., 1993 г.
2. В.И.Нечаев. Элементы криптографии. Основы теории защиты информации, М., Высшая школа, 1999 г.
3. В.И.Тупота. Адаптивные средства защиты информации в вычислительных сетях. - М.: Радио и связь, 2002, - 176 с.
4. Российский стандарт шифрования стандарт СССР ГОСТ 28147-89 системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования.

Claims (1)

  1. Способ подтверждения подлинности дискретного сообщения, заключающийся в том, что формируют ключ К между пользователями сети длиною n бит, осуществляют шифрование дискретного сообщения, формируют двоичный вектор D, соответствующий дате и времени передачи дискретного сообщения, формируют двоичный вектор секретного параметра β, формируют двоичный вектор идентификации I длиною k бит путем преобразования двоичного вектора секретного параметра β, добавляют к дискретному сообщению двоичный вектор D, соответствующий дате и времени передачи дискретного сообщения, и двоичный вектор идентификации I, а на приемной стороне осуществляют формирование двоичного вектора ключа К между пользователями сети, определяют двоичный вектор секретного параметра β и при его совпадении с установленным секретным параметром осуществляют дешифрование дискретного сообщения, отличающийся тем, что, пользователи сети на передающей стороне формируют случайный двоичный вектор ξ длиною n бит, формируют двоичный вектор ключа защиты α путем сложения по модулю два битов случайного двоичного вектора ξ с битами двоичного вектора ключа К и передают его вместе с дискретным сообщением, формируют двоичный вектор секретного параметра Р путем сжатия случайного двоичного вектора ξ до n/2 бит и используют его для шифрования дискретного сообщения, формируют двоичный вектор идентификации I путем преобразования в кольце класса вычетов по модулю p двоичного вектора D, соответствующего дате и времени передачи дискретного сообщения, и двоичного вектора секретного параметра β D·β≡I(mod p), где p=2k, а на приемной стороне осуществляют выделение случайного двоичного вектора ξ путем сложения по модулю два битов двоичного вектора ключа К с битами двоичного вектора ключа защиты α, формируют двоичный вектор секретного параметра β путем сжатия случайного двоичного вектора ξ до n/2 бит, формируют двоичный вектор идентификации I путем преобразования в кольце класса вычетов по модулю p двоичного вектора D, соответствующего дате и времени передачи дискретного сообщения, и двоичного вектора секретного параметра β D·β≡I(mod p), где р=2k, сравнивают полученный двоичный вектор идентификации I с переданным и при их совпадении осуществляют дешифрование дискретного сообщения с использованием двоичного вектора секретного параметра β.
RU2005129371/09A 2005-09-20 2005-09-20 Способ подтверждения подлинности дискретного сообщения RU2291579C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2005129371/09A RU2291579C1 (ru) 2005-09-20 2005-09-20 Способ подтверждения подлинности дискретного сообщения

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2005129371/09A RU2291579C1 (ru) 2005-09-20 2005-09-20 Способ подтверждения подлинности дискретного сообщения

Publications (1)

Publication Number Publication Date
RU2291579C1 true RU2291579C1 (ru) 2007-01-10

Family

ID=37761384

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2005129371/09A RU2291579C1 (ru) 2005-09-20 2005-09-20 Способ подтверждения подлинности дискретного сообщения

Country Status (1)

Country Link
RU (1) RU2291579C1 (ru)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
МАФТИК С., Механизмы защиты в сетях ЭВМ, Москва, 1993, стр.139-147. *

Similar Documents

Publication Publication Date Title
US10348704B2 (en) Method for a dynamic perpetual encryption cryptosystem
US6298153B1 (en) Digital signature method and information communication system and apparatus using such method
US20110145576A1 (en) Secure method of data transmission and encryption and decryption system allowing such transmission
WO1993023939A1 (en) A random choice cipher system and method
CN108306732A (zh) 一种随机数生成方法、相关设备及系统
CN112383397B (zh) 一种基于生物特征的异构签密通信方法
CN112740615A (zh) 多方计算的密钥管理
CN111052673A (zh) 匿名广播方法、密钥交换方法、匿名广播系统、密钥交换系统、通信装置、程序
Bangera et al. Multilayer security using RSA cryptography and dual audio steganography
JP2001211154A (ja) 秘密鍵生成方法,暗号化方法及び暗号通信方法
Ordonez et al. Modified El Gamal algorithm for multiple senders and single receiver encryption
US20030123672A1 (en) Optimized enveloping via key reuse
Pal An encryption technique based upon encoded multiplier with controlled generation of random numbers
CN108933659A (zh) 一种智能电网的身份验证系统及验证方法
CN113569295B (zh) 黑名单数据共享方法及获取方法
Shaker et al. Digital Signature Based on Hash Functions
RU2291579C1 (ru) Способ подтверждения подлинности дискретного сообщения
JP2005114870A (ja) 暗号通信システム
RU2277759C2 (ru) Способ формирования ключа шифрования-дешифрования
CN111865578A (zh) 一种基于sm2的多接收方公钥加密方法
Bekkaoui et al. A robust scheme to improving security of data using graph theory
Sikarwar An integrated synchronized protocol for secure information transmission derived from multilevel Steganography and dynamic cryptography
Keuninckx et al. Hardware‐Based Encryption via Generalized Synchronization of Complex Networks
Viswanath et al. Design and implementation of a secure communication protocol
JPH09149025A (ja) 暗号通信方法及び暗号通信システム

Legal Events

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

Effective date: 20070921

HK4A Changes in a published invention
MM4A The patent is invalid due to non-payment of fees

Effective date: 20110921