Криптосистема МиччанчоКриптосистема Миччанчо — криптосистема, основанная на схеме шифрования GGH, была предложена в 2001 году профессором Университета Калифорнии в Сан-Диего Даниелем Миччанчо. Схему шифрования GGH опирается на криптографию на решётках, которая считается перспективной для использования в постквантовых системах (поскольку криптосистемы, использующие факторизацию целых чисел, дискретное логарифмирование, дискретное логарифмирование на эллиптических кривых могут быть эффективно взломаны квантовым компьютером при применении алгоритмом Шора). Криптосистема Миччанчо, по факту, является улучшением схемы шифрования GGH, с уменьшением требований к размеру ключа и шифротекста в раз без ухудшения безопасности системы, где — размерность решётки. Для типичных криптосистем составляет несколько сотен. В 2004 году Кристоф Людвиг эмпирически показал, что для безопасного использования требуется , к тому же, создание ключа и его дешифровка занимает непозволительно много времени, а сам размер ключа должен быть больше 1 МБ. По этой причине данная криптосистема не может быть использована на практике[1][2][3][4]. Основные понятия и обозначенияПусть , где — набор из линейно независимых векторов и компоненты каждого из векторов представляют собой целые числа, а — матрица из этих векторов размера . Далее, теория строится для . Решёткой будем называть множество [5]. В силу того, что базис может быть не уникальным, принято выбирать в качестве базиса эрмитову нормальную форму, которая для каждой отдельно взятой решётки уникальна. Это значит, что матрица, составленная из векторов базиса, есть верхняя треугольная, все диагональные элементы строго положительны, а остальные элементы удовлетворяют . Данный вид матриц обладает следующими полезными свойствами. Во-первых, через ортогонализацию Грама — Шмидта такая матрица приводится к диагональному виду с элементами на диагонали. Во-вторых, детерминант такой матрицы равен произведению её диагональных элементов, то есть [5]. Из последнего также следует важное свойство целочисленных решёток: Пусть произвольные вектора и таковы, что . В этом случае тогда и только тогда, когда . Пусть — прямой параллелепипед, где — целочисленные координаты, — ортогонализованные по процессу Грама — Шмидта базисные векторы, . Пространство может быть замощено такими параллелепипедами. Тогда для любого существует уникальный вектор . Такой вектор называется редуцированным для вектора по модулю . Он получается нахождением относительной позиции в , где [5]. Данный вектор может быть найден по следующему алгоритму:
МетодологияВ криптосистемах на решётках ключами являются базисы. Пусть и — публичный и приватный базисы одной и той же решётки . Отличие данной криптосистемы от системы шифрования GGH заключается в более оптимальном выборе односторонней функции. Важная особенность функции в криптосистеме Миччанчо — детерминированность. В следующем разделе строится общий класс функций вида GGH.[7] Класс односторонних функций вида GGHДля схемы шифрования GGH односторонняя функция принимает вид , где — шифротекст, — целочисленный вектор и — вектор ошибки длиной не более , . Последнее необходимо для того, чтобы ошибка не создавала сильных искажений при вычислении с приватным базисом и, наоборот, для вычислений с публичным. Предполагается, что сообщение кодируется в , а выбирается случайно[5]. Семейство односторонних функций GGH-вида , параметризованное алгоритмами и , удовлетворяет:
Если вектор ошибки имеет длину меньше , тогда приватный базис может быть использован для нахождения точки , ближайшей к , и, соответственно, восстановления (задача нахождения ближайшего вектора)[5]. Выбор публичного базисаПусть известен «хороший» приватный базис , то есть с помощью него возможно решить проблему задачу нахождения ближайшего вектора в , что то же самое — расшифровать шифротекст. Задача — сгенерировать из такой публичный базис , чтобы минимизировать в нём информацию об . В обычной схеме шифрования GGH для нахождения применяется набор случайных преобразований к . Криптосистема Миччанчо использует в качестве публичного базиса эрмитову нормальную форму, то есть (HNF — Hermite Normal Form). Она уникальна для конкретно заданной решётки, как уже говорилось выше . Это ведёт к тому, что если есть какой-то другой базис для данной решётки , то . Значит, содержит об не больше информации, чем о , на чём и базируется безопасность данной криптосистемы[5]. Прибавление «случайной» точки решёткиДалее, требуется сымитировать прибавление случайной точки решётки . В идеале, эта точка должна выбираться равномерно произвольно среди всех точек решётки. Однако это невозможно ни с практической, ни с теоретической точки зрения. Почти такой же результат получается при использовании редуцированного вектора. Вектор ошибки уменьшается по модулю публичного базиса , чтобы получить шифротекст , вместо прибавления случайного вектора. В итоге односторонняя функция задаётся как , где . Благодаря верхней треугольной формы матрицы данная функция очень проста с вычислительной точки зрения. Применяя рассуждения для вычисления редуцированного вектора, может быть найдена формула , начиная с , что даёт уникальную точку в параллелепипеде [5]. РезюмеПусть — приватный базис, причём является относительно большим, — публичный базис и . Базис порождает функцию , которая переводит вектора длины меньше в соответствующий прямой параллелепипед . Ключевые моменты:
Теоретический анализБезопасностьНовая функция данной криптосистемы настолько же безопасна, насколько функция в схеме шифрования GGH. Следующая теорема утверждает, что определённая выше функция, как минимум не хуже любой другой GGH-вида функции[5]. Имеет место следующее утверждение: для любых функций и для любого алгоритма, который для находит об какую-то частичную информацию с ненулевой вероятностью, существует эффективный алгоритм со входом способный восстановить такую же информацию с такой же вероятностью успеха[5]. Доказательство: пусть — алгоритм способный взломать . Даны публичный базис = и шифротекст . Алгоритма взлома должен попытаться найти какую-нибудь информацию об . Во-первых, и . Из теоретических результатов в предыдущем разделе следует, что и . Поэтому и имеют правильное распределение. Применяя к ним алгоритм , получается утверждение теоремы[5]. Асимптотические оценки памятиПусть для приватного ключа выполняется , тогда размер, занимаемый ключом, оценивается . Используя неравенство Адамара, а также то, что для публичного базиса и шифротекста GGH системы выполняются оценки и , следует, что оценки на публичный базис и шифротекст нашей системы и [5][7]. Асимптотические оценки времени исполненияТеоретически, ожидается ускорение работы алгоритма по сравнению с GGH по двум причинам (эмпирические результаты приведены ниже). Во-первых, время шифрования для GGH систем сильно зависит от размера публичного ключа. Теоретические оценки на занимаемую ключом память указывают на её уменьшение, а следовательно и на ускорение шифрования. При этом время работы GGH сравнимо со временем работы схемы RSA. Во-вторых, для генерации ключа исходный алгоритм применяет алгоритм Ленстры — Ленстры — Ловаса к матрицам большой размерности с большими значения элементов, в то время как система Миччанчо использует достаточно простой алгоритм нахождения эрмитовой нормальной формы. Для дешифровки используется алгоритм Бабая[8], с некоторыми потерями по памяти и точности, но улучшением по времени его можно заменить на более простой алгоритм округления[9], однако в данной части ускорения по времени исполнения не ожидается. Эмпирическая оценка безопасности системыНа практике для безопасности данной системы требуется . При предположении, что улучшение времени достигает максимальных асимптотических оценок, минимальное необходимое должно быть больше . Далее было показано, что публичный ключ должен быть не менее 1MB. Более того, время генерации ключа занимает порядка дня. Процедура шифрования, действительно довольно быстра. Однако дешифровка нестабильна из-за алгоритма Бабая. Это можно преодолеть, но тогда она будет занимать 73 минуты для , не включая ортогонализацию. Если выполнить этот шаг заранее, то к расходам на память прибавляется 4.8 MB для той же размерности. Из этих результатов следует, что криптосистема Миччанчо неприменима на практике[1][2][3][4]. Примечания
Литература
|
Portal di Ensiklopedia Dunia