Компания 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 обычные корпоративные программисты смогут за минуту сделать ту же работу, что раньше требовала часов и дней при привлечении экспертов с учёной степенью.