Cuprins:
- Navigare articol
- Recapitulare
- Criptare și semnătură digitală
- Semnături digitale
- Obținerea securității mesajelor
- Ce urmeaza?
- Articolul anterior
- Articolul următor
Navigare articol
Consultați setul complet de articole:
- Criptografie și semnături digitale
Recapitulare
Cele două articole anterioare ne-au oferit o introducere largă a criptografiei înainte de a intra direct în discuția semnăturilor digitale.
Semnătura digitală și verificarea acesteia sunt unul dintre principalele concepte cheie din spatele Blockchain în care se bazează aplicațiile de criptomonede, cum ar fi Bitcoin.
Într-o rețea Blockchain, este important să puteți identifica corect participanții la o tranzacție dovedind că semnătura a venit de la titularul cheii private și că tranzacția este valabilă.
Semnăturile digitale oferă autentificare, integritate a datelor și non-respingere, toate acestea fiind esențiale pentru o rețea Blockchain. Drept urmare, oricine din rețea poate avea încredere în tranzacții chiar și fără intermediar.
Criptare și semnătură digitală
La fel cum am văzut în articolul anterior, o criptografie cu cheie publică creează un mesaj criptat, în timp ce o cheie privată creează o semnătură digitală.
Utilizarea criptografiei
Semnături digitale
Dincolo de criptarea și decriptarea datelor, criptografia cu cheie publică poate fi utilizată pentru a crea o semnătură digitală care să ofere autentificare, integritate a datelor și non-respingere într-o rețea Blockchain.
Următorii pași explică procesul pentru un model de semnătură digitală bazat pe criptografie cu cheie publică descris în următoarea diagramă:
- Toate nodurile participante din rețeaua Blockchain au o pereche de chei private-publice, generate matematic.
- Mesajul în forma sa de text simplu este introdus într-un algoritm Hashing pentru a genera un mesaj hash, cunoscut și sub numele de Message Digest. Într-o aplicație de criptomonedă, cum ar fi Bitcoins, mesajul conține tranzacția emisă de expeditor.
- Mesajul hash este apoi semnat de cheia privată a expeditorului și trimis prin rețeaua Blockchain, împreună cu mesajul în format text simplu.
- Nodurile participante din rețeaua Blockchain vor încerca acum să valideze mesajul verificând semnătura digitală pentru a verifica dacă se potrivește cu cheia publică a adresei de la care a fost trimis mesajul prin trecerea printr-un algoritm de verificare.
- Deoarece semnătura digitală a fost creată utilizând cheia privată a expeditorului, rețeaua poate dovedi cu ușurință că semnătura a venit de la titularul cheii private utilizând cheia publică a expeditorului corespunzătoare.
- Mesajul în text simplu este alimentat printr-un alt algoritm Hashing pentru a genera o valoare hash. Această valoare hash este comparată cu valoarea hash din ieșirea algoritmului de verificare de mai sus. Validarea se efectuează fără ca expeditorul să fie nevoit să dezvăluie cheia sa privată.
În cazul Bitcoins, rețeaua verifică, de asemenea, că expeditorul deține suficiente bitcoins pentru a fi trimis și că expeditorul nu l-a trimis deja la alt receptor. Acest lucru se realizează prin parcurgerea istoricului tranzacțiilor, care este public pe registrul bitcoin.
Model de semnătură digitală
În loc să semneze digital mesajul în format direct, semnătura digitală se formează cu hash-ul de date. Mesajul hash este o reprezentare unică, dar o sumă relativ mai mică a datelor. Acest lucru face ca blockchain-ul să fie mai eficient.
Obținerea securității mesajelor
Să analizăm acum de ce este atât de important să folosiți semnături digitale în Blockchain:
- Integritate: semnăturile digitale și algoritmul de hashing asigură că datele nu au fost accesate și modificate ilegal de către niciun atacator. Aceasta înseamnă că datele nu pot fi modificate fără detectare.
- Autentificare: semnăturile digitale stabilesc încrederea între expeditor și receptor într-o rețea Blockchain. Receptorul poate fi sigur că numai expeditorul ar fi putut trimite acest mesaj.
- Non-respingere: expeditorul nu poate refuza trimiterea mesajului, deoarece semnătura digitală poate fi creată numai de un expeditor care deține cheia privată corespunzătoare și nimeni altcineva.
Ce urmeaza?
Nu am vorbit prea multe despre hashing, deoarece va fi tratat în articolul următor. Deocamdată trebuie să știm că Hashing este un algoritm sau o funcție matematică care mapează date de dimensiuni arbitrare la un hash de dimensiune fixă. Exemplu,
Exemple de hash
Pe scurt, Hashing verifică dacă datele nu au fost modificate sau modificate.
Articolul anterior
- Deblocarea blockchain-ului: criptografie cu cheie publică
Blockchain folosește criptografie cu cheie publică (algoritmi cu cheie asimetrică) pentru a proteja mesajele de tranzacție din rețea. În Blockchain, semnăturile digitale bazate pe criptografie cu cheie publică sunt folosite pentru a dovedi că un mesaj provine dintr-un anumit p
Articolul următor
- Deblocarea Blockchain: Hashing
Există două concepte criptografice fundamentale care țin Blockchain împreună. Semnătura digitală și Hashing asigură că tranzacțiile de pe un Blockchain sunt efectuate numai de persoane legitime și că înregistrările rămân libere de manipulare
© 2018 Heng Kiong Yap