Nënshkrimi dixhital

Nga Wikipedia, enciklopedia e lirë
Shko te: navigacion, kërko

Nënshkrimi digjital ose skema e nënshkrimit digjital është një skemë matematikore për demonstrimin dhe origjinalitetin e një mesazhi digjitale apo dokumenti digjital. Një nënshkrim digjital i vlefshme jep një arsye për të besuar se marrësi i mesazhit ishte krijuar nga një dërgues i njohur, dhe se nuk është ndryshuar gjatë transportit. Nënshkrimet digjitale janë përdorur zakonisht për shpërndarje softuerëve, transaksioneve financiare, si dhe në raste të tjera ku është e rëndësishme për të zbuluar falsifikimin apo ngatërrimet.

Shpjegimi[redakto | redakto tekstin burimor]

Sipas Tanenbaum (2007) shpesh është e nevojshme që në mënyrë digjitale ndonjë dokument të nënshkruhet. Shembull, kur ndonjë klient e informon bankën se nuk blen aksione, me anë të dërgimit të e-mail porosisë bankës. Një orë më vonë porosia është e dërguar dhe e kryer, mirëpo aksioni shkatërrohet. Klienti mohon se ka çuar porosi deri tek banka. Banka mund të tregon e-mailin, por klienti vazhdon të pohojë se ajo është falsifikuar me qëllim që të fitohet provizioni. Si do të dijë gjyqtari se kush e flet të vërtetën ? Nënshkrimet digjitale mundësojnë të nënshkruhet ndonjë e-mail porosi ose dokument digjital në mënyrë që të mos mohohet nga ana e dërguesit më vonë.
Një mënyrë është që të kryhet dokumenti nëpërmjet të hashing algoritmit të njëkahshëm (one-way hashing algoritmit) i cili rëndë invertohet.
Sipas Tanenbaum (2007) hashing funkcioni prodhon rezultat me gjatësi fikse pavarësisht nga madhësia e dokumentit origjinal. Hashing funkcionet më të popullarizuara janë: MD5 (Message Digest) i cili prodhon rezultat 16 bajtësh dhe SHA (Secure Hash Algorithm), i cili prodhon rezultat 20 bajtësh.
Hapi tjetër është shfrytëzimi i çelësit publik të kriptografisë. Pronari i dokumentit e përdor çelësin e tij privat që të fiton D (Hash). Kjo vlerë e quajtur nënshkrim bllok i shtohet dokumentit dhe dërgohet deri te marrësi.

Kur dokumenti i hashit arrin, marrësi së pari e kalkulon hashin e dokumentit duke përdorur MD5 ose SHA. Pastaj e përdor çelësin publik të dërguesit në bllok nënshkrimin që të fiton E (D(hash)).

Nëse hashi i kompjuterizuar nuk përputhet me hashin e nënshkrimit bllok, atëherë dokumenti është i ndërruar. Kjo metodë punon nëse për çdo x, E(D(x))=x ku sëpari kërkohet D(E(x))=x, E është funkcioni i enkriptimit, ndërsa D është funkcioni i dekriptimit. Që të përdoret shablloni i nënshkrimit, marrësi duhet të dijë çelësin publik të dërguesit. Disa shfrytëzues e shpallin çelësin e tyre publik në web adresën e tyre, ndërsa disa jo sepse kanë frikë që të mos ndryshohet çelësi.

Tek ato mund të përdoren mekanizma alternativ të distribuimit të çelësit publik.

Një metodë është që dërguesit t’i ngjesin certifikatë porosisë të cilën e dërgojnë e cila e përmban emrin e shfrytëzuesit, çelësin publik dhe nënshkrimin digjital nga ana e tretë e besuar.

Pasiqë shfrytëzuesi do të merr çelësin publik nga ana e tretë e besuar, mund të pranojë certifikatë nga të gjithë ato të cilët e përdorin këtë anë për t’i gjeneruar çertifikatat e tyre.

Principet e Nënshkrimeve Digjitale[redakto | redakto tekstin burimor]

Hyrje[redakto | redakto tekstin burimor]

  • Vërtetimi se një person i caktuar ka gjeneruar një mesazh të caktuar paraqet një veti me rëndësi. Përderisa në botën analoge kjo arrihet përmes nënshkrimeve në një copë letër, në atë digjitale ekziston një procedurë tjetër. Për pasojë vetëm personi që ka krijuar mesazhin duhet të jetë në gjendje që ta nënshkruajë atë. Në botën digjitale kjo arrihet duke enkriptuar mesazhin me një celës privat.

Nënshkrimi Standard[redakto | redakto tekstin burimor]

  • Formati i nënshkrimeve digjitale përfshinë një rregull sipas së cilës, verifikuesi dallon mesazhet e vlefshme dhe ato jo të vlefshme. Ky veprim quhet padding.
  • Skema propabilistike e nënshkrimeve është një skemë e nënshkruar e bazuar në kriptosistemin RSA:PSS-RSA. Në praktikë mesazhi nuk është i enkriptuar direkt por, në fakt enkriptohet HASH funksioni i tij. Kjo ndryshe njihet edhe si fingerprint(anglisht). Ky i fundit ka një gjatësi të caktuar prej 160 ose 256 bita.

Enkriptimi i Skemës Propabilistike të Nënshkrimeve[redakto | redakto tekstin burimor]

*Le të jetë /n/ madhësia e modulit RSA në bit.  Mesazhi i Enkoduar ka gjatësi prej n-1/8 bitash.
  1. Gjenero një vlerë random salt.
  2. Nga një string mesazh M krijoni nje tjetër string mesazh M_ dukelidhur një padding fiks, HASH vlerën mHash =h(M) dhe salt-in
  3. Logarisni vlerën Hsh të sstringut M_
  4. Lidhni një padding fiks dhe salt vlerën për të krijuar një bllok të shënash.
  5. Aplikoni një maskim funksion tek mesazhi M_ për të krijuar një vlerë maskë dbMasnk. Zakonisht për një veprim të tillë shfrytëzohet funksioni SHA1.
  6. Vlerën e maskuar bëjeni XOR me bllokun e të dhënave.
  7. Mesazhi i enkriptuar fitohet duke lidhur Bllokun e maskuar të të dhënave, vlerën Hash dhe paddingun.

Pas enkodimit, operacioni i nënshkrimit digjital aplikohet në mesazhin e enkoduar.

  • s = sigkpr (x) ≡ EMd mod n

Operacioni i verifikimit[redakto | redakto tekstin burimor]

  • Operacioni i verifikimit pastaj vazhdon në mënyrë të ngjashme: rigjenerimi i vlerës salt dhe kontrollimi se a është enkriptimi i skemës propabilistike të nënshkrimit në rregull.

Duke shtuar salt vlerën hashit të dytë të mesazhit, vlera e enkoduar bëhet probabilistike.Për pasojë, nëse ne kodojmë dhe shënojmë të njëjtin mesazh dy herë, fitojmë nënshkrime të ndryshme, që është një vecori e dëshiruar.

Gjenerimi i celësave për Nënshkrimet Digjitale[redakto | redakto tekstin burimor]

  1. Zgjidhni një numër prime të madh p.
  2. Zgjedhni një element primitiv te Z∗p ose nëngrupi of Z∗p.
  3. Zgjedhni një integjer të rastësishëm d ∈ {2,3, . . . , p−2}.
  4. Llogaritni R=d mod p .

Celësi public tani krijohet nga kpub =(p,<,R), dhe ai privat nga kpr =d.

Nënshkrimi dhe verifikimi[redakto | redakto tekstin burimor]

  • Duke përdorur celësin privat dhe parametrat e celësit public, nënshkrimi sigKpr(x,kE)=(r,s) për një mesazh x logaritet gjatë procesit të nënshkrimit. Nënshkrimi përfshinë dy hapa kryesorë: zgjedhja e një vlere të rastësishme kE, i cili paraqet një celës privat, dhe logaritja e një shenje x.

Gjenerimi i Nënshkrimeve[redakto | redakto tekstin burimor]

  1. Zgjedhni një celës kalimtar kE ∈ {0,1,2, . . . , p − 2} ashtu që gcd(kE, p-1)=1.
  2. Logaritni parametrat e nënshkrimeve

r ≡kE mod p, s ≡ (x−d ・r)k−1 E mod p−1.

Në anën pranuese, nënshkrimi verifikohet duke përdorur shprehjen kpub(x,(r,s)), nënshkrimin dhe mesazhin. Verifikimi i nënshkrimeve

  1. Logaritni vlerën t ≡R*r*rs mod p
  2. Verifikimi përfshinë t_≡Rx mod p =⇒nënshkrimi valid_≡Rx mod p =⇒nënshkrimi invalid.[1]

Shiqo edhe ketu:

  1. RSA Algoritmi
  2. HASH Algoritmi
  3. Steganografia Digjitale
  4. Enkriptimi Simetrik

Bibliografia[redakto | redakto tekstin burimor]

  • Andrew S. Tanenbaum (2007), Modern Operating Systems (3rd ed.), Prentice Hall; 3 edition (December 21, 2007), ISBN-10: 0136006639
  • William Stallings (2009), Operating Systems: Internals and Design Principles (6th ed.), Prentice Hall, 6 edition (April 19, 2008), ISBN-10: 0136006329
  • William S. Davis, T.M. Rajkumar (2005), Operating Systems: A Systematic View (6th ed.), Publisher AdisonWesley, Inc.2005 (2005), ASIN: B0047T9K8S

COFFMAN, E.C., ELPHICK, M.J., and SHOSHANI, A.: “System Deadlocks,” Computing Surveys, vol. 3, pp. 67-78, June 1971.

  • COMER, D.: Operating System Design. The Xinu Approach, Upper Saddle River, NJ: Prentice Hall, 1984.

Referencat[redakto | redakto tekstin burimor]

  1. ^ Cristoph Paar, Jan Pelzl, "Understanding Cryptography"