Що таке протокол Tendermint і де його використовують

Фото - Що таке протокол Tendermint і де його використовують
Tendermint — це узгоджений протокол, який використовують для синхронізації роботи кількох блокчейнів. Він був розроблений Tendermint Inc. і заснований на алгоритмі Byzantine Fault Tolerance (візантійська відмовостійкість).

Що таке Tendermint простими словами

Якщо ви далекі від криптографії, спробуємо пояснити, що таке Tendermint, за допомогою побутових прикладів.
 
Уявіть, що компанія друзів намагається вирішити, куди піти разом повечеряти. Вони мають домовитися про один і той самий час і місце, інакше важлива зустріч не відбудеться. Хтось хоче піти у піцерію, хтось у паб, а хтось у суші-бар. Комусь зручніше зустрітися у п’ятницю ввечері, а хтось планує суботню зустріч по обіді.
 
Що робити, якщо зустріч за замовчуванням має відбутися, а консенсусу досягти не вдається? У цьому випадку буде розумно делегувати повноваження незалежному представнику, який вислухає побажання кожного і знайде локацію, яка б однаково влаштовувала всіх. І якщо навіть хтось спробує відмовитися або переманити частину компанії в інше місце, – придушить бунт на кораблі, бо йому довіряє більшість друзів.
 
Принцип роботи Tendermint можна порівняти з діями судді на спортивних змаганнях. Його завдання – стежити, щоб гравці не порушували правила і змагання відбулись чесно.
 
Tendermint – це такий самий незалежний суддя, який стежить за тим, щоб усі комп’ютери в мережі грали за однаковими правилами, а інформація, з якою вони погоджуються, була чесною та ясною.
 
Протокол надає нодам можливість дійти згоди щодо поточного стану розподіленого реєстру децентралізованим способом. Це важливо для моніторингу руху цифрових активів та забезпечення точності інформації. Tendermint стежить за тим, щоб усі вузли обробляли однакову інформацію, навіть якщо деякі валідатори не працюють належним чином або намагаються шахраювати.
 
Синхронізації досягають за допомогою алгоритму консенсусу під назвою «ядро Tendermint Core», який гарантує, що всі вузли приймають ту саму послідовність транзакцій. Це ядро може взаємодіяти з блокчейнами всередині та поза основною мережею. Воно є основою для будь-якої системи, де функціонують два і більше розподілені реєстри.
 
Tendermint Core можна порівняти з готовою основою для піци, на яку можна викласти будь-які продукти за смаком.
 
Це допомагає розробникам швидко пройти трудомісткий етап технічного налаштування та одразу перейти до створення робочої області dApps.
Для синхронізації кількох блокчейнів ядро Tendermint використовує алгоритм, який називається Byzantine Fault Tolerance (BFT) або візантійська відмовостійкість.

Що таке BFT простими словами

Алгоритм візантійської відмовостійкості — це метод досягнення згоди всередині системи, навіть коли деякі її частини навмисно намагаються порушити процес.
 
Уявімо, що мешканці великого будинку знайшли карту підвалу, де закопано скарб, і намагаються спланувати його пошук. Але є підозра, що деякі з мешканців не заслуговують на довіру або не збираються працювати разом з усіма. Щоб чесні учасники пошуків були впевнені, що все відбуватиметься за планом, вони призначають декількох людей валідаторами. Ці люди мають перевіряти, чи дотримано загальних правил. Кожен валідатор звітуватиме перед рештою мешканців і якщо їх звіти співпадатимуть, то всі розпочнуть пошуки.
 
Так само працює алгоритм системи Tendermint Core. Кожен вузол  надсилає повідомлення про стан мережі іншим валідаторам, дублюючи їх у загальному блокчейні. Інші вузли отримують ці повідомлення та порівнюють їх зі своїми даними. Якщо переважна більшість валідаторів погоджується з одним і тим же рішенням, воно буде вважатися прийнятим. Докладніше про візантійську відмовостійкість можна почитати у нашій статті.
 
Алгоритм BFT, який є основою Tendermint Core, призначений для обробки даних від потенційно шахрайських вузлів, щоб гарантувати єдину історію транзакцій та запобігати подвійним витратам.

Які проєкти використовують протокол Tendermint

Протокол Tendermint використовується у декількох блокчейн-проєктах: Cosmos Network, Binance Chain та Kava.
 
1. Cosmos Network — це децентралізована мережа незалежних блокчейнів, які можуть взаємодіяти один з одним за допомогою протоколу Tendermint. Його механізм консенсусу гарантує, що всі блокчейни в мережі Cosmos узгоджені в одному і тому ж робочому стані, навіть якщо в мережі є несправні або шкідливі вузли. Це дозволяє розробникам створювати на основі Cosmos децентралізовані застосунки (dApps) з високою продуктивністю та масштабованістю.
 
2. Binance Chain — це публічна мережа, яка використовується для торгівлі криптовалютами. Вона використовує механізм консенсусу Tendermint для досягнення швидкої синхронізації вузлів. Це важливо для їх узгодження під час обробки транзакцій. Використання алгоритму BFT допомагає запобігти подвійним витратам та іншим шахрайським діям.
 
3. Kava — це платформа DeFi (децентралізовані фінанси), яка використовує протокол Tendermint для узгодженої та безпечної роботи валідаторів. Платформа Kava дозволяє користувачам брати в борг, позичати і торгувати криптовалютними активами без посередників.
 
Загалом Tendermint Core використовується в криптопроєктах для забезпечення механізму консенсусу, що масштабується. Він гарантує, що більшість вузлів може протидіяти спробам маніпуляцій та зломів. Це дозволяє розробникам вільно писати код для запуску dApps, не концентруючи свої зусилля на захисті застосунків від хаків.
 
Але головна перевага Tendermint – його висока пропускна здатність. Протокол може обробляти тисячі транзакцій за секунду, і це робить його незамінним помічником у створенні високопродуктивних програм.