Урок 2

Криптографічні схеми та технічні основи

У матеріалі подано огляд основних схем повністю гомоморфного шифрування (FHE): BFV, BGV, CKKS та TFHE, а також їх типових сфер застосування для роботи з цілими числами, наближеними обчисленнями та операціями на бітовому рівні. Механізми бутстрапінгу, управління шумом і апаратного прискорення роблять використання FHE можливим на практиці. Найпопулярніші бібліотеки, такі як Microsoft SEAL, OpenFHE та TFHE‑rs, дають розробникам змогу впроваджувати FHE у реальні системи.

Вступ до схем повністю гомоморфного шифрування (FHE)

Повністю гомоморфне шифрування — це не окремий алгоритм, а ціла низка криптографічних конструкцій, які дозволяють виконувати обчислення над зашифрованими даними. Кожна зі схем базується на складних математичних задачах, головно на решіткових припущеннях, таких як Learning With Errors (LWE) та Ring-LWE, що вважаються стійкими навіть до атак квантових комп’ютерів. Схеми різняться ефективністю, оптимізованими типами обчислень і способами керування шумом, що накопичується під час операцій. Засвоєння основних схем FHE є ключем до розуміння інтеграції цієї технології в екосистеми смарт-контрактів і причин вибору певних рішень для конкретних застосувань.

Найпоширенішими є чотири схеми: BFV, BGV, CKKS і TFHE/FHEW. Кожна з них вирішує різні задачі й базується на власних математичних підходах. У блокчейн-сферах вибір залежить від того, чи передбачає застосунок точні обчислення з цілими числами, наближену арифметику для задач машинного навчання або швидкі побітові операції для реалізації логіки смарт-контрактів.

BFV і BGV: Схеми для точної роботи з цілими числами

Схеми BFV (Brakerski–Fan–Vercauteren) та BGV (Brakerski–Gentry–Vaikuntanathan) стали одними з перших практичних рішень FHE, які отримали широке впровадження. Обидві базуються на решітковій криптографії та оптимізовані для роботи із цілими числами або модульною арифметикою. Вони підтримують точні операції додавання та множення, що є критично важливим для фінансових розрахунків, систем голосування та інших задач, де потрібна абсолютна точність.

BFV спеціалізується на ефективній обробці модульних обчислень з цілими числами, де потрібно досягти детермінованих результатів без похибок округлення. В свою чергу, BGV, маючи схожий фундамент, пропонує додаткові оптимізації для пакетування шифротекстів, що дає змогу здійснювати паралельну обробку кількох значень (технологія batching). Пакетування критично важливе для блокчейн-інфраструктур, де пропускна здатність і транзакційні витрати залежать від обчислювальної продуктивності.

BFV і BGV використовують рівневе гомоморфне шифрування, тобто дозволяють виконувати обмежену кількість операцій до того, як рівень шуму стане надмірним. Bootstrapping — це технологія, що передбачає гомоморфне перешифрування шифротексту для зменшення шуму, відкриваючи шлях до повноцінної гомоморфності. Якщо раніше bootstrapping був надто повільним для практики, то сучасні рішення суттєво зменшили накладні витрати, зробивши безперервне обчислення над зашифрованими даними реальністю.

CKKS: Наближена арифметика для задач машинного навчання

CKKS (Cheon–Kim–Kim–Song) — це схема, яка впроваджує новий підхід до гомоморфного шифрування, забезпечуючи підтримку наближеної арифметики замість точних операцій з цілими числами. Такий підхід ідеально підходить для застосунків машинного навчання та штучного інтелекту, де абсолютна точність не є обов’язковою, а застосування чисел з плаваючою комою прийнятне. CKKS кодує дійсні чи комплексні числа у шифротексти й дозволяє векторизовані обчислення, що прискорює шифровану інференцію моделей і захищену аналітику даних.

Компроміс CKKS полягає в тому, що результати мають незначні погрішності через масштабування і округлення під час шифрування та обрахунків. Для більшості AI- та Data Science-сценаріїв це прийнятний компроміс, оскільки моделі зазвичай толерують малі числові відхилення. У блокчейн-контексті CKKS відкриває можливості для конфіденційних AI-агентів у ланцюгу, які здатні будувати прогнози чи оцінювати ризики без розкриття моделі або даних користувачів.

Попри переваги для окремих навантажень, CKKS не підходить для смарт-контрактів у фінансовій сфері чи систем електронного голосування, де потрібна абсолютна точність. Для таких кейсів віддають перевагу схемам на цілих числах — BFV чи TFHE. Водночас, здатність CKKS до ефективної обробки багатовимірних векторів робить її перспективною для майбутніх децентралізованих AI-маркетплейсів і приватних федеративних навчальних середовищ на блокчейнах.

TFHE і FHEW: Побітові FHE-схеми

TFHE (Fast Fully Homomorphic Encryption over the Torus) та її попередник FHEW оптимізовані для побітових обчислень. На відміну від BFV, BGV чи CKKS, які оперують векторами або поліноміалами, TFHE шифрує окремі біти та виконує швидкі булеві операції. Це робить схему особливо ефективною для задач, де потрібна реалізація логічних вентилів, наприклад, для порівнянь, умовних переходів чи захищених змін стану смарт-контракту.

Ключовою особливістю TFHE є надшвидкий bootstrapping. Якщо в ранніх FHE-схемах ця процедура була вузьким місцем і займала секунди на одну операцію, TFHE скоротила цей час до мілісекунд завдяки радикальному перегляду процедури оновлення шифротексту, зробивши безперервне обчислення над зашифрованими даними можливим для інтерактивних застосунків. Це вивело TFHE на провідні позиції для блокчейн-платформ, зокрема для fhEVM від Zama, де смарт-контракти мають ефективно опрацьовувати довільну зашифровану логіку.

Головний компроміс TFHE полягає в її спрямованості на двійкові операції, що робить її менш ефективною для задач з великою часткою арифметики, у порівнянні з CKKS чи BFV. Водночас, з’являються гібридні підходи, де TFHE використовується для логіки керування, а CKKS — для наближеної арифметики, тим самим поєднуючи переваги обох парадигм у конфіденційних децентралізованих застосунках.

Bootstrapping і керування шумом

Шум — фундаментальна властивість решіткових схем гомоморфного шифрування. Кожна операція над зашифрованими даними призводить до зростання рівня шуму, й коли цей рівень перевищує межу, дані вже не підлягають коректному розшифруванню. Bootstrapping — це гомоморфне дешифрування з подальшим повторним шифруванням, яке обнуляє накопичений шум і дозволяє виконувати необмежену кількість операцій.

Перші реалізації bootstrapping були надто повільними й ресурсомісткими, через що FHE довгий час застосовували лише в академічних демонстраціях. За останнє десятиліття відбувся прорив: час на bootstrapping скоротився з хвилин до мілісекунд. TFHE і FHEW першими впровадили низьколатентний bootstrapping, придатний для задач реального часу, а CKKS і BFV також істотно пришвидшилися завдяки оптимізації алгоритмів і використанню апаратного прискорення.

Керування шумом не обмежується bootstrapping. Завдяки використанню технік, таких як modulus switching (модульне перемикання), key switching (перемикання ключа) та ciphertext packing (пакетування шифротексту), вдається контролювати ріст шуму і підвищувати продуктивність. Модульне перемикання зменшує розмір шифротекстів у ході обробки, перемикання ключа дозволяє передавати зашифровані дані між різними ключами без розшифрування, а пакетування забезпечує паралельну обробку кількох значень в одному шифротексті. Усі ці методи є фундаментом практичних FHE-застосунків.

Апаратне прискорення та динаміка продуктивності

Незважаючи на зростання алгоритмічної ефективності, FHE залишається значно більш ресурсоємною у порівнянні з класичною криптографією. Саме тому апаратне прискорення — один з ключових напрямків розвитку галузі. У першу чергу використовують графічні процесори (GPU), які завдяки паралельності значно пришвидшують поліноміальні й векторні обчислення в основі FHE-схем. Останнім часом активно досліджують і застосовують FPGA (програмовані вентильні матриці) та ASIC (спеціалізовані інтегральні схеми) задля ще вищої продуктивності.

Вихід на ринок прототипу Homomorphic Processing Unit (HPU) від Zama яскраво ілюструє тенденцію до розробки спеціалізованого апаратного забезпечення, орієнтованого на роботу із зашифрованими обчисленнями. Такі пристрої дозволяють суттєво скоротити затримки і зменшити енергоспоживання під час виконання FHE-навантажень. Зі збільшенням вимог до пропускної здатності блокчейн-мереж і зниженням витрат на транзакції роль апаратного прискорення у комерційному впровадженні FHE-підтримки для смарт-контрактів стане ключовою.

Бібліотеки та фреймворки для розробки

Для фахівців, що працюють із FHE, представлено низку відкритих бібліотек, які стали основою для розробників. Microsoft SEAL — одна з найвідоміших бібліотек, що підтримує BFV і CKKS та вирізняється простотою інтеграції та мультиплатформеністю. OpenFHE (раніше PALISADE) вирізняється розширеним функціоналом: підтримує кілька схем і має низку просунутих оптимізацій. HElib від IBM є дослідницькою платформою, орієнтованою на BGV, і залишається авторитетною в наукових колах.

Для застосунків, що працюють із TFHE, стандартом стала бібліотека TFHE-rs від Zama з ефективним bootstrapping та інтеграцією із фреймворком fhEVM. Ще одна бібліотека Zama — Concrete — пропонує розробникам зручні інструменти для створення FHE-застосунків мовою Rust із акцентом на простоті й високій продуктивності. Fhenix, орієнтована на конфіденційні смарт-контракти для Ethereum, впровадила SDK для Solidity, який приховує більшу частину криптографічної складності, полегшуючи створення захищених контрактів для блокчейн-розробників зі стандартним стеком.

Індустріалізація та вдосконалення цих інструментів значно знизили бар’єри для долучення нових розробників. Те, що колись потребувало глибокого розуміння криптографії, нині доступне для смарт-контракт-розробників, знайомих із такими мовами, як Solidity або Rust. Ця демократизація FHE-програмування стимулює експерименти та впровадження у сферах децентралізованих фінансів, охорони здоров’я та AI-on-chain.

Відмова від відповідальності
* Криптоінвестиції пов'язані зі значними ризиками. Дійте обережно. Курс не є інвестиційною консультацією.
* Курс створений автором, який приєднався до Gate Learn. Будь-яка думка, висловлена автором, не є позицією Gate Learn.