Ciparparaksts ir kriptogrāfisks mehānisms, ko izmanto, lai pārbaudītu digitālo datu autentiskumu un integritāti. Mēs to varam uzskatīt par parastu ar roku rakstītu parakstu digitālo versiju, taču ar augstāku sarežģītības un drošības līmeni.

Vienkārši izsakoties, mēs varam raksturot digitālo parakstu kā kodu, kas pievienots ziņojumam vai dokumentam. Pēc ģenerēšanas kods kalpo kā pierādījums tam, ka ziņojuma pārsūtīšanas laikā no sūtītāja adresātam tas nav bojāts.

Lai gan koncepcija par sakaru nodrošināšanu, izmantojot kriptogrāfiju, ir pastāvējusi kopš seniem laikiem, digitālā paraksta sistēmas kļuva par realitāti 1970. gados — pateicoties publiskās atslēgas kriptogrāfijas (PKC) attīstībai. Tātad, lai uzzinātu, kā darbojas digitālie paraksti, mums vispirms ir jāsaprot jaukšanas funkciju un publiskās atslēgas kriptogrāfijas pamati.


Hash funkcija

Jaukšana ir viens no digitālā paraksta sistēmas pamatelementiem. Jaukšana ietver jebkura izmēra datu pārveidošanu fiksēta izmēra izvadē. To veic ar īpaša veida algoritmu, ko sauc par jaucējfunkciju. Jaucējfunkcijas ģenerēto izvadi sauc par jaucējvērtību vai šifrētu ziņojumu.

Kombinācijā ar kriptogrāfiju kriptogrāfiskās jaucējfunkcijas var izmantot, lai izveidotu jaucējvērtības (kriptogrāfiju), kas darbojas kā unikāls digitālais pirkstu nospiedums. Tas nozīmē, ka jebkuras izmaiņas ievaddatos (ziņojumā) radīs pilnīgi atšķirīgu izvadi (jaucējvērtību). Un tāpēc kriptogrāfijas jaucējfunkcijas tiek plaši izmantotas, lai pārbaudītu digitālo datu autentiskumu.


Publiskās atslēgas kriptogrāfija (PKC)

Publiskās atslēgas kriptogrāfija jeb PKC attiecas uz kriptogrāfijas sistēmu, kas izmanto atslēgu pāri: publisko atslēgu un privāto atslēgu. Abas atslēgas ir matemātiski saistītas, un abas var izmantot datu šifrēšanai un ciparparakstiem.

Kā šifrēšanas rīks PKC ir drošāks nekā elementārākas simetriskas šifrēšanas metodes. Lai gan vecākas sistēmas arī izmantoja šo pašu atslēgu, lai šifrētu un atšifrētu informāciju, PKC ļauj šifrēt datus ar publisko atslēgu un atšifrēt datus ar atbilstošu privāto atslēgu.

Turklāt PKC sistēmu var pielietot arī digitālo parakstu veidošanā. Būtībā process ietver ziņojuma (vai digitālo datu) jaukšanu, izmantojot parakstītāja privāto atslēgu. Tālāk ziņojuma saņēmējs var pārbaudīt, vai paraksts ir derīgs, izmantojot parakstītāja sniegto publisko atslēgu.

Dažos gadījumos ciparparaksti var ietvert šifrēšanu, bet ne vienmēr. Piemēram, Bitcoin blokķēde izmanto PKC un ciparparakstus, taču pretēji plaši izplatītam uzskatam šajā procesā netiek veikta šifrēšana. Tehniski Bitcoin īsteno tā saukto eliptiskās līknes digitālā paraksta algoritmu (ECDSA), lai autentificētu darījumus.


Kā darbojas digitālie paraksti

Kriptovalūtas kontekstā digitālā paraksta sistēma parasti sastāv no trim pamata soļiem: jaukšanas, parakstīšanas un verifikācijas.

Datu jaukšana

Pirmais solis ir digitālā ziņojuma vai datu jaukšana. Tas tiek darīts, nosūtot datus, izmantojot jaukšanas algoritmu, lai izveidotu jaucējvērtību (t.i., šifrētu ziņojumu). Kā minēts, ziņojumiem var būt dažādi izmēri, taču, ja tie ir sajaukti, visiem to jaukumiem ir vienāds garums. Šī ir visvienkāršākā jaucējfunkcijas īpašība.

Tomēr, lai izveidotu ciparparakstu, datu jaukšana nav nepieciešama, jo var izmantot privāto atslēgu, lai parakstītu nejauktu ziņojumu. Taču kriptovalūtās dati vienmēr tiek jaukti, jo fiksēta garuma jaukšana atvieglo visu procesu.

Paraksts

Kad ziņojums ir jaukts, personai, kas sūta ziņojumu, tas ir jāparaksta. Šeit tiek izmantota publiskās atslēgas kriptogrāfija. Ir vairāki digitālā paraksta algoritmu veidi, un katram ir savs mehānisms. Taču būtībā jauktais ziņojums tiek parakstīts ar privāto atslēgu, un ziņojuma saņēmējs pēc tam var pārbaudīt tā derīgumu, izmantojot atbilstošo publisko atslēgu (parakstītāja nodrošināta).

Citiem vārdiem sakot, ja privātā atslēga nav iekļauta paraksta ģenerēšanas laikā, ziņojuma saņēmējs nevarēs izmantot atbilstošo publisko atslēgu, lai pārbaudītu tās derīgumu. Gan publisko, gan privāto atslēgu ģenerē ziņojuma sūtītājs, bet tikai publiskā atslēga tiek koplietota ar adresātu.

Ir vērts atzīmēt, ka elektroniskais paraksts ir tieši saistīts ar katra ziņojuma saturu. Tātad, ja ar roku rakstīts paraksts paliek nemainīgs neatkarīgi no ziņojuma satura, katram digitāli parakstītam ziņojumam būs atšķirīgs ciparparaksts.

Autentifikācija

Ņemsim piemēru, lai ilustrētu visu procesu līdz pēdējai verifikācijas darbībai. Pieņemsim, ka Alise raksta ziņojumu Bobam, sajauc ziņojumu, lai izveidotu jaucējkodu, un pēc tam apvieno šo jaucējkodu ar savu privāto atslēgu, lai izveidotu ciparparakstu. Paraksts darbosies kā unikāls šī ziņojuma digitālais pirkstu nospiedums.

Kad Bobs saņem ziņojumu, viņš var pārbaudīt ciparparaksta derīgumu, izmantojot Alises nodrošināto publisko atslēgu. Tādā veidā Bobs var būt pārliecināts, ka parakstu ir izveidojusi Alise, jo tikai viņai ir privātā atslēga, kas atbilst šai publiskajai atslēgai (vismaz mēs to sagaidām).

Tāpēc Alisei ir svarīgi paturēt savu privāto atslēgu noslēpumā. Ja kāds cits iegūst Alises privāto atslēgu, viņš var izveidot ciparparakstu un izlikties par Alisi. Bitcoin kontekstā tas nozīmē, ka kāds varētu izmantot Alises privāto atslēgu, lai pārvietotu vai iztērētu savus Bitcoinus bez viņas atļaujas.


Kāpēc digitālais paraksts ir svarīgs?

Ciparparakstus parasti izmanto, lai panāktu datu integritāti, autentifikāciju un nesaistītu saistību izpildi.

  • Datu integritāte. Bobs var pārbaudīt, vai Alises ziņojums nosūtīšanas laikā netika mainīts. Jebkuras izmaiņas ziņojumā radīs pavisam citu parakstu.

  • Autentiskums. Kamēr Alises privātā atslēga tiek turēta noslēpumā, Bobs var izmantot savu publisko atslēgu, lai apstiprinātu, ka ciparparakstu ir izveidojusi Alise, nevis kāds cits.

  • Pretnoliedzība. Kad paraksts būs izveidots, Alise nevarēs noliegt, ka ir parakstījusi to, ja vien netiks apdraudēta viņas privātā atslēga.


Lietošanas gadījumi

Ciparparakstus var lietot daudziem dažādu veidu dokumentiem un ciparsertifikātiem. Tāpēc viņiem ir vairākas lietojumprogrammas. Daži no visizplatītākajiem lietošanas gadījumiem ir šādi:  

  • Informācijas tehnoloģijas. Paaugstināt interneta sakaru sistēmu drošību.

  • Finanses. Ciparparakstus var izmantot revīzijām, izdevumu pārskatiem, aizdevuma līgumiem un citam.

  • Juridisks. Digitālā paraksta izmantošana visu veidu uzņēmējdarbības līgumos un juridiskos līgumos, tostarp valdības dokumentos.

  • Veselības aprūpe. Digitālie paraksti var novērst krāpšanu ar receptēm un medicīniskajiem dokumentiem.

  • Blockchain. Digitālā paraksta sistēmas nodrošina, ka tikai likumīgie kriptovalūtas īpašnieki var parakstīt darījumu, lai pārskaitītu līdzekļus (ja vien viņu privātās atslēgas netiek apdraudētas).


Ierobežot

Galvenās problēmas, ar kurām saskaras digitālā paraksta sistēmas, ir balstītas uz vismaz trim prasībām: 

  • Algoritms. Ļoti svarīga ir digitālā paraksta sistēmā izmantoto algoritmu kvalitāte. Tas ietver uzticamu jaucējfunkciju un kriptogrāfijas sistēmu izvēli.

  • Izvietošana. Ja algoritmi ir labi, bet ieviešana nav laba, digitālā paraksta sistēmā, iespējams, būs kļūdas.

  • Privātā atslēga. Ja privātās atslēgas tiek nopludinātas vai kādā veidā apdraudētas, autentifikācijas un nenoliegšanas rekvizīti tiks anulēti. Kriptovalūtas lietotājiem privāto atslēgu pazaudēšana var radīt ievērojamus finansiālus zaudējumus.


Elektroniskais paraksts un ciparparaksts

Vienkārši sakot, elektroniskais paraksts attiecas uz noteiktu elektroniskā paraksta veidu - attiecas uz jebkuru elektronisku dokumentu un ziņojumu parakstīšanas metodi. Tāpēc visi ciparparaksti ir elektroniskie paraksti, taču ne vienmēr ir taisnība.

Galvenā atšķirība starp tām ir autentifikācijas metode. Ciparparaksti ievieš kriptogrāfijas sistēmas, piemēram, jaucējfunkcijas, publiskās atslēgas kriptogrāfiju un šifrēšanas metodes.


Secināt

Jaucējfunkcijas un publiskās atslēgas kriptogrāfija ir digitālā paraksta sistēmu pamatā, kuras tagad tiek izmantotas daudzos lietošanas gadījumos. Ja tas tiek darīts pareizi, ciparparaksti var palielināt drošību, nodrošināt integritāti un atvieglot visu veidu digitālo datu autentifikāciju.

Blokķēdes laukā digitālie paraksti tiek izmantoti, lai parakstītu un autorizētu kriptovalūtas darījumus. Tie ir īpaši svarīgi Bitcoin, jo paraksti nodrošina, ka tikai personas, kuru rīcībā ir atbilstošā privātā atslēga, var tērēt monētas.

Lai gan jau daudzus gadus lietojam gan elektroniskos, gan digitālos parakstus, vēl ir daudz vietas izaugsmei. Liela daļa mūsdienu birokrātijas joprojām ir uz papīra balstīta, taču, pārejot uz digitalizētāku sistēmu, mēs, visticamāk, redzēsim lielāku digitālo parakstu sistēmu ieviešanu.