Microsoft SEAL — это библиотека гомоморфного шифрования с открытым исходным кодом на C++, которая позволяет складывать и умножать зашифрованные числа, не расшифровывая их.
zama-ai/tfhe-rs
Реализация схемы TFHE на чистом Rust для выполнения логических операций и арифметики над целыми числами непосредственно на зашифрованных данных.
- Звёзды
- 1,675
- Форки
- 338
- Открытые issues
- 54
- Последний коммит
- вчера
Что это?
TFHE-rs — библиотека на чистом Rust, реализующая TFHE — схему полностью гомоморфного шифрования. Она позволяет программе выполнять вычисления над шифротекстами, так что после расшифровки владельцем данных результат совпадает с результатом тех же операций над открытым текстом. Разработчики могут использовать её для логических схем и арифметики над зашифрованными значениями целых чисел распространённых разрядностей, например FheUint8 и FheUint32.
В библиотеке есть высокоуровневый API для Rust, C API и клиентский JavaScript API, скомпилированный в WASM. Кроме того, она включает низкоуровневый криптографический слой с программируемым бутстрэппингом, boolean API, совместимый с исходной библиотекой TFHE, и API для коротких целых чисел с точной арифметикой без ограничений до 8 бит пространства сообщений. Сжатие шифротекстов и серверных ключей помогает уменьшить объём передаваемых данных.
Проект предназначен для разработчиков и исследователей, которым нужны вычисления с сохранением конфиденциальности без необходимости разбираться в низкоуровневых деталях криптографии. В документации, справочнике и руководствах описаны базовые алгоритмы, выбор параметров и примеры применения.
Ключевые возможности
- 01Логические операции и арифметика над зашифрованными данными с использованием TFHE.
- 02Высокоуровневый API для Rust с типами зашифрованных целых чисел, например FheUint32.
- 03C bindings и клиентский JavaScript API, скомпилированный в WASM.
- 04Программируемый бутстрэппинг в низкоуровневом криптографическом слое.
- 05Сжатие шифротекстов и серверных ключей для уменьшения объёма передаваемых данных.
Сценарии использования
- Создание сервисов с сохранением конфиденциальности, которые вычисляют данные, недоступные серверу для чтения.
- Прототипирование зашифрованных логических схем и схем для арифметики над целыми числами в исследованиях.
- Шифрование данных на стороне клиента в браузере через WASM API.
Быстрый старт
- 1
Убедитесь, что версия Rust — 1.91.1 или новее
rustc --version - 2
Добавьте TFHE-rs в зависимости в Cargo.toml
tfhe = { version = "*", features = ["boolean", "shortint", "integer"] } - 3
Запустите пример в режиме release
cargo run --release
Что важно знать
- Распространяется по лицензии BSD-3-Clause-Clear, которая разрешает использование только для разработки, исследований, прототипирования и экспериментов. Для коммерческого использования требуется отдельная патентная лицензия от Zama.
- Меры защиты от атак по сторонним каналам пока не реализованы.
- Требуется Rust версии 1.91.1 или новее.
- Машины AArch64 не поддерживаются в Windows.
В подборках
Темы
Частые вопросы
- Что такое tfhe-rs?
- Реализация схемы TFHE на чистом Rust для выполнения логических операций и арифметики над целыми числами непосредственно на зашифрованных данных. TFHE-rs — библиотека на чистом Rust, реализующая TFHE — схему полностью гомоморфного шифрования. Она позволяет программе выполнять вычисления над шифротекстами, так что после расшифровки владельцем данных результат совпадает с результатом тех же операций над открытым текстом. Разработчики могут использовать её для логических схем и арифметики над зашифрованными значениями целых чисел распространённых разрядностей, например FheUint8 и FheUint32.
- tfhe-rs можно использовать бесплатно? Какая у него лицензия?
- tfhe-rs распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- tfhe-rs всё ещё поддерживается?
- Активно поддерживается. Последний коммит в tfhe-rs — 23 окт. 2026 г..
- Для чего можно использовать tfhe-rs?
- Создание сервисов с сохранением конфиденциальности, которые вычисляют данные, недоступные серверу для чтения. Прототипирование зашифрованных логических схем и схем для арифметики над целыми числами в исследованиях. Шифрование данных на стороне клиента в браузере через WASM API.
- Как установить tfhe-rs?
- Убедитесь, что версия Rust — 1.91.1 или новее: rustc --version Добавьте TFHE-rs в зависимости в Cargo.toml: tfhe = { version = "*", features = ["boolean", "shortint", "integer"] } Запустите пример в режиме release: cargo run --release
- Где скачать tfhe-rs?
- Исходный код и инструкции по установке — на GitHub: https://github.com/zama-ai/tfhe-rs
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Подборка ресурсов Zama по полностью гомоморфному шифрованию: конфиденциальный блокчейн-протокол, библиотека TFHE-rs, научные статьи и руководства.
Мессенджер со сквозным шифрованием и сетью без пользовательских идентификаторов, с клиентами для iOS, Android, компьютеров и терминала.
Настольный клиент для Windows, macOS и Linux, который обеспечивает прозрачное шифрование файлов на устройстве в Dropbox, Google Drive, OneDrive и других синхронизируемых облачных папках.
Минималистичный pastebin для самостоятельного размещения: шифрует записи в браузере, поэтому сервер не видит их в открытом виде.
Самостоятельно размещаемый dead man's switch с упором на email: он отправит близким сквозным образом зашифрованные сообщения, если вы перестанете подтверждать, что с вами всё в порядке.