Изобретение относится к области вычислительной техники и может быть использовано в системах обработки информации и защиты данных.
Известно техническое решение «Способ защиты информации в облачных вычислениях с использованием гомоморфного шифрования» патент РФ № 2691874 от 07.11.2017 г. [2], в котором предлагается реализация системы защищенных облачных вычислений, содержащая сервер, получающий данные от клиента, причем данные поступают на сервер в зашифрованном виде, а также сервис облачных вычислений, реализованный на сервере для выполнения вычислений в интересах клиента, при этом сервер выполняет вычисления, не прибегая к дешифровке данных, и отправляет результат обратно клиенту, а клиент может расшифровать результат, причем клиентом формируется конечный набор исходных элементов, который трансформируется в набор зашифрованных элементов применением алгоритма частично или полностью гомоморфного шифрования.
К недостаткам описанного решения можно отнести то, что обращение к облачному хранилищу данных связано с потенциальной угрозой несанкционированного изменения передаваемой информации и требует высокого уровня надежности, кроме того, использование облачного программного обеспечения не обладает гибкостью настроек при шифровании данных и требует постоянное высокоскоростное подключение к сети Интернет.
Наиболее близким техническим решением является «Система и способ определения количества голосов избирателей, собираемых с помощью электронного голосования», патент РФ № 2652443 от 17.07.2017 г. [3]. Изобретение предназначено для проведения электронного голосования. Техническим результатом является повышение точности определения количества голосов проголосовавших избирателей, собираемых с помощью электронного голосования. Система содержит: одно вычислительное устройство организатора голосования, имеющее средство регистрации наблюдателей, предназначенное для создания для каждого наблюдателя идентификационных данных (открытого ключа и децентрализованного реестра записей сформированных голосов, получаемых наблюдателем от соответствующих избирателей), и средство подсчета голосов избирателей, предназначенное для проверки подлинности децентрализованных реестров записей и на основании расшифрованной информации вычисления количества голосов избирателей, отданных за каждого из кандидатов, вычислительное устройство по меньшей мере двух наблюдателей, имеющее средство регистрации голосов избирателей, и вычислительные устройства избирателей
Недостатком таких системы и способа является то, что в данной системе используется частично гомоморфная криптосистема Эль-Гамаля, позволяющая вычислять только сумму зашифрованных данных.
Предлагается новый способ и устройство шифрования данных свободные от упомянутых недостатков.
Техническим результатом предлагаемого способа и устройства является повышение защищенности и надежности информации в недоверенной среде.
Технический результат достигается тем, что в способе, формирование секретного ключа К(Х) происходит посредством генерации матричного полинома степени N, а при шифровании данных формируется матрица M с собственным вектором при собственном значении равного открытому тексту, при этом вектор длины N, при этом способ шифрования данных дополнительно содержит этап, на котором выполняют вычисление функций от зашифрованных данных с получением результата в зашифрованном виде.
Технический результат так же достигается тем, что в устройстве дополнительно содержится блок вычисления функций от зашифрованных данных, для персонализированного шифрования данных, при этом блок зашифрования использует способ шифрования по п.1 для надежности информации в недоверенной среде.
Сущность изобретения показана на фигурах.
На Фиг. 1 показана функциональная схема реализации способа гомоморфного шифрования данных.
На Фиг. 2 показана схема взаимодействия устройства с внешними устройствами
На Фиг. 3 показана структурная схема предлагаемого устройства.
На фиг. 1 способ работает следующим образом.
Представим, что пространством открытых текстов является Zp, где p – простое число. Шифртекстами являются матричные полиномы. Секретный ключ – это пара (K(X), ), где - N-мерный вектор целых чисел по модулю p, K(X) – матричный полином. В предлагаемом способе, помимо секретного ключа, используется ключ перешифрования, представляющий собой матричный полином rk(X), который передаётся на сторону вычислений для сокращения размеров шифртекстов.
Тогда структура предлагаемого полного гомоморфного шифрования будет выглядеть следующим образом:
1. Генерация секретного ключа
1.1. Генерируется приведённый полином K(X), не имеющий корней, степени N.
1.2. Генерируется вектор .
1.3. Пара (K(X), ) сохраняется в качестве секретного ключа.
2. Генерация ключа перешифрования
Ключ перешифрования используется для предотвращения роста размера шифротекстов. После перемножения шифротекстов результат приводится по модулю ключа перешифрования.
2.1. Генерируется приведённый матричный полином R(X) степени N-1.
2.2. Полином rk(X) = R(X)·K(X) сохраняется в качестве ключа перешифрования.
3. Шифрование
3.1. Открытому тексту m ∈ Zp ставится в соответствие случайная матрица M , такая что M· = m· и M·K(X) = K(X)·M, т.е. матрица M имеет собственный вектор при собственном значении m и коммутирует с матричным полиномом K(X).
3.2. Генерируется матричный полином R(X) степени N-1.
3.3. Вычисляется шифртекст C(X) = R(X)K(X)+M.
Известно, что поиск матрицы с заданными собственным вектором и собственным значением, которая должна коммутировать с заданным матричным многочленом, процесс вычислительно сложный и не был описан авторами алгоритма. Поэтому на фиг. 1 предлагается новый способ преобразования данных, при котором генерируется криптографический ключ (К(Х); ) и происходит генерация матрицы М, которая ставится в соответствие открытому тексту m 100.
Пусть – кольцо квадратных матриц. - поле вычетов, где p – простое число. [X] – множество матричных полиномов над кольцом .
Секретным ключом в способе [4] полностью гомоморфного преобразования на основе матричных полиномов является пара (К(Х); ), где К(Х) ∈[X] – матричный полином степени N, ∈ – вектор длины N.
При генерации секретного вектора 200 все координаты генерируем случайным образом. Последняя координата не должна равняться нулю, т.е. kN ≠ 0.
Опишем генерацию полинома К(Х) степени n.
Из теории матриц [5] известно, что:
Утв. 1. Если А – одноранговая матрица, т.е. A=⋅nх1,
то (λ,) – собственная пара матрицы А тогда и только тогда
когда х↓= ↓ , где c=() – скалярное произведение векторов и .
Пусть Аi (i=) - матричные коэффициенты полинома К(Х) степени n. Генерацию матриц Аi 300 будем осуществлять следующим образом.
Аn = ЕNхN (1)
т.к. по условию К(Х) должен быть приведённый.
При i∈[0;n-1] Аi= k↓ ⋅ i , где i=(i1,…,iN) 400, и ij – случайные числа из ∀ j=.
У всех матриц Аi , i= собственным вектором является вектор k↓ в силу утверждения (1).
Таким образом, секретный ключ, состоящий из вектора k↓ и матричного полинома К(Х) 500 сформирован.
Далее, нам нужно по открытому тексту m∈ найти матрицу М∈ такую, что число m будет её собственным значением, а - собственным вектором.
Для этого найдём такой вектор 1хN, чтобы скалярное произведение ()=m, где - секретный вектор.
Пусть =(1,…,N-1,N), =(k1,…,N-1,N). Числа 1,…,N-1 600 выбираем случайным образом. Последнее число N 700 вычисляем по формуле:
(2)
т.к. kN ≠ 0 , то выражение (2) имеет смысл.
Далее производим вычисление матрицы М 800 по формуле:
М=⋅ (3)
В силу утверждения 1 [5] у матрицы М вектор будет собственным вектором, а число m – собственным значением.
Доказательство коммутативности М и К(Х).
Известно, что простые матрицы А и В из коммутируют тогда и только тогда, когда они имеют одинаковые собственные вектора [5].
В нашем случае все коэффициенты Аi (i=) полинома К(Х) и матрица М имеют один и тот же собственный вектор, а именно вектор . Поэтому матрица М коммутирует со всеми матрицами Аi (i=) и значит М⋅К(Х)= К(Х)⋅М.
Таким образом, получаем новый способ шифрование данных на основе генерации секретного ключа, состоящего из матричного полинома К(Х) с вектором , который коммутирует с матрицей М.
На фиг. 2 представлена схема взаимодействия устройства.
Предлагаемое устройство шифрования данных можно использовать, например, в так называемых безопасных гомоморфных системах с обратной связью, когда необходимо сохранить анонимность пользователя и скрыть промежуточные результаты вычислений. Системы помогают осуществлять анонимный сбор отзывов (комментариев) студентов либо преподавателей об их работе. Полученные таким образом отзывы шифруются и сохраняются для последующих вычислений. Системы с обратной связью могут быть использованы для повышения осведомленности о состоянии дел и улучшения показателей работы. Известно, что достоверная обратная связь любой системы или процесса может быть обеспечена только в случаях сохранения анонимности пользователя, неизменности данных, собранных в процессе обратной связи, обеспечения безопасности внутренних операций для анализа данных.
Устройство ввода данных 800 соединён посредством коммутационного интерфейса 810 с устройством шифрования данных 900 представляющий сопроцессор, на выходе которого получаем шифрованные данные 910. Далее шифрованные данные передаются на устройство обработки данных 920.
Устройство ввода данных 800, устройство шифрования данных 900 и устройство обработки данных 920 обмениваются информацией по каналам коммутационного интерфейса.
На фиг. 3 представлена структурная схема предлагаемого устройства.
Сущность устройства состоит в обеспечении полного гомоморфного шифрования данных, выполняемого сопроцессором (фиг. 3).
Устройство шифрования данных представляет собой сопроцессор 900, на который поступают данные – открытый текст, например, которые требуется зашифровать.
На плате сопроцессора 900 размещаются блоки: зашифрования 901, расшифрования 902, вычисления функций от зашифрованных данных 903.
Схема работы устройства содержит следующие этапы. Этап генерации секретного ключа 850, этап шифрования данных, выполняемый блоком 901, этап представления зашифрованной информации центральному процессору 800.
Блок 901 содержит на входе открытый текст, на выходе – шифрованный текст 910. Шифрование текста происходит описанным выше способом (п.1 формулы изобретения)
Если данные требуется расшифровать, то данные поступают в блок расшифрования 902, который содержит на входе шифрованный текст, на выходе – открытый (расшифрованный) текст.
Блок вычисления функций от зашифрованных данных 903 служит для персонализированного зашифрование данных без применения облачных систем, которые имеют уязвимость в сети Интернет. Блок 903 содержит на входе два зашифрованных сообщения – шифртекст 1 (шт1) и шифртекст 2 (шт. 2). В блоке 903 реализует две функции f(x,y)=x⋅y и f(x,y)=x+y, одна из которых подается на вход. На выходе блока 903 выдается результат заданной функции от переменных шт. 1 и шт. 2 в зашифрованном виде. При расшифровке результата он будет равен применению той же функции от соответствующих шт. 1 и шт. 2 открытых (незашифрованных) данных.
Устройство реализует полностью гомоморфную криптосистему на основе матричных полиномов, позволяющую вычислять помимо суммы и произведение зашифрованных данных без предварительного расшифрования.
Источники информации
1. «Устройство и способ обработки шифрования» патент Японии № JP 2014126866 от 27.12.2012 г.
2. «Способ защиты информации в облачных вычислениях с использованием гомоморфного шифрования» патент РФ № 2691874 от 07.11.2017 г.
3. «Система и способ определения количества голосов избирателей, собираемых с помощью электронного голосования», патент РФ № 2652443 от 17.07.2017 г.
4. Ф.Б. Буртыка. Пакетное симметричное полностью гомоморфное шифрование на основе матричных полиномов. Труды ИСП РАН, том 26, вып. 5, 2014 г., с. 99-115.
5. П. Ланкастер. «Теория матриц», редакция физико-математическая литературы «Наука», 1973 г., 280 с.
6. «Прикладная гомоморфная криптография: примеры» Г.Г. Аракелов, А.В. Грибов, А.В. Михалев. Фундаментальная и прикладная математика, 2016 г., том 21, № 3, с. 25-38.
название | год | авторы | номер документа |
---|---|---|---|
Способ защиты информации в облачных вычислениях с использованием гомоморфного шифрования | 2017 |
|
RU2691874C2 |
Система гомоморфного шифрования данных на основе системы остаточных классов | 2021 |
|
RU2780150C1 |
ПРОВЕРЯЕМЫЕ СЕКРЕТНЫЕ ПЕРЕТАСОВЫВАНИЯ И ИХ ПРИМЕНЕНИЕ ПРИ ПРОВЕДЕНИИ ЭЛЕКТРОННОГО ГОЛОСОВАНИЯ | 2002 |
|
RU2271574C2 |
СПОСОБ И УСТРОЙСТВО МНОГОМЕРНОЙ ИМИТОУСТОЙЧИВОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ ПО КАНАЛАМ СВЯЗИ | 2018 |
|
RU2686024C1 |
СПОСОБ И УСТРОЙСТВО ИМИТОУСТОЙЧИВОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ ПО КАНАЛАМ СВЯЗИ | 2017 |
|
RU2669144C1 |
СПОСОБ АСИММЕТРИЧНОГО ШИФРОВАНИЯ СООБЩЕНИЙ НА ОСНОВЕ МОДИФИЦИРОВАННОЙ ЗАДАЧИ О РЮКЗАКЕ | 2019 |
|
RU2727025C1 |
Способ аутентифицированного шифрования | 2018 |
|
RU2694336C1 |
Система и способ определения количества голосов избирателей, собираемых с помощью электронного голосования | 2017 |
|
RU2652443C1 |
СПОСОБ ШИФРОВАНИЯ С ЗАЩИТОЙ ОТ КВАНТОВЫХ АТАК НА ОСНОВЕ ЦИКЛОВ ФУНКЦИЙ ВЕБЕРА | 2013 |
|
RU2541938C1 |
РАСПРЕДЕЛЕНИЕ ИЗОБРАЖЕНИЙ С СОХРАНЕНИЕМ ПРИВАТНОСТИ | 2021 |
|
RU2826373C1 |
Изобретение относится к области вычислительной техники и может быть использовано в системах обработки информации и защиты данных. Технический результат заключается в повышении защищенности информации в недоверенной среде. Генерируют секретный ключ, генерируют ключ перешифрования, выполняют шифрование данных. При этом формирование секретного ключа К(Х) происходит посредством генерации матричного полинома степени N, а при шифровании данных формируется матрица M с собственным вектором при собственном значении равного открытому тексту, при этом вектор длины N. При этом способ шифрования данных дополнительно содержит этап, на котором выполняют вычисление функции от зашифрованных данных с получением результата в зашифрованном виде. 2 н.п. ф-лы, 3 ил.
1. Способ шифрования данных, характеризующийся гомоморфным шифрованием данных, содержащий этапы генерации секретного ключа, генерацию ключа перешифрования, шифрование данных, отличающийся тем, что формирование секретного ключа К(Х) происходит посредством генерации матричного полинома степени N, а при шифровании данных формируется матрица M с собственным вектором при собственном значении равного открытому тексту, при этом вектор длины N, при этом способ шифрования данных дополнительно содержит этап, на котором выполняют вычисление функции от зашифрованных данных с получением результата в зашифрованном виде.
2. Устройство шифрования данных, содержащее блок генерации ключей, блок зашифрования данных, блок расшифрования данных, отличающееся тем, что устройство дополнительно содержит блок вычисления функций от зашифрованных данных, для персонализированного шифрования данных, при этом блок зашифрования использует способ по п.1 для надежности информации в недоверенной среде.
Ф.Б | |||
Буртыка | |||
"Пакетное симметричное полностью гомоморфное шифрование на основе матричных полиномов" | |||
Труды ИСП РАН, том 26, вып | |||
Кипятильник для воды | 1921 |
|
SU5A1 |
на с | |||
Прибор, замыкающий сигнальную цепь при повышении температуры | 1918 |
|
SU99A1 |
Система и способ определения количества голосов избирателей, собираемых с помощью электронного голосования | 2017 |
|
RU2652443C1 |
Способ защиты информации в облачных вычислениях с использованием гомоморфного шифрования | 2017 |
|
RU2691874C2 |
US 9166785 B2, 20.10.2015 | |||
US 10116437 B1, 30.10.2018 | |||
US 10673614 B2, 02.06.2020. |
Авторы
Даты
2021-12-28—Публикация
2021-03-30—Подача