Cum functioneaza si cum functioneaza bitcoinul

Cum functioneaza si cum functioneaza bitcoinul

Despre Bitcoin i sa spus deja foarte mult - de la istoria misterioasă a creării sale până la gradul de influență asupra economiei mondiale. În acest articol vrem să privim totul dintr-un unghi diferit, să cercetăm detaliile tehnice și să analizăm metodele matematice utilizate.







Ce este Bitcoin?

Bitcoin este un fișier digital care stochează înregistrări ale tuturor tranzacțiilor - de la data la care au apărut primele criptonime la ultima tranzacție în care au participat. Înregistrările sunt grupate în blocuri, fiecare conținând informații despre unele sau toate tranzacțiile recente care nu au fost înregistrate anterior în registru, precum și informații suplimentare privind serviciile.

Structura blocurilor

Fiecare bloc conține elemente obligatorii - un antet și o listă de tranzacții. Antetul include hash-ul acestui bloc, hash-ul blocului anterior, hashes de tranzacții și informații suplimentare despre bloc. Funcția hash (hashing) este o transformare matematică a unei serii de date sursă de lungime arbitrară într-un șir alfanumeric unic de lungime fixă, care, de fapt, este un cifru și identifică elementul de intrare. Șirul nu poate fi convertit în direcția inversă. Astfel, din orice set de date unic, putem obține un cod hash (hash, suma hash), care este, de asemenea, unic.

Cum functioneaza si cum functioneaza bitcoinul

Cum functioneaza si cum functioneaza bitcoinul

Pentru ca blocul să intre în bloc, trebuie calculat, adică găsiți valoarea hash asociată antetului care este mai mică decât pragul specificat. Cu alte cuvinte, sarcina este de a selecta datele de intrare astfel încât hașcarea să pornească, de exemplu, cu 17 zerouri. De fapt, aceasta este o căutare normală a variantelor de hash posibile. Odată ce nodul găsește opțiunea potrivită, declara către alte noduri că blocul este calculat și după verificarea corectitudinii calculului de către alți noduri, în timpul căruia are loc un singur calcul al hash-ului, blocul intră în sistemul bloc.

Uneori se rezolvă mai mult de un bloc simultan și se obțin mai multe ramuri. În acest caz, lanțul continuă după primul bloc obținut. Alții, datorită particularităților trecerii blocurilor de la nod la nod, ar putea obține blocuri într-o ordine diferită și ar putea construi după primul lor bloc primit. Remiza dispare atunci când cineva hotărăște următorul bloc. Ca regulă generală, toată lumea merge la cea mai lungă ramură. Din cauza calculelor, blocurile sunt rareori rezolvate simultan, dar și mai rar acest lucru se întâmplă de mai multe ori la rând. Ca rezultat, blocajul se stabilizează rapid, adică toate au aceleași blocuri la capătul lanțului.

Faptul că la sfârșitul lanțului există incertitudine este important pentru securitatea tranzacției. De exemplu. Dacă tranzacția dvs. se află într-una dintre ramurile scurte, aceasta își va pierde locul în lanț. De obicei, aceasta înseamnă că se va întoarce pur și simplu la o serie de tranzacții neconfirmate și va cădea într-unul dintre următoarele blocuri.

Algoritmul de semnătură digitală

Trimiteți bani, informați rețeaua cu privire la suma cu care soldul dvs. va scădea și soldul destinatarului va crește. În acest caz, există o regulă simplă: atunci când efectuați o tranzacție, intrarea (primită la fondurile dvs. de fonduri) trebuie să fie cheltuită complet, adică Pentru a trimite o sumă care nu este egală cu niciuna dintre intrările, va trebui să trimiteți modificarea în cont.

Semnătura depinde de mesajul atașat la traducere, adică Este nou pentru fiecare tranzacție, deci nu va funcționa pentru o altă tranzacție. Această dependență de mesaj înseamnă, de asemenea, că nimeni nu o poate schimba trecând-o prin rețea, deoarece schimbările din mesaj vor invalida semnătura. Algoritmul în sine este destul de complicat. Bitcoin utilizează semnătura digitală pe algoritmul curbei eliptice (ECDSA) și o funcție unidirecțională cu intrare secretă pentru confirmarea datelor. O caracteristică caracteristică a acesteia din urmă este că poate fi ușor calculată într-o singură direcție, dar este dificil să se calculeze în sens invers fără informații speciale, adesea numită "intrare secretă".

Algoritmul de semnătură digitală ECDSA, folosind curbele eliptice și câmpurile finite, este descris în detaliu în articolul "The Math Behind Bitcoin". Din punctul de vedere al matematicii, curba eliptica este o ecuatie de forma: y2 = x³ + ax + b. În cazul Bitcoin, a = 0 și b = 7, iar curba arată astfel:

Cum functioneaza si cum functioneaza bitcoinul

Curbele eliptice au câteva caracteristici distinctive. De exemplu, o linie dreaptă ne-verticală care traversează o curbă în două puncte o va intersecta la al treilea punct de pe curbă. O altă proprietate este că, dacă o linie dreaptă ne-verticală atinge o curbă eliptică într-un punct, atunci va trece neapărat în mod egal curba într-un punct. Cunoscând aceste două proprietăți, putem efectua operația de adăugare sau dublare a punctelor care alcătuiesc curba.







Pentru a adăuga punctele P și Q, tragem o linie dreaptă prin ele, care intersectează curba la un anumit punct R '. Apoi găsim pe curbă un punct R, simetric față de R 'față de axa X. Va fi suma punctelor P și Q.

Cum functioneaza si cum functioneaza bitcoinul

Când dublați punctul, P + P = R, tragem o linie care atinge curba la P. În funcție de proprietățile curbei, linia se va intersecta la un alt punct - R '. Punctul R, simetric față de R 'față de axa X, este rezultatul dublării P.

Cum functioneaza si cum functioneaza bitcoinul

Aceste două valori pot fi utilizate pentru a determina produsul scalar, R = aP, definit ca adăugarea punctului P pentru sine un timp foarte. Procesul de multiplicare scalare este simplificată prin combinarea proceselor de plus și punctele de dublare. De exemplu, un adaos de șapte ori mai mare de puncte P, R = 7P = P + (P + (P + (P + (P + (P + P))))), poate fi reprezentat ca: R = P + 2 (P + 2P) . Ie În loc de 7 operații, am primit doar 4 - 2 dublări și 2 adăugări.

Un alt concept pe care algoritmul ECDSA îl folosește este domeniul finit. Acesta poate fi considerat ca o serie de numere pozitive date, în cadrul cărora sunt efectuate toate operațiile. Combinând două concepte - o curbă eliptică și un câmp finit, obținem o funcție care, în aspectul său, nu va avea nimic în comun cu curba anterioară, dar ecuațiile și proprietățile sale vor rămâne aceleași. De exemplu, curba eliptică Bitcoin, y2 = x3 + 7, definită pe un modulo fieldi 67, va arăta astfel:

Cum functioneaza si cum functioneaza bitcoinul

Se păstrează simetria punctelor în raport cu axa X. Pur și simplu, acesta este un set de puncte în care toate valorile x și y sunt numere întregi între 0 și 66. Procesul de adăugare și de dublare a punctelor va diferi de asemenea vizual. Acum, liniile sunt marcate de un domeniu finit și se vor înfășura în jurul câmpului - linia ajunge la margine, în exemplul nostru 67, și continuă de la celălalt capăt, păstrând panta anterioară, dar cu o schimbare. Prin urmare, adăugarea punctelor (2, 22) și (6, 25) în acest caz arată astfel:

Cum functioneaza si cum functioneaza bitcoinul

Linia dreaptă trece prin cele două puncte indicate, apoi se sprijină pe marginea câmpului și, continuând, traversează punctul (47, 39). Simetric la aceasta "în jurul axei X" este punctul (47, 28), care este rezultatul adăugării.

Pentru a aplica algoritmul ECDSA în rețeaua Bitcoin, trebuie să avem un set fix de parametri pentru curba eliptică și câmpul final, care este uniform pentru toți utilizatorii. În caz contrar, fiecare își va rezolva propriile ecuații, care nu se vor converti între ele. Parametrii stabili includ ecuația curbei, valoarea modulului de câmp, punctul de bază situat pe curbă și ordinea punctului de bază, adică de câte ori poate fi adăugată la ea însăși până în momentul în care tangenta sa devine verticală. Pentru toți acești parametri, Bitcoin utilizează numere uriașe. Deci, algoritmul vă permite să asigurați securitatea, eliminând posibilitatea selecției aleatoare a datelor. În cazul Bitcoin, aceste valori sunt după cum urmează (prezentate în formă hexazecimală):

Ecuația curbei eliptice: y 2 = x 3 + 7.
modul simplu = 2256 - 232 - 29-28 - 27-26 - 24 - 1 = FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE FFFFFC2F.
Punctul de referință = 04 79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DCE28D9 59F2815B 16F81798 483ADA77 26A3C465 5DA4FBFC 0E1108A8 FD17B448 A6855419 9C47D08F FB10D4B8.
Comandă = FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C D0364141.

Această implementare particulară a ECDSA este cunoscută sub denumirea secp256k1 și face parte din familia standardelor oferite pentru utilizare în criptografie.

Contul balanței de fonduri

Spre deosebire de bani, trimiterea de bitcoane, mai degrabă le puneți într-o celulă publică cu o sarcină matematică care va deschide ușa. Și deși, de obicei, numai un singur proprietar al unei chei publice o poate rezolva, sunt posibile și condiții mai complicate. De exemplu, pentru o tranzacție escrow, este posibil să aveți nevoie de 2 din 3 semnături posibile. Un alt exemplu este prima tranzacție Bitcoin din istorie. Orice utilizator ar putea rezolva această problemă.

Ce pot cheltui?

Cumpărături. În primul rând, Bitcoin este un mijloc de plată. În prezent, Criptomonedă acceptă plăți de către un număr mare de start-up-uri și companii mari, cum ar fi Microsoft, excedentar, Dell, TigerDirect, și altele. Pentru Bitcoins puteți cumpăra practic orice bunuri fizice, de servicii sau de conținut digital, cum ar fi Internetul, multe site-uri, asa și într-un număr de puncte off-line - cafenele, magazine, studiouri de artă etc. Pentru astăzi în lume există mai mult de 7,5 mii de centre de primire Bitcoin. Le puteți vedea pe hartă.

Schimbați cu altă monedă. În pofida varietății propunerilor comerciale, este încă prea devreme să vorbim despre recunoașterea universală a lui Bitcoin, mai ales în Rusia. Dacă nu acceptați moneda crypto în magazinul selectat, îl puteți schimba pentru bani sau pentru o altă monedă electronică. Puteți face acest lucru, de exemplu, în biroul de schimb xmlgold.eu. oferind circa 40 de zone de schimb Bitcoin. Printre opțiunile disponibile - afișare în alte sisteme de plăți (AdvCash, OKPAY, Perfect Money, Payeer și altele), prin transfer bancar instant, cu care puteți plăti pentru achiziții sau pentru a obține bani, precum și de ieșire Visa și MasterCard în dolari americani sau euro peste lumea.

Mergeți într-o călătorie. Rezervați bilete de avion, rezervați o cameră de hotel, plătiți un turistic - toate acestea se pot face cu Bitcoin. Astăzi există mai multe servicii turistice mari care acceptă plata criptografică, una dintre ele fiind BTCTrip. Interfața utilizator a acestei resurse nu diferă de alte portaluri dedicate de călătorie, dar puteți plăti o Bitcoins vizita. În tur, puteți utiliza, de asemenea kriptomonety, și nu trebuie să caute birouri de schimb, așa cum este cazul cu moneda convențională, pentru că în majoritatea țărilor din afara vânzătorilor care doresc să accepte Criptomonedă, inclusiv prin plata diferitelor servicii, cum ar fi Blade. Cercul. Plutus.

Pentru a trimite la caritate. La fel ca și capacitatea de a trimite sume mari de bani, și pentru a face microplățile și comisioane reduse la procesarea tranzacțiilor Bitcoin face un instrument ideal pentru a trimite bani în scopuri caritabile. Unul dintre prima ocazie de a face donații către BTC furnizate organizației Fundația BitGive, ridică fonduri pentru Crucea Roșie, Proiectul de apă, Salvați Copiii și alte programe. Donațiile în moneda criptografică sunt acceptate de organizația internațională de mediu Greenpeace. Nu demult, a fost lansat programul Bitcoin Charity 2.0, care vă permite să direcționați fonduri direct către cei care au nevoie. Proiectul oferă o transparență completă prin utilizarea tehnologiei de blocare.

Trimiteți ordin de plată internațional. Bitcoin vă permite să trimiteți orice sumă la aproape orice colț al lumii. În acest caz, comisioanele pentru procesarea tranzacțiilor, așa cum s-a menționat deja, sunt minime. În plus, trimiterea banilor către bitcoins este mult mai rapidă decât transferurile bancare obișnuite, ceea ce face ca moneda crypto să fie una dintre cele mai convenabile instrumente de plată. Pentru un confort mai mare pentru utilizatori, dezvoltatorii oferă diverse servicii care facilitează trimiterea unui transfer. De exemplu, Bitwage este un serviciu de salarizare internațional, BitPesa este un serviciu pentru transferuri internaționale de bani către țările africane și alte resurse similare.







Articole similare

Trimiteți-le prietenilor: