Bitcoin tekitas Internetis palju kõmu. Seda naeruvääristati, rünnati ja lõpuks võeti see vastu ning sellest sai osa meie elust. Kuid, Bitcoin pole üksi. Sel hetkel on üle 700 AltCoini rakendused, mis kasutavad sarnaseid põhimõtteid ja erinevaid krüptoraha algoritme.
Niisiis, mida vajate, et luua midagi sellist nagu Bitcoin?
Püüdmata mõista teie isiklikku motivatsiooni detsentraliseeritud, anonüümse süsteemi loomiseks raha / teabe vahetamiseks (kuid lootes siiski, et see kuulub moraalse ja õigusliku tegevuse alla), jaotame kõigepealt oma uue maksesüsteemi põhinõuded:
Meie nimekirja kahe esimese nõude täitmine, Interneti kaudu teabevahetuse keskasutuse eemaldamine on juba võimalik. Mida vajate, on a peer-to-peer (P2P) võrku.
Teabe jagamine P2P võrkudes sarnaneb teabe jagamisele sõprade ja pereliikmete vahel. Kui jagate teavet vähemalt ühe võrgu liikmega, jõuab see teave lõpuks kõigi teiste võrgu liikmeteni. Ainus erinevus on see, et digitaalsetes võrkudes ei muudeta seda teavet kuidagi.
Ilmselt olete kuulnud BitTorrentist, ühest populaarseimast P2P-failide jagamise (sisu edastamise) süsteemist. Teine populaarne rakendus P2P jagamiseks on Skype, samuti muud vestlussüsteemid.
Alumine rida on see, et saate oma uue krüptoraha toetamiseks rakendada või kasutada ühte olemasolevatest avatud lähtekoodiga P2P-protokollidest, mida me nimetame Topcoin .
Digitaalsete identiteetide mõistmiseks peame mõistma, kuidas krüptograafiline räsimine töötab . Räsimine on mis tahes suvalise suurusega digitaalandmete kaardistamine fikseeritud suurusega andmetega. Lihtsamalt öeldes on räsimine mõne loetava teabe võtmise protsess ja sellise valmistamine, millel pole üldse mõtet.
Võite võrrelda räsimist poliitikute vastuste saamisega. Neile edastatud teave on selge ja arusaadav, samas kui nende pakutav väljund näeb välja nagu juhuslik sõnavoog.
Hea räsimisalgoritm vajab mõnda nõuet:
Kui vaatate lihtsat statistikat, on meil piiratud (kuid tohutu) arv võimalikke HASH-väärtusi lihtsalt sellepärast, et meie HASH-i pikkus on piiratud. Kuid meie räsimisalgoritm (nimetagem seda poliitikuks256) peaks olema piisavalt usaldusväärne, et see tooks erinevatele sisenditele ainult korduvaid räsiväärtusi umbes sama tihti kui loomaaias ahvil õnnestub Hamlet kirjutusmasinal õigesti tippida!
Kui arvate, et Hamlet on lihtsalt nimi või sõna, lõpetage lugemine kohe või lugege selle kohta Lõputu ahvi teoreem .
Paberile alla kirjutades on vaja vaid lisada oma allkiri dokumendi tekstile. Digitaalallkiri on sarnane: allkirjastatavale dokumendile peate lihtsalt lisama oma isikuandmed.
Kui saate aru, et räsimisalgoritm peab kinni reeglist, kus isegi väikseim sisendandmete muutus peab tooma märkimisväärse erinevuse väljundis , siis on ilmne, et originaaldokumendile loodud HASH-väärtus erineb lisatud allkirjaga dokumendile loodud HASH-väärtusest.
Algdokumendi ja dokumendi jaoks loodud HASH-väärtuse ja teie lisatud isikuandmete kombinatsioon on a digitaalselt allkirjastatud dokument .
Ja nii jõuame teie juurde virtuaalne identiteet , mis on määratletud andmetena, mille lisasite dokumendile enne selle HASH-väärtuse loomist.
Järgmisena peate veenduma, et teie allkirja ei saa kopeerida ja keegi ei saa teie nimel ühtegi tehingut teostada. Parim viis oma allkirja turvalisuse tagamiseks on seda ise hoida ja pakkuda kellelegi teisele allkirjastatud dokumendi kinnitamiseks teist meetodit. Jällegi võime taanduda tehnoloogiale ja algoritmidele, mis on hõlpsasti kättesaadavad. Mida peame kasutama, on avaliku võtme krüptograafia tuntud ka kui asümmeetriline krüptograafia .
Selle toimimiseks peate looma a privaatne võti ja a avalik võti . Need kaks võtit on mingis matemaatilises korrelatsioonis ja sõltuvad üksteisest. Nende võtmete valmistamiseks kasutatav algoritm tagab, et igal privaatvõtmel on erinev avalik võti. Nagu nende nimed viitavad, on privaatne võti teave, mida hoiate ainult enda jaoks, samas kui avalik võti on teave, mida jagate.
Kui kasutate faili sisendväärtustena oma privaatvõtit (oma isikut) ja originaaldokumenti allkirjastamise algoritm HASH-väärtuse loomiseks, eeldades, et olete oma võtme saladuses hoidnud, võite olla kindel, et keegi teine ei saa selle dokumendi jaoks sama HASH-väärtust toota.
Kui kellelgi on vaja teie allkirja kinnitada, kasutab ta algdokumenti, teie toodetud HASH-väärtust ja teie avalikku võtit sisendina allkirja kontrollimise algoritm nende väärtuste vastavuse kontrollimiseks.
Eeldades, et olete rakendanud P2P-suhtluse, digitaalsete identiteetide (isiklikud ja avalikud võtmed) loomise mehhanismid ja pakkunud kasutajatele viise dokumentide allkirjastamiseks oma privaatvõtmete abil, olete valmis alustama teavet oma eakaaslastele.
Kuna meil pole keskasutust, kes kontrolliks, kui palju raha teil on, peab süsteem iga kord selle kohta teilt küsima ja seejärel kontrollima, kas te valetasite või mitte. Seega võib teie tehingu kirje sisaldada järgmist teavet:
Ainus asi, mida teha tuleb, on tehingukiri digitaalselt oma privaatvõtmega allkirjastada ja tehingu kirje võrgus olevatele eakaaslastele edastada. Sel hetkel saavad kõik andmed, et keegi (teie virtuaalne identiteet) saadab kellelegi teisele raha (teie apteekri virtuaalne identiteet).
Teie töö on tehtud. Teie ravimite eest ei maksta enne, kui kogu võrk nõustub, et teil oli tõesti 100 münti, ja seetõttu võiksite selle tehingu sooritada. Apteeker saab raha alles pärast tehingu kinnitamist ja saadab teile ravimid.
Kaevurid on teadaolevalt väga töökad inimesed, kes on minu arvates tugevalt alamakstud. Krüptoraha digitaalses maailmas on kaevuritel väga sarnane roll, välja arvatud sel juhul, et nad teevad mustuse hunnikute kaevamise asemel arvutusmahukat tööd. Erinevalt tõelistest kaevuritest teenisid mõned krüptoraha kaevurid viimase viie aasta jooksul väikese varanduse, kuid paljud teised kaotasid selle riskantse ettevõtmise tõttu varanduse.
Kaevurid on süsteemi põhikomponent ja nende peamine eesmärk on kinnitada kõigi kasutajate soovitud tehingute kehtivust.
Teie tehingu (või mitme teise kasutaja soovitud mitme tehingu kombinatsiooni) kehtivuse kinnitamiseks teevad kaevurid kahte asja.
Esiteks loodavad nad asjaolule, et 'kõik teavad kõike', see tähendab, et kõik süsteemis sooritatud tehingud kopeeritakse ja on kättesaadavad kõigile võrgu eakaaslastele. Nad uurivad teie tehingute ajalugu, et kontrollida, kas teil oli alustuseks tegelikult 100 münti. Kui teie konto saldo on kinnitatud, genereerivad nad konkreetse HASH-väärtuse. Sellel räsiväärtusel peab olema kindel vorming; see peab algama teatud arvu nullidega .
Selle HASH-väärtuse arvutamiseks on kaks sisendit:
Võttes seda arvesse isegi väikseim sisendandmete muutus peab tooma märkimisväärse erinevuse väljundi HASH-väärtuses , kaevuritel on väga raske ülesanne. Nad peavad leidma a-le konkreetse väärtuse töö tõestamine muutuja, mis annab nullidega algava HASH-i. Kui teie süsteem nõuab igas valideeritud tehingus vähemalt 40 nulli, peab kaevur õige õiguse leidmiseks arvutama umbes 2 ^ 40 erinevat HASH-väärtust töö tõestamine .
Kui kaevur leiab töö tõendamiseks sobiva väärtuse, on tal õigus saada tehingutasu (üksikmünt, mille olete nõus maksma), mida saab lisada kinnitatud tehingu osana. Iga valideeritud tehing edastatakse võrgus olevatele eakaaslastele ja salvestatakse kindlas andmebaasivormingus, mida nimetatakse Blockchain .
Aga mis juhtub, kui kaevurite arv suureneb ja nende riistvara muutub palju tõhusamaks? Varem kaevandati Bitcoine keskseadmetel, seejärel GPU-del ja FPGA-del, kuid lõpuks hakkasid kaevurid kujundama oma ASIC-kiipe, mis olid tunduvalt võimsamad kui need varased lahendused. Räsi määra tõustes suureneb ka kaevandamise raskus, tagades seeläbi tasakaalu. Kui võrku lisatakse rohkem räsimisjõudu, suureneb raskus ja vastupidi; kui paljud kaevurid otsustavad pistiku tõmmata, kuna nende töö pole enam tulus, kohandatakse raskused uue räsimääraga vastavusse.
Plokiahel sisaldab kõigi süsteemis tehtud tehingute ajalugu. Igast kinnitatud tehingust või tehingupakist saab ahela teine ring. Iga üksik plokiahela arendusettevõte tugineb sellele avalikule pearaamatule.
Niisiis on Bitcoini plokiahel sisuliselt avalik pearaamat, kus tehingud on loetletud kronoloogilises järjekorras.
Bitcoini plokiahela esimest rõngast nimetatakse Genesis Blockiks
Blokiahela toimimise kohta lisateabe saamiseks soovitan lugeda Blockchaini tehnoloogia on selgitatud: Bitcoini toide , autor Nermin Hajdarbegovic.
Teie süsteemis aktiivsete kaevurite arv pole piiratud. See tähendab, et kahel või enamal kaevuril on võimalik sama tehing kinnitada. Kui see juhtub, kontrollib süsteem tehingute valideerimisse investeerinud kaevandajate kogu pingutust, loendades lihtsalt nulli. Kaevandaja, kes investeeris rohkem jõupingutusi (leidis rohkem juhtnulle), võidab ja tema blokk aktsepteeritakse.
Bitcoini süsteemi esimene reegel on see, et tekitada võib maksimaalselt 21 000 000 Bitcoini. Seda arvu pole ikka veel saavutatud ja praeguste trendide kohaselt arvatakse, et see arv saavutatakse aastaks 2140.
See võib panna teid kahtlema sellise süsteemi kasulikkuses, sest 21 miljonit ühikut ei kõla just eriti palju. Kuid Bitcoini süsteem toetab murdarvusid kaheksa kümnendkohani (0,00000001). Seda bitcoini väikseimat ühikut nimetatakse a Satoshi , Bitcoini protokolli taga oleva anonüümse arendaja Satoshi Nakamoto auks.
Uued mündid luuakse kaevurite preemiaks tehingute kinnitamise eest. See tasu ei ole tehingutasu mille määrasite tehingukirje loomisel, kuid selle määrab süsteem. Preemia suurus väheneb aja jooksul ja lõpuks määratakse see nulli, kui emiteeritud müntide koguarv (21m) on saavutatud. Kui see juhtub, mängivad tehingutasud palju olulisemat rolli, kuna kaevurid võivad valideerimiseks eelistada väärtuslikumad tehingud.
Lisaks müntide maksimaalse arvu ülempiiri määramisele kasutab Bitcoini süsteem ka huvitavat viisi uute müntide igapäevase tootmise piiramiseks. Kalibreerides tööproovi arvutamiseks vajaliku minimaalse arvu juhtnulle, määratakse tehingu kinnitamiseks ja uute müntide eest tasu saamiseks vajalik aeg alati umbes 10 minutiks. Kui uute plokkide lisamine plokiahelasse väheneb, võib süsteem nõuda, et töökindlus genereeriks 45 või 50 eesmist nulli.
Niisiis, piirates seda, kui kiiresti ja mitu uut münti on võimalik luua, kontrollib Bitcoini süsteem rahapakkumist tõhusalt.
Nagu näete, pole oma Bitcoini versiooni loomine nii keeruline. Kasutades olemasolevat tehnoloogiat, mis on rakendatud uuenduslikult, on teil olemas kõik, mida vajate krüptoraha jaoks.
Viimane asi, mida tasub mainida, on see, et oma olemuselt krüptoraha on viis anonüümse väärtuse / teabe edastamiseks levinud peer-to-peer võrgus ühelt kasutajalt teisele .
Kaaluge oma tehingukirje müntide asendamist juhuslike andmetega, mis võidakse asünkroonse krüptograafia abil isegi krüptida, nii et ainult saatja ja vastuvõtja saavad selle dešifreerida. Mõelge nüüd selle rakendamisele midagi sellist nagu Asjade Internet !
Krüptoraha süsteem võib olla huvitav viis meie ahju ja rösteri vahelise suhtluse võimaldamiseks. PiiksumaMitmed tehnilised raskekaallased uurivad juba plokiahela tehnoloogia kasutamist IoT platvormidel, kuid see pole selle suhteliselt uue tehnoloogia ainus potentsiaalne rakendus.
Kui te ei näe põhjust omaenda alternatiivse valuuta loomiseks (välja arvatud praktiline nali), võiksite proovida kasutada sama või sarnast lähenemist millegi muu jaoks, näiteks hajutatud autentimine, mängudes kasutatavate virtuaalsete valuutade loomine, suhtlusvõrgustikud ja muid rakendusi või võite jätkata oma e-kaubanduse ettevõtte jaoks uue lojaalsusprogrammi loomist, mis premeeriks püsikliente virtuaalsete märkidega, mida saaks hiljem lunastada.
Krüptoraha on digitaalne vahetusmeedium, mis tugineb tehingute kindlustamiseks ja kontrollimiseks krüptograafiale. Enamik krüptorahasid, näiteks bitcoin, on detsentraliseeritud ja konsensusel põhinevad.
Blockhain on sisuliselt digitaalselt allkirjastatud finantsraamat. Iga plokiahelas olev tehing on nähtav avalikus pearaamatus ja kõik kirjed jaotatakse üle võrgu, nõudes iga tehingu osas konsensust.
Iga süsteemis sooritatud tehing saab osa plokiahelast, kuid alles pärast seda, kui teatud arv sõlme jõuab üksmeelele, et tehing on kehtiv. Seejärel lisatakse tehing uue ploki plokiahelale.