Мне нужно использовать начальную загрузку при реализации алгоритма машинного обучения (логистическая регрессия) с печатью зашифрованных данных. Но я не могу найти модуль начальной загрузки в пломбе. Нужно ли мне внедрять самостоятельно?
Модуль начальной загрузки в библиотеке гомоморфного шифрования Microsoft SEAL
Ответы (1)
В настоящее время SEAL не поддерживает начальную загрузку, хотя для схемы CKKS команда разработчиков имеет это в дорожной карте. На данный момент у вас есть несколько вариантов:
- Используйте схему CKKS, но с достаточно большими параметрами, поэтому вам не нужно выполнять загрузку. Конечно, это сильно ограничит количество итераций, поэтому вам может понадобиться какой-то протокол повторного шифрования в любом случае, когда модель повторно шифруется владельцем секретного ключа.
- Выполните самозагрузку CKKS; это не обязательно легко, но определенно не безосновательно. Если вы подумываете об использовании BFV и реализации BFV-bootstrapping, я бы, возможно, не рекомендовал этого: BFV-bootstrapping сложно параметризовать и вряд ли будет достаточно быстрым, чтобы иметь смысл.
- В библиотеке HEAAN раньше была реализация начальной загрузки CKKS, но похоже, что эта ветка больше не доступна. Может быть, если вы спросите авторов, они поделятся с вами этим.
person
Kim Laine
schedule
01.03.2019