Bitcoin loi paljon surinaa Internetissä. Se pilkattiin, siihen hyökättiin, ja lopulta se hyväksyttiin ja siitä tuli osa elämäämme. Kuitenkin, Bitcoin ei ole yksin. Tällä hetkellä niitä on yli 700 AltCoinia toteutukset, jotka käyttävät samankaltaisia periaatteita ja erilaisia kryptovaluutta-algoritmeja.
Joten mitä tarvitset luomaan jotain Bitcoinia?
Yritetään ensin eritellä uuden maksujärjestelmän perusvaatimukset yrittämättä ymmärtää henkilökohtaista motivaatiotasi luoda hajautettu, nimetön rahan / tiedonvaihtojärjestelmä (mutta toivoen silti, että se kuuluu moraalisen ja laillisen toiminnan piiriin):
Luettelomme kahden ensimmäisen vaatimuksen täyttäminen ja Internet-tiedonvaihdon keskusviranomaisen poistaminen on jo mahdollista. Tarvitset a vertaisverkko (P2P) verkkoon.
Tietojen jakaminen P2P-verkoissa on samanlainen kuin tietojen jakaminen ystävien ja perheen kesken. Jos jaat tietoja ainakin yhden verkon jäsenen kanssa, lopulta nämä tiedot tavoittavat kaikki muut verkon jäsenet. Ainoa ero on, että digitaalisissa verkoissa näitä tietoja ei muuteta millään tavalla.
Olet luultavasti kuullut BitTorrentista, joka on yksi suosituimmista P2P-tiedostojen jakamisjärjestelmistä. Toinen suosittu sovellus P2P-jakamiseen on Skype sekä muut chat-järjestelmät.
Tärkeintä on, että voit ottaa käyttöön tai käyttää yhtä olemassa olevista avoimen lähdekoodin P2P-protokollista tukemaan uutta kryptovaluuttaa, jota kutsumme Topcoin .
Digitaalisten identiteettien ymmärtämiseksi meidän on ymmärrettävä miten salauksen hajautus toimii . Hajautus on prosessi, jolla kartoitetaan minkä tahansa mielivaltaisen kokoinen digitaalinen data kiinteän kokoiseksi dataksi. Yksinkertaisemmilla sanoilla hajautus on prosessi, jossa otetaan jonkin verran luettavaa tietoa ja tehdään jotain, jolla ei ole mitään järkeä.
Voit verrata hajautusta vastausten saamiseen poliitikoilta. Heille antamasi tiedot ovat selkeitä ja ymmärrettäviä, kun taas niiden tarjoama tulos näyttää satunnaiselta sanavirralta.
Hyvän hajautusalgoritmin tarvitsemia muutamia vaatimuksia:
Jos katsot yksinkertaisia tilastoja, meillä on rajallinen (mutta valtava) määrä mahdollisia HASH-arvoja, yksinkertaisesti siksi, että HASH-pituudemme on rajallinen. Hajautusalgoritmimme (nimetään se Poliitikoksi256) tulisi kuitenkin olla riittävän luotettava, jotta se tuottaa vain kaksoiskappaleiden hajautusarvot eri syötteille suunnilleen yhtä usein kuin eläintarhan apina onnistuu kirjoittamaan Hamletin kirjoituskoneella!
Jos luulet Hamletin olevan vain nimi tai sana, lopeta lukeminen nyt tai lue siitä Ääretön apina-lause .
Allekirjoittaessasi paperia sinun tarvitsee vain liittää allekirjoituksesi asiakirjan tekstiin. Digitaalinen allekirjoitus on samanlainen: sinun tarvitsee vain liittää henkilökohtaiset tietosi allekirjoitettavaan asiakirjaan.
Jos ymmärrät, että hajautusalgoritmi noudattaa sääntöä missä jopa pienimmän syötetiedon muutoksen on tuotettava merkittävä ero tuotoksessa , niin on ilmeistä, että alkuperäiselle asiakirjalle luotu HASH-arvo eroaa HASH-arvosta, joka on luotu liitetyllä allekirjoituksella dokumentille.
Yhdistelmä alkuperäisestä asiakirjasta ja asiakirjalle tuotetusta HASH-arvosta liitteenä olevien henkilötietojesi kanssa on a digitaalisesti allekirjoitettu asiakirja .
Ja näin pääsemme sinun luokse virtuaalinen identiteetti , joka määritellään tiedoiksi, jotka olet liittänyt asiakirjaan ennen HASH-arvon luomista.
Seuraavaksi sinun on varmistettava, että allekirjoitustasi ei voida kopioida, eikä kukaan voi suorittaa mitään tapahtumaa puolestasi. Paras tapa varmistaa, että allekirjoituksesi on suojattu, on säilyttää se itse ja tarjota joku muu tapa vahvistaa allekirjoitettu asiakirja. Jälleen voimme palata takaisin tekniikkaan ja algoritmeihin, jotka ovat helposti saatavilla. Mitä meidän on käytettävä, on julkisen avaimen salaus tunnetaan myös epäsymmetrinen salaus .
Jotta tämä toimisi, sinun on luotava yksityinen avain ja a julkinen avain . Nämä kaksi avainta ovat jonkinlaisessa matemaattisessa korrelaatiossa ja riippuvat toisistaan. Näiden avainten tekemiseen käytettävä algoritmi varmistaa, että jokaisella yksityisellä avaimella on erilainen julkinen avain. Kuten heidän nimensä viittaavat, yksityinen avain on tietoja, jotka pidät vain itsellesi, kun taas julkinen avain on tietoja, jotka jaat.
Jos käytät yksityistä avainta (henkilöllisyyttäsi) ja alkuperäistä asiakirjaa allekirjoitusalgoritmi HASH-arvon luomiseksi olettaen, että pidit avaimesi salassa, voit olla varma, että kukaan muu ei voi tuottaa samaa HASH-arvoa tälle asiakirjalle.
Jos joku tarvitsee vahvistaa allekirjoituksesi, hän käyttää alkuperäistä asiakirjaa, tuottamaasi HASH-arvoa ja julkista avainta syötteinä allekirjoituksen vahvistusalgoritmi varmistaaksesi, että nämä arvot vastaavat.
Olettaen, että olet toteuttanut P2P-viestinnän, mekanismeja digitaalisten identiteettien luomiseen (yksityiset ja julkiset avaimet) ja tarjoanut käyttäjille tapoja allekirjoittaa asiakirjoja yksityisillä avaimillaan, olet valmis aloittamaan tietojen lähettämisen ikäisillesi.
Koska meillä ei ole keskusviranomaista, joka vahvistaisi, kuinka paljon rahaa sinulla on, järjestelmän on kysyttävä sinulta siitä joka kerta ja tarkistettava sitten valehtelitko vai et. Joten tapahtumarekisterisi saattaa sisältää seuraavat tiedot:
Ainoa mitä on jäljellä, on allekirjoittaa transaktiotietue digitaalisesti yksityisellä avaimellasi ja lähettää tapahtumarekisteri verkon vertaisille. Siinä vaiheessa kaikki saavat tiedot siitä, että joku (virtuaalinen henkilöllisyytesi) lähettää rahaa toiselle (apteekkisi virtuaalinen henkilöllisyys).
Työsi on valmis. Lääkkeestäsi ei kuitenkaan makseta, ennen kuin koko verkko on yhtä mieltä siitä, että sinulla on todella 100 kolikkoa, ja voi siksi suorittaa tämän tapahtuman. Apteekki saa varat ja lähettää sinulle lääkityksen vasta kun tapahtumasi on vahvistettu.
Kaivostyöntekijöiden tiedetään olevan erittäin ahkeria ihmisiä, jotka ovat mielestäni voimakkaasti alipalkattuja. Kryptovaluutan digitaalisessa maailmassa kaivostyöläisillä on hyvin samanlainen rooli, paitsi tässä tapauksessa, että he tekevät laskennallisesti intensiivistä työtä sen sijaan, että kaivaisivat likapaloja. Toisin kuin todelliset kaivostyöläiset, jotkut kryptovaluuttakaivostyöläiset ansaitsivat pienen omaisuuden viimeisten viiden vuoden aikana, mutta monet muut menettivät omaisuuden tällä riskialttiilla pyrkimyksillä.
Kaivostyöläiset ovat järjestelmän ydinkomponentti, ja niiden päätarkoituksena on vahvistaa käyttäjien pyytämien tapahtumien pätevyys.
Kaivostyöläiset tekevät kaksi asiaa vahvistaakseen tapahtumasi (tai useiden muiden käyttäjien pyytämien useiden tapahtumien yhdistelmän) pätevyyden.
Ensinnäkin he luottavat siihen, että 'kaikki tietävät kaiken', mikä tarkoittaa, että jokainen järjestelmässä suoritettu tapahtuma kopioidaan ja on kaikkien verkon vertaisryhmien saatavilla. He tutkivat tapahtumiesi historiaa varmistaakseen, että sinulla oli aluksi 100 kolikkoa. Kun tilisi saldo on vahvistettu, ne tuottavat tietyn HASH-arvon. Tällä hajautusarvolla on oltava tietty muoto; sen on aloitettava tietyllä määrällä nollia .
Tämän HASH-arvon laskemiseksi on kaksi tuloa:
Ottaen huomioon jopa pienimmän muutoksen syötetiedoissa on tuotettava merkittävä ero lähdön HASH-arvossa , kaivostyöläisillä on erittäin vaikea tehtävä. Heidän on löydettävä a: lle tietty arvo työtodistus muuttuja, joka tuottaa HASH nollilla. Jos järjestelmäsi vaatii vähintään 40 nollaa jokaisessa validoidussa tapahtumassa, kaivostyöläisen on laskettava noin 2 ^ 40 erilaista HASH-arvoa oikean löytämiseksi työtodistus .
Kun kaivosmies löytää oikean arvon työtodistukselle, hänellä on oikeus transaktiomaksuun (yksittäinen kolikko, jonka olit valmis maksamaan), joka voidaan lisätä osana validoitua tapahtumaa. Jokainen validoitu tapahtuma lähetetään verkon vertaisryhmille ja tallennetaan erityiseen tietokantamuotoon, joka tunnetaan nimellä Blockchain .
Mutta mitä tapahtuu, jos kaivostyöläisten määrä kasvaa ja heidän laitteistonsa paranevat huomattavasti? Bitcoinia louhittiin aiemmin prosessoreilla, sitten GPU: lla ja FPGA: lla, mutta lopulta kaivostyöläiset alkoivat suunnitella omia ASIC-sirujaan, jotka olivat huomattavasti tehokkaampia kuin nämä varhaiset ratkaisut. Hajautusasteen noustessa kasvaa myös kaivostoiminnan vaikeus, mikä varmistaa tasapainon. Kun verkkoon tuodaan lisää hajautusvoimaa, vaikeus kasvaa ja päinvastoin; Jos monet kaivostyöläiset päättävät vetää pistoketta, koska niiden toiminta ei ole enää kannattavaa, vaikeudet säädetään vastaamaan uutta hajautusastetta.
Lohkoketju sisältää kaikkien järjestelmässä suoritettujen tapahtumien historian. Jokaisesta vahvistetusta tapahtumasta tai tapahtumaryhmästä tulee toinen rengas ketjussa. Joka ikinen blockchain-kehitysyhtiö luottaa tähän julkiseen kirjanpitoon.
Joten, Bitcoin-lohkoketju on pohjimmiltaan julkinen pääkirja, jossa liiketoimet on lueteltu kronologisessa järjestyksessä.
Bitcoin-lohkoketjun ensimmäistä rengasta kutsutaan Genesis Blockiksi
Jos haluat lukea lisää blockchainin toiminnasta, suosittelen lukemista Blockchain-tekniikka selitetty: Powering Bitcoin , kirjoittanut Nermin Hajdarbegovic.
Ei ole rajoitusta sille, kuinka monta kaivostyöläistä voi olla aktiivinen järjestelmässäsi. Tämä tarkoittaa, että kahdella tai useammalla kaivostyöläisellä on mahdollisuus vahvistaa sama tapahtuma. Jos näin tapahtuu, järjestelmä tarkistaa jokaisen kaivostyöntajan panostuksen tapahtuman vahvistamiseen laskemalla yksinkertaisesti nollat. Kaivosmies, joka on sijoittanut enemmän vaivaa (löytänyt enemmän johtavia nollia), vallitsee ja hänen lohkonsa hyväksytään.
Bitcoin-järjestelmän ensimmäinen sääntö on, että Bitcoineja voi olla enintään 21 000 000. Tätä lukua ei ole vieläkään saavutettu, ja nykyisen kehityksen mukaan uskotaan, että tämä luku saavutetaan vuoteen 2140 mennessä.
Tämä voi saada sinut kyseenalaistamaan tällaisen järjestelmän hyödyllisyyden, koska 21 miljoonaa yksikköä ei kuulosta kovin paljon. Bitcoin-järjestelmä tukee kuitenkin murto-osia kahdeksan desimaalin tarkkuudella (0,00000001). Tätä pienintä bitcoin-yksikköä kutsutaan a Satoshi , Bitcoin-protokollan takana olevan nimettömän kehittäjän Satoshi Nakamoton kunniaksi.
Uusia kolikoita luodaan palkkiona kaivostyöläisille tapahtumien vahvistamisesta. Tämä palkkio ei ole transaktiomaksu jonka määrittit luodessasi tapahtumatietueen, mutta järjestelmä määrittelee sen. Palkkion määrä pienenee ajan myötä ja lopulta se nollataan, kun liikkeeseen laskettujen kolikoiden kokonaismäärä (21m) on saavutettu. Kun näin tapahtuu, transaktiomaksuilla on paljon tärkeämpi rooli, koska kaivostyöläiset saattavat päättää priorisoida arvokkaammat tapahtumat validointia varten.
Kolikoiden enimmäismäärän asettamisen lisäksi Bitcoin-järjestelmä käyttää mielenkiintoista tapaa rajoittaa uusien kolikoiden päivittäistä tuotantoa. Kalibroimalla työtodistuksen laskemiseen vaadittava vähimmäismäärä etunollia, tapahtuman vahvistamiseen ja uusien kolikoiden saamiseen tarvittava aika asetetaan aina noin 10 minuutiksi. Jos uusien lohkojen lisääminen lohkoketjuun pienenee, järjestelmä saattaa vaatia, että työtodistus tuottaa 45 tai 50 etunollaa.
Joten, rajoittamalla kuinka nopeasti ja kuinka monta uutta kolikkoa voidaan tuottaa, Bitcoin-järjestelmä hallitsee rahan määrää tehokkaasti.
Kuten näette, oman version tekeminen Bitcoinista ei ole niin vaikeaa. Hyödyntämällä olemassa olevaa tekniikkaa, joka on toteutettu innovatiivisella tavalla, sinulla on kaikki mitä tarvitset kryptovaluuttaan.
Viimeinen mainitsemisen arvoinen asia on, että kryptovaluutta on tapa siirtää nimettömiä arvoja / tietoja käyttäjältä toiselle hajautetussa vertaisverkossa .
Harkitse tapahtumarekisterissä olevien kolikoiden korvaamista satunnaisilla tiedoilla, jotka voidaan jopa salata asynkronisella salauksella, joten vain lähettäjä ja vastaanottaja voivat purkaa sen. Ajattele nyt sen soveltamista johonkin Esineiden internet !
Salausvaluuttajärjestelmä voi olla mielenkiintoinen tapa mahdollistaa lieden ja leivänpaahtimen välinen viestintä. TweetUseat tekniset raskaspainot tutkivat jo blockchain-tekniikan käyttöä IoT-alustoilla, mutta se ei ole ainoa mahdollinen tämän suhteellisen uuden tekniikan sovellus.
Jos et näe mitään syytä luoda omaa vaihtoehtoista valuuttaa (paitsi käytännön vitsi), voit yrittää käyttää samaa tai samanlaista lähestymistapaa mihinkään muuhun, kuten hajautettu todennus, peleissä käytettävien virtuaalivaluuttojen luominen, sosiaaliset verkostot , ja muita sovelluksia, tai voit jatkaa luomalla verkkokaupan yrityksellesi uuden kanta-asiakasohjelman, joka palkitsisi kanta-asiakkaita virtuaalisilla tunnuksilla, jotka voidaan myöhemmin lunastaa.
Salausvaluutta on digitaalinen vaihtoväline, joka turvautuu ja varmistaa tapahtumien salauksen. Useimmat kryptovaluutat, kuten bitcoin, ovat hajautettuja ja konsensukseen perustuvia.
Blockhain on pohjimmiltaan digitaalisesti allekirjoitettu talouskirja. Jokainen lohkoketjun tapahtuma on näkyvissä julkisessa pääkirjassa, ja kaikki merkinnät jaetaan verkon yli, mikä edellyttää konsensusta kustakin tapahtumasta.
Jokaisesta järjestelmässä suoritetusta tapahtumasta tulee osa lohkoketjua, mutta vasta sen jälkeen, kun tietty määrä solmuja saavutetaan yksimielisyys tapahtuman pätevyydestä. Sitten tapahtuma lisätään lohkoketjuun uudessa lohkossa.