Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Tiivistelmä Hajautuksesta | Lohkot ja transaktiot
Johdatus Lohkoketjuun

bookTiivistelmä Hajautuksesta

Hajautusta ja lohkojen tiivisteitä on mainittu useaan otteeseen, mutta itse käsitettä ei ole vielä tarkasteltu yksityiskohtaisesti. Nyt on aika ymmärtää, mitä hajautus todella tarkoittaa.

Note
Lisätietoa

Hajautus on prosessi, jossa syöte muunnetaan kiinteän kokoiseksi tavujonoksi, joka esitetään tyypillisesti heksadesimaalilukuna. Tulosta kutsutaan tiivisteeksi, ja se vaikuttaa satunnaiselta sekä muuttuu täysin, jos syötettä muutetaan. Tätä ominaisuutta kutsutaan "lumivyöryefektiksi".

Hajautusfunktioiden ominaisuudet

Lohkoketjussa hajautusfunktioita käytetään:

  • Turvaamaan tapahtumat luomalla jokaiselle yksilöllinen sormenjälki;
  • Luomaan osoitteita julkisista avaimista;
  • Muodostamaan lohkoketjun linkit lohkotiivisteiden avulla.

Tämän perusteella hyvä hajautusfunktio lohkoketjua varten sisältää useita keskeisiä ominaisuuksia:

Hajautusta, erityisesti hyvän hajautusfunktion avulla, voidaan verrata smoothien valmistamiseen. Tarkastellaan seuraavaa havainnollistusta:

Itse asiassa on mahdollista löytää alkuperäinen syöte annetusta hajautusarvosta, mutta siihen kuluisi niin paljon aikaa, ettei se olisi käytännössä mahdollista.

Lohkon hajautus

Bitcoin käyttää tietyn lohkon hajautuksen saamiseksi SHA-256-hajautusfunktiota, joka tuottaa 256-bittisen (32-tavuisen) hajautusarvon. Se kuuluu SHA-2-perheeseen, jonka on suunnitellut National Security Agency (NSA) ja joka tunnetaan vahvoista suojausominaisuuksistaan, tehden siitä vastustuskykyisen törmäyksille, esikuvahyökkäyksille ja muille kryptografisille haavoittuvuuksille.

Bitcoin-lohkon hajautus lasketaan ottamalla lohkon otsikkotiedot. Nämä tiedot syötetään SHA-256-hajautusfunktioon kahdesti prosessissa, jota kutsutaan kaksois-SHA-256:ksi.

Tässä on kuva selventämään asiaa:

Tuloksena syntyvän 256-bittisen hajautusarvon on täytettävä verkon vaikeustason määrittelemät kriteerit. Jos hajautusarvo ei alita tavoitetta, nonce-arvoa säädetään ja hajautus lasketaan uudelleen, kunnes vaatimukset täyttävä hajautusarvo löytyy. Tämä lopullinen hajautusarvo toimii lohkon yksilöllisenä tunnisteena.

Merkle-juuri

Merkle-juuri on yksittäinen hajautusarvo, joka edustaa kaikkia lohkoon sisältyviä transaktioita. Sen laskenta alkaa jokaisen yksittäisen transaktion hajautusarvosta käyttäen kaksois-SHA-256 -algoritmia.

Jokainen transaktiohajautus paritetaan toisen kanssa, ja pari hajautetaan yhdessä uuden hajautusarvon tuottamiseksi. Tätä parittamista ja hajauttamista jatketaan kerros kerrokselta, kunnes jäljellä on vain yksi hajautusarvo. Lopullinen hajautusarvo on Merkle-juuri, joka kattaa koko transaktiosarjan ja varmistaa niiden eheyden koodaamalla ne yhteen arvoon. Tätä hierarkkista rakennetta kutsutaan nimellä Merkle-puu.

Seuraava esimerkki havainnollistaa, miten Merkle-puu muodostetaan:

Kuten huomaat, lohkossamme on 6 transaktiota (jokainen merkitty Tx-tunnisteella) ja hajauttamalla sekä parittamalla uusia hajautuksia muodostetaan Merkle-juuri.

Note
Huomio

Aina kun oikeanpuoleisella hashilla ei ole paria, kuten esimerkissämme Hash56, tämä viimeinen hash kopioidaan parin muodostamiseksi. Tämä tekniikka säilyttää Merkle-puun rakenteen eheyden ja tehokkuuden myös silloin, kun transaktioiden tai hashien määrä on pariton jossain vaiheessa.

question mark

Mikä on Bitcoinin lohkoketjussa käytetyn SHA-256-hash-funktion ulostulon koko?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 4

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

Can you explain more about how the Merkle tree structure works?

What is the purpose of the nonce in block hashing?

How does double SHA-256 improve security in Bitcoin?

Awesome!

Completion rate improved to 6.25

bookTiivistelmä Hajautuksesta

Pyyhkäise näyttääksesi valikon

Hajautusta ja lohkojen tiivisteitä on mainittu useaan otteeseen, mutta itse käsitettä ei ole vielä tarkasteltu yksityiskohtaisesti. Nyt on aika ymmärtää, mitä hajautus todella tarkoittaa.

Note
Lisätietoa

Hajautus on prosessi, jossa syöte muunnetaan kiinteän kokoiseksi tavujonoksi, joka esitetään tyypillisesti heksadesimaalilukuna. Tulosta kutsutaan tiivisteeksi, ja se vaikuttaa satunnaiselta sekä muuttuu täysin, jos syötettä muutetaan. Tätä ominaisuutta kutsutaan "lumivyöryefektiksi".

Hajautusfunktioiden ominaisuudet

Lohkoketjussa hajautusfunktioita käytetään:

  • Turvaamaan tapahtumat luomalla jokaiselle yksilöllinen sormenjälki;
  • Luomaan osoitteita julkisista avaimista;
  • Muodostamaan lohkoketjun linkit lohkotiivisteiden avulla.

Tämän perusteella hyvä hajautusfunktio lohkoketjua varten sisältää useita keskeisiä ominaisuuksia:

Hajautusta, erityisesti hyvän hajautusfunktion avulla, voidaan verrata smoothien valmistamiseen. Tarkastellaan seuraavaa havainnollistusta:

Itse asiassa on mahdollista löytää alkuperäinen syöte annetusta hajautusarvosta, mutta siihen kuluisi niin paljon aikaa, ettei se olisi käytännössä mahdollista.

Lohkon hajautus

Bitcoin käyttää tietyn lohkon hajautuksen saamiseksi SHA-256-hajautusfunktiota, joka tuottaa 256-bittisen (32-tavuisen) hajautusarvon. Se kuuluu SHA-2-perheeseen, jonka on suunnitellut National Security Agency (NSA) ja joka tunnetaan vahvoista suojausominaisuuksistaan, tehden siitä vastustuskykyisen törmäyksille, esikuvahyökkäyksille ja muille kryptografisille haavoittuvuuksille.

Bitcoin-lohkon hajautus lasketaan ottamalla lohkon otsikkotiedot. Nämä tiedot syötetään SHA-256-hajautusfunktioon kahdesti prosessissa, jota kutsutaan kaksois-SHA-256:ksi.

Tässä on kuva selventämään asiaa:

Tuloksena syntyvän 256-bittisen hajautusarvon on täytettävä verkon vaikeustason määrittelemät kriteerit. Jos hajautusarvo ei alita tavoitetta, nonce-arvoa säädetään ja hajautus lasketaan uudelleen, kunnes vaatimukset täyttävä hajautusarvo löytyy. Tämä lopullinen hajautusarvo toimii lohkon yksilöllisenä tunnisteena.

Merkle-juuri

Merkle-juuri on yksittäinen hajautusarvo, joka edustaa kaikkia lohkoon sisältyviä transaktioita. Sen laskenta alkaa jokaisen yksittäisen transaktion hajautusarvosta käyttäen kaksois-SHA-256 -algoritmia.

Jokainen transaktiohajautus paritetaan toisen kanssa, ja pari hajautetaan yhdessä uuden hajautusarvon tuottamiseksi. Tätä parittamista ja hajauttamista jatketaan kerros kerrokselta, kunnes jäljellä on vain yksi hajautusarvo. Lopullinen hajautusarvo on Merkle-juuri, joka kattaa koko transaktiosarjan ja varmistaa niiden eheyden koodaamalla ne yhteen arvoon. Tätä hierarkkista rakennetta kutsutaan nimellä Merkle-puu.

Seuraava esimerkki havainnollistaa, miten Merkle-puu muodostetaan:

Kuten huomaat, lohkossamme on 6 transaktiota (jokainen merkitty Tx-tunnisteella) ja hajauttamalla sekä parittamalla uusia hajautuksia muodostetaan Merkle-juuri.

Note
Huomio

Aina kun oikeanpuoleisella hashilla ei ole paria, kuten esimerkissämme Hash56, tämä viimeinen hash kopioidaan parin muodostamiseksi. Tämä tekniikka säilyttää Merkle-puun rakenteen eheyden ja tehokkuuden myös silloin, kun transaktioiden tai hashien määrä on pariton jossain vaiheessa.

question mark

Mikä on Bitcoinin lohkoketjussa käytetyn SHA-256-hash-funktion ulostulon koko?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 4
some-alt