Пакетное симметричное полностью гомоморфное шифрование на основе матричных полиномов1
Ф.Б. Буртыка <ЪЪ[email protected]> Южный федеральный университет, 344006, Россия, г. Ростов-на-Дону, ул. Большая Садовая, д. 105/42
Аннотация. Методы полностью гомоморфного шифрования (ППП) -общепризнанный способ организации криптографической защиты облачных вычислений. Однако существующие криптосхемы ППП по своим характеристикам не достаточны для применения на практике - одни криптосхемы имеют слишком малую криптостойкость, другие требуют слишком больших вычислительных ресурсов. Для развития последних исследователями из IBM был предложен метод «упаковывания шифртекстов», который был применен ими к криптосхеме с открытым ключом, стойкость которой основана на сложности задач теории решеток. В данной работе метод «упаковки шифртекстов» применен к симметричной криптосхеме на основе матричных полиномов: приводится описание возможных способов организации такой упаковки, представлено описание одного из вариантов таких криптосистем с оценкой сложности алгоритма умножения шифртекстов. В заключение приведено сравнение эффективности полученной криптосхемы с криптосхемами исследователей из IBM.
Ключевые слова: защита информации; облачные вычисления; полностью гомоморфное шифрование; «упаковка шифртекстов»; матричные полиномы; вычисления над зашифрованными данными.
1. Введение
В связи с необходимостью борьбы с угрозами безопасности для облачных вычислений актуальна задача построения эффективных и криптостойких методов полностью гомоморфного шифрования (ПГШ) [1-5]. Такое шифрование позволяет производить любые операции с зашифрованными данными и получать зашифрованный результат, который соответствует результату операций, выполняемых с открытыми данными. Задача построения ПГШ впервые была поставлена в работе [1], но принципиально решена лишь в работе Крейга Джентри [2], где было описано построение алгоритмов ПГШ,
1 Работа выполнена при поддержке гранта РФФИ №15-07-00597 А «Разработка и исследование алгоритмов полностью гомоморфного шифрования»
сложность которых была полиномиальна от размеров входных данных, а задача взлома сводилась к сложным задачам теории решеток. Эта конструкция, однако, имела лишь теоретическое значение из-за низкой практической эффективности алгоритмов ПГШ. Вскоре после [2] последовала серия работ, направленных на улучшение исходных алгоритмов ПГШ Джентри [6-13]. Однако ни в одной из этих работ не было предложено решения пригодного для практического использования. Среди альтернатив криптосхемам Джентри можно упомянуть криптосистему с открытым ключом Polly Cracker [18,19] Нила Коблица и симметричные криптосистемы Доминго-Феррера [16], Ростовцева [21], Кренделева [5,14], Пуульпановой и Хойсика [15]. Однако все эти криптосхемы либо еще менее эффективны, чем схема Джентри, либо имеют невысокую криптостойкость [22, 23]. В [24] и [25] были предложены криптосхемы ПГШ на основе матричных полиномов, которые отличаются высокой эффективностью при предположительно значительной криптостойкости.
В данной работе предлагается повысить эффективность ПГШ на основе матричных полиномов [24,25] с помощью метода упаковки в один шифртекст нескольких открытых текстов с последующей «пакетной» обработкой зашифрованных данных. Данный метод впервые был введен в работах Джентри для ускорения работы его конструкций. И несмотря на то, что даже с использованием этого метода криптосистемы типа Джентри не стали пригодными для практики, их эффективность за счет него на порядок увеличилась. Метод «упаковки шифртекстов» является очень перспективным. Поскольку пакетная обработка подразумевает, что при одной операции над двумя шифртекстами происходит одновременное выполнение операций покоординатно над всеми содержащимися в этих шифртекстах открытыми текстами (SIMD организация обработки).
Статья организована следующим образом. В разделе 2 приведены необходимые обозначения, теоретические сведения и определение гомоморфного шифрования. В разделе 3 более подробно описывается метод «упаковки шифртекстов» В разделе 4 показаны различные способы модификации ПГШ на основе матричных полиномов в ПГШ с возможностью «упаковки шифртекстов». В разделе 5 приведены экспериментальные данные по реализации описанных криптосхем на матричных полиномах, а также сравнение по производительности с криптосхемами Джентри, Бракерски и Вэйкунтанасана из работ [8,26].
2. Основные определения и обозначения
Далее в статье множество натуральных чисел будем обозначать как N, кольцо классов вычетов по модулю р будем обозначать как (в статье
будем использовать только кольца по простому модулю для облегчения доказательств). Прописными греческими буквами (например, ) будут
обозначаться различные параметры, при этом Я будет всегда обозначать параметр уровня криптостойкости. Матрицы будут обозначаться заглавными латинскими буквами полужирным шрифтом (например, А, В), при этом
единичную матрицу будем обозначать как I. Векторы будут обозначаться прописными латинскими буквами со стрелкой над ними, например .
Обозначим через Л кольцо N х N матриц с элементами из кольца Ъ р . Напомним, что спектром матрицы А (обозначение 8р{А) ) называется множество собственных векторов матрицы А, т.е. таких векторов V для которых А ■ V = а - V при некотором Множество матриц
коммутирующих с матрицей А будем называть коммутантом матрицы и обозначать Сотт{А). При описании алгоритмов будем использовать запись
х<—-—X для обозначения того, что х выбрано случайно по равномерному распределению из конечного множества X. Также в статье будет использовано понятие схемы из функциональных элементов (СФЭ), для которой нам будет достаточно знать что это вектор-функция над векторами фиксированной размерности с элементами из Ъ р .
2.1 Матричные полиномы
Рассмотрим множество последовательностей матриц из Л :
таких, что все А., кроме конечного их числа, равны нулевой матрице. Пусть хДГ [X] обозначает множество всех таких последовательностей. Если О = {В0,В1,В2,...},В1^ЩуЫ , то определим
Р + 0 = {А0 +В0, А1 +В15 А2 +В2,...},
^•С = {А0-В0,А0-В1+А1-В0,А0-В2 + А1-В1 + А2-В0,...} = {СЛ,
Можно показать, что при таких определениях сложения и умножения множество
становится кольцом. Элементы этого кольца будем называть матричными полиномами.
Лемма 1. Матричные полиномы образуют (ассоциативное) кольцо. Доказательство. Выполняется непосредственной проверкой аксиом кольца.
Приведенный матричный полином - это такой полином, у которого коэффициент при старшей степени равен единичной матрице. Также для дальнейшего важным элементом является деление матричных полиномов.
Теорема 1 (О делении матричных полиномов, [29,30]) Пусть М(Х) = Хт +Ат_гХт-1 + ... + А0 и W(X) = XP + Bp_rXp~l + ... + В0 , при т> р. Тогда существуют единственный приведенный матричный полином F(X) степени т—р и единственный матричный полином L(X) степени р-1 такие что
М{Х) = F{X)-Х + ВР-F{X)+ F{X) + L{X). (2)
Доказательство. Пусть F(X) = Хт р + Fm_ j • Хт р 'ч-.^ + Рд, и L(X) = Хр + Lp | • X1' 1 +... + L0. Приравнивая коэффициенты в равенстве (2), F0,Fj,...,Fm_рч и L(J. L,..... L/; , могут быть определены из полученной системы т матричных уравнений.
Следствие: каждый приведенный матричный полином порождает (левосторонний) идеал в кольце матричных полиномов.
Каждому матричному полиному Р(Х) можно естественным образом сопоставить матричное уравнение Р(Х) = 0. Интересно, что такое матричное уравнение может иметь корней больше, чем его степень [29,30], а может и не иметь корней совсем. В случае если такое уравнение не имеет корней, соответствующий матричный полином будем называть неприводимым. Множество корней матричного полинома Р(Х) будем
обозначать через roots (P(JQ). Матричный полином, являющийся одновременно неприводимым и приведенным будем называть примитивным.
2.2 Определения гомоморфного шифрования
Общая организация системы защищенных вычислений с помощью симметричного гомоморфного шифрования будет идентична описанной в [25]. Для удобства дальнейшего изложения введем некоторые формальные определения, связанные с такой системой шифрования: гомоморфная криптосхема £ представляет собой четвёрку алгоритмов
(Key Gen,., Encrypt^, Decrypt^, Evaluate^ ). Вероятностный алгоритм
KeyGene принимает на вход параметр уровня криптостойкости Я и выдает
в качестве результата пару ключей (sk, rk), где sk - секретный ключ, который хранится у клиента, a rk - ключ перешифрования, передаваемый серверу (он позволяет серверу сокращать размер шифртекстов в процессе вычислений, но
не позволяет зашифровывать или расшифровывать). Алгоритмы Encrypt е и Decrypt^ принимают на вход, соответственно, шифртекст или открытый текст вместе с секретным ключом sk. Алгоритм Evaluate е принимает на
вход СФЭ F, набор шифртекстов ,..., /77, ^. ключ перешифрования rk, и
выдает в качестве результата шифртекст с. Вычислительная сложность всех этих алгоритмов должна быть полиномиальна от параметра уровня
криптостойкости Я и (в случае алгоритма Evaluate е ) количества схемных
элементов F, а также они должны удовлетворять приведенным ниже требованиям корректности.
Определение 1. (Корректность расшифрования после гомоморфного вычисления). Криптосхема с = (Key Gen, Encrypt, Decrypt, Evaluate) корректна для СФЭ F , имеющей t входов, если для любой пары ключей (sk, rk), выданной алгоритмом KeyGen(/t), любых t открытых текстов mi и
соответствующих им шифртекстов ci <— Encrypt(sk, mi.) выполняется: Decrypt (sk, Evaluate(rk, F, c)) = F{n\ ,...,mt).
Определение 2. Криптосхема s = (KeyGen, Encrypt, Decrypt, Evaluate)
полностью гомоморфна для класса СФЭ, если она корректна для всех СФЭ из этого класса.
Определение 3. Гомоморфная криптосхема называется компактной, если размер шифртекстов, получающихся в результате гомоморфного вычисления произвольной функции f над шифртекстами, не зависит от размера схемы из функциональных элементов, представляющей f, и ограничен полиномом
т.
Замечание: вышеприведенному определению компактности не удовлетворяет, например, криптосистема из [15] или криптосистема с булевыми полиномами [5] поскольку размер шифртекстов в них хотя в общем и ограничен, но это ограничение экпоненциально (не полиномиально).
Системы определений альтернативные вышеприведенной можно найти в [15] и [14], где оно было введено через понятия открытого и секретного идеалов в кольце.
3. Гомоморфное шифрование и метод упаковки шифртекстов
Впервые идея проведения векторных (SIMD) операций над зашифрованными данными была высказана в работе Смарта и Веркотерена [6]. В [6] было замечено, что с применением китайской теоремы об остатках, пространство открытых текстов некоторых известных к тому времени криптосхем ПГШ может быть расширено за счет введения векторов, компоненты которых -«ячейки» для отдельных открытых текстов (plaintext slots). При этом одно гомоморфное сложение (Add) или умножение (Mult) пары шифртекстов неявно складывает или умножает (по-компонентно) векторы открытых текстов целиком.
Каждая ячейка для открытого текста предназначается для хранения элемента из какого-то конечного поля Kn = F „, и, абстрактно, если есть два
шифртекста, которые хранят (зашифрованные) сообщения , е
и m'(),...,m'jч е К/ соответственно в ячейках 0,...,/ —1 открытого текста, в
результате применения /-арного сложения к двум шифртекстам получается
новый шифртекст, хранящий т() + т'п,...,я?м + т' , е К/ , а применение /-
арного умножения двух шифртекстов дает новый шифртекст, хранящий
т,1 ■ т[]mt , • т\ , е . Смарт и Веркотерен использовали это
наблюдение для создания пакетной (или SIMD [12]) системы гомоморфного шифрования.
Рис. 1. Выполнение SR1D операций с пакетными гиифртекстами.
Говоря о пакетном шифровании и SIMD криптосистемах удобно говорить о составном (Aggregate) пространстве открытых текстов и ключей. Дело в том, что, поскольку над всеми содержащимися в шифртексте открытыми данными
производятся параллельно одни и те же операции, можно рассматривать такие наборы открытых данных как единые элементы пространства наборов открытых данных.
Идея пакетного шифрования получила развитие и использование в работах [6-13] благодаря возможности переставлять открытые тексты внутри одного шифртекста без расшифрования. Это открывает большие перспективы гомоморфной обработки данных, в частности делает возможным проведение над зашифрованными числами в битовом представлении стандартных машинных операций таких как Add, Mult, Xor (т.е. сложение, умножение, деление в битовом представлении, побитовое исключающее или и сравнение). Конкретно, перестановка битов данных между ячейками (слотами, slots) одного шифртекста может быть реализована по-разному, например в [12] для этой цели используется т.н. автоморфизм Фробениуса, а работе [27] описывается использование для этих целей сетей Бенеша. Пакетное гомоморфное шифрование имеет настолько важное практическое значение, что процедуры для его реализации были включены в недавно вышедшую программную библиотеку HELib компании IBM [28].
4. Построение симметричных гомоморфных SIMD шифров на основе матричных полиномов
Вкратце напомним устройство полностью гомоморфной криптосхемы из [24], основанной на использовании булевых матричных полиномов. Открытыми
текстами являются элементы кольца классов вычетов Z по модулю простого
числа р , секретный ключ состоит из матрицы К £ Zj Л и вектора к £ ZNp .
Открытый текст т Е Ъ р сначала кодируется в матрицу М £ Z j Л , такую
что Ш-к =т-к и М е С о mm (К). а затем в матричный полином С(Х) = R(X) • (X — К) + М , где R(X) - случайный матричный полином. После умножения двух таких шифртекстов результат приводится по модулю матричного полинома вида R(X) • (X — К), называемого ключом перешифрования. Семантическая криптостойкость такого шифра связана с задачей нахождения корней булевых матричных полиномов [29].
Определение 4. (Задача нахождения корней булево го матричного полинома)
Экземпляр (N,d,n) -задачи нахождения корней булево го матричного
полинома состоит в том, чтобы по заданному матричному полиному F(X)
степени d с коэффициентами из матричного кольца Zj Л , ответить на
вопрос есть ли корни у матричного полинома (распознавательный вариант задачи) и найти эти корни (вычислительный вариант задачи).
Применительно к матричным полиномам концепция 81МО может быть реализована как минимум тремя способами:
1) с использованием китайской теоремы об остатках;
2) путем записи в одной матрице нескольких различных собственных значений при различных собственных векторах;
3) с помощью интерполяции матричных полиномов.
Рассмотрим эти концепции по порядку. Использование китайской теоремы об остатках в духе [9] - наиболее перспективный путь, однако он требует построения обширной алгебраической теории. Использование нескольких собственных чисел матрицы - простой, но не очень эффективный путь. Рассмотрим далее реализацию пакетного шифрования с помощью интерполяции матричных полиномов.
Теорема 2 (Об интерполяции матричных полиномов) Для заданных ТУ1 пар матриц (X., V), / = 1,..., /11 существует матричный полином
А(Х) = Ат • Л'т + Ат , • Л'т '+... + А, • Л' + Ап такой, что А(Х.) = V, / = 1,..., /7? в случае если блочно-матричная система линейных уравнений
(А1з А2,..., АшУ
f i i ... п
Х\ Х2 ■■■ Хт
\Л\ Л2
= (y1,Y2,...,YJ (3)
имеет решение.
В нижеописанной криптосхеме (составным) пространством открытых текстов является 1а1 (пространство /-мерных векторов с элементами из ^р).
пространством шифртекстов - ^ \_Х~\ (кольцо матричных полиномов),
(составным) пространством ключей - вектор пар «матрица из 2 ^ А , вектор
из » вместе с некоторой обратимой матрицей из 2 ^ А . Опишем далее алгоритмы криптосхемы.
Алгоритм 1. Генерация ключа (КеуСеп)
Входные данные: параметр уровня криптостойкости Я, модуль пространства открытых текстов р , количество ячеек I. Результат: секретный ключ «к, ключ перешифрования гк.
1. Установить N <— Я, <— со(Я) .
2. Выбрать произвольную обратимую матрицу К0 е (П,( N, ^ р).
3. Выбрать I матриц К.,/ = 1,...,/, таких, что к,. фЩ ф...фК^1, 1еф(Кг).
4. Для каждой матрицы Кг выбрать случайный собственный вектор А: .
5. 8к^{(Кг^г),/=1,...,/},К0
6. Сгенерировать случайный приведенный матричный полином
7. Сгенерировать приведенный матричный полином, 8(Х),ёев(8(Х)) = / + 1 такой что 8(Кг) = 0,7 = 1,...,/ (т.е. все
Кг - его корни).
8.
9. гк <— К(Х-К0)
Замечание 1: Матрицы, удовлетворяющие условию Кг. Ф Кг Ф ... Ф щ нужны для эффективной генерации матриц из Сошш(^Кг), поскольку
известно что линейные комбинации степеней матрицы гарантированно лежат в её коммутанте. В наиболее важном случае р = 2 это условие сводится к
Кг Ф Кг2, такие матрицы называются неидемпотентными.
Замечание 2: Наличие единицы в спектре матрицы вместе с предыдущим условием является гарантией возможности выбора из нетривиальных матриц с произвольными собственными числами.
Замечание 3: Запись й)(А) обозначает некоторую функцию, линейную от Я (т.е. со (Л) = 0(/1)), её конкретизация существенна для анализа криптостойкости, но несущественна для анализа асимптотической сложности вычислений над шифртекстами.
Алгоритм 2. Зашифрование данных (Encrypt)
Входные данные: вектор-сообщение открытых текстов ntj = 1,...,/. секретный ключ sk. Результат: матричный полином шифртекста.
1. Для каждого ¡11J = 1,..., / выбрать случайную матрицу М; такую что mi будет являться её собственным числом при собственном векторе ki.
2. С помощью алгоритма интерполяции матричных многочленов вычислить С(Х) такой, что deg(C(X)j < N + a{X),
С(Кг) = Мг.
3. Вычислить С(Х) = С(Х — К0 ) .
4. Вернуть в качестве результата С(Х) .
Умножение матричных полиномов в Алгоритме 2 может быть выполнено как по определению (формулам (1) ), так и с использованием более эффективных алгоритмов, что будет рассмотрено далее.
Алгоритм 3. Расшифрование (Decrypt)
Входные данные: Матричный полином шифртекста С(Х), секретный ключ sk.
Результат: сообщение открытого текста ffleZp.
1. C(jsr)<-C(jsr-Kj')
2. Для каждого i = 1,...,/ выполнить Мг <— С(Кг), для ненулевой координаты (к,1), вектора к, вычислить т, = (к,1(М, -кЛ .
J i * i j If
3. Вернуть в качестве результата {jY\,..., ffll) .
Криптосхема поддерживает как аддитивный, так и мультипликативный гомоморфизмы. После умножения двух шифртекстов для понижения степени результат нужно приводить по модулю ключа перешифрования - матричного полинома. Деление можно выполнять, например с помощью алгоритма, указанного в [25].
Корректность расшифрования основывается на обобщенной теореме Безу (для матричных полиномов).
Теорема 2 (Обобщенная теорема Безу) Если ^ - корень матричного полинома М(Х), то справедливо
М(Л) = <2(Л)-(1Л-8),
где О(Л) - матричный полином степени т — 1.
Доказательство теоремы приведено в [30,31] для матричных полиномов над комплексными числами, однако оно справедливо и для матричных полиномов над конечными полями (требование алгебраической замкнутости поля в доказательстве не используется)
Лемма 2 (корректность расшифрования) Расшифрование вышеописанной криптосхемы корректно и является гомоморфизмом для всех арифметических схем, состоящих из сложений и умножений по модулю р .
Для обоснования корректности расшифрования достаточно заметить, что подстановка полинома указанного вида - изоморфизм колец.
Лемма 3. Вышеописанная криптосхема компактна.
Для обоснования этого утверждения достаточно заметить что в процессе вычислений над шифртекстами степень матричных полиномов результата не превысит заданной.
Анализ сложности умножения шифртекстов. Самой значимой характеристикой эффективности ПГШ является анализ сложности алгоритма произведения двух шифртекстов. По соображениям, сходным с описанными в
[24] и [25], асимптотическая сложность этой операции составит ~ 0(Л3 76) .
Важный вопрос о криптостойкости будет освещен в расширенном варианте статьи, однако стоит отметить, что при выполнении криптоанализа подобного выполненному в работах [24] и [25] видно что вышеописанная криптосхема может иметь достаточно высокую криптостойкость.
5. Результаты экспериментов и сравнение с аналогами
Для оценки производительности полученных криптосистем автором была сделана тестовая реализация вышеописанных алгоритмов с помощью библиотеки NTL в среде программирования Qt Creator 1.3.1. Для тестирования использовался ноутбук с процессором AMD Phenon 1.8 Quad Core 2 с оперативной памятью 4 Гб. При реализации были использованы следующие
параметры: открытые тексты выбираются из Z2, количество открытых
текстов на один шифртекст - 11 , степень матричного полинома - 12. Таким образом, на каждый бит открытого текста приходится приблизительно 157 битов шифртекста при 144-битной криптостойкости. Время, необходимое для умножения двух шифртекстов - 50 мсек.
В статье [26] исследователи из IBM Крейг Джентри, Дэн Боне и соавт. представили реализацию криптосхемы из [8] со следующими параметрами: уровень криптостойкости - 128 бит, количество открытых текстов на один шифртекст - 7866, модуль пространства открытых текстов р = 1000021573 ,
log2 q — 238 . На каждый бит открытого текста в таком случае приходится
приблизительно 218 битов шифртекста. В [32] приводятся следующие данные по производительности: на Intel Core i7-2600 с 3.4 ГГц и более 200 Гб ОЗУ умножение двух шифртекстов при 128 битной криптостойкости выполняется за 148 мсек.
6. Заключение
Были описаны и проанализированы возможные подходы к построению пакетного ПГШ на основе матричных полиномов, а также представлен набор алгоритмов, реализующий один из этих подходов - криптосхему ПГШ с интерполяцией матричных полиномов. Было показано, что по эффективности построенная криптосхема превосходит аналоги, разработанные исследователями из IBM. Более полное описание криптосхем с обоснованием криптостойкости будет приведено в отдельной статье.
Список литературы
[1]. R. L. Rivest, L. Adleman, М. L. Dertouzos. On data banks and privacy homomorphisms. Foundations of secure computation. 1978, T. 4. №. 11. pp. 169-180.
[2]. C. Gentry. Fully homomorphic encryption using ideal lattices. Proceedings of the 41st annual ACM symposium on Symposium on theory of computing-STOC'09. Vol. 9 -ACM Press, 2009. pp. 169-169. doi: 10.1145/1536414.1536440
[3]. A. Silverberg. Fully homomorphic encryption for mathematicians. Women in Numbers 2: Research Directions in Number Theory. - 2013. - T. 606. - pp. 111.
[4]. H. П. Варновский, А. В. Шокуров. Гомоморфное шифрование. Труды ИСП РАН, том 12, 2007 г. стр. 27-36.
[5]. А. О. Жиров, О. В. Жирова, С. Ф. Кренделев. Безопасные облачные вычисления с помощью гомоморфной криптографии. Журнал БИТ (безопасность информационных технологий), том 1, 2013. стр. 6-12.
[6]. Nigel P. Smart, F. Vercauteren. Fully Homomorphic Encryption with Relatively Small Key and Ciphertext Sizes. Public Key Cryptography-PKC 2010: 13th International Conference on Practice and Theory in Public Key Cryptography, Paris, France, May 26-28, 2010, Proceedings. - Springer, 2010. p. 420.
[7]. M. Naehrig, К Lauter, V. Vaikuntanathan. Can homomorphic encryption be practical? Proceedings of the 3rd ACM workshop on Cloud computing security workshop. - ACM,
2011. pp. 113-124. doi: 10.1145/2046660.2046682
[8]. C. Gentry, S. Halevi, N. P. Smart. Fully homomorphic encryption with poly log overhead. Advances in Cryptology-EUROCRYPT 2012. - Springer Berlin Heidelberg,
2012. pp. 465-482. doi: 10.1007/978-3-642-29011-4_28
[9]. J. H. Cheon, J. S. Coron, J. Kim, M. S. Lee, T. Lepoint, M. Tibouchi, A. Yun. Batch Fully Homomorphic Encryption over the Integers. Advances in Cryptology-EUROCRYPT
2013. -T. 7881.-2013. pp. 315-335. doi: 10.1007/978-3-642-38348-9_20
[10]. Z. Brakerski, C. Gentry, S. Halevi. Packed ciphertexts in LWE-based homomorphic encryption. Public-Key Cryptography-PKC 2013. - Springer Berlin Heidelberg, 2013. -pp. 1-13. doi: 10.1007/978-3-642-36362-7_l
[11]. M. Yasuda, T. Shimoyama, J. Kogure, K. Yokoyama, T. Koshiba. Packed homomorphic encryption based on ideal lattices and its application to biometrics. Security Engineering and Intelligence Informatics. - Springer Berlin Heidelberg, 2013. pp. 55-74.
[12]. Nigel P. Smart, F. Vercauteren. Fully homomorphic SIMD operations. Designs, codes and cryptography, 2014. - T. 71. -№. 1. - pp. 57-81. doi: 10.1007/sl0623-012-9720-4
[13]. M. Yasuda, T. Shimoyama, J. Kogure, K. Yokoyama, T. Koshiba. Practical packing method in somewhat homomorphic encryption. Data Privacy Management and Autonomous Spontaneous Security. - Springer Berlin Heidelberg, 2014. pp. 34-50.
[14]. A. Zhirov, O. Zhirova, S. F. Krendelev. Practical fully homomorphic encryption over polynomial quotient rings. Internet Security (WorldCIS), 2013 World Congress on. -/£££,2013. pp. 70-75. doi: 10.1109/WorldCIS.2013.6751020
[15]. M. Hojsik, V. Pulpanova. A fully homomorphic cryptosystem with approximate perfect secrecy. Proceedings of the 13th international conference on Topics in Cryptology. -Springer-Verlag, 2013. pp. 375-388. doi: 10.1007/978-3-642-36095-4_24
[16]. J. Domingo-Ferrer. A Provably Secure Additive and Multiplicative Privacy Homomorphism*. Information Security. - Springer Berlin Heidelberg, 2002. pp. 471-483.
[17]. G. Gavin. An efficient FHE based on the hardness of solving systems of non-linear multivariate equations. IACR Cryptology ePrintArchive, 2013. №. 262.
[18]. M. R. Albrecht, P. Farshim, J. C. Faugere, L. Perret. Polly cracker, revisited. Advances in Cryptology-ASIACRYPT2011.-SpringerBerlin Heidelberg, 2011. pp. 179-196.
[19]. G. Herold. Polly cracker, revisited, revisited. Public Key Cryptography-PKC 2012. -Springer Berlin Heidelberg, 2012. - pp. 17-33.
[20]. F. Armknecht, D. Augot, L. Perret, A. R. Sadeghi. On constructing homomorphic encryption schemes from coding theory. Cryptography and Coding. - Springer Berlin Heidelberg, 2011. - pp. 23-40.
[21]. А. Г. Ростовцев, А. Богданов, M. Михайлов. Метод безопасного вычисления полинома в недоверенной среде с помощью гомоморфизмов колец. Проблемы информационной безопасности. Компьютерные системы, том 2, 2011, стр. 76-85.
[22]. D. Wagner. Cryptanalysis of an algebraic privacy homomorphism. Proc. of 6th Information Security Conference (ISC'03). -2003. doi: 10.1.1.5.1420
[23]. A. Trepacheva, L. Babenko. Known plaintexts attack on polynomial based homomorphic encryption. Proceedings of the 7th International Conference on Security of Information and Networks.-ACM, 2014. -pp. 157. doi: 10.1145/2659651.2659692
[24]. Ph. Burtyka, O. Makarevich. Symmetric Fully Homomorphic Encryption Using Decidable Matrix Equations. Proceedings of the 7th International Conference on Security of Information and Networks. ACM, 2014, pp. 186-196. doi: 10.1145/2659651.2659693
[25]. Ф. Б. Буртыка. Симметричное полностью гомоморфное шифрование с использованием неприводимых матричных полиномов. Известия Южного федерального университета. Технические науки, том 158, №. 9, стр. 107-122,2014.
[26]. D. Bone h, С. Gentry, S. Halevi, F. Wang, D. J. Wu. Private database queries using somewhat homomorphic encryption. Applied Cryptography and Network Security. -Springer Berlin Heidelberg, 2013. - pp. 102-118. doi: 10.1007/978-3-642-38980-l_7
[27]. S. Halevi, V. Shoup. Algorithms in HElib. IACR Cryptology ePrint Archive, 2014. № 106.
[28]. S. Halevi. (2012) Performance of HElib. [Online], Available: http://mpclounge.files.wordpress.com/2013/04/hespeed.pdf (Дата обращения 18.12.2014)
[29]. Ф. Б. Буртыка. О сложности нахождения корней булевых матричных полиномов. Математическое моделирование, том 27, 2015. -№. 7.
[30]. Jr J. Б. Dennis, J. F. Traub, R. P. Weber. The algebraic theory of matrix polynomials. SIAM Journal on Numerical Analysis, 13(6), 1976. pp. 831-845.
[31]. Jr J. E. Dennis, J. F. Traub, R. P. Weber. Algorithms for solvents of matrix polynomials. SIAM Journal on Numerical Analysis, 1978. - T. 15. - №. 3. - pp. 523-533.
[32]. Antoine Guellier. Can Homomorphic Cryptography ensure Privacy? [Research Report] RR-8568, 2014, pp.111, https://hal.inria.fr/hal-01052509vl
Batch Symmetric Fully Homomorphic Encryption Using Matrix Polynomials
Ph. Burtyka <[email protected]> Southern Federal University, 105/42, Bolshaya Sadovaya st., Rostov-on-Don, 344006, Russia
Abstract. Fully homomorphic encryption (FHE) is a recognized tool to obtain the cryptographic protection of cloud computing. However, the characteristics of existing FHE schemes are not sufficient for use in practice - the security of some FHE is unsatisfying, others require too much computational resources. For improvement the efficiency of the last one IBM researchers proposed a method for "ciphertexts batching", which was applied by them to public key FHE scheme whose security is based on the complexity of the lattice theory hardness assumptions. In this paper, we discuss several methods for embedding "ciphertexts batching" into recently proposed symmetric encryption scheme based on matrix polynomials. For one of this method we completely specify how cryptosystem algorithms should work. The results of computer experiments are given.
Keywords: information security, cloud computing, fully homomorphic encryption, batch encryption, matrix polynomials, secret computations.
References
[1]. R. L. Rivest, L. Adleman, M. L. Dertouzos. On data banks and privacy homomorphisms. Foundations of secure computation. 1978, Vol. 4, №. 11. pp. 169-180
[2]. C. Gentry. Fully homomorphic encryption using ideal lattices. Proceedings of the 41st annual ACM symposium on Symposium on theory of computing-STOC'09. - ACM Press, 2009. Vol. 9, pp. 169-169. doi:10.1145/1536414.1536440
[3]. A. Silverberg. Fully homomorphic encryption for mathematicians. Women in Numbers 2: Research Directions in Number Theory, 2013. Vol. 606. p. 111.
[4]. N.P. Varnovskij, A.V. Shokurov. Gomomorfnoe shifrovanie. [Homomorphic encryption], Trudy ISP RAN [The Proceedings of ISP RASJ, 2007. Vol. 12, pp. 27-36. (in Russian).
[5]. O. Zhirov, О. V. Zhirova, and S. F. Krendelev. Bezopasnye oblachnye vychisleniya s pomoshhyu homomorfnoj cryptographii. [Secure cloud computing using homomorphic cryptography], BIT (bezopasnost' informacionnyx technology) journal [Security of Information Technologies Magazine], 2013, Vol. 1, pp. 6-12. (in Russian).
[6]. Nigel P. Smart, F. Vercauteren. Fully Homomorphic Encryption with Relatively Small Key and Ciphertext Sizes. Public Key Cryptography-PKC 2010: 13th International Conference on Practice and Theory in Public Key Cryptography, Paris, France, May 26-28, 2010, Proceedings. -Springer, 2010. p. 420.
[7]. Naehrig M, Lauter K., Vaikuntanathan V. Can homomorphic encryption be practical? Proceedings of the 3rd ACM workshop on Cloud computing security workshop. - ACM,
2011. pp. 113-124. doi: 10.1145/2046660.2046682
[8]. C. Gentry, S. Halevi, N. P. Smart. Fully homomorphic encryption with poly log overhead. Advances in Cryptology-EUROCRYPT 2012. - Springer Berlin Heidelberg,
2012. pp. 465-482. doi: 10.1007/978-3-642-29011-4_28
[9]. Cheon, J. H., Coron, J. S., Kim, J., Lee, M. S., Lepoint, T., Tibouchi, M., Yun, A. Batch Fully Homomorphic Encryption over the Integers. Advances in Cryptology-EUROCRYPT. -Vol. 7881.-2013. pp. 315-335. doi: 10.1007/978-3-642-38348-9_20
[10]. Z. Brakerski, C. Gentry, S. Halevi. Packed ciphertexts in LWE-based homomorphic encryption. Public-Key Cryptography-PKC 2013. - Springer Berlin Heidelberg, 2013. -pp. 1-13. doi: 10.1007/978-3-642-36362-7_l
[11]. Yasuda, M., Shimoyama, T., Kogure, J., Yokoyama, K., Koshiba, T. Packed homomorphic encryption based on ideal lattices and its application to biometrics. Security Engineering and Intelligence Informatics. - Springer Berlin Heidelberg, 2013. pp. 55-74.
[12]. Nigel P. Smart, F. Vercauteren. Fully homomorphic SIMD operations. Designs, codes and cryptography, 2014. Vol. 71, №. 1. -pp. 57-81. doi: 10.1007/sl0623-012-9720-4
[13]. Yasuda, M., Shimoyama, T., Kogure, J., Yokoyama, K., Koshiba, T. Practical packing method in somewhat homomorphic encryption. Data Privacy Management and Autonomous Spontaneous Security. - Springer Berlin Heidelberg, 2014. pp. 34-50.
[14]. Zhirov A., Zhirova O., Krendelev S. F. Practical fully homomorphic encryption over polynomial quotient rings. Internet Security (WorldCIS), 2013 World Congress on. -IEEE, 2013. pp. 70-75. doi: 10.1109/WorldCIS.2013.6751020
[15]. HojsikM., Pûlpânovâ V. A fully homomorphic cryptosystem with approximate perfect secrecy. Proceedings of the 13th international conference on Topics in Cryptology. -Springer-Verlag, 2013. pp. 375-388. doi: 10.1007/978-3-642-36095-4_24
[16]. J. Domingo-Ferrer. A Provably Secure Additive and Multiplicative Privacy Homomorphism*. Information Security. - Springer Berlin Heidelberg, 2002. pp. 471-483.
[17]. Gavin G. An efficient FHE based on the hardness of solving systems of non-linear multivariate equations. IACR Cryptology ePrintArchive, 2013. №. 262.
[18]. Albrecht, M. R., Farshim, P., Faugere, J. C., Perret, L. Polly cracker, revisited. Advances in Ctyptology-ASIACRYPT 2011. - Springer Berlin Heidelberg, 2011. pp. 179-196.
[19]. Herold G. Polly cracker, revisited, revisited. Public Key Cryptography-PKC 2012. -Springer Berlin Heidelberg, 2012. - pp. 17-33.
[20]. Armknecht, F., Augot, D., Perret, L., Sadeghi, A. R. On constructing homomorphic encryption schemes from coding theory. Cryptography and Coding. - Springer Berlin Heidelberg, 2011. - pp. 23-40.
[21]. Rostovtsev A., Bogdanov A., Mikhaylov M. Metod bezopasnogo vychislenija polinoma v nedoverennoj srede s pomowqju gomomorfizmov kolec [Secure evaluation of polynomial using privacy ring homomorphisms], Problemy informacionnoj bezopasnosti. Kompqjuternye sistemy [Information security issues. Computer systems], 2011. Vol. 2. - pp. 76-85. (in Russian).
[22]. Wagner D. Cryptanalysis of an algebraic privacy homomorphism. Proc. of 6th Information Security Conference (ISC'03). -2003. doi: 10.1.1.5.1420
[23]. Trepacheva A., Babenko L. Known plaintexts attack on polynomial based homomorphic encryption. Proceedings of the 7th International Conference on Security of Information and Networks.-ACM, 2014. -pp. 157. doi: 10.1145/2659651.2659692
[24]. Ph. Burtyka, O. Makarevich. Symmetric Fully Homomorphic Encryption Using Decidable Matrix Equations. Proceedings of the 7th International Conference on Security of Information and Networks. ACM, 2014, pp. 186-196. doi: 10.1145/2659651.2659693
[25]. F. B. Burtyka. Simmetrichnoe polnost'ju gomomorfnoe shifrovanie s ispol'zovaniem neprivodimyh matrichnyh polinomov [Symmetric fully homomorphic encryption using irreducible matrix polynomials], Izvestija Juzhnogo federal'nogo universiteta. Tehnicheskie nauki [Proceedings of Southern Federal University. Engineering sciences], 2014, Vol. 158, №. 9, pp. 107-122. (in Russian).
[26]. Boneh, D., Gentry, C., Halevi, S., Wang, F., Wu, D. J. Private database queries using somewhat homomorphic encryption. Applied Cryptography and Network Security. -Springer Berlin Heidelberg, 2013. - pp. 102-118. doi: 10.1007/978-3-642-38980-l_7
[27]. S. Halevi, V. Shoup. Algorithms in HElib. IACR Cryptology ePrint Archive, 2014. №. 106.
[28]. S. Halevi. (2012) Performance of HElib. [Online], Available: http://mpclounge.files.wordpress.com/2013/04/hespeed.pdf (Visited on 18.12.2014)
[29]. Burtyka Ph. B. O slozhnosti naxozhdenija kornej bulevyx matrichnyx polinomov [On the complexity of finding the roots of Boolean matrix polynomials], Matematicheskoe modelirovanie [Matematical modelling], 2015. Vol. 27, №. 7. (in Russian).
[30]. Dennis, JrJ. E., Traub J. F., Weber R. P. The algebraic theory of matrix polynomials. SIAM Journal on Numerical Analysis, 13(6), 1976. pp. 831-845.
[31]. Dennis, Jr J. E., Traub J. F., Weber R. P. Algorithms for solvents of matrix polynomials. SIAM Journal on Numerical Analysis, 1978. Vol. 15. - №. 3. - pp. 523-533.
[32]. Antoine Guellier. Can Homomorphic Cryptography ensure Privacy? [Research Report] RR-8568, 2014, pp.111. https://hal.inria.fr/hal-01052509vl