Общий | |
---|---|
Полученный из | Кольцевое обучение с ошибками |
Относится к |
Гомоморфное шифрование - это форма шифрования, которая позволяет пользователям выполнять вычисления над зашифрованными данными без предварительного их дешифрования. Эти результирующие вычисления остаются в зашифрованной форме, которая при расшифровке дает результат, идентичный тому, который был бы произведен, если бы операции были выполнены с незашифрованными данными. Гомоморфное шифрование может использоваться для хранения и вычислений, передаваемых сторонним организациям с сохранением конфиденциальности. Это позволяет шифровать данные и передавать их в коммерческие облачные среды для обработки, причем все это в зашифрованном виде.
Для конфиденциальных данных, таких как информация о здравоохранении, можно использовать гомоморфное шифрование для включения новых служб путем устранения барьеров конфиденциальности, препятствующих совместному использованию данных, или повышения безопасности существующих служб. Например, прогнозную аналитику в здравоохранении может быть трудно применить через стороннего поставщика услуг из-за проблем с конфиденциальностью медицинских данных, но если поставщик услуг прогнозной аналитики может вместо этого работать с зашифрованными данными, эти проблемы конфиденциальности уменьшаются. Более того, даже если система поставщика услуг будет скомпрометирована, данные останутся в безопасности.
Гомоморфное шифрование - это форма шифрования с дополнительной возможностью оценки для вычислений по зашифрованным данным без доступа к секретному ключу. Результат такого вычисления остается зашифрованным. Гомоморфное шифрование можно рассматривать как расширение криптографии с открытым ключом. Гомоморфизм относится к гомоморфизму в алгебре: функции шифрования и дешифрования можно рассматривать как гомоморфизмы между пространствами открытого и зашифрованного текста.
Гомоморфное шифрование включает в себя несколько типов схем шифрования, которые могут выполнять различные классы вычислений над зашифрованными данными. Вычисления представлены в виде логических или арифметических схем. Некоторые распространенные типы гомоморфного шифрования частично гомоморфны, в некоторой степени гомоморфны, выровнены, полностью гомоморфны и полностью гомоморфны:
Для большинства схем гомоморфного шифрования мультипликативная глубина схем является основным практическим ограничением при выполнении вычислений над зашифрованными данными. Схемы гомоморфного шифрования по своей природе гибки. С точки зрения гибкости, гомоморфные схемы шифрования обладают более слабыми свойствами безопасности, чем негомоморфные схемы.
Схемы гомоморфного шифрования были разработаны с использованием разных подходов. В частности, полностью гомоморфные схемы шифрования часто группируются по поколениям, соответствующим основному подходу.
Проблема построения полностью гомоморфной схемы шифрования была впервые предложена в 1978 году, через год после публикации схемы RSA. Более 30 лет было неясно, существует ли решение. В этот период частичные результаты включали следующие схемы:
Крейг Джентри, используя криптографию на основе решеток, описал первую правдоподобную конструкцию для полностью гомоморфной схемы шифрования. Схема Джентри поддерживает как операции сложения, так и операции умножения над шифрованными текстами, из которых можно создавать схемы для выполнения произвольных вычислений. Конструкция начинается с несколько гомоморфной схемы шифрования, которая ограничивается вычислением полиномов низкой степени по зашифрованным данным; он ограничен, потому что каждый зашифрованный текст в некотором смысле зашумлен, и этот шум растет по мере добавления и умножения зашифрованных текстов, пока в конечном итоге шум не сделает результирующий зашифрованный текст нечитаемым.
Затем Джентри показывает, как немного изменить эту схему, чтобы сделать ее загружаемой, т. Е. Способной оценить свою собственную схему дешифрования, а затем, по крайней мере, еще одну операцию. Наконец, он показывает, что любую гомоморфную схему шифрования, допускающую загрузку, можно преобразовать в полностью гомоморфное шифрование посредством рекурсивного самовложения. Для «зашумленной» схемы Джентри процедура начальной загрузки эффективно «обновляет» зашифрованный текст, гомоморфно применяя к нему процедуру дешифрования, тем самым получая новый зашифрованный текст, который зашифровывает то же значение, что и раньше, но имеет более низкий уровень шума. Периодически «обновляя» зашифрованный текст всякий раз, когда шум становится слишком большим, можно вычислить произвольное количество сложений и умножений, не увеличивая слишком много шума.
Джентри основывал безопасность своей схемы на предполагаемой сложности двух задач: некоторых задач наихудшего случая над идеальными решетками и проблемы с редкими (или маловесными) задачами о сумме подмножеств. Джентри доктор философии. В диссертации приводятся дополнительные подробности. Реализация оригинальной криптосистемы Gentry-Halevi сообщила, что время выполнения базовой битовой операции составляет около 30 минут. Обширная работа по проектированию и внедрению в последующие годы позволила улучшить эти ранние реализации на много порядков производительности во время выполнения.
В 2010 году Мартен ван Дейк, Крейг Джентри, Шай Халеви и Винод Вайкунтанатан представили вторую полностью гомоморфную схему шифрования, которая использует многие инструменты конструирования Джентри, но не требует идеальных решеток. Вместо этого они показывают, что несколько гомоморфный компонент идеальной решетчатой схемы Джентри может быть заменен очень простой в некоторой степени гомоморфной схемой, использующей целые числа. Таким образом, схема концептуально проще, чем схема идеальной решетки Джентри, но имеет аналогичные свойства в отношении гомоморфных операций и эффективности. Несколько гомоморфный компонент в работе Van Dijk et al. аналогична схеме шифрования, предложенной Levieil и Наккаш в 2008 году, а также к тому, который был предложен Брэм Коэн в 1998 году.
Однако метод Коэна не является даже аддитивно гомоморфным. Схема Левье-Наккаша поддерживает только сложение, но ее можно изменить, чтобы она также поддерживала небольшое количество умножений. Многие усовершенствования и оптимизации схемы Ван Дейка и др. были предложены в серии работ Жана-Себастьяна Корона, Танкреда Лепуа, Аврадипа Мандала, Давида Наккаша и Мехди Тибучи. Некоторые из этих работ включали также реализации полученных схем.
Гомоморфные криптосистемы этого поколения являются производными от методов, которые были разработаны в 2011-2012 годах Цвикой Бракерски, Крейгом Джентри, Винодом Вайкунтанатаном и другими. Эти нововведения привели к разработке гораздо более эффективных, частично и полностью гомоморфных криптосистем. К ним относятся:
Безопасность большинства этих схем основана на сложности проблемы (кольцевого) обучения с ошибками (RLWE), за исключением схем LTV и BLLN, которые основаны на чрезмерно растянутом варианте вычислительной проблемы NTRU. Впоследствии было показано, что этот вариант NTRU уязвим для атак на решетку подполей, поэтому эти две схемы больше не используются на практике.
Все криптосистемы второго поколения по-прежнему следуют базовой схеме первоначальной конструкции Джентри, а именно, они сначала создают несколько гомоморфную криптосистему, а затем преобразуют ее в полностью гомоморфную криптосистему с помощью самонастройки.
Отличительной особенностью криптосистем второго поколения является то, что все они имеют гораздо более медленный рост шума во время гомоморфных вычислений. Дополнительные оптимизации, выполненные Крейгом Джентри, Шаем Халеви и Найджелом Смартом, привели к созданию криптосистем с почти оптимальной асимптотической сложностью: выполнение операций с данными, зашифрованными с помощью параметра безопасности, имеет сложность всего лишь. Эти оптимизации основаны на методах Smart-Vercauteren, которые позволяют упаковывать множество значений открытого текста в один зашифрованный текст и работать со всеми этими значениями открытого текста в режиме SIMD. Многие достижения в этих криптосистемах второго поколения также были перенесены в криптосистему вместо целых чисел.
Еще одна отличительная черта схем второго поколения состоит в том, что они достаточно эффективны для многих приложений даже без вызова начальной загрузки, вместо этого они работают в выровненном режиме FHE.
В 2013 году Крейг Джентри, Амит Сахаи и Брент Уотерс (GSW) предложили новую технику построения схем FHE, которая позволяет избежать дорогостоящего шага «релинеаризации» при гомоморфном умножении. Цвика Бракерски и Винод Вайкунтанатан заметили, что для определенных типов схем криптосистема GSW отличается еще более медленным ростом шума и, следовательно, более высокой эффективностью и большей безопасностью. Затем Джейкоб Альперин-Шериф и Крис Пайкерт описали очень эффективную технику самонастройки, основанную на этом наблюдении.
Эти методы были дополнительно улучшены для разработки эффективных кольцевых вариантов криптосистемы GSW: FHEW (2014) и TFHE (2016). Схема FHEW была первой, которая показала, что, обновляя зашифрованные тексты после каждой отдельной операции, можно сократить время начальной загрузки до доли секунды. FHEW представил новый метод вычисления логических вентилей для зашифрованных данных, который значительно упрощает начальную загрузку, и реализовал вариант процедуры начальной загрузки. Эффективность FHEW была дополнительно улучшена схемой TFHE, которая реализует кольцевой вариант процедуры начальной загрузки с использованием метода, аналогичного методу в FHEW.
Схема CKKS поддерживает эффективные операции округления в зашифрованном состоянии. Операция округления контролирует увеличение шума при шифрованном умножении, что сокращает количество операций начальной загрузки в схеме. В Crypto2018 CKKS фокусируется как решение для зашифрованного машинного обучения. Это связано с особенностью схемы CKKS, которая шифрует приблизительные значения, а не точные значения. Когда компьютеры хранят данные с действительными значениями, они запоминают приблизительные значения с длинными значащими битами, а не в точности реальные значения. Схема CKKS построена так, чтобы эффективно устранять ошибки, возникающие из-за приближений. Схема знакома с машинным обучением, которому присущи шумы в своей структуре.
В статье 2020 года Байю Ли и Даниэле Миччанчио обсуждаются пассивные атаки на CKKS, предполагая, что стандартное определение IND-CPA может быть недостаточным в сценариях, где результаты дешифрования являются общими. Авторы применяют атаку к четырем современным библиотекам гомоморфного шифрования (HEAAN, SEAL, HElib и PALISADE) и сообщают, что можно восстановить секретный ключ из результатов дешифрования в нескольких конфигурациях параметров. Авторы также предлагают стратегии смягчения этих атак и включают в статью «Ответственное раскрытие информации», предполагая, что библиотеки гомоморфного шифрования уже реализовали меры по смягчению последствий атак до того, как статья стала общедоступной. Также была опубликована дополнительная информация о стратегиях смягчения, реализованных в библиотеках гомоморфного шифрования.
В следующих примерах используются обозначения для обозначения шифрования сообщения.
Неплотный RSA
Если открытый ключ RSA имеет модуль и показатель шифрования, то шифрование сообщения задается с помощью. Тогда гомоморфность
Эль-Гамаль
В криптосистемы Эль - Гамаля, в циклической группе порядка с генератором, если открытый ключ, где, и секретный ключ, то шифрование сообщения является для некоторых случайных. Тогда гомоморфность
Гольдвассер-Микали
В криптосистемах Гольдвасер-Микал, если открытый ключ модуль и квадратичный невычет, то шифрование бита является для некоторых случайных. Тогда гомоморфность
где обозначает сложение по модулю 2 (т. е. исключающее ИЛИ ).
Бенало
В криптосистеме Бенало, если открытый ключ является модулем и базой с размером блока, то шифрование сообщения выполняется случайным образом. Тогда гомоморфность
Paillier
В криптосистемы Paillier, если открытый ключ модуль и база, то шифрование сообщения является для некоторых случайных. Тогда гомоморфность
Другие частично гомоморфные криптосистемы
Криптосистема, поддерживающая произвольные вычисления с шифрованными текстами, известна как полностью гомоморфное шифрование (FHE). Такая схема позволяет создавать программы для любых желаемых функций, которые можно запускать на зашифрованных входных данных, чтобы произвести шифрование результата. Поскольку такой программе никогда не нужно расшифровывать свои входные данные, она может быть запущена ненадежной стороной, не раскрывая свои входные данные и внутреннее состояние. Полностью гомоморфные криптосистемы имеют большое практическое значение при передаче частных вычислений на аутсорсинг, например, в контексте облачных вычислений.
Список библиотек FHE с открытым исходным кодом, реализующих схемы FHE второго и / или третьего поколения, приведен ниже. Обновленный список реализаций гомоморфного шифрования также поддерживается сообществом на GitHub.
Существует несколько реализаций полностью гомоморфных схем шифрования второго и третьего поколения с открытым исходным кодом. Реализации схемы FHE второго поколения обычно работают в режиме сглаживания FHE (хотя самозагрузка все еще доступна в некоторых библиотеках) и поддерживают эффективную упаковку данных, подобную SIMD ; они обычно используются для вычисления зашифрованных целых или действительных / комплексных чисел. Реализации схемы FHE третьего поколения часто загружаются после каждой операции логического логического элемента, но имеют ограниченную поддержку упаковки и эффективных арифметических вычислений; они обычно используются для вычисления логических схем по зашифрованным битам. Выбор использования схемы второго или третьего поколения зависит от типов входных данных и желаемых вычислений.
Имя | Разработчик | BGV | CKKS | BFV | FHEW | CKKS Bootstrapping | TFHE | Описание |
---|---|---|---|---|---|---|---|---|
HElib | IBM | да | да | Нет | Нет | Нет | Нет | Схема BGV с оптимизацией GHS. |
ПЕЧАТЬ Microsoft | Microsoft | Нет | да | да | Нет | Нет | Нет | |
ПАЛИСАДА | Консорциум оборонных подрядчиков и ученых, финансируемых DARPA: Технологический институт Нью-Джерси, Duality Technologies, Raytheon BBN Technologies, Массачусетский технологический институт, Калифорнийский университет, Сан-Диего и другие. | да | да | да | да | Нет | да | Библиотека решетчатой криптографии общего назначения. |
HEAAN | Сеульский национальный университет | Нет | да | Нет | Нет | да | Нет | |
FHEW | Лео Дука и Даниэле Миччансио | Нет | Нет | Нет | да | Нет | Нет | |
TFHE | Илария Чиллотти, Николас Гама, Мария Георгиева и Малика Изабачене | Нет | Нет | Нет | Нет | Нет | да | |
FV-NFLlib | CryptoExperts | Нет | Нет | да | Нет | Нет | Нет | |
NuFHE | NuCypher | Нет | Нет | Нет | Нет | Нет | да | Предоставляет реализацию TFHE на графическом процессоре. |
Lattigo | EPFL-LDS | Нет | да | да | Нет | да | Нет | Реализация на Go вместе с их распределенными вариантами, обеспечивающая безопасные многосторонние вычисления. |
Имя | Разработчик | FHEW | TFHE | Хелиб | ТЮЛЕНЬ | ПАЛИСАДА |
---|---|---|---|---|---|---|
E3 | Лаборатория MoMA в Нью-Йоркском университете Абу-Даби | да | да | да | да | да |
ОВЕЦ | Институт Алана Тьюринга | Нет | да | да | да | да |
Стандарт сообщества для гомоморфного шифрования поддерживается группой HomomorphicEncryption.org, открытым отраслевым / правительственным / академическим консорциумом, основанным в 2017 году Microsoft, IBM и Duality Technologies. Текущий стандартный документ включает спецификации безопасных параметров для RLWE.