Solmun määritelmä voi vaihdella kontekstin mukaan. Kun kyse on tietokone- tai tietoliikenneverkoista, solmut voivat toimia joko uudelleenjakopisteenä tai viestinnän päätepisteenä. Yleensä solmu koostuu fyysisestä verkkolaitteesta, mutta on joitain tapauksia, joissa käytetään virtuaalisia solmuja.
Verkkosolmu on piste, jossa viesti voidaan luoda, vastaanottaa tai lähettää. Täten puhutaan erityyppisistä Bitcoin-solmuista: täysistä solmuista, supersolmuista, louhintasolmuista ja SPV-asiakkaista.
Bitcoin-solmut
Hajautetuiksi järjestelmiksi suunnitelluista lohkoketjuista puhuttaessa tietokonesolmujen verkko mahdollistaa Bitcoinin käytön hajautettuna vertaispohjaisena (P2P) digitaalisena valuuttana. Tämän ansiosta se on rakenteeltaan sensuurinkestävä eikä vaadi välittäjää käyttäjien välille (riippumatta siitä, kuinka kaukana he ovat toisistaan).
Niinpä lohkoketjusolmut ovat vastuussa siitä, että ne toimivat viestintäpisteenä, joka voi suorittaa erilaisia toimintoja. Mitä tahansa tietokonetta tai laitetta, joka muodostaa yhteyden Bitcoinin käyttöliittymään, voidaan pitää solmuna siinä mielessä, että se kommunikoi jotenkin muiden yhdistettyjen laitteiden kanssa. Nämä solmut pystyvät myös lähettämään tietoa transaktioista ja lohkoista hajautetussa tietokoneverkossa käyttämällä Bitcoinin vertaisverkkoprotokollaa. Jokainen tietokonesolmu määritellään kuitenkin sen erityisten toimintojen mukaan, joten Bitcoin-solmuja on erityyppisiä.
Täydet solmut
Täydet solmut ovat niitä, jotka todella tukevat ja tarjoavat turvallisuutta Bitcoinille, ja ne ovat välttämättömiä verkon toiminnalle. Näitä solmuja voidaan kutsua myös täysin vahvistaviksi solmuiksi, koska ne harjoittavat transaktioiden ja lohkojen tarkistamista järjestelmän konsensussääntöjen mukaisesti. Täydet solmut pystyvät lisäksi välittämään uusia transaktioita ja lohkoja lohkoketjuun.
Yleensä täysi solmu lataa kopion Bitcoin-lohkoketjusta jokaisen lohkon ja transaktion yhteydessä, mutta tämä ei ole vaatimus sille, että solmua pidetään täytenä solmuna (sen sijaan voidaan käyttää supistettua kopiota lohkoketjusta).
Täysi Bitcoin-solmu voidaan luoda erilaisten ohjelmistototeutusten avulla, mutta käytetyin ja suosituin on Bitcoin Core. Nämä ovat vähimmäisvaatimukset täyden Bitcoin Core -solmun ylläpitämiseksi:
Pöytätietokone tai kannettava tietokone, jossa on uusin Windows-, Mac OS X- tai Linux-versio.
200 Gt vapaata levytilaa.
2 Gt muistia (RAM).
Nopea internetyhteys, jonka latausnopeus on vähintään 50 kt/s.
Rajoittamaton tiedonsiirto tai yhteys, jolla on korkeat latausrajat. Täydet online-solmut voivat saavuttaa tai ylittää verkkoon latauskäytön 200 Gt/kk ja verkosta latauskäytön 20 Gt/kk. Sinun on myös ladattava noin 200 Gt:n edestä tietoja, kun käynnistät täyden solmun ensimmäisen kerran.
Koko solmun pitäisi toimia vähintään 6 tuntia päivässä. Vieläkin parempi olisi, jos se olisi jatkuvasti käytössä (ympäri vuorokauden).
Monet vapaaehtoisjärjestöt ja käyttäjät ylläpitävät täysiä Bitcoin-solmuja keinona auttaa Bitcoin-ekosysteemiä. Vuonna 2018 Bitcoin-verkossa oli noin 9 700 julkista solmua. Huomaa, että tämä numero sisältää vain julkiset solmut, jotka viittaavat kuunteleviin Bitcoin-solmuihin, jotka ovat näkyvissä ja käytettävissä (eli kuunteleviin solmuihin).
Julkisten solmujen lisäksi on monia muita piilotettuja solmuja, jotka eivät ole näkyvissä (ei-kuuntelevat solmut). Nämä solmut toimivat yleensä palomuurin takana, piilotettujen protokollien, kuten Torin, kautta tai ne ovat piilossa yksinkertaisesti siksi, että ne on määritetty olemaan kuuntelematta yhteyksiä.
Kuuntelevat solmut (supersolmut)
Pohjimmiltaan kuunteleva solmu tai supersolmu on täysi solmu, joka on julkisesti näkyvissä. Se kommunikoi ja jakaa tietoja kaikille muille solmuille, jotka päättävät muodostaa yhteyden siihen. Siksi supersolmu on pohjimmiltaan uudelleenjakopiste, joka voi toimia sekä tietolähteenä että viestintäsiltana.
Luotettava supersolmu toimii tyypillisesti ympäri vuorokauden, ja sillä on useita vakiintuneita yhteyksiä, jotka lähettävät lohkoketjun historian ja transaktiotiedot useisiin solmuihin ympäri maailmaa. Tästä syystä supersolmu vaatii todennäköisesti enemmän laskentatehoa ja paremman internetyhteyden verrattuna täyteen piilotettuun solmuun.
Louhintasolmut
Jotta Bitcoineja voitaisiin louhia nykyisessä kilpailutilanteessa, on investoitava erikoistuneisiin louhintalaitteisiin ja -ohjelmiin. Nämä louhintaohjelmat (ohjelmistot) eivät liity suoraan Bitcoin Coreen, ja ne suoritetaan rinnakkain Bitcoin-lohkojen louhimiseksi. Louhija voi halutessaan työskennellä yksin (yksin louhija) tai ryhmissä (poolilouhija).
Vaikka yksin louhijoiden täydet solmut käyttävät omaa kopiotaan lohkoketjusta, poolilouhijat työskentelevät yhdessä ja niistä jokainen tarjoaa oma laskentatehoaan (hashpower). Louhintapoolissa vain poolin hallinnoijan on ylläpidettävä täyttä solmua – jota voidaan kutsua poolilouhijan täydeksi solmuksi.
Kevyet tai SPV-asiakkaat
Myös nimellä Simplified Payment Verification (SPV) -asiakkaat tunnetut kevyet asiakkaat ovat niitä, jotka hyödyntävät Bitcoin-verkkoa mutta jotka eivät oikeasti toimi täytenä solmuna. Siksi SPV-asiakkaat eivät osallistu verkon turvallisuuden takaamiseen, koska niillä ei ole kopiota lohkoketjusta eivätkä ne osallistu transaktioiden todentamis- ja vahvistusprosessiin.
Lyhyesti sanottuna SPV on menetelmä, jolla käyttäjä voi tarkistaa, sisältyivätkö jotkin transaktiot lohkoon vai eivät, ilman että hänen tarvitsee ladata koko lohkodataa. Siten SPV-asiakkaat luottavat muiden täysien solmujen (supersolmujen) tarjoamiin tietoihin. Kevyet asiakkaat toimivat viestinnän päätepisteinä, ja monet kryptolompakot käyttävät niitä.
Asiakas- vs. louhintasolmut
On tärkeää huomata, että täyden solmun ylläpitäminen ei ole sama asia kuin täyden louhintasolmun suorittaminen. Vaikka louhijan on investoitava kalliisiin louhintalaitteisiin ja -ohjelmistoihin, kuka tahansa voi ylläpitää täysin vahvistavaa solmua.
Ennen kuin louhija voi yrittää louhia lohkoja, sen on kerättävä odottavia transaktioita, jotka täydet solmut ovat aiemmin hyväksyneet kelvollisiksi. Seuraavaksi louhija luo ehdokaslohkon (jossa on ryhmä transaktioita) ja yrittää louhia lohkon. Jos louhija onnistuu löytämään kelvollisen ratkaisun ehdokaslohkoonsa, hän lähettää sen verkkoon, jotta muut täydet solmut voivat tarkistaa lohkon pätevyyden. Louhijoiden sijaan siis vahvistavien solmujen hajautettu verkosto määrittää ja suojaa konsensussäännöt.
Yhteenveto
Bitcoin-solmut kommunikoivat keskenään Bitcoin P2P -verkkoprotokollan kautta, ja näin ne takaavat järjestelmän eheyden. Rehelliset solmut tunnistavat nopeasti solmun, joka käyttäytyy huonosti tai yrittää levittää virheellistä tietoa, ja se irrotetaan verkosta.
Huolimatta siitä, että täysin vahvistavan solmun ylläpitäminen ei tarjoa taloudellisia palkkioita, se on erittäin suositeltavaa, koska se tarjoaa käyttäjille luottamusta, turvallisuutta ja yksityisyyttä. Täydet solmut varmistavat, että sääntöjä noudatetaan. Ne suojaavat lohkoketjua hyökkäyksiltä ja petoksilta (kuten kaksinkertaiselta kulutukselta). Lisäksi täyden solmun ei tarvitse luottaa muihin, ja sen avulla käyttäjä voi hallita rahojaan täysin.