Що таке підпис Шнорра?

Підпис Шнорра (Schnorr) — важливий криптографічний елемент у блокчейн-технологіях. В мережі Bitcoin підтримка цього підпису з’явилася після оновлення Taproot у 2021 році, що дозволило підвищити ефективність та приватність транзакцій.

Розглянемо, як працює підпис Шнорра, чим він відрізняється від традиційного ECDSA та які переваги дає користувачам.

Що таке підпис Шнорра?

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

Попри існування технології на момент створення біткоїна, Сатоші Накамото не застосував підпис Шнорра в протоколі. Клаус Шнорр запатентував свій алгоритм, і хоча строк дії патенту сплив на початку 2008 року (за кілька місяців до публікації white paper Bitcoin), на той момент підпис Шнорра ще не був достатньо стандартизований. Тому Накамото обрав загальнодоступний та перевірений часом алгоритм ECDSA.

Ідея додати підтримку підписів Шнорра до Bitcoin обговорювалася розробниками не один рік. Ще у 2014 році на форумі Bitcointalk з’явилися перші пропозиції реалізувати цю схему в протоколі. 

У 2020 році група провідних біткоїн-розробників (зокрема Пітер Вюлле, Йонас Нік та Тім Раффінг) підготувала стандарт BIP-340, що описував новий тип підпису замість стандартного алгоритма ECDSA.

14 листопада 2021 року на блоці №709632 відбулася активація підписів Шнорра разом з апдейтом Taproot. Відтоді мережа Bitcoin підтримує обидва алгоритми підпису — і Schnorr, і ECDSA — паралельно.

Переваги підпису Шнорра

Розробники BIP-340 виділили кілька ключових переваг схеми Шнорра у порівнянні з традиційним ECDSA:

  • Доказова безпека. Схема Шнорра має математично доведену стійкість: зламати її (підробити підпис) неможливо, не розв’язавши надскладну задачу дискретного логарифмування. Безпека ECDSA, для порівняння, базується на сильніших припущеннях і не має такого формального доказу стійкості.
  • Непіддатність до модифікації. Підписи Шнорра є криптографічно негнучкими, тобто стійкими до так званої атаки модифікації підпису (non-malleability). Перехопивши дійсний підпис, зловмисник не може змінити його чи згенерувати інший валідний підпис для того ж повідомлення без знання закритого ключа. У випадку з ECDSA така «гнучкість» раніше давала можливість створювати альтернативні варіанти підпису до виправлення протоколу.
  • Лінійність. У схемі Шнорра декілька сторін можуть спільно створити єдиний дійсний підпис, об’єднавши свої відкриті ключі в так званий агрегований ключ. Це означає, що підписи кількох учасників можна агрегувати в один «мастер-підпис» — він матиме ту саму довжину, що й звичайний підпис одного підписанта, що суттєво економить простір у блоці та знижує комісії за транзакцію. Крім того, об’єднаний підпис ускладнює аналіз транзакції третьою стороною: спостерігачеві набагато важче визначити, скільки саме учасників її підписали і хто вони такі. Ця властивість відкриває шлях до простіших і приватніших реалізацій мультипідписів на кшталт протоколу Musig2.

Обмеження та перспективи

Сам по собі перехід на підписи Шнорра не робить біткоїн-транзакції повністю анонімними. Нова схема підпису не приховує особу відправника чи одержувача, тож для забезпечення конфіденційності все ще потрібні додаткові інструменти на кшталт міксерів або CoinJoin-рішень.

Попри це, впровадження підписів Шнорра стало одним з найважливіших кроків у розвитку протоколу біткоїна. Це оновлення дало змогу помітно підвищити рівень приватності та масштабованості мережі, а також заклало основу для подальших криптографічних новацій — зокрема, більш гнучких смарт-контрактів у рамках концепції Taproot.

Читайте ForkLog UA в соціальних мережах

Знайшли помилку в тексті? Виділіть її та натисніть CTRL+ENTER

Матеріали за темою

Ми використовуємо файли cookie для покращення якості роботи.

Користуючись сайтом, ви погоджуєтесь з Політикою приватності.

OK