Модуль начальной загрузки в библиотеке гомоморфного шифрования Microsoft SEAL

Мне нужно использовать начальную загрузку при реализации алгоритма машинного обучения (логистическая регрессия) с печатью зашифрованных данных. Но я не могу найти модуль начальной загрузки в пломбе. Нужно ли мне внедрять самостоятельно?


person Cathy    schedule 28.02.2019    source источник


Ответы (1)


В настоящее время SEAL не поддерживает начальную загрузку, хотя для схемы CKKS команда разработчиков имеет это в дорожной карте. На данный момент у вас есть несколько вариантов:

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