IBM открыл тулкит гомоморфного шифрования для Linux

Компания IBM объявила об открытии исходных текстов тулкита FHE (IBM Fully Homomorphic Encryption) с реализацией системы полного гомоморфного шифрования для обработки данных в шифрованном виде. FHE позволяет создавать сервисы для конфиденциальных вычислений, в которых данные обрабатываются зашифрованными и не фигурируют в открытой форме ни на одном из этапов. Результат также формируется зашифрованным. Код написан на языке С++ и распространяется под лицензией MIT. Помимо версии для Linux, параллельно развиваются аналогичные тулкиты для macOS и iOS, написанные на Objective-C. В ближайшее время ожидается публикация варианта для Android.

FHE поддерживает полные гомоморфные операции, позволяющие выполнять сложение и умножение зашифрованных данных (т.е. можно реализовать любые произвольные вычисления) и получать на выходе зашифрованный результат, который был бы аналогичен шифрованию результата сложения или умножения исходных данных. Гомоморфное шифрование можно рассматривать как следующий этап развития сквозного шифрования (end-to-end) — помимо защиты передачи данных, предоставляется возможность обработки данных без их расшифровки.

С практической стороны фреймворк может оказаться полезен для организации конфиденциальных облачных вычислений, в системах электронного голосования, в анонимизированных протоколах маршрутизации, для шифрованной обработки запросов в СУБД, для конфиденциальной тренировки систем машинного обучения. В качестве примера применения FHE упоминается организация анализа информации о пациентах медицинских учреждений в страховых компаниях без получения страховой компанией доступа к сведениям, которые могли бы идентифицировать конкретных пациентов. Так же упоминается разработка систем машинного обучения для выявления мошеннических операций с кредитными картами на основе обработки зашифрованных анонимных финансовых транзакций.

Тулкит включает в себя библиотеку HElib c реализацией нескольких схем гомоморфного шифрования, интегрированную среду разработки (работа осуществляется через браузер) и набор примеров. Для упрощения развёртывания подготовлены готовые docker-образы на базе CentOS, Fedora и Ubuntu. Также доступны инструкции по сборке тулкита из исходных текстов и установке на локальную систему.

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

Из других наработок в области конфиденциальных вычислений, можно отметить публикацию проекта OpenDP с реализацией методов дифференциальной приватности, позволяющих с достаточно высокой точностью выполнять статистические операции над набором данных без возможности идентификации отдельных записей в нём. Проект совместно развивается исследователями из компании Microsoft и Гарвардского университета. Реализация написана на Rust и Python и поставляется под лицензией MIT.

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

Для защиты идентифицируемой персональной или конфиденциальной информации применяется два механизма: 1. Добавление в каждый результат небольшого статистического «шума», не влияющего на точность извлекаемых данных, но маскирующего вклад отдельных элементов данных. 2. Использование бюджета конфиденциальности, ограничивающего объём выдаваемых для каждого запроса данных и недопускающего дополнительные запросы, которые могут нарушить конфиденциальность.

Источник: http://www.opennet.ru/opennews/art.shtml?num=53459