Offline lompakot?

Olen tässä lukenut lukuisilta nettisivuilta asiaa bitcoineista ja lompakoista, koska minua on alkanut kiinnostamaan tämä bitcoin, ja siihen sijoittaminen. Minulle on kuitenkin jotkin asiat epäselviä. Eli siis… ;D

Offline lompakko, aivolompakko ja paperilompakko?
Miten se muka voi olla offline? Eikö sen pitäs päästä nettiin, jotta rahat näkyvät ko. lompakossa. Eräällä sivulla mainittiin, että lompakon voi luoda offline tilassa niin että tallentaa javascript pohjalla olevan sivun vaikka koneelle, tai usb-tikulle. Sitten laittaa usb tikun koneeseen, joka ei ole koskaan ollut internetissä, eikä tule olemaan. Sitten suorittaa tallennettun sivun sieltä tikulta, ja luo se lompakon. Noni nyt mulla on offline lompakko. Onko mahdollista, pienelläkään teorian tasolla, että kaksi ihmistä tekee saman prosessin, samaan aikaan, ja heille muodostuu täsmälleen sama lompakko? Sillä eihän vertaisverkko voi olla tietoinen tämmöisestä lompakosta? Vai miten tuo menee? Pitääkö se jossain vaiheessa yhdistää nettiin?

En siis löydä, ainakaan helposti, perus tietoa lompakosta. Lompakko voi siis olla fyysinen? Paperilla? Tai tietokoneella tiedostona? Joo se selvisi jotenkuten. Mutta miten vertaisverkko tulee tietoiseksi lompakon olemassa olosta? Mitä jos luon lompakon nyt läppärillä, joka ei ole netissä. Ja siltä samalta seisomalta laitan sinne toiselta koneelta rahaa netin kautta. Miten näen ne rahat tuolla offline lompakolla? Voisiko joku kiltti mahdollisimman yksinkertaisesti selittää tuon perusperiaatteen.

Vai olenko nyt ihan pihalla?

[quote=“farkku, post:1, topic:2510”]Olen tässä lukenut lukuisilta nettisivuilta asiaa bitcoineista ja lompakoista, koska minua on alkanut kiinnostamaan tämä bitcoin, ja siihen sijoittaminen. Minulle on kuitenkin jotkin asiat epäselviä. Eli siis… ;D

Offline lompakko, aivolompakko ja paperilompakko?
Miten se muka voi olla offline? Eikö sen pitäs päästä nettiin, jotta rahat näkyvät ko. lompakossa. Eräällä sivulla mainittiin, että lompakon voi luoda offline tilassa niin että tallentaa javascript pohjalla olevan sivun vaikka koneelle, tai usb-tikulle. Sitten laittaa usb tikun koneeseen, joka ei ole koskaan ollut internetissä, eikä tule olemaan. Sitten suorittaa tallennettun sivun sieltä tikulta, ja luo se lompakon. Noni nyt mulla on offline lompakko. Onko mahdollista, pienelläkään teorian tasolla, että kaksi ihmistä tekee saman prosessin, samaan aikaan, ja heille muodostuu täsmälleen sama lompakko? Sillä eihän vertaisverkko voi olla tietoinen tämmöisestä lompakosta? Vai miten tuo menee? Pitääkö se jossain vaiheessa yhdistää nettiin?

En siis löydä, ainakaan helposti, perus tietoa lompakosta. Lompakko voi siis olla fyysinen? Paperilla? Tai tietokoneella tiedostona? Joo se selvisi jotenkuten. Mutta miten vertaisverkko tulee tietoiseksi lompakon olemassa olosta? Mitä jos luon lompakon nyt läppärillä, joka ei ole netissä. Ja siltä samalta seisomalta laitan sinne toiselta koneelta rahaa netin kautta. Miten näen ne rahat tuolla offline lompakolla? Voisiko joku kiltti mahdollisimman yksinkertaisesti selittää tuon perusperiaatteen.

Vai olenko nyt ihan pihalla?[/quote]

Tsaups!
Parempaa lausahdusta vailla sanottava näin alkuun, että terve tuloa Bitcoinin ihmeelliseen muailmaan, hehe :slight_smile: Bitcoin onkin hyvin laaja ja monimutkainen keksintö, johon saakin tutustua ja käyttää melko paljolti aikaa, jotta sen laajemmalti ja syvällisemmin ymmärtää :wink:

Ennen kun alan selventämään tuota offline lompakon toimintaa, mainitsempa asian joka on hyvä tietää, jotta asiat valkenee helpommin. Bitcoin koostuu itseasiassa kolmesta eri ~asiasta:

  • Bitcoin Network (hajautettu, julkinen verkko, joka toimii ennaltamäärättyjen sääntöjen mukaan)
  • Bitcoin Blockchain (hajautettu, julkinen asiakirja. “Lohkoketju” näin suomalaisittain)
  • Bitcoin Currency (ensimmäinen / natiivi “assetti”, josta pidetään kirjaa Bitcoin blockchainissa, Bitcoin verkon avulla)

Sekä! Toinen asia, jonka haluan myös aina mainita aloittaville bitcoinereille :wink:
Tulet varmaan kuulemaan tämän monelta muultakin, mutta Bitcoin valuuttaan sijoittamisessa on suuret riskit… joten sijoittaa ei kannata yhtään enempää, kuin mitä olet valmis häviämään :wink: Blockchain teknologia on vasta ns. lasten tossuissa ja kehitystä alalla tapahtuu hämmästyttävää vauhtia, joten tilanteet muuttuvat myös sen myötä melkolailla. Voi siis hyvinkin olla, että Bitcoin valuutan tilalle tulee jokin muu kryptovaluutta… tai useita muita kryptovaluuttoja. Mutta toki on myös mahdollista, että Bitcoinista tulee "the one to rule ‘em all’. Tuota ei kukaan vielä varmasti tiedä :wink:
Joten… neuvoisin ensisijaisesti tutustumaan ja testailemaan Bitcoinin jo mahdollistamiin ja tuomiin parannuksiin normaaleihin maksuväylien verrattuna. Esimerkiksi käyttämistä vaikka ihan eri suomalaisten pankkien välisten tilisiirtojen 1-3pv kestävien “varmennusten” kiertämiseen, ulkomaan rahansiirtojen maksujen kiertämiseen, joidenkin nettikauppojen ja kauppiaiden tarjoamiin maksutapa alennuksiin, taikka ihan mikromaksuihin / tippaukseen :wink:

Muttasitten! Itse vastauksiin :slight_smile:

Tuota onkin melko vaikia selittää kattavasti, koska järjestelmä onpi loppupeleissä melko kompleksi :stuck_out_tongue: Mutta yritetään :slight_smile:

Bitcoin lompakko on vähän harhaanjohtava nimitys… parempi vertauskuva “lompakko” ohjelmille on avainketju. Bitcoin lompakko ei siis itsessään säilö Bitcoineja, vaan avaimen… eli käyttöoikeuden tiettyyn Bitcoin osoitteeseen. Osoitteen balanssi siis kirjataan vain tuonne Bitcoin lohkoketjuun.

Osoitteet (public key) ja osoitteen käyttöoikeutta vastaava avain (private key), luodaan kryptologialla. Erinäiset bitcoin ohjelmistot siis luovat nuo avaimet ennaltasovittujen algoritmien perusteella, jotka siten pystytään varmentamaan Bitcoin verkossa.

Teorian tasolla tuo siis on mahdollista, että kaksi (tai miksei useampikin) henkilöä generoisi samat private keyt (ja sitä kautta myös saman public keyn). Tuon todennäköisyys on kuitenkin erittäin pieni :wink: En näin suoriltaan muista tarkkaa lukua, mutta se oli luokkaa yksi / (luku jossa on biljoonia numeroita). Ei siis 1 000 000 000 000 (yksi biljoona, tuhat miljardia, miljoona miljoonaa), vaan 1 000 000 000 000 000 000 000 000… nollia tuohon perään niin kauan lisää, että numeroita on biljoona kappaletta. Tai jotain tuohon suuntaan :wink: On laskettu, että todennäköisyys löytää yksi jo käytössä oleva private key, kestäisi nykyteknologialla kymmeniä… ellei satoja tuhansia vuosia.

Esimerkkisi on juurikin se menettelytapa, jolla offlinessä luotuihin osoitteisiin kannattaa Bitcoineja siirtää :wink:
Verkko tulee tietoiseksi tuosta osoitteesta siinä vaiheessa, kun teet onlinessä olevalla koneella ja Bitcoin osoitteella jossa jo on Bitcoineja, siirron. Lainaan itseäni toisesta ketjusta (bitcoin core lompakko):

[quote=“BaaBlo, post:7, topic:2423”]clip
Lisäyksenä kuitenkin aikaisempiin, täsä “perustallaajan” vastaus:
Kun lähetät bitcoineja, lähetys sisältää tiedon, että mitkä bitcoinit on tarkoitus lähettää, mihin osoitteeseen, ja allekirjoitus näiden tiettyjen bitcoinien lähetykseen.
Muut nodet (oli se sitten light node tai full node) tarkistavat omasta ladatusta lohkoketjustaan, onko tuon lähetyksen tekijällä… tai tarkemmin lähetyksessä käytettävässä osoitteessa… tarpeeksi bitcoineja, sekä onko tuo allekirjoitus oikea.
Jos lähetys on validi, nodet merkkaavat sen moiseksi.

Louhijat (louhijat/poolit siis myös ovat full nodeja) sitten löytäessään uuden lohkon, kirjoittavat nämä vastaanotetut lähetykset lohkoketjuun.[/quote]

Tuokin vastaus on tosiaan simppelöistetty, ja on asia todellisuudessa vähän monimutkaisempi :wink:
Tuota kuitenkin vielä kysymykseesi tarkentaen näin simppelillä linjalla jatkaen, kun teet tuon lähetyksen ja verkko toteaa, että lähetettävästä osoitteessa on tarvittava määrä Bitcoineja, tarkistaa se vielä, että osoite johon lähetys tehdään on myös noiden ennaltamäärättyhen algoritmien tuotos… eli että osoite on validi. Verkko ei kuitenkaan voi mitenkään varmistaa sitä, että onko private keytä olemassa tuolle kyseiselle osoitteelle… eli periaattessa voit lähettää bitcoineja osoitteeseen, jolla ei vielä ole varsinaista hallitsijaa :smiley: Siispä kannattaakin olla aina tarkkana osoitteen kanssa.

Hehe, toivottavasti selvensi asiaa vähän :stuck_out_tongue: Pitkään taas valvoneena saattaa teksti olla vähän sekavaa… joten kysy ihmeessä jatkokymysyksia, jos sellaisia herää :slight_smile:

Kiitos paljon noinkin kattavan vastauksen vaivannäöstä! :slight_smile: Tuo selvitti minulle asiaa hiukan. Itse en ole sijoittamassa enempää, kuin olen valmis häviämään. Ajattelin lähinnä bitcoinia maksamista varten, ja sen ohella myös säästämistä varten. Myös lite- ja dogecoineja ajattelin, mutta niitä vaan ihan pikkusäästö tarkoituksissa. Mut hiukan epäilyttää tämän aloittaminen, kun ei tiedä kaikkea.

Eli siis, jos luon nyt offline lompakon. Periaatteessa joku on sen voinut jo luoda. Laittelen sinne rahaa vaikka vuoden päivät, kunnes vuoden jälkeen huomaan että oho. Se on ollut käytössä. Sekin on myös sitten ilmeisesti mahdollista, että luon itelleni lompakon, ja joku on vastaavasti vuoden päivät laitellu sinne rahaa, ja huomaan että oho, musta tuli rikas pelkällä lompakon luonnilla. Vaikka tuo nyt siis onkin epätodennäköistä, niin tekniikan kehittiyessä tuo muuttuu varsin kiehtovaksi. Jokuhan voisi huvikseen luoda lompakoita siinä toivossa että joku on kämmännyt.

Nojoo, haluaisin nyt luoda paperi/aivolompakon sekä bit, lite ja -dogecoineille. Tai vaihtoehtoisesti ehkä sen offline lompakon. Mutta, mikä on turvallisin tapa saada nähtyä lompakon tilitiedot ja saldo? Eikös tässä kohtaa pidä olla yhteys tähän kryptovaluutan vertaisverkkoon?

Yhteys verkkoon pitää tosiaan olla saldon ja siirtojen tutkimiseksi, mutta siihen riittää osoite (public key), eli siirtojen tekoon tarvittavaa salausavainta ei tarvitse paljastaa. Selaimella ilman ohjelmien asennusta saldon voi tarkistaa esimerkiksi blockchain.info -sivustolla, kun syöttää hakusanaksi bitcoin-osoitteen. Jos taas haluat tarkistella saldoa muuallakin kuin tietokoneen äärellä ja esimerkiksi helposti antaa osoitteen muille vastaanottaaksesi bitcoineja, kannattanee kännykkään asentaa bitcoin-lompakko. Näissä on yleensä mahdollisuus lisätä lompakkoon pelkkä osoite (jälleen ilman salausavainta), jolloin lompakko tarkistaa osoitteen saldon ja siirrot verkosta, mutta ei pysty tekemään siirtoja ilman, että erikseen syötät salausavaimen. Lompakkosovelluksissa on usein myös toiminto, jolla voi suoraan näyttää osoitteen (ja halutessaan maksun määrän) QR-koodina, jolloin maksun lähettäjä voi sen helposti lukea omaan kännykkäänsä lompakkosovellukseen.

[quote=“ottulo, post:4, topic:2510”][quote author=farkku link=topic=2810.msg22626#msg22626 date=1420697393]
Nojoo, haluaisin nyt luoda paperi/aivolompakon sekä bit, lite ja -dogecoineille. Tai vaihtoehtoisesti ehkä sen offline lompakon. Mutta, mikä on turvallisin tapa saada nähtyä lompakon tilitiedot ja saldo? Eikös tässä kohtaa pidä olla yhteys tähän kryptovaluutan vertaisverkkoon?
[/quote]

Yhteys verkkoon pitää tosiaan olla saldon ja siirtojen tutkimiseksi, mutta siihen riittää osoite (public key), eli siirtojen tekoon tarvittavaa salausavainta ei tarvitse paljastaa. Selaimella ilman ohjelmien asennusta saldon voi tarkistaa esimerkiksi blockchain.info -sivustolla, kun syöttää hakusanaksi bitcoin-osoitteen. Jos taas haluat tarkistella saldoa muuallakin kuin tietokoneen äärellä ja esimerkiksi helposti antaa osoitteen muille vastaanottaaksesi bitcoineja, kannattanee kännykkään asentaa bitcoin-lompakko. Näissä on yleensä mahdollisuus lisätä lompakkoon pelkkä osoite (jälleen ilman salausavainta), jolloin lompakko tarkistaa osoitteen saldon ja siirrot verkosta, mutta ei pysty tekemään siirtoja ilman, että erikseen syötät salausavaimen. Lompakkosovelluksissa on usein myös toiminto, jolla voi suoraan näyttää osoitteen (ja halutessaan maksun määrän) QR-koodina, jolloin maksun lähettäjä voi sen helposti lukea omaan kännykkäänsä lompakkosovellukseen.[/quote]

Okei. Mutta mites sitten kun halun liikuttaa tätä bitcoinia, tai käyttää sitä maksamiseen? Mitä sitten? Katoaako tässä kohtaa se turvallisuus. Haluan nimenomaan luoda siis itselleni turvallisen lompakon, mutta mikä on se turvallisin tapa hoitaa maksaminen/käyttäminen esim. tuon aivolompakon kanssa?

E: Käsitinkö nyt asian juuren? Eli bitcoin, tai muut kryptovaluutat luovat osoitteen sen salausavaimen perusteella? Eli jos kaksi ihmistä tekisi offline tilassa aivolompakon, ja käyttäisivät samaa salausavainta, niin osoite olisi tismalleen sama? Mutta edelleen kiinnostaa se mikä on turvallisin tapa hoitaa bitcoin raha-asioita, siirtoa ja maksamista turvallisimmin tämmöisen lompakon kanssa.

E2. Mikäs tuo sitten on tuo privatekey (mukana QR) joka generoituu näköjään myös valitsemani salasanan kanssa. Eli onkos tämäkin nyt yhteydessä salasanan valintaan? Jos tiedän jo salasanan, joka on pysyvästi juurtunut aivoihin, mitä teen privatekeyllä? Minähän ilmeisesti voin generoida sen privatekeyn uudestaan, ja katsoa sitten mikä se privatekey oli?

Tästä minulle tulee mieleen kysymys, että voiko joku ihan huvikseen kokeilla generoida noita osoitteita, keksimällä jotain mahdollisesti olemassaolevia salasanoja? Esim. Menen liteaddress.org:iin. Ja valitsen sieltä brain wallet. Rupean heittelemään päästä jotain salasanalauseita mitä keksinkään, ja katson aina generoidun osoitteen perusteella block-explorerista onko osoite olemassa. Sitten huomaan että siellähä on osote, jossa on paljon litecoineja, kun olen tarpeeksi yrittänyt. Sitten vaan siirrän ne omaan pussiin. Onko käytänössä mahdollista?

Eli eli? :smiley:

Edit. Täällä vilisee mun tekstissä yksityisavain, salausavain ja private key sekaisin, mutta tarkoitan kaikilla samaa.

Aina, kun bitcoineja lähetetään tietystä osoitteesta, sen osoitteen private key pitää ottaa käyttöön. Sen voi tässäkin tapauksessa pitää turvassa, mutta vaatii kikkailuja. Esimerkiksi Armory -niminen lompakkosofta voidaan asentaa koneelle, jolla ei ole eikä tule internet-yhteyttä. Tällä lompakkosoftalla luodaan maksu käyttämällä private keytä. Private keytä ei itsessään kirjoiteta maksun tietoihin, vaan sillä allekirjoitetaan maksu yksisuuntaisesti, eli niin, että louhijat voivat todentaa allekirjoituksen vastaavan sitä osoitetta, josta maksu halutaan lähettää. Maksun tiedot tallennetaan esimerkiksi muistitikulle, joka sitten liitetään internet-yhteydellä varustettuun koneeseen, jossa samaten on Armory asennettuna. Armory osaa lukea allekirjoitetun maksun tiedot tikulta ja lähettää ne sitten verkkoon. Tällöin itse private key on käytössä vain ja ainoastaan sillä yhteydettömällä koneella, eikä se voi suoraan vuotaa nettiin hakkerin mukaan.

Helpommalla pääsee siten, että luo uuden aivolompakon ennen siirtoa, tekee siirron suoraan nettiyhteydellä varustetusta koneesta niin, että vaihtorahat (eli osoitteessa oleva saldo, jota ei tarvita tällä kertaa maksuun) siirretään tähän uuteen aivolompakkoon. Tällöin tallessa olevat bitcoinit ovat aina osoitteessa, jonka private keytä ei ole koskaan paljastettu. Kovin näppärää käyttö ei ole kummallakaan tavalla, joten jos ajattelit tehdä siirtoja usein, kannattanee uhrata hieman turvallisuutta helppokäyttöisyyden saamiseksi.

Salausavaimesta lasketaan julkinen avain tietyllä algoritmilla, joka riippuu kryptovaluutasta. Saman salausavaimen saa käyttämällä samaa lausetta ja täsmälleen samoja asetuksia aivolompakon luonnissa. Pelkkä lause ei riitä, sillä yhdenkin asetuksen muuttaminen muuttaa koko salausavaimen.

Juuri niin. Keksimäsi lause syötetään algoritmiin, joka laskee siitä yksityisavaimen (private key). Kunhan lause ja algoritmin asetukset pidetään samana, se palauttaa joka kerta saman yksityisavaimen. Aivolompakko perustuu nimenomaan tähän - yksityisavainta ei kirjoiteta mihinkään, vaan pidät mielessäsi vain alkuperaisen lauseen ja käytetyt asetukset. Kun tarvitset yksityisavaimen, luot sen uudelleen samalla tavalla.

Lyhyesti sanottuna: kyllä. Vähän laajemmin: Kuten ylempänä mainitsin, noita yksityisavaimia generoidessa saa valita erilaisia asetuksia algoritmille, ei siis ehkä kannata käyttää niitä oletusasetuksia. Vaikka itse lause olisi täsmälleen sama, yhdenkin asetuksen muuttaminen muuttaa koko yksityisavaimen, eli ei tuokaan mikään maaginen yleisavain muiden lompakoihin ole. :smiley: Veikkaisinpa, että ne yksinkertaisimmat on jo generoitu, eli taitaa olla turhaa vaivaa koko yrittäminen.

Pidä kahta eri lompakkoa. Yksi esim. aivolompakko, jossa pidät säästöt - suurimman osan bitcoineista, joita et halua liikutella mihinkään pitkään aikaan. Toinen taas vaikka kännykkään (Android-puhelimilla Mycelium, muillekin on jotain sovelluksia) tai tietokoneelle (näitä on monia, eri ominaisuuksilla), jossa pidät vain sen verran bitcoineja, kuin oletat tarvitsevasi säännöllisesti. Tätä lompakkoa täytät joko ostamalla lisää fiatilla tai siirtämällä silloin tällöin aivolompakosta lisää. Jos joku onnistuu kännykän tai tietokoneen viemään / murtamaan ja vie sun lompakon, menetät korkeintaan “käyttökolikot”. Vertaa tilannetta siihen, että sulla on piilossa kassalippaassa arvopaperit ja kasapäin seteleitä, taskussa taas muutama satanen jokapäiväiseen käyttöön. Varkaat vievät ne satkut taskusta, mutta sullapa on jemmassa säästöjä, joihin ne eivät pääse käsiksi.

Hienoa, asiahan alkaa jo valjeta.

Juuri niin. Keksimäsi lause syötetään algoritmiin, joka laskee siitä yksityisavaimen (private key). Kunhan lause ja algoritmin asetukset pidetään samana, se palauttaa joka kerta saman yksityisavaimen. Aivolompakko perustuu nimenomaan tähän - yksityisavainta ei kirjoiteta mihinkään, vaan pidät mielessäsi vain alkuperaisen lauseen ja käytetyt asetukset. Kun tarvitset yksityisavaimen, luot sen uudelleen samalla tavalla.

Vielä haluaisin tästä kysyä. Esim. Kun https://liteaddress.org/ menee kohtaan brain wallet. Tuolla on ainoa vaihtoehto algoritmiin SHA256(passaphrase). En toistaiseksi vielä löytänyt toista vaihtoehtoa luoda nopeasti litecoin aivolompakkoa. Jos joku täällä tosta litecoinista tietää, niin missäs muualla mä pääsen luomaan litecoin lompakon muilla algoritmeillä?

Täällä taas https://brainwallet.github.io/ on paljon eri parametreja. Generaattori voi näköjään luoda kolmesta vaihtoehdosta osoitteen. Mutta mikäs tuolla luodessa on tärkeä pistää mieleen, ja ottaa huomioon? Mikä on “Secret exponent”, “Point Conversion”, “Public key” ja “HASH160

Hmm, näemmä ei ole noissa mitään valintoja. Muistan niitä kuitenkin jossain olleen, mutta en pysty sanomaan missä, siitä kun on aikaa kun olen noita viimeksi katsellut. Ehkä joku muu muistaa missä noita voi luoda, tai sitten itse muistin tuon osuuden väärin. ???

Mutta hetkonen! (Toivottavasti nyt ei mee ihan pakka sekasi näitte mun tulvivien kysymysten kaa)

Lyhyesti sanottuna: kyllä. Vähän laajemmin: Kuten ylempänä mainitsin, noita yksityisavaimia generoidessa saa valita erilaisia asetuksia algoritmille, ei siis ehkä kannata käyttää niitä oletusasetuksia. Vaikka itse lause olisi täsmälleen sama, yhdenkin asetuksen muuttaminen muuttaa koko yksityisavaimen, eli ei tuokaan mikään maaginen yleisavain muiden lompakoihin ole. :D Veikkaisinpa, että ne yksinkertaisimmat on jo generoitu, eli taitaa olla turhaa vaivaa koko yrittäminen.

Mites mä tämän selkokielisesti kysyisin…ellen nyt sitten ole jo väärin ymmärtänyt Eli luon aivolompakon javascriptillä ja lompakon osoite muodostuu valitsemani passphrasein perustein. Samoin myös yksityisavain? Niitä ei voi muuttaa luomisen jälkeen? Mutta jos muutan noita algoritmejä (miten ikinä) niin osoite pysyy samana?

Noh, mistäs toi bitcoin verkko tietää, kun se on offlinessä luotu, että mikä on oikea yksityisavain? Vai näkyykö noi algoritmit jossain siinä osoitteessa? Taisin ymmärtää väärin tuon.

Miten sitten, tuo kaikki muodostuu algoritmin/generaattorin perustein. Niin eikös kuka tahansa voisi hakkerina mennä sinne blockchainiin kattelemaan noita bitcoin lompakko osotteita, ja kääntä sen algoritmin/generaattorin toiste päin. Ottelee sieltä virrasta vaikka 10000 osotetta, ja kokeilee vaikka kaikkia. Jossain kohti luultavasti natsaa? Eihän se niin voi mennä ;D olen ilmeisesti ymmärtänyt nyt jotain väärin. ???

Osaisko joku kertoa jonkun step by step selityksen, asia kerrallaan. Olisin erittäin kiitollinen.

Edit. korjattu ajatusvirhe

Väärin. Passphrasella luodaan nimenomaan yksityisavain, ja jos passphrasea tai asetuksia muuttaa, myös saatu yksityisavain muuttuu. Osoitetta ei pysty milloinkaan generoimaan suoraan tai ilman yksityisavainta, sillä osoite on nimenomaan tiivisteluku yksityisavaimelle. Yksityisavaimesta lasketaan osoite. Tämä osoitteen ja yksityisavaimen välinen yhteys on juuri se salausmekanismi, joka turvaa koko bitcoin-verkon toiminnan (ja lukemattomia muita salassa pidettäviä tietoja maailmalla kaikenlaisissa yhteyksissä). Algoritmia ei voi kääntää toimimaan toisin päin, ainakaan nykyisellään. Jos tuo salausmekanismi onnistutaan kääntämään, lähtee siinä pohja monelta muultakin jutulta kuin bitcoinilta, joka on kuitenkin aika pieni kohde tuossa tapauksessa.

ottulo vastannutkin varsin kattavasti esitettyihin kysymyksiin, joten en itse niitä ala kertaamaan :slight_smile:

Kiteytänpä siis perustallaajan tasolle muutaman kommentin ^^

Turvallisen offline walletin luontiin ei kannata käyttää noita webipohjaisia generaattoreita, ellei valitsemaansa “ohjelmaan” peruspohjaisesti tutustu ja ymmärrä sen käyttäytymistä / käyttämiä algoritmeja. En tosiaan itsekään niiden mekanismeja täysin ymmärrä, mutta huomattavasti viisaammat, jo pitkään Bitcoin kehittäjäpiireissä työskennelleet immeiset ovat niitä minulle valaisseet :slight_smile: Tai ainakin koittaneet, hehe… en siltikään täysin homman jujua hiffannut perusteellisesti… mutta kaipa se tosiaan vaatisi vuosien syvällistä harrastelua matematiikan parissa.

Voisin kuitenkin melko varmalla mielellä sanoa, ettei oikealla tavalla luotua private keytä voi nykyteknologialla kukaan muu luoda :wink: Niin kuin ottulokin tuossa viimeisessä viestissään mainitsi, Bitcoin käyttää samoja algoritmejä kuin esimerkiksi pankit, valtiot ja armeijat turvaamaan järjestelmiään. Kyseisten tahojen “palvelut” ovat kuitenkin vielä tässävaiheessa valtavasti houkuttelevampia kuin Bitcoin, jotka ovat todenneet nuo algoritmit toimiviksi kymmenien vuosien ajalta :slight_smile:

(Mainittava tähän väliin yksi hauska aiheeseen liittyvä “työkalu”: Vanitygen. Kyseisellä työkalulla voit tosiaan luoda kasapäin osoitteita, jotta löydät määrittelemäsi numero/kirjain kombolla alkavan osoitteen. Esimerkiksi jos haluat itsellesi osoitteen, joka alkaa 1farkku…, voit koittaa moisen kalastaa tuolla työkalulla :slight_smile: Tuossa saattaa mennä tosin oma aikansa. Mitä enempi haluttuja kirjaimia/numeroita määrität, sitä kauemmin osoitteen löytämisessä kestää)

Oma mielipiteeni offline/cold walletin luontiin siis tosiaan on, että kannattaa se tehdä jollakin Bitcoin Wallet ohjelman avulla, eikä tuommoisilla webisivuhässäköillä. Moni noista ei ole ~standardien mukaisia.
Itse olen hommannut wallettien luomiseen erillisen RaspberryPi:n, jota en ole missäänvaiheessa liittänyt internetiin. Tuohon olen asentanut tuon ihan perus Bitcoin-QT clientin. Suosin myös offline walleteissa multisig tekniikkaa… mutta tuopa nyt on enempi harrastusmielessä, koska kunnolla tehdyt offline walletit ovat jo itsessään “tarpeeksi” turvallisia :wink:

Kun turvallinen järjestelmä osoitteiden luontiin löytyy, voit siis luoda siellä niin monta private + public keytä kuin vaan siedät. Public key on siis Bitcoin osoite :slight_smile:
Noihin osoitteisiin voit sitten lähetellä vaikka samantien Bitcoineja ja olla varma siitä, ettei niitä pystytä varastamaan. Jos teet lähetyksen moiseen osoitteeseen, et tietenkään näe kyseisen osoitteen balanssia tuolla offline koneella. Balanssin kuitenkin näet esimerkiksi tuolta blockchain.info palvelusta, tekemällä haun kyseisellä osoitteella. (Jos etsit osoitetta ennen kuin siihen on tehty lähetys, ei sitä, yllätys yllätys, löydy ;))

*edit: niinjoo, vielä mainittava, että helpompikäyttöisiä / monipuolisempia suosittuja wallet ohjelmia ovat esim Armory, Electrum, Multibit ja Mycelium.

Dodiih :smiley: Kiitos paljon vastauksista, nyt alkaa oikeasti selvitä enempi. Yksi kysymys vielä, osaako kukaan sano miten, jos nyt vaikka luon jonku osotteen vanitygenillä, koneella joka on aina ollut offline tilassa. Niin jos vaikka säästelen sinne parisen vuotta rahaa, lompakko on ollut 2 vuotta siis olemassa, ja olen sinne siirrellyt paljon “rahaa”. Sitten kun haluan ekan kerran sillä maksaa? Ilmeisesti sen lompakon voi importata mihin tahansa ohjelmaan privatekeyllä? Mutta mikä on turvallisin tapa?

Ja se suurin kysymys, miten ihmeessä tuo verkko tietää, mikä on tuon osoitteen privatekey. Privatekeytä ei ollut koskaan käytetty tässä esimerkissä, ennekuin vasta 2 vuoden jälkeen. Miten se osaa ne yhdistää?

Harjoittelin jo tuossa hieman dogecoineilla ja darkcoineilla. Loin osoitteen, katsoin virrasta löytyykö sitä. No ei tietenkään. Ostin coineja, ni no nythän se joo löytyi :slight_smile:

Ainoastaan rahojen omistaja tietää privatekeyn, ja on ainoa joka voi allekirjoittaa määräyksen siirtää rahat uuteen osoitteeseen.

Aivolompakon osalta ei missään tapauksessa kannata keksiä salasanaa omasta päästä, koska tällöin tapahtuu usein niin, että joku varastaa rahat. Toisaalta on olemassa teoreettisia ja fysikaalisia rajoitteita (http://en.wikipedia.org/wiki/Brute-force_attack#Theoretical_limits), joiden takia satunnaisesti valittua avainta ei ulkopuolinen tule keksimään mahdollisesti ikinä.

Vastauksena tähän kysymykseen: Kuten aiemmin mainitsin, osoite lasketaan tuosta private keystä. Koska se lasketaan aina samalla algoritmilla (luontivaiheessa sekä sen jälkeen milloin tahansa), tuottaa yksi private key aina saman osoitteen. Vastaavanlaista kahden avaimen paria käytetään tietokoneiden välisessä salatussa viestinnässä lähes kaikkialla. Private keyllä allekirjoitetaan siirto siten, että kun sen allekirjoituksen joku tarkistaa, osoittaa se tuohon osoitteeseen. Allekirjoitusta taas ei pysty luomaan ilman private keytä, joten sitä ei voi kukaan väärentää. Osoite ei viittaa private keyhin (silloinhan sen voisi laskea toiseen suuntaan ja varastaa bitcoinit), vaan nimenoman private keyllä luodut allekirjoitukset voidaan tarkistaa laskemalla ja havaita, että ne on luotu samalla keyllä kuin julkinen osoite.

Edit: Lisätään vielä linkki tällaiseen, sivulta 20-> on tiivistefunktioista juttua. Bitcoinissa käytetään SHA256-tiivistefunktiota. http://ta.ramk.fi/~jouko.teeriaho/salaustekniikat.pdf

Voit tosiaan importata tuon private keyn online koneelle ja tehdä sieltä sitten maksun, mutta turvallisin tapa on tehdä offline koneella tuo broadcast message ja siirtää se sitten online koneelle josta se lähetetään verkolle.
ottulo sen jo tuossa aiemmin selvensikin :slight_smile:

Tuossa ottulon viestissä myös on vastaus tähän kymysykseen:

Eli private keytä ei varsinaisesti sisällytetä maksun tietoihin, vaan sillä allekirjoitetaan tuo lähetyksen viesti.
Tämän tarkka selvennys menisi hyvin tekniseksi… mutta alogritmien jujuna on, että tulos on helppo varmistaa, mutta hyvin vaikea laskea taaksepäin :slight_smile: Eli siis samaa ideaa käyttäen miten private keystä on helppo rakentaa public key, mutta public keystä on lähes mahdoton laskea private key.
Jokaisessa tekemässäsi transaktiossa on siis erinäköinen allekirjoitus, vaikka lähettäisit hallitsemastasi yhdestä osoitteesta täysin saman määrän kolikoita, samaan määränpää osoitteeseen :slight_smile:

Ainiin, pitää vielä mainita, että hardware walletit ovat turvallisia ja näppäräkäyttöisiä vekottimia :slight_smile: Yksi suosittu moinen on Trezor:
http://www.bitcointrezor.com/

Promo video jo yli vuoden takaa: https://www.youtube.com/watch?v=xObssnQwVgg
“Hauska” video katsoa nykyään, jo tuolloin promottiin turvallisuutta ja vaaroja… mutta silti porukoilta viedään jatkuvasti kolikoita.

Vähän tuoreempi reviewi: https://www.youtube.com/watch?v=YL6o6WLGM58