Noong Oktubre 31, 2008, isang ID na nilagdaan ni Satoshi Nakamoto ang nalutas ang problemang ito sa isang 9-pahinang papel kung paano ako bayaran sa isang ganap na hindi nagpapakilala at desentralisadong network.
Alam na natin ngayon na ang misteryosong tao na kilala bilang Satoshi Nakamoto at ang siyam na pahina na nilikha mula sa manipis na hangin na katumbas ng 100 bilyong RMB sa bitcoin at ang teknolohiyang nagpapatakbo nito, ang blockchain.
Nang walang isang pinagkakatiwalaang third party, ang pinakamalaking problema ay wala sa atin ang maaaring magtiwala sa bawat isa, kaya sa isang mundo ng blockchain, ang mga paglilipat ay kailangang ma-broadcast upang malaman ng lahat ang kasaysayan ng bawat bawat dolyar ng bawat isa sa bawat tao sa network Ang mga tao ay magpapatunay na ito talaga ang sinabi ko na may elektronikong pirma, at pagkatapos ay ilagay ang transfer sa isang ledger. Ang ledger na ito ay ang bloke. Ang pagkonekta ng mga bloke nang magkasama ay ang blockchain. Itinatala nito ang lahat ng mga transaksyon ng Bitcoin mula sa simula hanggang ngayon, at ngayon mayroong halos 600,000 mga bloke, na may dalawa o tatlong libong mga transaksyon na naitala sa bawat bloke, at ang bawat account, kabilang ang iyo at minahan, ay naaalala nang eksakto kung magkano ang pera nito, kung saan ito ay nagmula, kung saan ito ginastos, at ito ay transparent at bukas.
Sa blockchain network, lahat ay may hawak na magkapareho at real-time na na-update na ledger. Hindi nakakagulat, ang pagiging maaasahan ng ledger ay ang pundasyon ng digital na pera, at kung ang ledger ay wala sa order, walang pera na gagana nang maayos.
Ngunit nagtataas ito ng dalawang bagong katanungan: sino ang nag-iingat ng mga libro para sa lahat? Paano mo masisiguro na ang mga libro ay hindi napeke?
Kung ang bawat isa ay maaaring mapanatili ang isang ledger, ang mga transaksyon at pagkakasunud-sunod ng mga transaksyon na nilalaman sa bawat bloke ay maaaring magkakaiba, at kung may sinasadyang maling mga entry, magiging mas magulo ito. Imposibleng makakuha ng isang ledger na tanggap sa lahat.
Kaya't ang taong nag-iingat ng mga libro ay kailangang tanggapin ang bawat isa sa kanila upang ang mga libro ng lahat ay pare-pareho. Kilala rin ito bilang mekanismo ng pinagkasunduan.
Ngayon mayroong lahat ng mga iba't ibang mga mekanismo ng pinagkasunduan para sa iba't ibang mga blockchain, at ang solusyon ni Satoshi ay upang gawin ang problema. Sinumang mag-ehersisyo ang sagot muna ay may karapatang panatilihin ang mga libro. Ang mekanismong ito ay tinatawag na PoW: Proof-of-Work, Proof of Workload.
Ang likas na katangian ng patunay ng pagkarga ng trabaho ay lubusang, at mas maraming lakas sa aritmetika na mayroon ang iyong aparato, mas mataas ang posibilidad na malaman ang sagot.
Upang magawa ito, ginamit ang hash encryption.
Kunin ang SHA256 algorithm halimbawa, ang anumang string ng mga character na naka-encrypt kasama nito ay magbubunga ng isang natatanging string ng 256-bit na mga binary number. Kung ang orihinal na input ay binago sa anumang paraan, ang hash naka-encrypt na numero ay magiging ganap na magkakaiba.
Ang likas na katangian ng patunay ng pagkarga ng trabaho ay lubusang, at mas maraming lakas sa aritmetika na mayroon ang iyong aparato, mas mataas ang posibilidad na malaman ang sagot.
Upang magawa ito, ginamit ang hash encryption.
Kunin ang SHA256 algorithm halimbawa, ang anumang string ng mga character na naka-encrypt kasama nito ay magbubunga ng isang natatanging string ng 256-bit na mga binary number. Kung ang orihinal na input ay binago sa anumang paraan, ang hash naka-encrypt na numero ay magiging ganap na magkakaiba.
Ang likas na katangian ng patunay ng pagkarga ng trabaho ay lubusang, at mas maraming lakas sa aritmetika na mayroon ang iyong aparato, mas mataas ang posibilidad na malaman ang sagot.
Upang magawa ito, ginamit ang hash encryption.
Kunin ang SHA256 algorithm halimbawa, ang anumang string ng mga character na naka-encrypt kasama nito ay magbubunga ng isang natatanging string ng 256-bit na mga binary number. Kung ang orihinal na input ay binago sa anumang paraan, ang hash naka-encrypt na numero ay magiging ganap na magkakaiba.
Ang likas na katangian ng patunay ng pagkarga ng trabaho ay lubusang, at mas maraming lakas sa aritmetika na mayroon ang iyong aparato, mas mataas ang posibilidad na malaman ang sagot.
Upang magawa ito, ginamit ang hash encryption.
Kunin ang SHA256 algorithm halimbawa, ang anumang string ng mga character na naka-encrypt kasama nito ay magbubunga ng isang natatanging string ng 256-bit na mga binary number. Kung ang orihinal na input ay binago sa anumang paraan, ang hash naka-encrypt na numero ay magiging ganap na magkakaiba.
Ang likas na katangian ng patunay ng pagkarga ng trabaho ay lubusang, at mas maraming lakas sa aritmetika na mayroon ang iyong aparato, mas mataas ang posibilidad na malaman ang sagot.
Upang magawa ito, ginamit ang hash encryption.
Kunin ang SHA256 algorithm halimbawa, ang anumang string ng mga character na naka-encrypt kasama nito ay magbubunga ng isang natatanging string ng 256-bit na mga binary number. Kung ang orihinal na input ay binago sa anumang paraan, ang hash naka-encrypt na numero ay magiging ganap na magkakaiba
Kapag nagbukas kami ng isang bloke, maaari naming makita ang bilang ng mga transaksyong naitala sa blokeng iyon, mga detalye sa transaksyon, block header at iba pang impormasyon.
Ang isang header ng block ay isang label ng isang bloke na naglalaman ng impormasyon tulad ng timestamp, Merk tree root hash, random number at ang hash ng nakaraang block, at ang paggawa ng pangalawang pagkalkula ng SHA256 sa block header ay magbibigay sa amin ng hash ng block na ito.
Upang subaybayan, kailangan mong i-pack ang iba't ibang impormasyon sa bloke, at pagkatapos ay baguhin ang random na numero na ito sa header ng bloke upang ang halaga ng pag-input ay maaaring ma-hash upang makakuha ng isang hash na halaga kung saan ang mga unang n digit ay 0 pagkatapos ng pagkalkula ng hash .
Talagang may dalawang posibilidad lamang para sa bawat digit: 1 at 0, kaya ang posibilidad ng tagumpay para sa bawat pagbabago sa random na numero ay isang nth ng 2. Halimbawa, kung ang n ay 1, iyon ay, hangga't ang unang numero ay 0, pagkatapos ang posibilidad ng tagumpay ay 1 sa labas ng 2.
Ang mas maraming kapangyarihan sa computing ay mayroong sa network, mas maraming mga zero ang bibilangin, at mas mahirap ang pagpapatunay ng trabaho.
Ngayon, n sa network ng Bitcoin ay halos 76, na kung saan ay isang rate ng tagumpay ng 1 sa 76 na mga bahagi bawat 2, o halos 1 sa 755 trilyon.
Sa pamamagitan ng isang $ 8,000 RTX 2080Ti graphics card, na humigit-kumulang 1407 taon upang mabilang.
Talagang hindi madaling makuha ang tama sa matematika, ngunit kapag nagawa mo na, lahat ay maaaring mapatunayan sa isang iglap na nakuha mo ito nang tama. Kung tama ito, ikokonekta ng lahat ang block na iyon sa ledger at magsisimulang magbalot sa susunod na bloke.
Sa ganitong paraan, ang bawat isa sa network ay mayroong magkatulad, real-time na na-update na ledger.
At upang mapanatili ang lahat na maganyak na gawin ang bookkeeping, ang unang node upang matapos ang pag-pack ng bloke ay gagantimpalaan ng system, na ngayon ay 12.5 bitcoins, o halos 600,000 RMB. Ang prosesong ito ay kilala rin bilang pagmimina.
Sa kabilang banda, upang maiwasan ang pakialaman sa ledger, ang bawat bagong idinagdag na bloke ay kailangang itala ang hash na halaga ng nakaraang bloke, na kilala rin bilang isang hash pointer, sa block header. Ang nasabing isang pare-pareho na pasulong na puntero ay huli na magtuturo sa unang founding block, kadena ang lahat ng mga bloke nang magkakasama.
Kung binago mo ang anuman sa mga character sa anumang bloke, binago mo ang halaga ng hash ng bloke na iyon, na pinawawalang bisa ang susunod na block ng hash pointer.
Kaya kailangan mong baguhin ang hash pointer ng susunod na bloke, ngunit na nakakaapekto rin sa halaga ng hash ng bloke na iyon, kaya kailangan mo ring kalkulahin muli ang random na numero, at pagkatapos mong matapos ang pagkalkula, kailangan mong baguhin ang susunod na bloke ng block na iyon hanggang sa nabago mo ang lahat ng mga bloke pagkatapos ng pag-block na iyon, na kung saan ay napaka-abala.
Ginagawa nitong imposible para sa bookkeeper na subaybayan ang mga forgeries kahit na nais niya. Dahil sa elektronikong pirma, ang bookkeeper ay hindi maaaring peke ang isang paglilipat mula sa ibang tao sa kanyang sarili, at dahil sa kasaysayan ng libro, hindi niya mababago ang isang halaga ng pera sa manipis na hangin din.
Ngunit nagtataas ito ng isang bagong katanungan: kung ang dalawang tao ay kumpletuhin ang mga kalkulasyon nang sabay at magbalot ng isang bagong bloke, sino ang dapat nilang pakinggan?
Ang sagot ay kung sino ang sapat na katagal upang makinig, at ngayon ang lahat ay maaaring magbalot pagkatapos ng parehong mga bloke. Halimbawa, kung ang unang tao na natapos ang pagkalkula sa susunod na pag-ikot ay pipiliin upang kumonekta sa B, kung gayon ang kadena ng B ay mas mahaba at ang lahat ay may posibilidad na kumonekta din sa B.
Sa loob ng anim na bloke ng pag-iimpake, ang nagwagi ay karaniwang naayos, at ang inabandunang kalakalan ng kadena ay nakuha at inilagay pabalik sa trading pool upang mai-pack.
Ngunit dahil kung sino ang pinakamahabang nakikinig sa kung sino ang pinakamahaba, hangga't maaari mong mabibilang nang mas mahusay kaysa sa iba pa, at ang iyong lakas sa pagbibilang ay higit sa 51%, maaari mong malaman ang pinakamahabang kadena sa iyong sarili, at pagkatapos ay makontrol ang ledger .
Kaya't mas malaki ang lakas ng computing ng mga minero sa mundo ng Bitcoin, mas maraming zero ang dapat bilangin ng bawat isa, na tinitiyak na walang makakontrol sa ledger.
Ngunit ang iba pang mga blockchain na may ilang mga kalahok ay hindi napakahusay, tulad ng pag-atake ng 51% sa isang digital na pera na tinatawag na Bitcoin Gold noong Mayo 15, 2018.
Ang mga nagsasalakay ay unang naglipat ng $ 10 milyon na halaga ng kanilang sariling bitgold sa isang palitan, at ang paglilipat na ito ay naitala sa bloke A. Ang mga nagsasalakay ay nakapaglipat din ng $ 10 milyon na halaga ng kanilang sariling bitgold sa isang palitan. Kasabay nito, lihim na inihanda ng umaatake ang isang bloke B kung saan ang paglipat ay hindi naganap at kinakalkula ang isang bagong bloke pagkatapos ng bloke B. Lihim ding inihanda ng salakay ang isang bloke B kung saan hindi naganap ang paglipat.
Kapag nakumpirma na ang paglipat sa isang kadena, maaaring bawiin ng umaatake ang kaunting ginto sa palitan. Ngunit dahil ang lakas ng computing ng umaatake ay 51% na mas malaki kaysa sa buong network, ang kadena ng B ay kalaunan ay mas mahaba kaysa sa A chain, at sa pamamagitan ng pagpapalabas ng isang mas mahabang chain ng B sa buong network, isusulat muli ang kasaysayan, ang chain ng B ay papalitan ang Ang isang kadena bilang ang tunay na pangunahing kadena, at ang paglipat sa palitan sa Block A ay babawiin, na kumita ng mananalakay ng 10 milyon para sa wala.
Ngayon, ang pinakamadaling paraan para sa average na tao na walang lakas na arithmetic upang makakuha ng digital na pera ay bilhin ito sa isang palitan at i-withdraw ito sa iyong address sa wallet.
Ang address na ito ay nagmula sa iyong pribadong key, na naka-encrypt, at ang pampublikong key, na naka-encrypt, ay nakakakuha ng address.
Sa isang hindi nagpapakilalang network tulad ng blockchain, ang pribadong key lamang ang maaaring magpapatunay na ikaw ay ikaw, at hangga't ang transfer ay sinamahan ng isang elektronikong lagda na nabuo ng iyong pribadong key, lahat ay makumpirma na ang paglipat ay wasto. Kaya kung nakompromiso ang pribadong susi, ang sinumang maaaring magpanggap na ikaw at ilipat ang pera.
Oras ng pag-post: Sep-10-2020