Mitä lohkon sisällä on: otsake, korkeus, koko ja lohkotuki
Lohko on pieni, kiinteä otsake sekä siirroista koostuva runko. Kun tiedät, kumpi on kumpi, ymmärrät, mitä louhinta oikeasti hashaa ja miksi.
Kaksi osaa, ja vain toinen hashataan
Lohkossa on otsake ja runko. Runko on siirrot, ja se voi olla muutama sata tavua tai useita megatavuja sen mukaan, kuinka kiireinen ketju on. Otsake on lohkon kiinteä yhteenveto, ja useimmissa ketjuissa se on tasan 80 tavua.
Louhinta hashaa otsakkeen eikä mitään muuta. Se on tämän artikkelin hyödyllisin yksittäinen tosiasia, koska se selittää jotain, mikä muuten näyttää mahdottomalta: louhintaohjelma kokeilee miljardeja muunnelmia sekunnissa, eikä se pystyisi siihen, jos jokainen yritys tarkoittaisi siirroilla täytetyn lohkon hashaamista uudelleen. Ei se tarkoita. Se hashaa uudelleen 80 tavua.
Otsakkeen kuusi kenttää
Otsakkeessa on versio, edellisen lohkon hash, merkle-juuri, aikaleima, vaikeusbitit ja nonce. Jokainen niistä on siellä syystä, ja kaksi niistä tekee suurimman osan työstä.
Edellisen lohkon hash tekee siitä ketjun. Jokainen otsake nimeää edeltäjänsä, joten vanhan lohkon uudelleenkirjoittaminen muuttaisi sen hashin, mikä rikkoisi seuraavan otsakkeen ja sitä seuraavan aina kärkeen asti. Siinä on proof of workin koko turvallisuusperuste yhdessä kentässä.
Merkle-juuri on yksi hash, joka tiivistää jokaisen rungon siirron. Muuta yhtä siirtoa vaikka yhdellä tavulla, ja merkle-juuri muuttuu, joten otsake muuttuu, joten jokainen tähän mennessä yritetty hash on arvoton. Näin 80 tavua voi rehellisesti edustaa minkä kokoista lohkoa tahansa.
Vaikeusbitit ovat tiiviissä muodossa oleva tavoite, jonka alle hashin on päädyttävä. Aikaleima kertoo suunnilleen, milloin lohko tehtiin, ja se saa olla likimääräinen. Nonce on kenttä, jota louhija saa vapaasti muuttaa, ja se tekee haun ylipäätään mahdolliseksi.
Nonce loppuu, eikä se haittaa
Nonce on pieni laskuri, ja nykyaikainen louhintaohjelma käy läpi kaikki sen mahdolliset arvot lähes välittömästi. Tämä kuulostaa umpikujalta mutta ei ole, koska nonce on vain kätevin muutettava asia, ei koskaan ainoa.
Kun se loppuu, louhintaohjelma muuttaa jotain muuta, mikä vaikuttaa otsakkeeseen. Aikaleima voi siirtyä. Coinbase-siirtoa voi muuttaa hieman, mikä muuttaa merkle-juuren, mikä antaa täysin uuden otsakkeen haettavaksi. Poolissa juuri tätä varten on extranonce: sen avulla pooli antaa jokaiselle louhijalle eri lähtöpisteen, jotta kaksi louhijaa ei koskaan jauha samoja lukuja.
Korkeus on sijainti, ei kenttä
Lohkon korkeus on se, kuinka monta lohkoa tiettyä lohkoa edelsi. Genesis-lohkon korkeus on nolla, seuraavan yksi ja niin edelleen. Se on luku, jonka näet jokaisen merkinnän vieressä poolin Lohkot-sivulla ja missä tahansa lohkoselaimessa.
Kannattaa tietää, ettei korkeutta oikeastaan tallenneta otsakkeeseen. Se johdetaan siitä, missä kohtaa ketjua lohko on. Useimmissa nykyaikaisissa ketjuissa korkeus kirjoitetaan myös coinbase-siirtoon, mikä on myöhemmin lisätty sääntö, jotta kaksi eri korkeudella olevaa lohkoa ei voi koskaan olla tavu tavulta identtisiä, mutta lohkon korkeuden määräävä vastaus on edelleen sen sijainti.
Siksi korkeus on myös luonteva tapa puhua vahvistuksista. Kuuden lohkon syvyyteen haudattu siirto on siirto, jonka lohkon korkeus on kuusi kärjen alapuolella, ja jokainen uusi lohko tekee sen uudelleenkirjoittamisesta sitäkin kalliimpaa.
Koko on runko, ja se täyttyy
Lohkon koko on käytännössä rungon koko, koska otsake on sen rinnalla pyöristysvirhe. Kun ihmiset sanovat ketjulla olevan lohkon kokoraja, he puhuvat siitä, kuinka monta siirtoa mahtuu, eivät otsakkeesta.
Täysi lohko ja tyhjä lohko vaativat täsmälleen saman määrän louhintatyötä. Vaikeusaste ratkaisee, kuinka vaikea lohko on löytää; koko ratkaisee, kuinka paljon lohko kuljettaa. Ne eivät liity toisiinsa, ja niiden sekoittaminen on monen huonon maksuja koskevan intuition lähde.
Koko vaikuttaa maksumarkkinaan. Kun sisään haluaa enemmän siirtoja kuin mahtuu, korkeampia maksuja tarjoavat pääsevät ensin, ja lohkon kokonaismaksut nousevat. Se näkyy suoraan siinä, mitä lohko maksaa.
Coinbase-siirto ja lohkotuki
Jokaisen lohkon ensimmäinen siirto on erityinen. Sillä ei ole lähettäjää, se luo kolikoita tyhjästä ja maksaa ne sille, joka teki lohkon. Sitä kutsutaan coinbase-siirroksi, eikä sillä ole mitään tekemistä samannimisen pörssin kanssa.
Se maksaa lohkotuen sekä lohkon kaikkien muiden siirtojen maksut. Lohkotuki on uutena liikkeeseen laskettu osa, jonka ketjun liikkeeseenlaskuaikataulu määrää ja joka useimmissa kolikoissa pienenee ajan myötä. Maksut ovat se, mitä käyttäjät liittivät siirtoihinsa päästäkseen mukaan. Yhdessä ne ovat lohkopalkkio.
Poolissa coinbase maksaa poolille, joka sitten jakaa palkkion kaikkien niiden kesken, jotka toivat shareja kyseiseen kierrokseen. Se ei ole kiertotie: näin pooli voi maksaa monelle ihmiselle palkkiosta, joka saapuu yhtenä jakamattomana maksuna.
Miksi tällä on merkitystä louhiessasi
Kolme asiaa käy ilmeiseksi, kun lohkon rakenne on selvä, ja kaikki kolme tulevat vastaan jatkuvasti.
- Miksi uusi lohko mitätöi työsi välittömästi. Edellisen lohkon hash -kenttä muuttui, joten otsaketta, jota etsit, ei enää ole olemassa. Kaikki, mitä lähetät sille sen jälkeen, on stale share, eikä mikään nopeus korjaa sitä.
- Miksi pooli lähettää sinulle uutta työtä niin usein. Jokainen uusi siirto, jonka pooli haluaa sisällyttää, muuttaa merkle-juuren, ja tuoreempi pohja sisältää enemmän maksuja, mikä on enemmän palkkiota samalla työllä.
- Miksi lohkon koko ei koskaan näy tuottoarviossa. Tuottosi ratkaisevat vaikeusaste, lohkotuki ja maksut, ei se, kuinka monta tavua rungossa oli.
Tämän poolin Lohkot-sivu näyttää korkeuden, palkkion ja löytöajan, mikä on kaiken yllä olevan hyödyllinen osa tiivistettynä yhdelle riville. Lohkoselain näyttää loput, mukaan lukien coinbase-siirron, joka sen maksoi.