Блокчейн, Web3 … и WordPress?

Продължаваме с интересните теми от WordCamp 2023. След ChatGPT темата е Web3 и блокчейн (blockchain) технологията.

Какво е блокчейн технологията и по какъв начин тя засяга WordPress сайтовете?

Няма как този въпрос да не ни интересува, тъй като по-голямата част от сайтовете (80%), които се хостват при СуперХостинг.БГ са изградени на WordPress.

От друга страна, ние сме и част от WordPress общността в България, като допринасяме за развитието ѝ – с качествена WordPress хостинг услуга и инструменти, със супер поддръжка, с полезна и помощна информация и не на последно място – с подкрепа на събитията.

superhosting-wordpress-moving-together

Разгадаването на генома на блокчейн технологията е нещо, което се надяваме да е от полза за всички наши клиенти и за всички фенове на WordPress, които все още нямат представа какво е тя и за какво могат да я използват в сайтовете си.

Приятно четене!

WordCamp 2023 София (избрана тема)

Може ли WordPress да бъде част от бъдещето на WEB3? (Тодор Пулев)

Лекция: Може ли WordPress да бъде част от бъдещето на WEB3? - Тодор Пулев
Лекция: Може ли WordPress да бъде част от бъдещето на WEB3? – Тодор Пулев

В тази лекция видяхме и отговора на този въпрос. WordPress може да бъде част от Web3, като вече има плъгини, с които платформата се свързва с блокчейн технологиите. 

Видяхме и пример за успешен многомилионен блокчейн проект, който използва WordPress сайт (вместо къстъм решение). Изборът на WordPress се е оказал много ефективно и време спестяващо решение, заради ползите си: достъпност на управлението на сайта от всички в екипа, лесната интеграция на блокчейн технологията и лесното добавяне на други функционалности в сайта чрез плъгини и не на последно място – лесната SEO оптимизация.

Ето няколко интересни извадки от лекцията:

  • Блокчейн технологията вече се свързва с WordPress – чрез подходящи плъгини; 
  • Съществуват множество по-малки Web3 проекти, които предпочитат WordPress (като интерфейс към блокчейн функционалностите/приложенията);
  • Най-използваният домейн за Web3 проекти е .xyz;
  • И няколко примера за функционалности в WordPress сайта, използващи блокчейн:
    • различни операции с криптовалута – онлайн разплащания, дарения на средства и др.;
    • сигурно логване в сайта чрез електронен портфейл (като MetaMask);
    • поддръжка на NFT колекции и токени.

Интеграции на блокчейн технологии в WordPress

WordPress сайтът може да послужи като интерфейс към блокчейн мрежите (и децентрализираните приложения и интелигентните договори).

Поради това през сайта можете да използвате различни блокчейн функционалности. Ето няколко примерни със съответните плъгини.

Продажба на уникални токени (NFT) през сайта: Cryptocurrency Product for WooCommerce, Opensea NFT Gallery.

Възможност потребителите да взаимодействат със сайта чрез крипто портфейла си: CardanoPress.

Публикуване на съдържание в блокчейн мрежите: LikeCoin Web3Press, Hive Exxp.

Създаване на интелигентни договори през сайта: WPSmartContracts.

Разплащания с криптовалута в сайта: Pay With MetaMask, BinancePay Checkout for WooCommerce.

Използване на чат: Talkee.

Съхранение на медийните файлове от сайта в IPFS: Kredeum NFTs.

Web3 (децентрализиран уеб)

Терминът Web3 се отнася до новите технологии, които са свързани с блокчейн (blockchain) технологията и изобщо с идеята за децентрализация.

Web3 технологиите правят възможно създаването на децентрализирани приложения (dApps), които работят върху децентрализирана мрежа от компютри, вместо на един-единствен сървър. 

Няколко примера за Web3 технологии са:

  • Децентрализирани финансови платформи (DeFi);
  • Децентрализирани системи за идентификация (DID), примерен проект: Bluesky;
  • Децентрализирано съдържание (например IPFS);
  • Non-fungible tokens, незаменими токени (NFT);
  • Децентрализирани приложения (dApps).

Тези технологии са все още в ранни етапи на развитие, но имат потенциала да променят изцяло начина, по който взаимодействаме с интернет и един с друг.

Съществува и едно друго схващане за следващата версия на уеб – Web 3.0 и то обединява много технологии:

  • Семантичен уеб – предсказание за бъдещото развитие на уеб, но от гледна точка на създателя му – Тим Бърнърс-Лий. Идеята е за по-свързан и интуитивен уеб чрез стандарти, които ще позволят на машините да разбират по-добре значението на информацията в уеб;
  • Интернет на нещата (IoT, Internet of Things). Идеята е, че всякакви устройства от физическия свят могат да се свържат към интернет и да предават данни, като например автомобилни системи, битови уреди, сензори и др.
  • Изкуствен интелект (AI) – езикови модели като ChatGPT и приложения, които могат да се учат и адаптират към потребителското поведение и предпочитания; ИИ асистенти, търсачки и др.
  • Метавселена (Metaverse, AR/VR);
  • Блокчейн (Web3).

Тук ще добавим и WordPress – платформата с отворен код, която захранва над 40% от уебсайтовете в интернет. 

Сложността на блокчейн технологията

Преди да преминем към обяснението какво представлява тази технология, вижте кои са факторите, които допринасят за голямата сложност в разбирането на блокчейна:

  • Блокчейн технологията всъщност е продукт от комбинацията на няколко различни технологии. И за да се разбере напълно, първо трябва да разберем съставящите я компоненти. Основните от тях са:
    • 1) Децентрализирана мрежа (P2P, Peer-to-Peer, клиент-клиент комуникация в блокчейн мрежата);
    • 2) Хеш код (който се генерира с криптографски хеш алгоритми; дигитални отпечатъци на данните в блоковете, хеш код на блока);
    • 3) Цифров подпис (подписване на трансакциите с цифров подпис; публичен и частен криптографски ключове)
  • Блокчейн технологията няма едно-единствено описание как работи и как трябва да се имплементира, тоест няма пълна стандартизация (както например е интернет или уеб услугата в интернет, която е покрита отвсякъде със стандарти и описания на протоколите). Тази липса на единен стандарт е отприщила развитието на блокчейн технологията от 2009 г. до днес да поеме по различни пътища (различните разработчици, компании и бизнеси разработват свои блокчейн имплементации, които имат различни функционалности и архитектури). И така имаме различни разновидности на блокчейн технологията, поради което трябва да говорим в множествено число – блокчейн технологиите. 
  • Появата на други нови технологии и възможности, базирани на блокчейн технологиите, като NFT (non-fungible token, незаменими токени), smart contracts (интелигентни договори), dApps (децентрализирани приложения) и други; 
  • В последните години фокусът се измества бавно от криптовалутите, като най-очевидната имплементация на блокчейн технологиите, и се насочва върху другите ползи (децентрализирано и сигурно изграждане на доверие, бързи трансакции без посредници и др.) в най-различни области – като системи за идентификация, гласуване, съхранение и проследяване на записи за собственост (стоки, имущество, права, активи) и други. 

В тази статия ще разгледаме на базисно ниво някои от основните компоненти на блокчейна, както и някои от основните понятия, но то няма да е достатъчно изчерпателно (именно поради описаните фактори за сложността). Но поне ще даде една стабилна основа за разбирането на блокчейна, върху която ще е много по-лесно да се надгражда с нови знания.

Малко предистория

През август 2008 г. е направена регистрацията на домейна bitcoin.org. Малко по-късно същата година Сатоши Накамото (мистична личност или група) публикува документ с предложение за децентрализирана система за електронно разплащане (или за електронни пари).

В описаната система могат да се извършват трансакции с електронна валута, наречена биткойн (bit – бит, coin – монета). Тази система няма нужда от трета доверена страна (финансова институция, банка, платежна платформа), която да удостоверява и гарантира, че потребителят наистина има наличната сума за трансакцията. Вместо това в самата система е налично криптографско доказателство, което е записано неотменимо и непроменимо. Трансакциите се извършват директно между две страни.

Всяка трансакция с биткойни съхранява информация за сумата, подателя и получателя ѝ (вместо имената им се използват цифрови адреси, нещо като имейл адрес, но много по-дълга поредица от цифри и букви). Трансакцията се записва сигурно в цифровия регистър на системата и се съхранява непокътнато за вечни времена (тоест докато съществува самата система). Записите в регистъра са публично достъпни и всеки може да ги преглежда.

В началото на 2009 г. Накамото създава и пуска Биткойн блокчейн мрежата, специално създадена да работи с криптовалутата Bitcoin (биткойн). 

Идеята за децентрализирана мрежа или база данни съществува от много по-рано. Тя е от 1982 г. и е на Дейвид Чаум от Калифорнийския университет. През 1995 г. Чаум пуска в мрежата цифровата валутата DigiCach и възможността за анонимни трансакции, която малко по-късно през 1998 г. е спряна.

След пускането на биткойн системата Накамото публикува проекта си като open source (отворен код). Така заинтересованите в технологията разработчици могат да я променят и подобряват. Така се появяват много блокчейн мрежи, основани на Биткойн блокчейна.

През следващите години се появяват различни други криптовалути като Litecoin, Dogecoin, Monero и други.

През 2015 г. се появява Ethereum блокчейнът (с криптовалута Ether, етер), който е повече от система за разплащане. Това е платформа, която поддържа NFT (незаменими токени) и с която може да се създават децентрализирани приложения (dApps), с помощта на интелигентни договори (скриптове, разположени в блокчейн мрежата).

Какво е блокчейн (blockchain)?

Blockchain: блокчейн, верига (chain) от блокове (block)

Блокчейнът е сигурен децентрализиран дигитален регистър, в който се записват неотменяемо и съхраняват непокътнати записите за извършени трансакции. Записът в регистъра се нарича блок. 

1) Децентрализирана мрежа

Блокчейнът е децентрализиран, което означава, че веригата от блокове не се намира на един компютър, но обитава виртуалното пространство (интернет) чрез копията си, които се намират на компютъра на всеки един потребител (клиент).

Всеки потребител, който има копие на блокчейна при себе си, може да се свърже с останалите потребители, които също имат копие. Така се образува децентрализирана мрежа от компютри в интернет, основана на архитектурата клиент-към-клиент (P2P)*. За разлика например от уеб мрежата в интернет, която използва комуникация тип клиент-към-сървър, тоест много потребители се свързват с един сървър.

*Комуникация клиент-към-клиент ↴

В началото уеб услугата (версия 1.0) в интернет е започнала като децентрализирана мрежа (P2P, Peer-to-Peer). 

След като World Wide Web проектът е публикуван и уеб технологиите стават общодостъпни (1993 г.), всеки потребител, който е искал да публикува уеб страница в мрежата, е трябвало да свали и инсталира уеб сървър (програма) на своя компютър. Тя е нужна, за да сервира уеб страницата в интернет на другите клиенти. И така освен клиент на мрежата, потребителският компютър е бил и сървър.

peer-to-peer-network
Ето така би изглеждала съвсем първата версия на уеб – разпределена мрежа от компютри, всеки е комуникирал с всеки.

Малко след това структурата на уеб (2.0) се е променила и е станала централизирана. 

Поради сложността на поддръжката и администрирането на „домашен“ уеб сървър от обикновените потребители, в пространството се появяват услуги, предоставящи уеб сървъри под наем. Тоест на един мощен компютър (сървър в интернет) е инсталирана програмата уеб сървър, а части от дисковото му пространство се предоставят за използване срещу месечна такса. Така потребителите качват уеб страницата си на сървъра, вместо да я предоставят от компютъра си. В днешно време тези услуги ги наричаме хостинг услуги.

Client-Server-Network

Потребителските компютри вече са само клиенти, които изтеглят съдържание от определен уеб сървър, за който се грижи някой друг (хостинг компанията). 

Оттук се прави и връзката между децентрализираната блокчейн мрежа и името на следващата версия на уеб – уеб3, която ще направи уеб отново децентрализиран и ще върне контрола върху мрежата в ръцете на всеки клиент. 

Например към момента има децентрализирана мрежа, базирана на блокчейн технологията, която се използва за споделяне на ресурси и съдържание – InterPlanetary File System (IPFS), която може в бъдеще да замени HTTP (протоколът на уеб). За по-любопитните – данните в тази мрежа се адресират не по локацията/източникът им (IP адрес на сървъра), но по съдържанието им (хеш кода на данните).

Децентрализацията на данните и управлението им повишава сигурността и устойчивостта на мрежата, защото не зависи от само един централен сървър (който ако спре да работи или бъде компрометиран, може да се загубят данни или услугата да спре да работи).

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

Както и в началото на уеб, така и сега при блокчейн технологиите, все още за обикновените потребители е много сложно да станат и сървъри в мрежата. Освен че се изискват технически познания, за някои блокчейн мрежи се изисква и специализиран хардуер (например Биткойн мрежата). Вече са се появили услуги (платформи), чрез които клиентите могат да се свързват с блокчейн мрежите и да използват услугите им (без да стават сървъри). Тези платформи предоставят приложения, наречени портфейли за криптовалута (cryptocurrency wallet). Чрез тях клиентите управляват дигиталните си активи, създават трансакции и взаимодействат с интелигентни договори. Примерни крипто портфейли са MetaMask и Coinbase.  

Както при всяка друга комуникация в интернет между две устройства, клиентите-сървъри в децентрализираната мрежа си „говорят“ на един език – специален протокол, в който са описани всички възможни думи и команди за поискване и предоставяне на съдържание. Например за биткойн мрежата протоколът е Bitcoin.

Много блокчейн протоколи са с отворен код, например Bitcoin, Ethereum и Litecoin. Това означава, че кодът им е свободно достъпен и може да се преглежда, модифицира, подобрява и разпространява от всеки. Някои от тях се управляват от децентрализирана общност или фондация, която се грижи за разработката и поддръжката им.

2) Хеш код

Всеки блок в регистъра съдържа хеш кода* на предишния блок. Така се образува верига от блокове, в която е невъзможно стар запис да бъде променен, без това да „счупи“ веригата. 

*Хеш код (hash) ↴

Хеш кодът е цифров идентификатор (неразбираем низ от символи), който е получен след прилагането на криптографски хеш алгоритъм върху някакви данни.

hash-function

При различните блокчейн системи се използват различни хеш алгоритми. Например за Bitcoin се използва SHA-256.

hash-function-sha-256
Хеш код, генериран със SHA-256 хеш алгоритъм.

Хеширането на едни и същи данни с хеш алгоритъма ще произведе всеки път един и същ хеш код. Поради това понякога той се нарича дигитален отпечатък на тези данни. Ако дори един символ от данните се промени, при хеширането им наново ще се получи съвсем друг хеш код. 

При хеширането самите данни не се трансформират или криптират, а само се използват за генериране на хеш код. В случая при блокчейна, данните в блока, на които се генерира хеш код, остават видими за всеки по всяко време.

Хеш кодове се използват в различни области от сигурността на данните:

  • Верифициране на целостта на данните, тоест че те не са били променени след момента на генерирането на хеша; 
  • При цифровите подписи, където първо се прави хеш на съдържанието на документа/съобщението, след което той се подписва;
  • Блокчейн технологиите, където валидният хеш код на блока се приема като индикатор за валидността на този и предишните блокове, и отделно като доказателство за извършена работа (че определен клиент от мрежата е изчислил успешно валидния хеш код);
  • За съхранение и верификация на пароли – процесът на хеширане е необратим (еднопосочен), като от хеш кода не може да се разбере какви са били данните, които са го генерирали. 

За пример при паролите – в WordPress сайта те се съхраняват в базата данни като хеш кодове.

wordpress-hash

Когато потребителят въведе паролата си при логин, системата генерира хеш кода ѝ и го сравнява със стойността, която вече е записана в базата данни за този потребител.

Ако нещо в предишния блок от веригата се промени, то и неговият хеш код вече ще е съвсем различен. Което от своя страна ще направи невалидни и всички следващи блокове. Това е механизмът за защита от промяна на данните в блокчейна, защото промяната на стар блок не е възможна без съгласието на всички клиенти в мрежата и прегенерирането на следващите блокове наново. 

Ако някой е объркал нещо в някоя трансакция, която вече е записана в блокчейн регистъра, например е изпратил повече монети, единственият начин това да се поправи е, като помоли получателя да му върне разликата (чрез нова трансакция в нов блок).

Блок

За да е по-лесно, можем да си представим веригата от блокове като поредица от коментари под статия, които са хронологично подредени, само че има само един основен коментар (генезис блок, блок 0), а всеки следващ е в отговор на предишния. Така образуваната структура ще прилича много на поредица от стъпала. За разлика от блокчейна обаче, коментарите към статията се намират на един-единствен сървър – хостинг сървъра.

Веригата от блокове представена като поредица от коментари.

Всеки блок си има дата, съдържание и уникален идентификатор (хеш кодът на блока). Хешът може да се ползва още и като адрес на блока, например в етериум системата може да се достъпва на адрес:

/block/0x5d90933a6081319e7ba31b163b8b30ce27bba360589e5496c94ac66adf4ccf

В частта за съдържанието в блока се изреждат трансакциите (може да са десетки или стотици записи в един блок). Всяка трансакция също си има хеш код, който също може да служи като адрес, например в етериум системата е от вида:

/tx/0xd31881e3d65262ae0ed37d7b90eefd01f4c33dfe9a9bad5796c69b88def40b

Блоковете са повече като контейнери, които само събират множество трансакции. Докато трансакцията е най-малкият градивен елемент от системата, но и най-важният. В записа на трансакцията може да се записва и друга информация, не само наредител и получател на криптовалута.

Добавяне на нов блок към веригата

Всеки клиент може да добавя нов блок към веригата, но само след одобрението и съгласието на останалите. Докато при коментарите в статията, администраторът на сървъра или по-точно сайта, единствен може да одобрява публикуването на нов коментар.

Преди да се добави към веригата, новият блок трябва да се валидира – дали трансакциите са валидни и отделно от това, да се изчисли какъв ще е неговият хеш код. Валидирането на трансакциите и изчислението на номера може да се направи от всеки участник в мрежата. 

Целият процес на валидиране, изчисляване и добавяне на нов блок се нарича mining (изкопаване, добиване), а клиентът който го извършва miner (копач, миньор). 

Много клиенти може да опитат да валидират и изчисляват, но само този, който пръв успее да изчисли хеша на новия блок, ще получи съгласие от останалите да го добави към веригата. Различните блокчейн мрежи имат различни протоколи за консенсус/съгласие, тоест правила, описващи как всички клиенти стигат до взаимно съгласие от кого може да се добави нов блок във веригата.

Изчисляване на хеш кода на новия блок 

Самото математическо изчисление е сложно и представлява генериране на хеш код, като се базира на няколко неща:

  • Данните в блока (съдържанието, хеша на предишния блок и др.);
  • Някакво произволно число (nonce);
  • Изисквания към вида на хеш кода.

Ако генерираният хеш не отговаря на определени изисквания (например да започва с четири нули), миньорът може да опита отново да го генерира, като избере друго произволно число. И така, докато не се открие числото, което ще произведе валиден хеш на блока. 

Всеки валиден блок има валиден хеш код, който се приема за доказателство за извършената работа (PoW, Proof of Work) на миньора. 

Изчислението му обаче изисква много и тежка работа на процесора (на клиентския компютър), което от своя страна изразходва много електрическа енергия. За този „тежък труд“ миньорът, който успее да реши задачата, получава възнаграждение (криптовалута) и отделно може да събира такси от трансакциите, записани в блока. 

Създателят на Bitcoin Накамото е изкопал първия блок от веригата срещу възнаграждението от 50 биткойна. Именно по този начин се създават или „секат“ биткойните. Следващите нови блокове към веригата генерират още биткойни (за копачите си). На около 4 години възнаграждението за нов блок намалява двойно. Този процес обаче не е безкраен. Броят на биткойните е ограничен до 21 млн. и се очаква да се достигне ок. 2140 година. След това миньорите могат да припечелват от таксите върху трансакциите.

Друго интересно нещо е, че ресурсите, нужни за изчислението на нов блок се увеличават постоянно. Така например към момента на един клиент може да му отнеме няколко години, за да „изкопае“ сам един нов блок в биткойн мрежата.  

След като миньорът е валидирал новия блок, той излъчва заявка за проверка към останалите клиенти в мрежата, които трябва да го верифицират и одобрят за публикуване. Намирането на валидния хеш код на блока е много трудно, но верификацията му след това е много лесна за останалите клиенти.

Освен доказателството за извършена работа (PoW) има и други механизми за консенсус като PoS (Proof of Stake, доказателство от залог). При този метод за валидиране и добавяне на нови блокове към веригата не се изисква сложно изчисление, но залог от определено количество криптовалута. Клиентите, които валидират блоковете, се наричат не миньори, а валидатори и залагат част от собствените си цифрови пари, за да могат да валидират. 

Докато биткойн мрежата все още използва метода PoW за създаване на нови блокове, етериум мрежата вече използва PoS, което според отчетите им, е намалило консумацията на енергия с 99% (защото реално не се извършва сложното изчисление повече).

3) Цифров подпис  

Всеки клиент в блокчейн мрежата си има електронен подпис (двойка криптографски ключове – публичен и частен*).

*Публичен и частен криптографски ключове ↴

Шифрирането или криптирането е процесът на преобразуване на данни или текст в неразбираем низ от символи. При криптирането на данните се използва криптографски ключ. 

За разлика от хеширането, този процес е обратим, като неразбираемият код може да се декриптира с помощта на същия ключ (симетрична криптография) или друг ключ (асиметрична криптография). 

В блокчейн мрежата се използва асиметричната криптография.

При нея всеки клиент има два криптографски ключа, които са свързани математически. Ако някакви данни са криптирани с единия ключ, само другият от двойката може да ги декриптира. 

Единият ключ е публичен и може да се предоставя на всеки и навсякъде. Този ключ се генерира на база частния ключ и може да изглежда по подобен начин:

04a28ed2da3e61face37525614ce211cf8f090b3528606155ab8ba0774e1636dadf57556cc29a76b02020ad9a788d8caad6015d358f2193ecb3888bada712af711

Частният ключ обаче трябва да се пази сигурно и в тайна. Може да изглежда например така:

57ee834c0716e980c1dc4373f2970e9c2ad14035d5d3a0c1b96b1b9bc46374a4

Асиметричната криптография има много важна роля в сферата на сигурността на данните:

  • Конфиденциалност. Съобщение, криптирано с публичния ключ на получателя му, може да бъде декриптирано само с отговарящия му частен ключ. По този начин само получателят може да достъпи информацията. 
  • Удостоверяване. Собственикът на частния ключ може да подписва с него всякакви дигитални обекти (съобщения, данни, документи, трансакциите в блокчейна) и всеки, който разполага с публичния му ключ може да верифицира достоверността на подписа. Това позволява верификация на подателя (че именно той е подписал данните), както и че данните са непокътнати. Пример за удостоверяване на отсрещната страна, при комуникацията в интернет, е чрез TLS/SSL сертификатите. За да установи сигурна (HTTPS) връзка с уеб сървъра, браузърът първо проверява автентичността му. За целта сървърът изпраща публичния си ключ и TLS/SSL сертификат към браузъра, подписан с частния си ключ. Браузърът верифицира подписа с помощта на публичния ключ на сървъра.

Адрес на потребителя в блокчейн системата

В блокчейн системата публичният ключ на потребителя е и публичният му адрес. Той се използва като номер на банкова сметка, имейл адрес или „потребителско име“, което идентифицира клиента в системата. 

Този адрес може да бъде съкратен и да изглежда по подобен начин:

Ако публичният ключ е „потребителско име“ в блокчейн мрежата, то частният ключ е „паролата“ на клиента.

В блокчейн мрежата тези ключове се използват за:

  • С частния си ключ клиентът подписва всяка трансакция, която инициира. Също така с него клиентът се удостоверява при управлението на дигиталните му активи (криптовалута, токени) през крипто портфейла му. 
  • Верифициране и валидиране на трансакциите. Всеки клиент, който инициира трансакция, подписва записа ѝ с частния си ключ. Това създава цифров подпис към записа. След това валидаторът/миньорът, който валидира блока, използва публичния ключ на подателя, за да верифицира подписа и достоверността на данните в трансакцията. Така е невъзможно някой да се представи за друг и да си преведе монети в собствената си сметка. 

Всяка трансакция в блокчейн регистъра представлява запис от вида: адрес на подателя – адрес на получателя – стойност.

Списък на трансакциите, записани в един блок в етериум мрежата.

Списък на трансакциите, записани в един блок в етериум мрежата.

Крипто портфейл

Всеки потребител, които иска да се включи в блокчейн мрежата, може да си направи регистрация на акаунт през някой от многото крипто портфейли

При създаване на акаунта се генерират и двойката криптографски ключове. Частният се записва в портфейла и се използва за подписване всеки път, когато потребителят създава трансакция (прави трансфер, купува, продава, логва се в някой сайт, който поддържа логин с блокчейн адрес).

По-интересната част от блокчейн технологиите

И така, блокчейн технологията с тези три основни компонента предлага една децентрализирана, самодоверителна, сигурна, анонимна и същевременно публична основа, върху която може да работи система за директни и бързи разплащания с цифрова валута между две страни.

Тъй като системата работи основно с криптографски технологии за запис и валидиране на трансакциите, тази цифрова валута се нарича криптовалута.

Възможна аналогия на криптовалутата е тази с традиционната банкова система и онлайн банкирането. Когато внасяме пари в банковата си сметка (или си получаваме заплатата), те са представени като числа (в записи за трансакции) в цифровия регистър на банката. След това можем да използваме тези пари, за да правим онлайн покупки, да плащаме сметките си или да извършваме преводи към други акаунти. При клиптовалутите можете да захраните сметката си по различни начини – като валидирате блокове, продавате заменими/незаменими токени или като си купите криптовалута с конвенционални пари (например с кредитна карта).

Цифровите единици на криптовалутата се наричат още и токени в блокчейн системата.

Токен (или токън, от „token“)

Токенът в блокчейн мрежата е презентация или символ на дигитален актив или обект, който има някаква стойност.

Има два вида токени – заменими (fungible) и незаменими (non-fungible).

Заменими токени

Пример за заменими токени са криптовалутите. Например една биткойн монета може да се заменя с друга. Всичките биткойн монети са еднакви. Никой биткойн не е по-уникален от останалите, тоест стойността на един токен е същата като стойността на друг (един токен е равнопоставен и заменим с всеки друг такъв токен). Ето пример – в магазина може да си купите едно яке, но продавачът ще го извади от кашона с еднакви якета, като няма да има значение кое точно яке е хванал. Като отделни обекти еднаквите якета са заменими. 

В Ethereum блокчейн системата има възможност разработчиците да създават собствени заменими токени, които може да представят някакъв физически или дигитален обект, чиито единици са взаимозаменими като например собствена криптовалута, лотарийни билети, унция злато, валута и др. Тези токени ще функционират както и етер валутата – един токен е равнопоставен и заменим с всеки друг такъв токен. Тези токени се реализират в блокчейн системата чрез интелигентни договори.

Незаменими токени (NFT, Non-Fungible Token, ен-еф-ти)

Незаменимите токени са уникални. Не може един такъв токен да се замени с друг. Те са свързани с някакъв уникален обект, физически или дигитален. 

Тук ще направим една аналогия, в която ще използваме друг технически термин, но основната концепция би трябвало да се разбере.

Незаменимият токен можем да си го представим като симлинк (symbolic link, символна връзка) във файловата система. Този линк всъщност е файл, в който е описан пътят до друг файл, и функционира като шорткът. Незаменимият токен също е „файл“ в блокчейн системата и съдържа някакъв показалец към някакъв друг обект.

Както не можем да сменим един симлинк с друг, сочещ към друг файл, така не могат да се заменят и незаменимите токени, те просто сочат към различни уникални обекти.

Да си купиш NFT е все едно да си купиш симлинк, като не закупуваш оригиналния файл, към който той сочи. Реално ставаш собственик на кода в симлинка. В блокчейн системата „симлинкът“ може да сочи към файлове или обекти извън самата нея.

Уникалният токен е записан в блокчейн системата в блок. Тъй като реално в тази система няма истински файлове, блоковете може да служат за такава функция. Тоест блокчейн системата можем да си я представим като някакъв вид файлова система, но вместо файлове, в които да се съхраняват данни, използва блокове. По този начин е много лесно да се разберат след това и как работят децентрализираните приложения (dApps), които използват скриптове (интелигентни договори), записани в блокове.

Симлинковете съдържат пътя до другия файл, а незаменимите токени освен връзка с обекта, представляват и символ за „стойността“ му. Тези токени са начин, чрез който става възможно в блокчейн системата да се „вкарат“ външни обекти, които след това могат да бъдат търгувани. Записаната трансакция за покупка на токена се приема като доказателство, че купувачът е собственик на този токен.

Съществуват платформи-каталози, в които всеки може да разглежда и купува и препродава уникални токени. Някои от най-известните са OpenSea, Binance NFT Marketplace, Coinbase NFT Marketplace и др.

Ето и някои интересни уникални токени, цели колекции от токени или цели проекти, базирани на токени.

CryptoPunks NFT колекция

Първият уникален токен: Различни източници посочват два различни токена като „първи“. Единият се казва Quantum и e от 2014-2015 г. Създаден е в блокчейн системата Namecoin, а през 2021 г. токенът е продаден за 1.4 млн. долара. Другият се казва CryptoPunks и е от 2017 г. Създаден е в Ethereum. Това всъщност е колекция от 10 хил. уникални пикселизирани картинки с размер 24х24.

Първият туйт, направен на NFT

Първият туйт в Twitter е направен на уникален токен и продаден през 2021 г. за 2.9 млн. долара (ние сме в шок). Купувачът му все още се опитва да го препродаде за 50 млн. долара, но явно вече няма желаещи

NFT колекция

Има официална колекция уникални токени „Доналд Тръмп“.

NFT колекция на Nike

Колекции от токени на Nike: https://opensea.io/Nike/created. Феновете на Nike могат да закупят уникални токени. Освен това могат да участват в създаването им и така да получават възнаграждения за авторски права (royalties) след това от продажбата им. Целта е да се насърчават дигиталните творци.

И така, след картинките и цветната разтуха за очите и мозъка, продължаваме със сухата технология – интелигентните договори.

Интелигентни договори (smart contracts) и децентрализирани приложения (dApps)

Бележка от автора: Още малко остана. На всеки стигнал от началото на статията дотук, ще раздадем по един уникален WordPress хостинг токен. (Бележка от екипа: Но тъй като очакваме да сте малцина, още не сме измислили какъв ще е той, затова засега получавате нашата похвала и благодарности от автора; абонирайте се за имейл нотификация!).

Интелигентните договори са магическата съставка, която прави възможно функционирането на децентрализираните приложения в блокчейн мрежата.

Тези приложения се наричат децентрализирани, защото файловете им не се намират на един сървър (както например е при един WordPress уебсайт – на хостинг сървъра), но на всички компютри в блокчейн мрежата. 

Представете си, че в някой блок от веригата в записа на една трансакция вместо текста User1 даде 5 монети на User2, е записан код. Той изглежда например така (написан на скриптовия език Solidity):

Интелигентен договор (smart contract) , записан в блокчейн мрежата

За сравнение един PHP скрипт на WordPress сайта изглежда така:

PHP скрипт на WordPress

Това са два файла с код, който само програмистите и разработчиците ще разберат. На нас ни е важно единствено да разберем, че като всяко друго приложение, така и децентрализираното се базира на основни принципи в уеб разработката:

  • Трябва да има файлове с код, които го задвижват. Те съдържат бизнес логиката – кое как ще се случва и работи. При dApps това са интелигентните договори, при WordPress това са PHP файловете;
  • Трябва да може да съхранява данни по някакъв начин – дали в база данни, дали във файлове или нещо друго; При dApps данни може да се съхраняват в блоковете на веригата (в записа на трансакцията), при WordPress се използва база данни;
  • И трябва да има интерфейс, чрез който потребителите ще могат да си взаимодействат с приложението. При dApps това може да е специално приложение като крипто портфейл, при WordPress сайта това са страниците му, които се зареждат в браузъра.

Интелигентният договор е скрипт, в който е указано при случването на някакво събитие (или изпълняването на някакво условие), да се извърши някакво действие. 

Например при покупка на уникален токен в блокчейна инструкциите в скрипта може да са (съвсем опростено):

  • когато потребител подаде заявка за трансакция > провери дали има нужните средства >> ако да, прехвърли сумата към продавача и прехвърли собствеността на токена от адреса на автора към адреса на купувача >> ако не, откажи трансакцията.

Уникалните характеристики на интелигентните договори са:

  • сигурни са – не може да се променят след като са записани в блокчейна;
  • прозрачни са, тоест публично достъпни са, всеки може да види инструкциите в тях;
  • изпълняват ролята на договор – всеки потребител, който по някакъв начин има нужда от изпълнението му, трябва да подпише „съгласието си“ с частния си ключ.

Уникалните токени и интелигентните договори отварят вратите на блокчейн технологиите да навлязат в реалния ни свят и в различни сфери на икономиката и бизнеса. Не изглежда толкова невъзможно бъдещето, в което ще можем да продаваме къщата или колата си като уникални токени.


Абонирайте се за СуперБлога, за да научавате първи най-важното и полезното от света на уеб, касаещо Вашия сайт и дигитално развитие.

Мадлена Методиева
Мадлена Методиева
Меган е част от СуперМаркетинг екипа. Мисията ѝ е старателно да попълва е-библиотеката на СуперХостинг.БГ с полезни и помощни статии.
0 0 votes
.
Абониране
Уведоми ме при
guest

0 Коментара
Inline Feedbacks
View all comments
Каква е разликата между домейн и уебсайт?

Каква е разликата между домейн и уебсайт? [Аудио]

2
Въпросът „Каква е разликата между домейн и уебсайт?” със сигурност влиза в топ 10 най-често срещани въпроси, когато решите да имате собствен сайт.
SaaS?

SaaS? Що е то и кое го прави най-подходящата платформа за Вашия онлайн магазин

0
SaaS услугата ви дава възможност лесно и бързо да стартирате собствен електронен магазин и да развивате бизнеса си в интернет.
Какви са ползите от SSL сертификата за сайта и неговите потребители?

Какви са ползите от SSL сертификата за сайта и неговите потребители?

0
Използването на SSL сертификат и сигурна HTTPS връзка за сайта е категоричен показател, че държите на доверието и сигурността на посетителите му.