Monedha në SHA256. Cili është algoritmi i kriptimit të Bitcoin? Dobësitë dhe pikat e forta të algoritmit të hashimit të Bitcoin

Funksioni hash SHA 256 formoi bazën e kriptomonedhës së parë në botë - Bitcoin dhe shumë altcoins. A e dini se ajo u krijua shumë përpara ardhjes së kriptomonedhave dhe ishte menduar për qëllime krejtësisht të ndryshme? Sot do të shikojmë historinë e algoritmit, parimin e funksionimit të tij, problemet aktuale dhe cilat kriptomonedha përdorin SHA256.

Histori

Emri i algoritmit SHA 256 është një akronim për Algoritmin e Hashimit të Sigurt. Kështu e quajti zhvilluesi - Agjencia e Sigurisë Kombëtare e SHBA. Algoritmi është një funksion hashing. Kjo do të thotë që hyrja e tij është një vëllim i të dhënave me gjatësi arbitrare, dhe dalja është një grup karakteresh me një gjatësi fikse, të quajtur hash.

Një nga karakteristikat kryesore të funksioneve të hash-it është pakthyeshmëria. Ne mund të marrim hash duke kaluar të dhënat origjinale përmes funksionit, por duke ditur hash-in, nuk do të mund të marrim të dhënat origjinale. Falë kësaj veçorie, funksioni është bërë i përhapur në shërbime dhe aplikacione të ndryshme ku kërkohet mbrojtja e të dhënave. Çdo ditë ne përdorim algoritmin SHA 256 kur vizitojmë faqet në internet. Ai përfshin një certifikatë sigurie SSL, e cila kërkohet për të krijuar një lidhje të sigurt me sitin.


Algoritmi është pjesë e familjes SHA-2, e zhvilluar në bazë të SHA-1, e cila u shfaq në 1995. Që nga fillimi i tij, sha256 është testuar gjerësisht për forcën e tij duke përdorur kriptanalizën. Kriptanaliza teston rezistencën e funksioneve hash ndaj dy llojeve kryesore të sulmeve:
  • Gjetja e përplasjeve - zbulimi i hasheve identike me parametra të ndryshëm hyrës. Shkalla e suksesit të këtij sulmi rrezikon sigurinë e nënshkrimit dixhital duke përdorur algoritmin aktual.
  • Gjetja e një imazhi paraprak është aftësia për të deshifruar mesazhin origjinal duke përdorur hash-in e tij. Ky sulm rrezikon sigurinë e ruajtjes së hasheve të fjalëkalimit të vërtetimit.

Analiza u testua për herë të parë në vitin 2003, por atëherë nuk u gjetën dobësi. Me kalimin e kohës, fuqia kompjuterike u zhvillua. Në vitin 2008, u gjetën përplasje për përsëritjet SHA-512 dhe SHA-256. Në shtator të të njëjtit vit, u zhvillua një metodë për krijimin e përplasjeve për 31 përsëritje të SHA256 dhe 27 përsëritje të SHA-512.

Natyrisht, ka ardhur koha për të zhvilluar një funksion të ri kripto-rezistent. Në vitin 2012, NSA shpiku SHA-3. Gradualisht, algoritmi i përditësuar do të zhvendosë paraardhësit e tij më pak kripto-rezistente.

Minierat në SHA 256

Ligji amerikan lejon përdorimin e SHA dhe funksioneve të ngjashme hash si pjesë e protokolleve dhe algoritmeve të tjera në disa aplikacione federale të sigurisë së informacionit jo sekret. SHA-2 mund të përdoret nga organizata private dhe tregtare.

Nuk është çudi që është përdorur në kriptovaluta. Minatorët mbledhin të gjitha transaksionet në një bllok dhe më pas fillojnë ta hashin atë. Kur gjendet një vlerë hash që përputhet me rregullat e sistemit, blloku konsiderohet i gatshëm për t'u bashkangjitur në fund të blockchain. Blloku i ri do të gjendet nga dikush që mund të llogarisë vlerat e hash-it shumë shpejt. Shpejtësia e llogaritjeve varet nga fuqia e pajisjes. Tre lloje të pajisjeve mund të përdoren për të minuar Bitcoin:

  • CPU (njësia qendrore e përpunimit);
  • GPU (karta video);
  • ASIC (Pajisja specifike e aplikacionit).

Rrjeti Bitcoin është krijuar në atë mënyrë që çdo bllok i ri duhet të gjendet një herë në 10 minuta. Numri i pjesëmarrësve në rrjet po ndryshon vazhdimisht, por koha duhet të mbetet konstante. Për të siguruar kohë të barabarta qëndrimi, sistemi rregullon vështirësinë llogaritëse në varësi të numrit të minatorëve. Kriptovalutat kanë fituar popullaritet kohët e fundit dhe numri i minatorëve është rritur në mënyrë dramatike. Për të parandaluar gjetjen shumë të shpejtë të blloqeve, u rrit edhe kompleksiteti i llogaritjeve.


Bitcoin filloi të minohej në procesorë. Pastaj, kur fuqia e tyre u bë e pamjaftueshme, ata kaluan në kartat video. Së shpejti, kartat video nuk mund të përballonin më. Pastaj u shpikën ASIC - pajisje speciale të dizajnuara për llogaritjet duke përdorur algoritmin sha 256. Një ASIC është shumë më i fuqishëm dhe më efikas në energji se disa karta video.

Minatorët sipërmarrës po krijojnë ferma të mëdha nga ASIC. Përveç kostos së lartë të vetë pajisjeve, një fermë e tillë merr çdo muaj fatura të energjisë elektrike prej disa dhjetëra mijëra dollarësh. Tani miniera e Bitcoin ka kuptim vetëm në ferma të tilla industriale; një kompjuter në shtëpi apo edhe një fermë me disa karta video nuk do të jetë në gjendje të konkurrojë me to, madje as të rikuperojë energjinë elektrike.

Megjithatë, kjo është e lehtë për t'u llogaritur. Ka kalkulatorë për të llogaritur përfitimin e minierave në sha256. Për shembull, https://www.coinwarz.com/miningprofitability/sha-256. Futni në formular hashratin e pajisjes suaj (fuqinë llogaritëse), konsumin e energjisë dhe koston e saj, shërbimi do të llogarisë fitimin tuaj.

Altcoins SHA-256

Le të shohim listën dhe listën e kriptomonedhave që funksionojnë në sha 256.

Bitcoin Cash (BCH)

E ndarë prej saj më 1 gusht 2017. Madhësia e bllokut në Bitcoin klasik është 1 MB. Rrjeti është rritur aq shumë sa të gjitha transaksionet nuk mund të futen më në një bllok. Kjo çoi në formimin e radhëve të transaksioneve dhe një rritje të tarifave për kryerjen e pagesave. Komuniteti vendosi të prezantojë një protokoll të ri, sipas të cilit blloku u rrit në 2 MB, disa informacione filluan të ruhen jashtë zinxhirit të bllokut dhe afati kohor për rillogaritjen e kompleksitetit u reduktua nga dy javë në një ditë.

Namecoin (NMC)

Është një sistem për ruajtjen dhe transmetimin e kombinimeve emër-vlerë bazuar në teknologjinë Bitcoin. Aplikacioni i tij më i famshëm është sistemi i shpërndarjes së emrave të domenit, i cili është i pavarur nga ICANN dhe për këtë arsye e bën të pamundur riposedimin e domenit. Namecoin u lançua në vitin 2011, ai funksionon në softuerin e minierave Bitcoin të dërguar në serverin ku funksionon Namecoin.

DigiByte (DGB)

Një kriptomonedhë e lançuar në vitin 2013 me synimin për të përmirësuar performancën e Bitcoin dhe Litecoin. Dallimet e DigiByte:

  • Paqëndrueshmëria e ulët arrihet për shkak të numrit të madh të monedhave të emetuara (deri në 21 miliardë), gjë që siguron koston e tyre të ulët dhe lehtësinë e përdorimit në llogaritjet;
  • Transaksione më të shpejta duke dyfishuar madhësinë e bllokut çdo dy vjet;
  • Komisione të ulëta ose pa komisione;
  • Procesi i minierave është i ndarë në pesë algoritme që ju lejojnë të nxjerrni monedha në mënyrë të pavarur nga njëri-tjetri. Mund të përdorni ASIC për SHA-256 dhe Scrypt, karta video për Groestl dhe Skein dhe një procesor për Qubit.

Algoritmi SHA 256 është më i zakonshmi në mesin e kriptomonedhave. Kjo u shkaktua nga popullariteti dhe suksesi i Bitcoin, dhe dëshira e zhvilluesve të altcoin për të krijuar monedha të ngjashme. Rritja e kompleksitetit llogaritës i shtyu minatorët të kërkonin mënyra për të minuar në mënyrë më efikase, gjë që rezultoi në shfaqjen e ASIC-ve.


Kriptimi i Bitcoin bazohet në SHA-256, një algoritëm i veçantë që është pjesë e kodit të programit. Detyra e tij është të konvertojë të dhënat hyrëse në një grup specifik karakteresh (në paraqitjen alfabetike dhe numerike) dhe të mbrojë informacionin. Veprime të tilla quhen hash. Cilat janë hollësitë e këtij algoritmi? Pse është e nevojshme dhe si funksionon? Cilat janë avantazhet dhe disavantazhet? Ne do t'i shqyrtojmë këto dhe një numër pikash të tjera në detaje.

Çfarë algoritmi kriptimi ka Bitcoin dhe ku përdoret?

Kur diskutohet për kriptomonedhën, veçoritë e funksionimit dhe minierave të saj, pjesëmarrësit në rrjetin e kriptove në mënyrë të pashmangshme hasin në një përkufizim kaq të përhapur si algoritmi i kriptimit të Bitcoin. Nga dita kur u zhvillua BTC e deri më sot (13 gusht 2018), është përdorur SHA-256, i cili është i nevojshëm për të zgjidhur problemet e mëposhtme në rrjetin Bitcoin:

  1. Formimi i adresave BTC (përdoret për transaksione).
  2. Minierat (prova e punës).
  3. Arritja e shkallës së kërkuar të sigurisë dhe anonimitetit.
  4. Për nënshkrimin dixhital dhe njohjen e tij.
Algoritmi SHA-256 është i rëndësishëm jo vetëm për Bitcoin, por edhe për monedha të tjera, përkatësisht Bitcoin Cash, Mazacoin, Peercoin, Namecoin dhe kriptovaluta të tjera. Për më tepër, SHA-2 (baza e SHA-256) përdoret për të krijuar shumë protokolle të krijuara për të mbrojtur të dhënat në internet, përkatësisht SSL, TSL dhe të tjerët.

Algoritmi i hashimit të Bitcoin është i nevojshëm për të kontrolluar informacionin përmes analizës së tij dhe identifikimit në kohë të pasaktësive. Pasi të dhënat të jenë përpunuar dhe konvertuar në një hash, është e pamundur të ktheheni informacionet. Nëse merrni një skedar BTC tashmë të koduar, bëni përsëri llogaritjet dhe sigurohuni që parametrat e hash janë identikë, mund të jeni i sigurt se nuk ka ndryshime në informacionin origjinal. Nëse të dhënat ndryshojnë, kjo tregon një hakim të sistemit.

Algoritmi i kriptimit të Bitcoin - si funksionon me fjalë të thjeshta


SHA-2 bazohet në kornizën e krijuar nga Merkle dhe Damgaard. E veçanta e funksionit hash të përdorur në kriptografi është qasja jo standarde për formimin e tij. Të dhënat hyrëse ndahen në blloqe me madhësi identike, pas së cilës elementët e krijuar konvertohen në numra heksadecimal. Është me ta që llogaritjet bëhen më pas. Një funksion hash zbatohet në vlerën që rezulton, dhe rezultati i përpunimit është shuma e hash-it që shfaqet në dalje. Është një grup karakteresh të paraqitura në alfabet dhe në alfabetin numerik. Në thelb, ky është një hash.

Blloku tjetër është ndërtuar sipas parimit të përshkruar më sipër. Në këtë rast, një proces i ri niset pas krijimit të elementit të mëparshëm. Nëse bëhen ndryshime në të dhënat origjinale, hash-i ndryshon. Në rastin kur parametrat identikë të funksionit hash shfaqen papritmas në blloqe të ndryshme, ndodh një situatë konflikti në funksionimin e algoritmit. Kur ndodh një mospërputhje e tillë, i gjithë zinxhiri i blockchain vihet në pikëpyetje.

Kështu, një funksion hash përdoret për të krijuar një nënshkrim dixhital. Nëse ndodh situata e diskutuar më sipër, ekziston një probabilitet i lartë i falsifikimit të nënshkrimit. Për të llogaritur dështime të tilla (përplasje), përdoret një teknikë e veçantë që përfshin numërimin e të dhënave, gjë që rrit fuqinë e funksionit hash.

Korrektësia e kriptimit të Bitcoin kontrollohet nga katër kërkesa:

  1. Kur bëni ndryshime në të dhënat hyrëse, sasia e hash-it mbetet e njëjtë.
  2. Gjatë hashimit, merret një shumë individuale hash (seti i karaktereve duhet të jetë unik).
  3. Krijimi i çelësit duke përdorur hash është jashtëzakonisht i ndërlikuar.
  4. Hashët janë të pakthyeshëm. Kjo do të thotë se puna me të dhënat hyrëse lejohet pa mundësinë e kryerjes së veprimit të kundërt.

Si zbatohet kjo në Bitcoin?

Detyra e nyjeve të rrjetit të kriptomonedhës është të gjejnë një në transaksione të shumta që i përshtatet në të gjitha aspektet. Gjatë vlerësimit të opsioneve, vëmendja fillestare i kushtohet madhësisë së komisionit (nga rruga, për këtë arsye, transaksionet me një komision më të madh përfundojnë më shpejt). Më pas, kontrollohet operacioni, studiohen të dhënat hyrëse dhe dalëse dhe sqarohet origjinaliteti i nënshkrimit dixhital.

Sapo të përfundojë puna e konsideruar, elementi tjetër i zinxhirit (bllokut) Bitcoin krijohet me një madhësi të caktuar (për kriptomonedhën në fjalë - 1 megabajt). Nyjet që rezultojnë përbëhen nga versioni, koha e formimit, dy hash (blloku i kaluar dhe transaksionet hyrëse), si dhe parametra shtesë që sigurojnë unike (bit dhe nonce). Në kompleks, blloku i krijuar hashohet shumë herë, duke rezultuar në formimin e një hash të kokës, i cili vepron si një dalje për elementin "e vjetër" të zinxhirit dhe si një hyrje për atë të ri.

Le të themi se grupi hash përmban një numër specifik "0" (për shembull, nonce është 17). Është jashtëzakonisht e vështirë për të zgjedhur një vlerë të tillë duke përdorur vetëm numërimin e vlerave. Është ky aspekt që siguron besueshmërinë e informacionit në rrjetin blockchain dhe mbrojtjen e tij nga hakerimi. Për të krijuar një hash, kërkohet fuqi e madhe, pa të cilën është e pamundur të gjesh grupin e kërkuar të karaktereve. Pasi të përfundojë kjo punë dhe të gjendet parametri, ai dërgohet në elementët e rrjetit kripto me bllokun e sapokrijuar dhe hash-in e gjetur me 17 “0s”. Më pas, të gjithë pjesëmarrësit në rrjetin Bitcoin kontrollojnë hash-in, duke kombinuar grupin e karaktereve me informacionin nga blloku. Nëse nuk ka përplasje, një element i ri shfaqet në zinxhirin blockchain.

Kur u shfaq algoritmi i kriptimit të Bitcoin - një histori e shkurtër


Termi "SHA" është një shkurtim i tre fjalëve: "Secure Hashing Algorithm". Bitcoin përdor SHA-256, dhe "baza" e funksionit hash të përmendur është SHA-2, i cili përfshin shumë algoritme kripto (përfshirë 256).

Krijuesit e SHA-2 janë NSA e Shteteve të Bashkuara, një agjenci speciale që merret me çështjet e sigurisë kombëtare të vendit. Pas zhvillimit dhe testimit të algoritmit, ai u lëshua për publikun në 2002. SHA-2 i ri përfshinte gjithashtu funksionin e parë hash SHA-1 (krijuar 7 vjet më parë - në 1995). Që nga prezantimi i SHA-2, janë lëshuar shumë variante të algoritmit, një prej të cilave është përdorur nga Satoshi Nakamoto kur krijoi Bitcoin në 2009.

Qëllimi i zhvilluesve ishte të lëshonin një algoritëm që do të siguronte formimin e një vlere specifike të një gjatësi të caktuar nga një grup i rastësishëm karakteresh. Ata e bënë atë. Në të ardhmen, parametri që rezulton do të përdoret për të identifikuar (kontrolluar) informacionin. Qëllimi fillestar i SHA-2 është të mbrojë të dhënat për shërbime të ndryshme, dhe sot (në vitin 2018) SHA-256 njihet kryesisht si një algoritëm i përdorur në minierat e monedhave.

Në vitin 2012, sistemi u përmirësua dhe u shfaq një version i përditësuar i funksionit hash - SHA-3. Besohet se me kalimin e kohës, zhvillimi i ri do të zhvendosë algoritmet e mëparshme, gjë që do të përmirësojë shkallën tashmë të lartë të sigurisë.

Karakteristikat e algoritmit të kriptimit të Bitcoin


Thelbi i SHA-256 është i thjeshtë. Mesazhi fillestar pas shtimit ndahet në blloqe, dhe secila prej tyre është 16 fjalë. Elementet që rezultojnë kalojnë nëpër cikle të veçanta që përfshijnë 64 ose 80 faza. Në secilën prej tyre, dy fjalë konvertohen dhe opsioni i transformimit formohet nga fjalët e mbetura. Parametrat që rezultojnë përmblidhen për të formuar një hash.

Gjatë funksionimit të algoritmit, përdoren 6 komanda:

  • "xor" - heq "OR".
  • "shr" - zhvendos treguesin me numrin e kërkuar të biteve në të djathtë me një frekuencë specifike.
  • "kalbet" - zhvendos treguesin me numrin e kërkuar të biteve në të djathtë (pa përdorur një cikël specifik).
  • "II" - një lidhje e elementeve që kanë natyrë lineare.
  • "dhe" - "Dhe".
  • "+" - gjurmimi.
Karakteristikat e protokollit:
  1. Kufiri i sipërm për kohëzgjatjen e mesazhit është 33 B.
  2. Parametri i shpejtësisë maksimale është 139 MiB/s.
  3. Madhësia e fjalës - 4 B.
  4. Numri i përsëritjeve në një cikël është 64.
  5. Madhësia e elementit të bllokut është 64 B.
  6. Kodi total i hash është 32 B.

Algoritmi i kriptimit të Bitcoin në miniera


Kur kryeni llogaritjet brenda minierave, korrektësia e kodit hash që rezulton përcaktohet nga numri i zerave në fillim të rreshtit. Për shembull, nëse ky parametër është 17, probabiliteti për të gjetur një numër të tillë është jashtëzakonisht i ulët dhe është diku rreth 1:1.4*10 në fuqinë e 20-të. Nuk është për t'u habitur që miniera e Bitcoin kërkon përdorimin e pajisjeve të fuqishme dhe kosto të larta të energjisë. Në të njëjtën kohë, optimizimi i kërkimit për hash-in e kërkuar është i pamundur, sepse pas marrjes së një blloku informacioni, një numër i rastësishëm shfaqet në dalje.

Vështirësia e nxjerrjes së një monedhe virtuale është të gjesh hash-in e nevojshëm dhe të formosh bllokun tjetër. Për të arritur këtë qëllim, përdoret numërimi standard i vlerave, i cili kërkon pajisje me performancë të lartë. Siç u përmend, kërkimi nuk është për një hash të thjeshtë, por për një vlerë me një numër të madh "0" përpara tij.

Minierat e kriptomonedhave duke përdorur SHA-256 është një grup masash që synojnë zgjidhjen e një problemi specifik të kriptove. Në rastin e Bitcoin, pajisjet e mëposhtme përdoren për miniera:

  1. Që nga ardhja e BTC në 2009, si dhe deri në mesin e vitit 2010, përdorimi i një njësie qendrore të përpunimit (CPU) ishte i rëndësishëm.
  2. Deri në mesin e vitit 2011, minatorët përdornin kompjuterë me karta video (GPU).
  3. Deri në fillim të vitit 2013, FGPA-të ishin të njohura, siç ishin fermat GPU.
  4. Në vitin 2014, u shfaqën ASIC. Ata eklipsuan pajisjet ekzistuese në performancë. Përkundër kësaj, deri në fillim të vitit 2017, minatorët përdorën ferma GPU dhe punuan në pishina, por deri në fund të vitit 2017 dhe deri më sot, vetëm -minatorët janë të rëndësishëm. Përdorimi i pajisjeve të tjera është joprofitabile.
Pajisjet e përmendura përdoren për të zgjedhur funksionin hash me interes dhe për të gjeneruar një të ri. Sa më i lartë të jetë hashrati (fuqia llogaritëse) e pajisjes, aq më shpejt renditen të dhënat dhe aq më pak kohë duhet për të gjetur një zgjidhje.

Me rritjen e konkurrencës dhe lëshimin e minatorëve më produktivë, dhe rritet, parametri i të cilit ndryshon çdo 2 javë.

Dobësitë dhe pikat e forta të algoritmit të hashimit të Bitcoin


Më sipër shikuam se çfarë është algoritmi i hashimit të Bitcoin dhe cilat janë veçoritë e tij. Ky është SHA-256, i cili konsiderohet algoritmi më i zakonshëm me një nivel të lartë besueshmërie dhe një parim funksionimi relativisht të thjeshtë. Është shumë rezistent ndaj hakerimit dhe ju lejon të nxjerrni monedha në çdo pajisje (në varësi të parametrave të vështirësisë).

Pavarësisht nga një sërë cilësish pozitive, algoritmi i hashing Bitcoin ka një sërë dobësish:

  1. Kontroll nga pjesëmarrësit e minierave BTC. I njëjti parim funksionon këtu si në shoqëritë aksionare (SH.A.), kur pjesëmarrësit e shoqërisë kanë një numër të caktuar aksionesh. Sa më shumë fuqi të përqendrohet në duart e minatorëve të rrjetit kripto, aq më i fortë është ndikimi i tyre në sistemin e përgjithshëm. Për më tepër, për shkak të kompleksitetit në rritje të minierave në vitin 2018, ka një tendencë të dukshme që minierat të kalojnë nga duart e minatorëve privatë në kontrollin e organizatave të mëdha të përfshira në krijimin e pajisjeve për nxjerrjen e monedhave virtuale. Për të marrë Bitcoin, një minator privat duhet të shpenzojë shuma të mëdha për të blerë ASIC, të lidhet me një nga pishinat dhe të paguajë energjinë elektrike. Nëse kurseni në pajisje, prodhimi humbet përfitimin.
  2. Si pasojë e situatës së diskutuar më sipër është fakti që pjesa “luan” e Bitcoin-it është e përqendruar në duart e pronarëve të kompanive të mëdha minerare. Nëse marrim parasysh se jo i gjithë Bitcoin i marrë del në shitje, organizata të tilla shndërrohen në investitorë dhe kujdestarë të monedhave. Si rezultat, numri i monedhave në qarkullim zvogëlohet. Për më tepër, akumulimi i kriptomonedhës ju lejon të ndikoni në decentralizimin, si dhe në kursin e këmbimit të BTC gjatë procesit të tregtimit.
  3. Për shkak të mangësive ekzistuese, algoritmi SHA-256 gradualisht po bëhet një gjë e së kaluarës dhe projektet më të avancuara po zënë vendin e tij. Për shembull, Scrypt, Ethash, Blake-256, Equihash dhe të tjerët po fitojnë popullaritet. Algoritmet e reja kanë nivele më të mira mbrojtjeje dhe sigurie, gjë që i detyroi krijuesit e shumë kriptomonedhave të braktisin SHA-256 të vjetëruar në favor të teknologjive më të avancuara.
  4. Pavarësisht korrigjimit të gabimeve kryesore që u identifikuan nga zhvilluesit, disa dobësi nuk mund të hiqen (në vitin 2008, u gjetën përplasje për 22 përsëritje). Kjo është arsyeja pse zhvillimi i SHA vazhdoi, dhe versioni i dytë u zëvendësua nga SHA-3.
Në vitin 2009, u detyrova të përdor SHA-256, sepse në kohën e krijimit të kriptomonedhës, qeveritë e shteteve miratuan këtë protokoll. Në atë kohë, ai u përdor në mënyrë aktive për mbrojtjen e të dhënave në disa programe qeveritare, dhe u përdor gjithashtu në sektorin komercial. Doli se protokolli u krijua për të zgjidhur probleme të caktuara, por në realitet është në kërkesë në një mënyrë krejtësisht të ndryshme.

Për qartësi, le të renditim veçoritë pozitive dhe negative të algoritmit të kriptimit të Bitcoin.

PërparësitëTë metat
I përhapur (përfshirë në sektorin e kriptomonedhës). Protokolli SHA përdoret në mënyrë aktive në jetën e përditshme për të mbrojtur informacionin.Humbja e decentralizimit. Fuqia është e përqendruar në duart e kompanive minerare.
Mbrojtje e besueshme nga vjedhjet.Përsëritja SHA ka një strukturë të thjeshtë, e cila ka çuar në një rritje të kompleksitetit të minierave me kalimin e kohës. Që nga gushti 2018, vetëm ASIC me performancë të lartë mund të përdoren për minierat e Bitcoin.
Komoditeti për sa i përket nxjerrjes së monedhave, shkathtësia në zgjedhjen e pajisjeve të minierave.Shfaqen algoritme të reja që kanë një strukturë më të avancuar.
Në versionin e dytë (SHA-2), krijuesit arritën të eliminojnë një sërë mangësish që ndikuan negativisht në besueshmërinë e sistemit.Pavarësisht punës aktive për defektet, shumë mangësi nuk u hoqën. Jo çuditërisht, zhvilluesit krijuan një version të ri të SHA-3.
Protokolli është miratuar në nivel legjislativ në Shtetet e Bashkuara.

Sot pothuajse nuk përdoret në zhvillimin e kriptomonedhave të reja. Shembulli më i mrekullueshëm i një monedhe që ende përdor SHA-256 është Bitcoin Cash, një pirun i Bitcoin që u shfaq në gusht 2017. Por në situatën me këtë monedhë, përdorimi i SHA është më shumë një domosdoshmëri sesa një zgjedhje e krijuesve. Sa i përket vetë Bitcoin, përdorimi i këtij protokolli të serisë vjen si pasojë e mungesës së alternativave nga Satoshi Nakamoto.

Sot, në vitin 2018, flitet shumë për përmirësimin e këtij algoritmi dhe ndryshimet në rrjetin e kriptomonedhave, por deri më tani synime të tilla nuk kanë gjetur zbatim fizik dhe mbeten vetëm në formën e propozimeve.

Video rreth funksioneve dhe algoritmeve kriptografike:

2017-a e kaluar ishte një vit i popullaritetit shpërthyes të kriptomonedhave dhe të njëjtës rritje të shpejtë të normës së kriptomonedhës "kryesore" Bitcoin. Këto rrethana nxitën interesin jo vetëm për spekulimet dhe minierat, por edhe për vetë thelbin e fenomenit. Gjithnjë e më shumë njerëz duan të kuptojnë se si funksionon gjithçka?

Po hapim një seri materialesh në të cilat do të përpiqemi të shpjegojmë në formën më të arritshme se çfarë fshihet pas këtyre akronimeve misterioze si Scrypt, SHA-256, X11 e të tjera. Le të fillojmë me algoritmin më të rëndësishëm (por jo më të mirën) për botën e kriptomonedhave - SHA-256. Është kjo që është baza për zhvillimin e Bitcoin. Por para kësaj, le të përcaktojmë terminologjinë kryesore - përcaktojmë kuptimin e termave "miniera" dhe "hash".

Çfarë është minierat?

Ndryshe nga besimi popullor, minierat nuk janë vetëm dhe jo aq nxjerrja e vetë kartëmonedhave kriptografike, por masa për të mbrojtur pikërisht këtë kriptomonedhë nga aktivitetet mashtruese. Nuk ka të bëjë vetëm me falsifikimin - edhe më e rëndësishme është mbrojtja, për shembull, nga përdorimi i përsëritur i të njëjtave monedha nga i njëjti person. Fitimet e monedhave të reja kripto janë të lidhura ngushtë me emetimin e tyre dhe krijohen nga shpërblimi për gjetjen e një blloku të ri që plotëson kushtet e algoritmit të minierave.

Kjo do të thotë, në mënyrë që monedha tjetër e kriptos "të shfaqet", ju duhet të kryeni një kompleks të tërë llogaritjesh komplekse dhe të gjeni atë bllok "korrekt" shumë të lakmuar. Kjo është ajo që bëjnë entuziastët me pajisjet e tyre. Skema mbështet veten - për të rritur sigurinë e kriptomonedhës dhe për të nxjerrë njësi të reja, minierat janë të nevojshme, dhe në mënyrë që të ketë kuptim për ta bërë atë, minatorët marrin një shpërblim.

Me pak fjalë, grupet e softuerit të minierave kryenin më parë operacione llogaritëse në një bllok të vetëm, i cili më pas transformohet një numër i pabesueshëm herë për të zbuluar një lloj të veçantë kodi hash. Gjetja e një kodi hash që do të plotësonte kërkesat e algoritmit bëhet më i vështirë sa më shumë pjesëmarrës të përfshihen në proces. Hashi "i saktë" është jashtëzakonisht i rrallë dhe gjetja e një të tillë është e ngjashme me fitimin e lotarisë.

Çfarë është një hash?

Termi "hash", i cili nuk është i qartë për të gjithë, u përmend më lart. Ky është një nga konceptet themelore në enkriptim në përgjithësi dhe në algoritmin SHA-256 në veçanti. Le të shpjegojmë se çfarë do të thotë kjo dhe të kalojmë në pikat më të rëndësishme të lidhura.

Pra, hashing është procesi i kthimit të një grupi të dhënash hyrëse të një madhësie arbitrare në një varg dixhital dalës. Ky transformim kryhet sipas një algoritmi të zhvilluar paraprakisht, dhe vargu dalës është krejtësisht unik dhe shërben si një lloj "gjurmë gishti" i grupit hyrës. Është ky varg që quhet shuma e hash-it, kodi hash ose thjesht hash. Dhe algoritmi i transformimit është një funksion hash.

Le të japim një shembull. Ne mund të "ushqejmë" funksionet hash, të themi, tekstin e romanit në vargje të A. S. Pushkin "Eugene Onegin", dhe dalja do të jetë një kod heksadecimal afërsisht si ky:. Sigurisht, është e pamundur të "shpalosh" këtë kod përsëri dhe ta kthesh atë në "Eugene Onegin". Por sapo të ndryshoni një karakter të vetëm në poezi, qoftë edhe të shtoni një hapësirë, hash-i që rezulton do të transformohet përtej njohjes. Vëllimi gjithashtu nuk ndikon në gjatësinë e kodit hash. Pra, mund të futni një simbol "a" në funksion, dhe dalja do të jetë saktësisht i njëjti grup simbolesh pseudo të rastësishme me saktësisht të njëjtën gjatësi.

Tani le të hedhim një vështrim më të afërt se pse është e nevojshme kjo dhe çfarë vështirësish lindin gjatë rrugës. Kushdo që është i interesuar për këtë temë e di se miniera e kriptomonedhave duke përdorur protokollin SHA-256 mund të kryhet duke përdorur fuqinë e një procesori qendror, një karte grafike ose një pajisje të specializuar ASIC. Në fakt, në kontekstin e Bitcoin, metoda e parë nuk është më e rëndësishme dhe minierat me karta video po jetojnë ditët e fundit. Kompleksiteti i llogaritjeve është rritur shumë ndjeshëm dhe gjysma e masave nuk janë më të përshtatshme.

Në ndërfaqen e softuerit të minierave, proceset e konvertimit të blloqeve në sasi hash shfaqen si një linjë lakonike si "Pranuar 0aef59a3b". Një bllok mund të përbëhet nga mijëra apo edhe qindra mijëra linja të ngjashme, por vetëm një mund të shërbejë si "nënshkrimi" i bllokut, kërkimi i të cilit është thelbi i minierave.

Kërkimi për hash-in e saktë kryhet thjesht duke kërkuar përmes rezultateve të zgjidhjes së një numri të madh problemesh. Në algoritmin SHA-256, "korrektësia" e një hash përcaktohet nga numri i zerave në fillim të shumës hash. Probabiliteti për të gjetur një kod të tillë hash përmes llogaritjeve të përcaktuara nga algoritmi është i papërfillshëm - një shans në miliona zgjidhje. Probabiliteti i saktë përcaktohet nga niveli aktual i vështirësisë në sistemin e decentralizuar të një kriptomonedhe të veçantë.

Një fakt i jashtëzakonshëm. Secili prej nesh është marrë në mënyrë të përsëritur me algoritmin SHA-256, pa e ditur as atë, edhe pa marrë parasysh minierat e kriptomonedhave. Po flasim për certifikatën e sigurisë SSL, e cila mbron shumë faqe interneti. Kur vizitoni një sajt të tillë, ju ndërveproni automatikisht me SHA-256, mbi të cilin është ndërtuar SSL.

Karakteristikat e protokollit SHA-256

Së pari, pak histori. Fillimisht, algoritmi i enkriptimit SHA-256, ose më saktë prototipi i tij, u shpik brenda mureve të NSA-së "të keqe" (Agjencia e Sigurisë Kombëtare e SHBA) në vitin 2002 tani të largët. Brenda disa muajsh ai u modifikua dhe u prezantua zyrtarisht nga Universiteti Kombëtar Metrologjik në nivel federal. Dy vjet më vonë, u lëshua versioni i dytë, i përmirësuar.

Gjatë tre viteve të ardhshme, Agjencia punoi për të përmirësuar algoritmin dhe përfundimisht lëshoi ​​një patentë për botimin e dytë. Kjo u bë nën një licencë pa pagesë, e cila bëri të mundur përdorimin e teknologjisë më të fundit për qëllime "paqësore".

Në fund të fundit, SHA-256 formoi bazën për krijimin e kriptomonedhës së parë në botë - Bitcoin. Në këtë rast, protokolli përdoret dy herë për të rritur sigurinë.

Kur kryeni llogaritjet si pjesë e minierave në sistemin Bitcoin, një shenjë e përshtatshmërisë së kodit hash që rezulton është numri i zerave në fillim të rreshtit. Nga fundi i datës 17, fillimi i datës 18, numri i zerave të kërkuara kryesore është 17 (+/-). Probabiliteti për të zbuluar një kod të tillë është afërsisht 1 në 1,4*10 20 . Ky është një numër monstruoz i vogël që kundërshton të kuptuarit dhe është i krahasueshëm me probabilitetin për të gjetur një kokërr rëre të një forme të caktuar në të gjitha plazhet ranore të planetit tonë. Kjo është arsyeja pse nxjerrja e Bitcoin kërkon kaq shumë fuqi kompjuterike dhe kaq shumë energji elektrike.

Nuk ka asnjë mënyrë për të optimizuar kërkimin për hash "korrekt". Në protokollin SHA-256, funksioni hash, duke marrë një bllok të dhënash, prodhon një vlerë dalëse krejtësisht të paparashikueshme. Prandaj, përsëritja (përsëritja) pas përsëritjes është e nevojshme derisa të gjendet një kod i përshtatshëm, theksojmë edhe një herë - krejtësisht të rastësishme.

Tani jemi të detyruar ta "ngarkojmë" pak lexuesin me informacione komplekse teknike, përndryshe historia jonë për SHA-256 do të jetë e paplotë. Nëse asgjë nuk është fare e qartë, thjesht kaloni në seksionin tjetër të artikullit.

Protokolli përfshin ndarjen e informacionit në fragmente prej 512 bitësh secili (ose 64 bit, që është i njëjtë, pasi 1 bajt = 8 bit). Pastaj "përzierja" kriptografike ndodh sipas skemës së natyrshme në algoritëm, dhe dalja është një kod hash me madhësi 256 bit. Operacioni hash kryhet në 64 përsëritje, që është relativisht pak, veçanërisht në krahasim me algoritmet e reja kriptografike që janë shfaqur.

Parametrat kryesorë teknikë të SHA-256 janë si më poshtë:

  • Madhësia e bllokut: 64 bajt;
  • Gjatësia maksimale e mesazhit: 33 bajt;
  • Madhësia e kodit hash që rezulton: 32 bajt;
  • Numri i përsëritjeve në një raund: 64;
  • Shpejtësia maksimale: rreth 140 MiB/s (mebibajt për sekondë).

Në punën e tij, algoritmi përdor teknikën e mirënjohur Merkle-Damgard, e cila përfshin ndarjen e treguesit fillestar në blloqe menjëherë pas ndryshimeve. Blloqet, nga ana tjetër, ndahen në 16 fjalë secila.

Grupi i të dhënave drejtohet përmes një raundi prej 64 përsëritjesh. Secili prej tyre fillon procesin e hashimit të fjalëve që përbëjnë bllokun. Çiftet e fjalëve përpunohen nga funksioni, pas së cilës mblidhen rezultatet dhe merret kodi i saktë hash. Çdo bllok tjetër llogaritet në bazë të vlerës së atij të mëparshmi. Ky është një proces pa probleme - është e pamundur të llogariten blloqet veçmas nga njëri-tjetri.

Evolucioni i SHA-256

Për të kuptuar vlerën kriptografike të këtij algoritmi, le të shohim prapa në histori. Ata filluan të testojnë seriozisht forcën e saj pothuajse menjëherë pas krijimit të saj - në 2003. Çështja u trajtua nga profesionistë, por nuk u gjetën dobësi apo gabime.

Kaluan pesë vite të tëra kur, në vitin 2008, ekspertët indianë ishin ende në gjendje të identifikonin përplasjet për deri në 22 përsëritje. Pas disa muajsh punë të palodhur, u propozua një zgjidhje e suksesshme për problemin.

Gjatë analizës së funksionimit të pjesës funksionale të algoritmit, u testua rezistenca e tij ndaj dy llojeve të metodave të mundshme të dështimit të sigurisë:

  • përmes paraimazhit: kjo nënkupton deshifrimin e kundërt të mesazhit origjinal bazuar vetëm në vargun hash;
  • përmes zbulimit të përplasjeve: kjo nënkupton koincidencën e të dhënave dalëse, me kusht që mesazhet hyrëse të jenë të ndryshme. Kjo do të thotë, blloqet hyrëse janë të ndryshme, por hash-i në dalje është i njëjtë - kjo nuk duhet të ndodhë.

Pasi versioni i parë i SHA-256 dështoi në testet në kriterin e dytë, zhvilluesit vendosën të krijojnë një mekanizëm të ri kriptimi bazuar në parime rrënjësisht të ndryshme. Kjo është ajo që u bë - në vitin 2012, u prezantua një protokoll i gjeneratës së re, plotësisht i lirë nga mangësitë e përshkruara më sipër.

Disavantazhet e algoritmit

Fakti që zhvilluesit arritën të korrigjojnë gabimet e tyre nuk do të thotë se ata arritën ta sjellin SHA-256 në përsosmëri. Protokolli u hoq nga dobësitë e dukshme, por mangësitë e tij "vendase" mbetën.

Përdorimi i SHA-256 si bazë e Bitcoin u bë i mundur, jo më pak për shkak të faktit se vetë legjislacioni amerikan ishte besnik ndaj këtij protokolli. U lejua të përdorej për mbrojtjen e të dhënave në disa programe qeveritare, si dhe u lejua të përdorej në sferën tregtare.

Këtu vjen ironia e fatit - protokolli u krijua për një qëllim, por gjeti aplikimin e tij më të gjerë në ato krejtësisht të ndryshme. Dhe për ato qëllime të para ishte më se efektive dhe e përshtatshme. Por për kriptovalutat doli të ishte shumë e thjeshtë. Nuk është shaka kur në Kinë, për shembull, nuk ka as ferma, por "fabrika" të tëra të mbushura me minatorë ASIC.

Çdo përsëritje e algoritmit duket mjaft primitiv - një operacion bazë binar plus një shtesë 32-bit. Kjo është arsyeja pse ASIC-të e bazuara në SHA-256 u shfaqën kaq shpejt, duke shumëzuar me zero të gjitha shpresat e minatorëve "shtëpi" me vetëm një procesor dhe disa karta video.

Kohët dhe kushtet po ndryshojnë shumë, dhe protokolli SHA-256 po ndjek me siguri në fund të zgjidhjeve të tjera më të avancuara. I njëjti Scrypt, në procesin e llogaritjeve, fillimisht regjistron 1024 vargje të ndryshme hash dhe vetëm pas kësaj kryen mbledhjen dhe merr rezultatin përfundimtar. Kjo është një skemë e pakrahasueshme më komplekse me nivelet më të larta të mbrojtjes dhe sigurisë së kriptomonedhave.

Përmbledhje

Algoritmi i kriptimit SHA-256 u konsiderua mjaft efektiv dhe i besueshëm derisa filloi bumi i kriptomonedhës. Sot bëhet e qartë se në sfondin e zgjidhjeve të reja tashmë duket mjaft e dobët. Aq sa kjo bëri të mundur krijimin e pajisjeve speciale të "mprehura" në mënyrë rigoroze për ta anashkaluar atë. Këta janë të njëjtët minatorë ASIC që kanë shkatërruar praktikisht minierat në procesorët qendrorë dhe tashmë janë duke përfunduar minierat në kartat video.

Duket se nuk ka asgjë të keqe me këtë - konkurrencë e shëndetshme, në fund të fundit. Por në fakt, përdorimi i ASIC-ve centralizon mjaft ndjeshëm kriptomonedhën, duke neutralizuar kështu vetë idenë e saj. Ky fakt nuk mund të mos i shtynte entuziastët e talentuar të krijonin algoritme të reja, më të avancuara hashing. Dhe nuk vonuan të vinin.

Protokolli SHA-256 aktualisht zë pjesën më të madhe të tregut të kriptomonedhave, por alternativat e reja tashmë po e lënë mënjanë atë me besim. Për shembull, kripti i dytë më i popullarizuar dhe "i shtrenjtë", Ethereum, përdor protokollin Ethash, i cili më parë quhej Dagger. Protokolli është aq i mirë sa Ethereum ende ruan decentralizimin maksimal deri më sot, dhe minatorët ASIC për minierat e tij ende nuk ekzistojnë në natyrë. Ndoshta Ethash do të zëvendësojë SHA-256 qartësisht të vjetëruar.

Një nga algoritmet e para alternative ishte Scrypt, mbi të cilin bazohet një nga altcoinët më të njohur, Litecoin. Kjo është një zgjidhje shumë më e avancuar, e cila nuk i jep më ASIC avantazhe të tilla të pamohueshme. Sidoqoftë, super-fitimet nga minierat i detyruan specialistët kinezë të investojnë shumë përpjekje në zhvillimin e zgjidhjeve teknologjike për Scrypt, dhe ASIC të bazuara në këtë protokoll u shfaqën.

Nëse marrim parasysh minierat nga këndvështrimi i një personi të zakonshëm që nuk ka përvojë në nuancat teknike, atëherë ai nuk do të ndiejë ndonjë ndryshim midis algoritmeve Scrypt dhe SHA-256. ASIC në të dy protokollet duken pothuajse të njëjta, konsumojnë afërsisht të njëjtën sasi energjie dhe kanë saktësisht të njëjtën zhurmë të ventilatorit. Një tjetër gjë janë normat e kriptomonedhave që minojnë të njëjtat ASIC, por kjo është një histori krejtësisht e ndryshme.

Materialin e mëposhtëm në kuadër të kësaj teme do t'ia kushtojmë protokollit alternativ të enkriptimit Scrypt.

SHA 256 është një grup udhëzimesh kriptografike për nxjerrjen e kriptomonedhave. Me fjalë të tjera, ai mbron me besueshmëri të gjitha transaksionet në rrjet dhe ndërlikon nxjerrjen e monedhave elektronike. Kjo shkurtesë qëndron për Algoritmin e Sigurt të Hashimit, që do të thotë një metodë shumë popullore dhe efektive e hashimit.

Thelbi i SHA 256 është shndërrimi i informacionit në vlera, numra. Ky zinxhir ka një gjatësi të caktuar. Kjo do të thotë që çdo informacion që transmetoni brenda rrjetit do të kodohet me vlera të veçanta - identifikues (ID).

Kur kryeni transaksione, algoritmi SHA 256 krahason ID-në me të dhënat origjinale, të cilat nuk mund të merren, dhe më pas siguron akses në transaksion. Ky protokoll përdoret tani në minierat e kriptomonedhave si BTC dhe BCH.

Historia e paraqitjes

Si ndodhi që Bitcoin filloi të përdorte SHA 256? Gjithçka filloi kur algoritmi u bë anëtar i familjes SHA-2, të cilat kanë një madhësi zinxhir hash prej 224-512 bit.

Ata, nga ana tjetër, u krijuan në bazë të stërgjyshit të tyre - SHA-1, hash-i i të cilit ishte 160 bit i gjatë. Teknologjia u shfaq në 1995, dhe ishte menduar për përdorim për qëllime civile - domethënë, kriptim të informacionit të zakonshëm, jo-shtetëror të rëndësishëm.

Familja SHA-2, së cilës i përket SHA 256, u zhvillua nga Agjencia e Sigurisë Kombëtare 16 vjet më parë - në pranverën e vitit 2002. Bazuar në këtë, mund të themi se algoritmi është moralisht i vjetëruar. Megjithatë, është ende një nga algoritmet më të forta për enkriptimin e transaksioneve në rrjet.

Parametrat teknikë të SHA 256

Algoritmi është krijuar për të dhëna të ndara në pjesë të barabarta prej 64 bajt. SHA 256 siguron që ato të mblidhen dhe kombinohen në një zinxhir të vetëm 256-bit. Metoda kryesore për këtë metodë është operacioni i enkriptimit, i cili kryhet në një cikli 64 herë.

Karakteristikat e shkurtra të udhëzimeve algoritmike SHA 256:

  • Blloqet 64-bit - funksionon më shpejt me blloqet 32-bit;
  • gjatësia e pikut të zinxhirit të koduar të informacionit është 33 bajt;
  • madhësia e përmbledhjes së mesazhit - 32 bajt;
  • madhësia e standardizuar e një fjale është 4 bajt;
  • Cikli i enkriptimit në një raund operimi është 64 bajt;
  • shpejtësia me të cilën funksionon algoritmi është 140 Mbit/s.

Vlen të përmendet se ky anëtar i familjes SHA-2 bazohet në kornizën e përshkruar nga Merkle-Damgaard. Kjo do të thotë që përpara ndarjes së informacionit në fjalë, të dhënat ndahen në blloqe. Procesi forcon enkriptimin duke përzier të dhënat.

Mbledhja e informacionit në vetvete kryhet në rangun nga 64 në 80 përsëritje. Çdo lak pasues i konverton blloqet e krijuara në fjalë. Rezultati përfundimtar, përkatësisht hash, krijohet duke mbledhur të gjitha vlerat fillestare.

Kriptovalutat me algoritmin SHA 256

Siç u përmend më herët, jo vetëm Bitcoin ka një grup të tillë udhëzimesh, por edhe:

  • peercoin, veçantia e të cilit është se kodi krijohet bazuar në topin sugjerues, por PoS përdoret për të mbrojtur të gjithë rrjetin, dhe PoW është përgjegjës për shpërndarjen e monedhave;
  • namecoin është një monedhë dixhitale që vepron si një mjet mbrojtjeje, konfidencialiteti dhe decentralizimi; unobtanium - ka inflacion jashtëzakonisht të ulët; do të duhen të paktën 300 vjet për të nxjerrë të gjitha monedhat;
  • Deutsche eMark është një mikrorrjet gjerman që përdoret për shkëmbimin e aseteve dhe parave. Vetë procesi zhvillohet pa ndërmjetës; betaCoin - funksionon në të njëjtin parim si BitCoin i famshëm në botë;
  • jouleCoin - gjithashtu i bazuar në gjyshin Bitcoin, por siguron konfirmim më të shpejtë të transaksioneve;
  • steemit nuk është as një kriptë e veçantë, por një platformë e tërë në blockchain. Detyra e tij kryesore është të shpërblejë botime interesante.

Litecoin përdor gjithashtu algoritmin SHA 256, por jo në të gjithë sistemin, por në një nënprogram. Për minierën e Litecoin, përdoret protokolli i sigurisë Scrypt, i cili rrit kompleksitetin e minierave dhe zvogëlon kthimin e ASIC-ve.

Minierat e kriptomonedhave bazuar në algoritmin SHA 256

Për të minuar monedha elektronike që bazohen në familjen SHA-2, nuk është e nevojshme të përdorni mjete të specializuara - ASIC. Të dy fermat e bazuara në CPU dhe GPU performojnë mirë në miniera. Ky i fundit është dukshëm më i lartë në shpejtësi ndaj të parës.

E megjithatë ASIC është zgjidhja më e mirë për minierat e kriptomonedhave. Përparësitë e tij kompensohen në një farë mase nga çmimi i tij i rëndësishëm - rreth 100 mijë rubla, modelet më të fuqishme madje tejkalojnë 500,000. Ndërsa kompleksiteti rritet, kthimi zvogëlohet. Prandaj, pajisja jo gjithmonë e justifikon veten, megjithëse siguron një shpejtësi shumë më të lartë të minierave sesa fermat në kartat video dhe, veçanërisht, një CPU.

Minierat e GPU-së konsiderohet pak a shumë fitimprurëse. Në përgjithësi, e gjithë ferma do të kushtojë afërsisht 1000-2000 dollarë, plus pajisje shtesë - në veçanti, sistemet e ftohjes për kartat video. Vlen gjithashtu të merret parasysh marrja me qira e lokaleve, pagesat e energjisë elektrike dhe pagat për personelin e shërbimit.

Ndër kartat video, GTX 1080 Ti nga Nvidia performon mirë. Prodhon një shpejtësi prej 1400 operacionesh të suksesshme në sekondë. AMD është pak prapa me kartat e saj të linjës Vega - 1200 MH/s. Ka edhe opsione më të lira si Radeon 7970, por shpejtësia e tij nuk i kalon 800 MH/s.

Algoritmi SHA 256, edhe pse i vjetër, përdoret ende në Bitcoin, kriptomonedhën nr. 1 në botë. Protokolli përdoret gjithashtu në një sërë altcoins të tjerë premtues. SHA256 gradualisht po zëvendësohet nga Scrypt, por Bitcoin nuk ka plane të kalojë në të. Sa i përket minierave, gjithçka është e thjeshtë - nëse keni para, merrni ASIC me një shkallë të lartë hash. Dëshironi një zgjidhje më ekonomike? Pastaj ndërtoni një fermë nga kartat video AMD ose Nvidia.

  • Përkthimi

Në një moment doja të kuptoja se sa shpejt ishte e mundur të minonim Bitcoin me dorë. Doli që hashimi SHA-256 përdoret për miniera, dhe është mjaft i thjeshtë dhe mund të llogaritet edhe pa kompjuter. Sigurisht, procesi është shumë i ngadaltë dhe krejtësisht jopraktik. Por pasi të keni kaluar të gjitha hapat në letër, mund të keni një kuptim të mirë të detajeve se si funksionon algoritmi.

Një raund kripto

Minierat

Një pjesë kryesore e të gjithë sistemit të sigurisë së Bitcoin është miniera. Ideja bazë është që minatorët grupojnë transaksionet e Bitcoin në një bllok, të cilin më pas hasin një numër të pallogaritshëm për të gjetur një vlerë hash shumë të rrallë që bie në kushte të veçanta. Kur gjendet një vlerë e tillë, blloku konsiderohet i minuar dhe hyn në zinxhirin e bllokut. Vetë hashimi nuk shërben për asnjë qëllim të dobishëm përveç rritjes së vështirësisë për të gjetur bllokun e duhur. Kështu, kjo është një nga garancitë që askush i vetëm me ndonjë grup burimesh ekzistuese nuk do të jetë në gjendje të marrë kontrollin e të gjithë sistemit. Ju mund të lexoni më shumë rreth minierave në artikullin tim të fundit.

Funksioni hash kriptografik merr një bllok të dhënash si hyrje dhe prodhon një dalje të vogël por të paparashikueshme. Është projektuar në mënyrë që të mos ketë asnjë mënyrë të shpejtë për të marrë rezultatin që dëshironi dhe duhet të vazhdoni të kërkoni derisa të gjeni vlerën e duhur. Bitcoin përdor SHA-256 si një funksion të tillë. Për më tepër, për të rritur rezistencën, SHA-256 aplikohet në bllok dy herë dhe quhet SHA-256 i dyfishtë.

Në Bitcoin, kriteri që një hash të jetë i vlefshëm është të kesh një numër të mjaftueshëm zerot kryesore. Gjetja e një hash të tillë është po aq e vështirë sa, për shembull, gjetja e një makine ose numri telefoni që përfundon me disa zero. Por sigurisht për një hash është në mënyrë eksponenciale më e vështirë. Aktualisht, një hash i vlefshëm duhet të përmbajë afërsisht 17 zero kryesore, të cilat plotësohen vetëm me 1 në 1,4x10 20 . Nëse nxjerrim një analogji, atëherë gjetja e një vlere të tillë është më e vështirë sesa gjetja e një grimce specifike midis gjithë rërës në Tokë.

Blu bllokon pjesët e përziera jolineare për ta bërë më të vështirë analizën kriptografike. Për më tepër, për një besueshmëri edhe më të madhe, përdoren funksione të ndryshme përzierjeje (nëse mund të gjeni një boshllëk matematikor për të gjeneruar shpejt hash të vlefshëm, ju do të merrni kontrollin e të gjithë procesit të nxjerrjes së Bitcoin).

Funksioni i shumicës (blloku Ma) vepron në mënyrë bit mbi fjalët A, B dhe C. Për çdo pozicion biti, ai kthen 0 nëse shumica e biteve hyrëse në atë pozicion janë zero, përndryshe kthen 1.

Blloku Σ0 rrotullohet A me 2 bit, pastaj fjala origjinale A rrotullohet me 13 bit, dhe në mënyrë të ngjashme me 22 bit. Tre versionet që rezultojnë të zhvendosura të A janë shtuar në bit modul 2 ( xor normal, (A ror 2) xor (A ror 13) xor (A ror 22)).

Ch zbaton funksionin e përzgjedhjes. Në çdo pozicion biti kontrollohet një bit nga E, nëse është i barabartë me një, atëherë del biti nga F nga ky pozicion, përndryshe një bit nga G. Kështu, bitet nga F dhe G përzihen në bazë të vlerës. e E.

Σ1 është i ngjashëm në strukturë me Σ0, por punon me fjalën E, dhe konstantat përkatëse të zhvendosjes janë 6, 11 dhe 25.

Blloqet e kuqe kryejnë një shtesë 32-bitësh, duke gjeneruar vlera të reja për fjalët dalëse A dhe E. Vlera W t gjenerohet në bazë të të dhënave hyrëse (kjo ndodh në pjesën e algoritmit që merr dhe përpunon të dhënat e hashuara Është përtej fushëveprimit tonë). K t është konstanta e vet për çdo raund.

Në diagramin e mësipërm, vërehet se vetëm A dhe E ndryshojnë në një raund kriptografik. Fjalët e mbetura nuk ndryshojnë, por zhvendosen në dalje - A e vjetër kthehet në dalje B, B e vjetër në C e re, e kështu me radhë. Megjithëse një raund i vetëm i algoritmit nuk i ndryshon shumë të dhënat, pas 64 raundeve, informacioni i hyrjes do të kodohet plotësisht.

Ne e minojmë me dorë

Në video unë tregoj se si mund të kaloni të gjitha hapat e përshkruar me një stilolaps dhe letër. Kam kryer raundin e parë të hashimit për të minuar bllokun. Më deshën 16 minuta e 45 sekonda.


Më lejoni të shpjegoj pak se çfarë po ndodh: Unë shkrova fjalët nga A në H në formë heksadecimal dhe nën secilën bëra një përkthim në formë binare. Rezultati i bllokut Ma është nën fjalën C, dhe vlerat e A pas ndërrimeve dhe vetë dalja Σ0 shfaqen mbi vijën me A. Funksioni i përzgjedhjes shfaqet poshtë G dhe në fund versionet përkatëse të zhvendosura të E dhe vlera pas bllokut Σ1 shkon mbi vijën me E. Në këndin e poshtëm djathtas kryhet një shtesë, rezultati i së cilës përfshihet në llogaritjen e A-së së re dhe E-së së re (tre blloqet e para të kuq përmbledhës). Në pjesën e sipërme djathtas kam llogaritur vlerën e re të A, dhe në mes është llogaritja e vlerës së re të E. Të gjithë këta hapa u diskutuan më lart dhe mund të gjurmohen lehtësisht në diagram.

Përveç raundit të treguar në video, unë realizova një tjetër - raundin e fundit të 64-të të hashimit për një bllok specifik Bitcoin. Në foto, vlera e hash-it është theksuar me të verdhë. Numri i zerave konfirmon se është një hash i vlefshëm i Bitcoin. Vini re se zerot janë të vendosura në fund të hash-it, dhe jo në fillim, siç kam shkruar më herët. Arsyeja është se Bitcoin thjesht kthen bajtet e marra nga SHA-256.


Raundi i fundit i SHA-256, si rezultat i të cilit është i dukshëm një bllok Bitcoin i minuar me sukses

Çfarë do të thotë e gjithë kjo për hartimin e minatorëve të harduerit?

Çdo hap në SHA-256 duket shumë i thjeshtë në logjikën dixhitale - operacione të thjeshta me bit dhe shuma 32-bitësh (nëse keni studiuar ndonjëherë dizajnin e qarkut, ndoshta e keni imagjinuar tashmë se si mund të duket në harduer). Prandaj, ASIC-të zbatojnë SHA-256 në mënyrë shumë efikase, duke vendosur qindra njësi ekzekutimi të rrumbullakëta SHA-256 paralelisht. Fotografia më poshtë tregon një çip minierash që mund të llogarisë 2-3 miliardë hash në sekondë. Më shumë foto mund të shihni në Zeptobars.


Një fotografi silikoni i çipit Bitfury ASIC, i cili mund të nxjerrë Bitcoin me 2-3 gigahash për sekondë. Foto nga Zeptobars. (CC BY 3.0)

Në kontrast me Bitcoin, Litecoin, Dogecoin dhe sisteme të tjera të ngjashme me monedha alternative përdorin algoritmin e hashimit të skriptit, i cili është në thelb i vështirë për t'u zbatuar në harduer. Ky algoritëm ruan 1024 vlera të ndryshme hash në memorie gjatë ekzekutimit dhe i kombinon ato në dalje për të marrë rezultatin përfundimtar. Prandaj, kërkohet shumë më tepër memorie dhe qark për të llogaritur hash-et e skriptit në krahasim me hash-et SHA-256. Ndikimi i ndryshimit të algoritmit hash është qartë i dukshëm kur krahasohet hardueri përkatës i minierave - versionet për scrypt (Litecoin dhe të tjerët) janë mijëra herë më të ngadalta se versionet për SHA-256 (Bitcoin).

konkluzioni

SHA-256 ishte papritmas kaq i thjeshtë sa mund të llogaritej edhe me dorë (algoritmi i kurbës eliptike i përdorur për të nënshkruar një transaksion Bitcoin do të ishte shumë më i dhimbshëm, pasi përfshin një sërë shumëzimesh të numrave 32 bajt). Llogaritja e një raundi të SHA-256 më mori 16 minuta, 45 sekonda. Me këtë performancë, hashimi i një blloku të tërë Bitcoin (128 raunde) do të zgjasë 1,49 ditë, domethënë, ne marrim një shkallë hashimi prej 0,67 hash në ditë (në fakt, sigurisht, procesi do të përshpejtohej me praktikë). Për krahasim, gjenerata aktuale e minatorëve të Bitcoin prodhon disa terahashe në sekondë, që është rreth një kuintilion herë më shpejt se unë. Mendoj se është e qartë se miniera manuale e Bitcoin nuk është shumë praktike.

Një lexues nga reddit pyeti për shpenzimin tim të energjisë. Meqenëse nuk bëj ndonjë përpjekje serioze fizike, mund të supozojmë se shkalla e metabolizmit do të jetë 1500 kilokalori në ditë, atëherë zbulojmë se hashimi manual kërkon pothuajse 10 megaxhaule për hash. Konsumi tipik i energjisë për një minator hekuri është 1000 magehash për xhaul. Kështu, unë jam më pak efikas në energji se një copë hekuri e specializuar për 10^16 herë (10 kuadrilion). Një çështje tjetër është kostoja e energjisë. Një burim i lirë energjie janë donutët në 23 cent per 200 kilokalori.Elektriciteti une kam kushton 15 cent per kilovat ore qe eshte 6.7 here me i lire se donutet.Si rrjedhim kostoja e energjise ne terma hash per mua si nje minator njerezor eshte 67 kadrilion here me e larte. Po, është e qartë se nuk do ta arrij Fat i mirë me nxjerrjen manuale të Bitcoin, dhe kjo nuk merr parasysh as koston e letrës dhe stilolapsave!