Початкові дні блокчейну були сповнені захоплення. Однак, по мірі зростання кількості людей, які почали його використовувати, і збільшення обсягів транзакцій, виникла значна проблема: масштабованість. Поряд з проблемами масштабованості були інші, такі як безпека та децентралізація. Ця проблема, відома як «трилема блокчейну», вказує на те, що важко досягти всі три атрибути одночасно.
Біткоін, перший блокчейн, міг обробляти лише кілька транзакцій на секунду, а Ефір не був набагато кращим. Це призвело до попиту на рішення, які могли б підвищити масштабованість блокчейну.
Це вимагання породило ZK Докази.
«Нульове знання» було вперше введено в статті 1985 року Шафі Голдвассер, Сильвіо Мікалі та Чарльза Ракоффа під назвою «Складність знань інтерактивних систем доказів, Ця стаття пояснює докази знань нуля, задовго до появи криптовалют.
Згідно з документом,
Доказ нульового знання - це спосіб для однієї сторони (доводника) довести іншій стороні (перевіряючому), що твердження є правдивим, не розкриваючи будь-якої додаткової інформації, крім правдивості цього конкретного твердження.
Іншими словами, принципи нульового знання забезпечують, що від доводу до перевіряючого не передається жодних додаткових знань, крім того, що заява є правдивою.
Класична аналогія для пояснення концепції доказів ZK - "Печера Алі-Баби":
Сценарій: Є печера з двома шляхами, A і B, які утворюють петлю і зустрічаються біля закритих дверей. Джейн (доводчик) знає секретний код для відкриття дверей, а Пол (перевіряючий) хоче переконатися, що Джейн знає код, не вивчаючи його самостійно.
Процес:
Джейн входить у печеру і випадковим чином вибирає один зі шляхів A або B.
Пол чекає ззовні, не знаючи, який шлях обрала Джейн.
Джерело: Могутній блок
Потім Пол заходить у печеру і вигукують шлях, яким він хоче, щоб Джейн повернулася (або A, або B).
Якщо Джейн знає код, вона може відкрити двері і повернутися обраною стежкою.
Цей процес (1–5) повторюється кілька разів, щоб переконатися, що Джейн не просто вгадує правильно випадково.
Якщо після багатьох повторень Джейн постійно повертається по правильному шляху, Пол може бути впевнений, що Джейн знає код, навіть не навчаючи його самого.
ZK Докази мають на меті забезпечити конфіденційність та безпеку, тримаючи конфіденційну інформацію в таємниці, дозволяючи іншим перевірити її автентичність. Проще кажучи, ZK Докази допомагають зберігати важливі дані у безпеці, підтверджуючи їх легітність, не розголошуючи деталей.
Концепція доказів ZK також породила розвиток різноманітних високорівневих криптографічних технік та застосувань, таких як ZK Rollups та ZK Compressions.
У 2018 році анонімний Баррі Вайтхет завантажив сховище GitHub під назвою "roll_up", яке представило ідею rollups. Незабаром створювач Ethereum, Віталік Бутерін, пішов далі за цією концепцією і придумав zk-Rollups.
Zk-Rollups, скорочення від нуль-знання ролапи, є рішеннями масштабування 2-го рівня, призначеними для підвищення продуктивності основної мережі Ethereum шляхом її масштабування. Вони роблять це, переміщуючи обчислення та зберігання стану поза ланцюжком.
Шар-2 є вторинним протоколом, побудованим на вершині блокчейну для підвищення його масштабованості, швидкості та зменшення комісій за транзакції.
21 червня Light Protocol, приватний шар на базі Solana,оголошенощо вони об'єдналися з командою розробників Solana, Helius Labs, для запуску тестової мережі їхнього нового рішення масштабування “ZK Compression” як засобу значного зменшення витрат на обчислення на ланцюжку.
Хоча zk-Rollups та zk-Compression використовують потужність доказів з нульовим розголошенням для оптимізації технології блокчейну, вони служать різним цілям та реалізовані по-різному.
Незважаючи на це, ведуться дискусії та зневаги з боку спільнот Ethereum та Solana про те, яке краще.
Наприклад, учасник спільноти Ethereum називаєтьсяЗК-стиснення "ще один рівень L2".
Після цьоговідповідьвід Мерта (генерального директора heliuslabs) до твіту вище спільнота Solana відповіла креативним відеозверненням до Ethereum.
відеопоказав лікаря, який лікує пацієнта з синдромом «Етер Максімісис». У ролику було сказано:
“Це загальна реакція, з якою стикаються максімалісти ETH. Вони не можуть функціонувати без ще одного шару. Шар 3! Шар 4!”
Напружена конкуренція між цими блокчейнами очевидна. Таким чином, ця стаття має на меті надати чітке й комплексне порівняння їхніх рішень щодо масштабованості, висвітлюючи унікальні особливості, відмінності та практичні випадки використання.
На самому своєму корінні ZK Rollups - це рішення для масштабування на рівні 2, призначене для покращення ефективності та масштабованості блокчейн мереж.
Ідея проста: замість обробки кожної транзакції безпосередньо на головному ланцюжку, ZK-Rollups об'єднують кілька транзакцій в один доказ. Цей узгоджений доказ потім надсилається на блокчейн для перевірки.
Джерело:Datawallet
Цей підхід значно збільшує продуктивність транзакцій (кількість транзакцій, які мережа може обробляти протягом певного періоду) без підвищення вразливості мережі.
Щоб належним чином зрозуміти це,
Уявіть собі, як ви організовуєте концерт. Замість того, щоб кожен учасник входив по одному через вузькі ворота (основний блокчейн), що може спричинити затори та затримки, ви впроваджуєте систему, де групи учасників перевіряються разом на контрольних пунктах. Кожна група має один квиток, який підтверджує, що всі учасники групи були належним чином перевірені та допущені. Таким чином, ви забезпечуєте безпеку та ефективність, зменшуючи затори при вході.
ZK Rollups покращує масштабованість, обробляючи транзакції поза ланцюжком та захищаючи їх за допомогою передових криптографічних технік, таких як ZK-SNARKs або ZK-STARKs. Це забезпечує, що транзакції є дійсними та приватними, тим самим покращуючи загальну ефективність та безпеку для користувачів.
zk-SNARKs - це zk-докази, які надають стислі докази (тобто розмір доказу короткий і ефективний для перевірки). Вони добре підходять для застосувань, де розмір доказу та час перевірки є критичними.
zk-STARKs - це zk-докази, які дозволяють створювати більші та складніші докази, що робить їх підходящими для застосувань, таких як аудити фінансів великого масштабу, конфіденційність даних та перевірка обчислень.
ZK Rollups є ідеальним рішенням для масштабування блокчейн мереж, таких як Ethereum, оскільки вони агрегують транзакції поза ланцюжком в пакети, зменшуючи дані, що надсилаються безпосередньо на Ethereum.
ZK-rollups використовує криптографічні техніки для агрегування та підтвердження транзакцій поза ланцюжком, що покращує масштабованість та зменшує витрати на блокчейні Ethereum.
Джерело: Кленовий блок
Ось пояснення крок за кроком, як працюють ZK-rollups:
Ось деякі переваги ZK Rollups:
Хоча ZK Rollups мають багато переваг, вони також мають недоліки та виклики.
Ось деякі недоліки:
Щодня з'являються нові проекти ZK Rollup. Ось деякі з проектів ZK-Rollup:
Джерело: Moralis
Проекти, такі як Starkware(яке розвиває дозволений та індивідуально налаштований масштабування L2),Мережа Ацтеків(будування шифрування блокчейну за допомогою zkSNARKs),Аргент(некастодіальний гаманець, інтегрований з zkSync)Незмінний X(платформа для створення та торгівлі NFT) таLoopring(протокол обміну та оплати zk-rollup на Ethereum) всі використовують ZK Rollups.
Ось різні способи використання ZK Rollups:
ZK стиснення є примітивом, створеним і запущеним Протокол світла та Helius Labs. Це зменшує витрати на ланцюжку за допомогою доказів нульового знання та стиснення для мінімізації обсягу даних, збережених на ланцюжку, та вимог обчислення, що накладаються на Solana через транзакції.
Первинний - це низькорівневий криптографічний алгоритм, який використовується як фундамент або будівельний блок вищорівневими криптографічними алгоритмами.
Для кращого розуміння ZK Compression важливо розуміти унікальну архітектуру Solana та стоячі перед нею виклики.
На відміну від Ethereum, де смарт-контракти та дані тісно пов'язані, Solana використовує модель, де дані зберігаються в окремих "рахунках". Ці рахунки варіюються від виконавчого коду до балансів токенів.
Все на Solana - це обліковий запис.
Хоча ця модель дозволяє високу продуктивність та паралельну обробку на Solana, вона має свою ціну: валідатори повинні тримати всі активні облікові записи в швидкодіючій пам'яті (RAM), що є дорогим.
Щоб запобігти зловживанням та відшкодувати валідаторам, Solana реалізує систему "оренди", де користувачам потрібно блокувати токени SOL, щоб зберігати активні свої облікові записи, причому сума орендної плати безпосередньо пов'язана з розміром збережених даних.
Джерело: 0XMert’s 𝕏
Після того, як Solana стала популярною, вартість створення та підтримки цих облікових записів стала значним бар'єром для масштабування, так само, як потреба в рішенні — ZK Compression.
З появою ZK Compression вартість створення нових облікових записів Solana має значно зменшитися, можливо, на "порядки величини".
Якщо щось стає дешевшим на порядок, це означає, що витрати або зусилля значно зменшуються, часто в декілька разів або більше порівняно з попередньою сумою.
Це означає, що створення 100 стислих облікових записів користувачів, які утримують і відстежують криптосальдо (також відомі як облікові записи токенів), буде в 5 000 разів дешевше, ніж створення 100 звичайних облікових записів токенів.
Подумайте про це так: Компресія передбачає стискання чогось до того моменту, коли воно займає менше місця. Компресія ZK застосовує цей принцип, де 'ZK' позначає, що конфіденційність стиснених даних залишається недоторканною.
Зокрема, ZK-стиснення зберігає лише "відбиток пальця" (хеш) стиснених даних на ланцюжку. Цей підхід зменшує витрати на зберігання, зберігаючи при цьому конфіденційність даних.
Навпаки до того, що говорять конкуренти, ZK Compression не є ланцюгом другого рівня на Solana; це оновлення для покращення зберігання даних у Solana та радикального зниження витрат для розробників.
ZK Compression вирішує це виклик, дозволяючи розробникам стискати кілька станів облікових записів в один ланцюжковий обліковий запис.
Джерело: 0xSumanth’s 𝕏
Ось як це працює:
Основна інновація полягає в використанні доказів нульового знання, зокрема SNARKs (Стислих неінтерактивних доказів знань), для стиснення доказів Меркла, використовуваних у цьому процесі.
Джерело:0xMert’s 𝕏
Це стискання зменшує розмір доказу від потенційно сотень байтів до постійних 128 байтів, незалежно від кількості облікових записів, які стискаються.
Ця драматична зменшення розміру даних дозволяє розробникам працювати в межах обмежень розміру транзакцій Solana, взаємодіючи з декількома стиснутими обліковими записами в одній транзакції.
Ось переваги стиснення ZK для екосистеми Solana:
Це недоліки стиснення ZK для Solana:
Ось деякі можливі використання стиснення zk:
Поточні використання для ZK Rollups
Потенційний використання стиснення ZK
Чи ви страждаєте від максималізму Ефіру, чи ви, як і я, є в'ялотекучим прихильником Solana, найважливіше - використовувати блокчейн, який відповідає вашим потребам у даному часі.
Я вважаю, що ZK Rollups найкраще підходять для проектів, які потребують високого рівня безпеки та користуються вигодами від встановленої екосистеми Ethereum, оскільки вони забезпечують надійний метод масштабування Ethereum, зберігаючи його децентралізовану структуру.
З іншого боку, завдяки ZK Compression, Solana може обробляти більше транзакцій без уповільнення, навіть коли ціна SOL зростає. Тому я вважаю, що ZK Compression на Solana ідеально підходить для додатків, які цінують швидкість, продуктивність та вартість ефективність.
Можливість Солани підтримувати високоефективні, вартісні децентралізовані додатки (dApps) має майбутню привабливість, оскільки швидкість та вартість є важливими для широкого поширення технології блокчейн.
У кінці як ZK Rollups, так і ZK Compression можуть допомогти зробити транзакції швидшими, дешевшими і, отже, більш масштабованими.
С. Голдвассер, С. Микалі та С. Ракофф, 1985 р. "Елементи криптографії"Складність знань інтерактивних доказових систем”
Share
Початкові дні блокчейну були сповнені захоплення. Однак, по мірі зростання кількості людей, які почали його використовувати, і збільшення обсягів транзакцій, виникла значна проблема: масштабованість. Поряд з проблемами масштабованості були інші, такі як безпека та децентралізація. Ця проблема, відома як «трилема блокчейну», вказує на те, що важко досягти всі три атрибути одночасно.
Біткоін, перший блокчейн, міг обробляти лише кілька транзакцій на секунду, а Ефір не був набагато кращим. Це призвело до попиту на рішення, які могли б підвищити масштабованість блокчейну.
Це вимагання породило ZK Докази.
«Нульове знання» було вперше введено в статті 1985 року Шафі Голдвассер, Сильвіо Мікалі та Чарльза Ракоффа під назвою «Складність знань інтерактивних систем доказів, Ця стаття пояснює докази знань нуля, задовго до появи криптовалют.
Згідно з документом,
Доказ нульового знання - це спосіб для однієї сторони (доводника) довести іншій стороні (перевіряючому), що твердження є правдивим, не розкриваючи будь-якої додаткової інформації, крім правдивості цього конкретного твердження.
Іншими словами, принципи нульового знання забезпечують, що від доводу до перевіряючого не передається жодних додаткових знань, крім того, що заява є правдивою.
Класична аналогія для пояснення концепції доказів ZK - "Печера Алі-Баби":
Сценарій: Є печера з двома шляхами, A і B, які утворюють петлю і зустрічаються біля закритих дверей. Джейн (доводчик) знає секретний код для відкриття дверей, а Пол (перевіряючий) хоче переконатися, що Джейн знає код, не вивчаючи його самостійно.
Процес:
Джейн входить у печеру і випадковим чином вибирає один зі шляхів A або B.
Пол чекає ззовні, не знаючи, який шлях обрала Джейн.
Джерело: Могутній блок
Потім Пол заходить у печеру і вигукують шлях, яким він хоче, щоб Джейн повернулася (або A, або B).
Якщо Джейн знає код, вона може відкрити двері і повернутися обраною стежкою.
Цей процес (1–5) повторюється кілька разів, щоб переконатися, що Джейн не просто вгадує правильно випадково.
Якщо після багатьох повторень Джейн постійно повертається по правильному шляху, Пол може бути впевнений, що Джейн знає код, навіть не навчаючи його самого.
ZK Докази мають на меті забезпечити конфіденційність та безпеку, тримаючи конфіденційну інформацію в таємниці, дозволяючи іншим перевірити її автентичність. Проще кажучи, ZK Докази допомагають зберігати важливі дані у безпеці, підтверджуючи їх легітність, не розголошуючи деталей.
Концепція доказів ZK також породила розвиток різноманітних високорівневих криптографічних технік та застосувань, таких як ZK Rollups та ZK Compressions.
У 2018 році анонімний Баррі Вайтхет завантажив сховище GitHub під назвою "roll_up", яке представило ідею rollups. Незабаром створювач Ethereum, Віталік Бутерін, пішов далі за цією концепцією і придумав zk-Rollups.
Zk-Rollups, скорочення від нуль-знання ролапи, є рішеннями масштабування 2-го рівня, призначеними для підвищення продуктивності основної мережі Ethereum шляхом її масштабування. Вони роблять це, переміщуючи обчислення та зберігання стану поза ланцюжком.
Шар-2 є вторинним протоколом, побудованим на вершині блокчейну для підвищення його масштабованості, швидкості та зменшення комісій за транзакції.
21 червня Light Protocol, приватний шар на базі Solana,оголошенощо вони об'єдналися з командою розробників Solana, Helius Labs, для запуску тестової мережі їхнього нового рішення масштабування “ZK Compression” як засобу значного зменшення витрат на обчислення на ланцюжку.
Хоча zk-Rollups та zk-Compression використовують потужність доказів з нульовим розголошенням для оптимізації технології блокчейну, вони служать різним цілям та реалізовані по-різному.
Незважаючи на це, ведуться дискусії та зневаги з боку спільнот Ethereum та Solana про те, яке краще.
Наприклад, учасник спільноти Ethereum називаєтьсяЗК-стиснення "ще один рівень L2".
Після цьоговідповідьвід Мерта (генерального директора heliuslabs) до твіту вище спільнота Solana відповіла креативним відеозверненням до Ethereum.
відеопоказав лікаря, який лікує пацієнта з синдромом «Етер Максімісис». У ролику було сказано:
“Це загальна реакція, з якою стикаються максімалісти ETH. Вони не можуть функціонувати без ще одного шару. Шар 3! Шар 4!”
Напружена конкуренція між цими блокчейнами очевидна. Таким чином, ця стаття має на меті надати чітке й комплексне порівняння їхніх рішень щодо масштабованості, висвітлюючи унікальні особливості, відмінності та практичні випадки використання.
На самому своєму корінні ZK Rollups - це рішення для масштабування на рівні 2, призначене для покращення ефективності та масштабованості блокчейн мереж.
Ідея проста: замість обробки кожної транзакції безпосередньо на головному ланцюжку, ZK-Rollups об'єднують кілька транзакцій в один доказ. Цей узгоджений доказ потім надсилається на блокчейн для перевірки.
Джерело:Datawallet
Цей підхід значно збільшує продуктивність транзакцій (кількість транзакцій, які мережа може обробляти протягом певного періоду) без підвищення вразливості мережі.
Щоб належним чином зрозуміти це,
Уявіть собі, як ви організовуєте концерт. Замість того, щоб кожен учасник входив по одному через вузькі ворота (основний блокчейн), що може спричинити затори та затримки, ви впроваджуєте систему, де групи учасників перевіряються разом на контрольних пунктах. Кожна група має один квиток, який підтверджує, що всі учасники групи були належним чином перевірені та допущені. Таким чином, ви забезпечуєте безпеку та ефективність, зменшуючи затори при вході.
ZK Rollups покращує масштабованість, обробляючи транзакції поза ланцюжком та захищаючи їх за допомогою передових криптографічних технік, таких як ZK-SNARKs або ZK-STARKs. Це забезпечує, що транзакції є дійсними та приватними, тим самим покращуючи загальну ефективність та безпеку для користувачів.
zk-SNARKs - це zk-докази, які надають стислі докази (тобто розмір доказу короткий і ефективний для перевірки). Вони добре підходять для застосувань, де розмір доказу та час перевірки є критичними.
zk-STARKs - це zk-докази, які дозволяють створювати більші та складніші докази, що робить їх підходящими для застосувань, таких як аудити фінансів великого масштабу, конфіденційність даних та перевірка обчислень.
ZK Rollups є ідеальним рішенням для масштабування блокчейн мереж, таких як Ethereum, оскільки вони агрегують транзакції поза ланцюжком в пакети, зменшуючи дані, що надсилаються безпосередньо на Ethereum.
ZK-rollups використовує криптографічні техніки для агрегування та підтвердження транзакцій поза ланцюжком, що покращує масштабованість та зменшує витрати на блокчейні Ethereum.
Джерело: Кленовий блок
Ось пояснення крок за кроком, як працюють ZK-rollups:
Ось деякі переваги ZK Rollups:
Хоча ZK Rollups мають багато переваг, вони також мають недоліки та виклики.
Ось деякі недоліки:
Щодня з'являються нові проекти ZK Rollup. Ось деякі з проектів ZK-Rollup:
Джерело: Moralis
Проекти, такі як Starkware(яке розвиває дозволений та індивідуально налаштований масштабування L2),Мережа Ацтеків(будування шифрування блокчейну за допомогою zkSNARKs),Аргент(некастодіальний гаманець, інтегрований з zkSync)Незмінний X(платформа для створення та торгівлі NFT) таLoopring(протокол обміну та оплати zk-rollup на Ethereum) всі використовують ZK Rollups.
Ось різні способи використання ZK Rollups:
ZK стиснення є примітивом, створеним і запущеним Протокол світла та Helius Labs. Це зменшує витрати на ланцюжку за допомогою доказів нульового знання та стиснення для мінімізації обсягу даних, збережених на ланцюжку, та вимог обчислення, що накладаються на Solana через транзакції.
Первинний - це низькорівневий криптографічний алгоритм, який використовується як фундамент або будівельний блок вищорівневими криптографічними алгоритмами.
Для кращого розуміння ZK Compression важливо розуміти унікальну архітектуру Solana та стоячі перед нею виклики.
На відміну від Ethereum, де смарт-контракти та дані тісно пов'язані, Solana використовує модель, де дані зберігаються в окремих "рахунках". Ці рахунки варіюються від виконавчого коду до балансів токенів.
Все на Solana - це обліковий запис.
Хоча ця модель дозволяє високу продуктивність та паралельну обробку на Solana, вона має свою ціну: валідатори повинні тримати всі активні облікові записи в швидкодіючій пам'яті (RAM), що є дорогим.
Щоб запобігти зловживанням та відшкодувати валідаторам, Solana реалізує систему "оренди", де користувачам потрібно блокувати токени SOL, щоб зберігати активні свої облікові записи, причому сума орендної плати безпосередньо пов'язана з розміром збережених даних.
Джерело: 0XMert’s 𝕏
Після того, як Solana стала популярною, вартість створення та підтримки цих облікових записів стала значним бар'єром для масштабування, так само, як потреба в рішенні — ZK Compression.
З появою ZK Compression вартість створення нових облікових записів Solana має значно зменшитися, можливо, на "порядки величини".
Якщо щось стає дешевшим на порядок, це означає, що витрати або зусилля значно зменшуються, часто в декілька разів або більше порівняно з попередньою сумою.
Це означає, що створення 100 стислих облікових записів користувачів, які утримують і відстежують криптосальдо (також відомі як облікові записи токенів), буде в 5 000 разів дешевше, ніж створення 100 звичайних облікових записів токенів.
Подумайте про це так: Компресія передбачає стискання чогось до того моменту, коли воно займає менше місця. Компресія ZK застосовує цей принцип, де 'ZK' позначає, що конфіденційність стиснених даних залишається недоторканною.
Зокрема, ZK-стиснення зберігає лише "відбиток пальця" (хеш) стиснених даних на ланцюжку. Цей підхід зменшує витрати на зберігання, зберігаючи при цьому конфіденційність даних.
Навпаки до того, що говорять конкуренти, ZK Compression не є ланцюгом другого рівня на Solana; це оновлення для покращення зберігання даних у Solana та радикального зниження витрат для розробників.
ZK Compression вирішує це виклик, дозволяючи розробникам стискати кілька станів облікових записів в один ланцюжковий обліковий запис.
Джерело: 0xSumanth’s 𝕏
Ось як це працює:
Основна інновація полягає в використанні доказів нульового знання, зокрема SNARKs (Стислих неінтерактивних доказів знань), для стиснення доказів Меркла, використовуваних у цьому процесі.
Джерело:0xMert’s 𝕏
Це стискання зменшує розмір доказу від потенційно сотень байтів до постійних 128 байтів, незалежно від кількості облікових записів, які стискаються.
Ця драматична зменшення розміру даних дозволяє розробникам працювати в межах обмежень розміру транзакцій Solana, взаємодіючи з декількома стиснутими обліковими записами в одній транзакції.
Ось переваги стиснення ZK для екосистеми Solana:
Це недоліки стиснення ZK для Solana:
Ось деякі можливі використання стиснення zk:
Поточні використання для ZK Rollups
Потенційний використання стиснення ZK
Чи ви страждаєте від максималізму Ефіру, чи ви, як і я, є в'ялотекучим прихильником Solana, найважливіше - використовувати блокчейн, який відповідає вашим потребам у даному часі.
Я вважаю, що ZK Rollups найкраще підходять для проектів, які потребують високого рівня безпеки та користуються вигодами від встановленої екосистеми Ethereum, оскільки вони забезпечують надійний метод масштабування Ethereum, зберігаючи його децентралізовану структуру.
З іншого боку, завдяки ZK Compression, Solana може обробляти більше транзакцій без уповільнення, навіть коли ціна SOL зростає. Тому я вважаю, що ZK Compression на Solana ідеально підходить для додатків, які цінують швидкість, продуктивність та вартість ефективність.
Можливість Солани підтримувати високоефективні, вартісні децентралізовані додатки (dApps) має майбутню привабливість, оскільки швидкість та вартість є важливими для широкого поширення технології блокчейн.
У кінці як ZK Rollups, так і ZK Compression можуть допомогти зробити транзакції швидшими, дешевшими і, отже, більш масштабованими.
С. Голдвассер, С. Микалі та С. Ракофф, 1985 р. "Елементи криптографії"Складність знань інтерактивних доказових систем”