Повышение безопасности в пороговой схеме разделения секрета Шамира при помощи использования модульной арифметики | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 4 мая, печатный экземпляр отправим 8 мая.

Опубликовать статью в журнале

Библиографическое описание:

Повышение безопасности в пороговой схеме разделения секрета Шамира при помощи использования модульной арифметики / А. Ю. Зыбкин, Д. К. Осипов, Р. Р. Закороев [и др.]. — Текст : непосредственный // Молодой ученый. — 2019. — № 47 (285). — С. 84-87. — URL: https://moluch.ru/archive/285/64317/ (дата обращения: 20.04.2024).



Ключевые слова: информация, защита информации, пороговые схемы разделения секрета, схема Шамира.

Защита информации — деятельность, направленная на предотвращение утечки защищаемой информации, несанкционированных и непреднамеренных воздействий на защищаемую информацию [1, с. 1].

В настоящее время защите информации уделяют немало времени и ресурсов, и это правильно, ведь она представляет значительную ценность. С этой целью используются различные криптографические методы. В число таких методов входят и пороговые схемы разделения секрета.

Пороговая схема разделения секрета представляет из себя такую (k, n) схему, в которой секрет делится между участниками в количестве «n» и для восстановления секрета требуется любая группа из не менее, чем «k» участников. Обязательным условием для пороговых схем является неравенство: k < n.

Далее рассмотрим первоначальный вариант пороговой схемы разделения секрета Шамира и продемонстрируем, как модульная арифметика позволяет повысить безопасность.

Идея схемы Шамира заключается в том, что для интерполяции многочлена, степень которого k-1, требуется k точек. Если число известных точек меньше k, то интерполяция невозможна.

Если мы рассматриваем полином первой степени, например f(x) = x+4, то для того, чтобы построить эту функцию нам понадобится минимум две точки. Если полином будет второй степени, например f(x) = x2+5x+3, то для построения графика такой функции потребуется, по крайней мере, три точки и так далее.

Теперь более подробно рассмотрим, как происходит разделение и восстановление секрета.

1) Разделение секрета

Предположим, что наш секрет S равен 42. Превращаем данное число в точку на декартовой системе координат (0,42). Затем требуется придумать такую полиномиальную функцию, которая бы удовлетворяла данной точке, и степень которой была бы k-1, где k — порог требуемых долей секрета, для его восстановления. Полином будет иметь вид f(x)=a0+a1x+a2x2+…+ak-1xk-1, где:

  • a0 =S;
  • a1,a2,…,ak-1 — положительные целые числа, которые выбираются случайным образом.

Для нашего примера примем пороговое значение долей для восстановления секрета k=3, всего же будем генерировать 5 долей секрета. Наша полиномиальная функция будет следующая: f(x) = 42+3x+5x2. Далее раздаём 5 фрагментов секрета, при условии, что x не равен 0, поскольку это наш секрет. Получаем следующие фрагменты: (18, 1716), (23,2756), (27, 3768), (31, 4940) и (35, 6272) и отправляем по одному фрагменту каждому из пяти хранителей «ключа». Стоит заметить, что k=3 является открытой информацией.

2) Восстановление секрета

Если любые трое из пяти доверенных лиц хотят восстановить секрет S, тогда им нужно восстановить полином, используя свои доли. Для этого они с помощью своих точек, пусть это будут: (18, 1716), (23,2756), (27, 3768), должны рассчитать интерполяционный полином Лагранжа, используя следующие формулы:

В нашем случае это будет выглядеть следующим образом:

В итоге получаем:

Поскольку нам известно, что S=P(0), то восстановление секрета осуществить просто:

Но такая идея разделения секрета имеет существенную проблему, которая заключается в том, что с увеличением числа известных злоумышленнику точек, остаётся меньшее количество значений для других точек. Это противоречит основному свойству таких схем, которое гласит, что злоумышленник не должен получать никаких сведений о значении секрета, если ему известно k-1 и меньше фрагментов этого секрета, в том смысле, что все возможные значения секрета должны быть равновероятны. В нашем же случае это не так.

Чтобы показать это наглядно, рассмотрим ситуацию, когда злоумышленнику стали известны две точки (18, 1716) и (23,2756), а так же он знает открытую информацию, что k=3. Исходя из известной ему информации, он может вывести полином второй степени и подставить известные ему значения:

Затем злоумышленник может узнать значение коэффициента a1, вычислив разность между f(23) и f(18):

Так как наши коэффициенты a1,a2,…,ak-1 являются целыми положительными числами, то число возможных вариантов значения коэффициента a2 сводится к минимуму. То есть злоумышленнику становится известно, что a2 может принимать следующие значения: 1, 2, 3, 4 и 5, поскольку, если a2 будет больше 5, то коэффициент a1 станет отрицательным, а это невозможно. Затем злоумышленник может, подставив значение a1, вывести формулу для вычисления секрета, например для точки (23,2756):

Учитывая, что число вариантов для коэффициента a2 ограниченно становится понятно, что подобрать и проверить значение секрета S не составит труда.

Для устранения этой проблемы Шамиром было предложено использование модульной арифметики. Суть заключается в замене f(x) на f(x)mod p, где p принадлежит множеству простых чисел, а также p > S и p > n. Это простое число p является порядком конечного поля, то есть поля, элементами которого являются целые числа 0, 1, 2,…, p-1, а все математические операции в этом поле производятся по модулю p.

Продемонстрируем, как это повысит безопасность схемы. В качестве p будем использовать число 79. Оно является простым и больше секрета и числа участников, между которыми делится секрет, следовательно, удовлетворяет всем условиям. Наш полином принимает вид:

Поскольку полиномиальная функция изменилась, то фрагменты (точки) так же примут новый вид: (18,57), (23, 70), (27, 55), (31, 42) и (35, 31). Пусть первые трое участников решили восстановить значение секрета. Для восстановления рассчитаем интерполяционный полином Лагранжа. Поскольку значение секрета находится при x=0, воспользуемся немного изменёнными формулами:

Тогда получим:

После решения полученного выражения получаем, что S=42. Таким образом, значение секрета восстанавливается. Теперь разберёмся, как модульная арифметика позволяет повысить безопасность.

Допустим, кроме публичной информации k=3 и p=79, злоумышленнику стали известны два фрагмента (18,57) и (23, 70). На основе имеющиеся у него информации он может вывести следующие формулы, где qx — коэффициент f(x), который показывает целочисленную часть результата деления f(x) на 79:

Теперь злоумышленник может найти значение a1, вычислив разность между f(23) и f(18):

Далее он может попытаться вывести значение S, подставив a1:

На этот раз злоумышленник столкнётся с серьёзной проблемой, ему, кроме неизвестного секрета S, будут так же неизвестны значения a2,q18 и q23. Поскольку, возможно бесконечное число различных комбинаций этих параметров, то он не сможет получить никаких сведений о значении секрета. Следовательно, можно сделать вывод, что модульная арифметика исключает проблему описанную ранее.

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

Литература:

  1. ГОСТ Р 50922–2006 Защита информации. Основные термины и определения. — М.: Стандартинформ, 2008. — 12 с.
  2. Зыбкин А. Ю. Исследование эффективности применения схемы разделения секрета Шамира в области информационной безопасности: диплом. работа. Санкт-Петербургский государственный морской технический университет, СПб, 2019.
  3. Adi Shamir. How to Share a Secret/ Adi Shamir// Massachusetts Institute of Technology. — 1979. — Ноябрь. — c. 612–613
Основные термины (генерируются автоматически): значение секрета, восстановление секрета, модульная арифметика, пороговая схема разделения секрета, защита информации, полиномиальная функция, секрет, число, злоумышленник стали, интерполяционный полином.


Похожие статьи

Пороговые криптосистемы как один из вариантов модификации...

Поскольку значение секрета находится при x=0, воспользуемся

Зыбкин А. Ю. Исследование эффективности применения схемы разделения секрета Шамира

криптографическая система, асимметричная криптосистема, пороговые схемы разделения секрета, схема Шамира...

Анализ схем разделения секрета, использующих вероятностный...

Значение секрета выбирается с вероятностью и с помощью схемы разделения секрета распределяется в виде между всеми абонентами схемы с вероятностью . При этом схема строится следующим образом. Каждый i -й участник получает соответствующую долю секрета...

Разработка эффективной реализации алгоритмов выполнения...

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

Исследование механизмов защиты цифровой видеоинформации...

Система работает за счет разделения секрета между промежуточными узлами в сети, а в

Решение проблем защиты цифровой информации является приоритетным для многих

Наряду с разработкой мер защиты, также работают и злоумышленники, которые ежечасно...

Аппроксимация полиномов n степени методом наименьших...

Вданной статье рассмотрено решение проблемы уменьшения суммы квадратов отклонений определённых функций от искомых переменных для полиномиальных уравнений n степени. Приведено подробное решение для уравнений 2 степени, рассматриваемой проблемы.

Создание криптографии с помощью модулярной математики

Схема 1. Возникновение шифрования информации повлекло за собой обратный процесс, то есть создание

Что же такое модульная арифметика и почему она называется часовой?

Защита – как целенаправленная деятельность по предотвращению утечки информации...

Направления развития гомоморфного шифрования в Российской...

В-третьих, разработка пороговых систем гомоморфного шифрования и защита информации в облачных вычислениях.

В сфере их научных интересов находятся также пороговые схемы разделения секрета Миньотта, Асмута-Блума и схемы HORNS и их модификаций, которые...

Анализ применения гомоморфных схем шифрования в алгоритмах...

Исследование возможности построения гибридной схемы шифрования для алгоритмов машинного обучения на основе алгоритмов криптографического преобразования ГОСТ РФ 28147–89 и алгоритмом Фана и Веркаутерена.

Многомерная интерполяция сеточной вектор-функции

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

Явные формулы многомерной интерполяции | Статья в журнале...

Задача интерполяции для функций многих переменных формулируется следующим образом.

До 1960 годах в основном рассматривалась задача интерполяции функции от одной переменной.

Известны следующие интерполяционные формулы и схемы

Похожие статьи

Пороговые криптосистемы как один из вариантов модификации...

Поскольку значение секрета находится при x=0, воспользуемся

Зыбкин А. Ю. Исследование эффективности применения схемы разделения секрета Шамира

криптографическая система, асимметричная криптосистема, пороговые схемы разделения секрета, схема Шамира...

Анализ схем разделения секрета, использующих вероятностный...

Значение секрета выбирается с вероятностью и с помощью схемы разделения секрета распределяется в виде между всеми абонентами схемы с вероятностью . При этом схема строится следующим образом. Каждый i -й участник получает соответствующую долю секрета...

Разработка эффективной реализации алгоритмов выполнения...

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

Исследование механизмов защиты цифровой видеоинформации...

Система работает за счет разделения секрета между промежуточными узлами в сети, а в

Решение проблем защиты цифровой информации является приоритетным для многих

Наряду с разработкой мер защиты, также работают и злоумышленники, которые ежечасно...

Аппроксимация полиномов n степени методом наименьших...

Вданной статье рассмотрено решение проблемы уменьшения суммы квадратов отклонений определённых функций от искомых переменных для полиномиальных уравнений n степени. Приведено подробное решение для уравнений 2 степени, рассматриваемой проблемы.

Создание криптографии с помощью модулярной математики

Схема 1. Возникновение шифрования информации повлекло за собой обратный процесс, то есть создание

Что же такое модульная арифметика и почему она называется часовой?

Защита – как целенаправленная деятельность по предотвращению утечки информации...

Направления развития гомоморфного шифрования в Российской...

В-третьих, разработка пороговых систем гомоморфного шифрования и защита информации в облачных вычислениях.

В сфере их научных интересов находятся также пороговые схемы разделения секрета Миньотта, Асмута-Блума и схемы HORNS и их модификаций, которые...

Анализ применения гомоморфных схем шифрования в алгоритмах...

Исследование возможности построения гибридной схемы шифрования для алгоритмов машинного обучения на основе алгоритмов криптографического преобразования ГОСТ РФ 28147–89 и алгоритмом Фана и Веркаутерена.

Многомерная интерполяция сеточной вектор-функции

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

Явные формулы многомерной интерполяции | Статья в журнале...

Задача интерполяции для функций многих переменных формулируется следующим образом.

До 1960 годах в основном рассматривалась задача интерполяции функции от одной переменной.

Известны следующие интерполяционные формулы и схемы

Задать вопрос