Scrigroup - Documente si articole

Username / Parola inexistente      

Home Documente Upload Resurse Alte limbi doc  

CATEGORII DOCUMENTE





AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Algoritmi semnatura digitala

algoritmi

+ Font mai mare | - Font mai mic







DOCUMENTE SIMILARE

Trimite pe Messenger
Sistem informational Sistem informatic
Algoritmi semnatura digitala
Constructia si simularea executiei unui program (in limbaj de asamblare)
Tehnici de programare structurata: Recursivitatea, Backtracking
Proiect ASDN - Algoritmul de minimizare Karnaugh
Tipuri de limbaje de programare

Algoritmi semnatura digitala

majoritatea schemelor cu recuperarea mesajului sunt aplicate mesajelor de lungime fixa, in timp ce schemele cu anexa se aplica mesajelor de lungimi variabile

  • scheme cu anexa

algoritmul de verificare primeste ca intrare mesajul



    • algoritmi generali

                                 generarea cheii

fiecare entitate creeaza o cheie privata pentru semnarea mesajelor si o cheie publica pentru verificare

1.                              o entitatea A selecteaza o cheie privata ce defineste o multime a transformarilor de semnare SA = unde fiecare SA,k este o functie injectiva de la Ps la S

2.                              SA defineste o transformare de verificare VA :Psx S → ai

adevarat

daca SA,k(p) = s*

VA(p, s*) =

fals

altfel

3.                              pPh, s*S, p = h(p) cu p ∈ P
VA poate fi calculata fara a cunoaste semnatura privata a emitentului

4.                              cheia publica a lui A este VA si cheia privata este multimea SA

                                 semnarea/verificarea

o entitatea A produce o semnatura s ∈ S pentru un mesaj p ∈ P ce mai tarziu poate fi verificata de o alta entitate B

1.                              semnarea

entitatea A executa

a.                               selecteaza un element k ∈ I

b.                              calculeaza p = h(p) si s* = SA,k(p)

c.                               semnatura lui A pentru p este s*; atat p cat si s* sunt puse la dispozitia entitatilor care doresc sa verifice semnatura

2.                              verificarea

entitatea B executa

a.                               obtine cheia publica autentica, VA a lui A

b.                              calculeaza p = h(p) si v = VA(p, s*)

c.                               accepta semnatura daca si numai daca v = adevarat

    • ElGamal
    • DSA

este o varianta a semnaturii ElGamal

                                 generarea cheilor

1.                              selecteaza un numar prim q ai 2159 < q < 2160

2.                              alege t ai 0 ≦ t ≦ 8 si un numar prim p, 2511+64t < p < 2511+64t cu proprietatea q|(p-1)

3.                              selecteaza un generator α al grupului ciclic de ord q din Zp*

1.      selecteaza un element g ∈ Zp* si calculeaza α = g(p-1)/q mod p



2.      daca α = 1 at reia de la pasul anterior

4.                              selecteaza aleator un intreg a ai 1 ≦ a ≦ q-1

5.                              calculeaza y = αa mod p

6.                              cheia publica a lui A este (p, q, α, y) si cheia privata este a

                                 semnarea/verificarea

                                 semnarea

entitatea A semneaza un mesaj, p, de lungime arbitrara

0.      selecteaza aleator un intreg k, 0 < k < q, k va ramane secret

1.      calculeaza r = (αk mod p) mod q

2.      calculeaza k-1 mod q

3.      calculeaza s = (k-1(h(p)+ar)) mod q

4.      semnatura lui A este (r, s)

in standardul DSS functia h este SHA-1

                                 verificarea

entitatea B verifica semnatura lui A, (r, s) pentru mesajul p

0.      obtine cheia publica autentica a lui A, (p, q, α, y)

1.      verifica ca 0 < r < q si 0 < s < q, altfel respinge semnatura

2.      calculeaza w = s-1 mod q si h(p)

3.      calculeaza u1 = (wh(m)) mod q si u2 = (rw) mod q

4.      calculeaza v = ( (au1 yu2) ) mod q

5.      accepta semnatura daca v = r

    • PKCS#1

aceasta schema nu utilizeaza caracteristica de recuperare a mesajului a schemei RSA si foloseste o functie de dispersie (MD-2 sau MD-5)

    • Schnorr
    • Feige-Fiat-Shamir
  • scheme cu recuperarea mesajului

algoritmul de verificare nu necesita mesajul

    • algoritmi generali

                                 generarea cheii

fiecare entitate creeaza o cheie privata pentru semnarea mesajelor si o cheie publica pentru verificare

0.                              o entitatea A selecteaza o cheie privata ce defineste o multime a transformarilor de semnare SA = unde fiecare SA,k este o functie injectiva de la Ps la S

1.                              SA defineste o transformare de verificare VA :SPs ai ∀ pPs, ∀ k ∈ I, VA s SA,k = 1Ps
VA poate fi calculata fara a cunoaste semnatura privata a emitentului

2.                              cheia publica a lui A este VA si cheia privata este multimea SA

                                 semnarea/verificarea

o entitatea A produce o semnatura s ∈ S pentru un mesaj p ∈ P ce mai tarziu poate fi verificata de o alta entitate B; mesajul p este recuperat din s




0.                              semnarea

entitatea A executa

.        selecteaza un element k ∈ I

a.       calculeaza p = r(p) si s* = SA,k(p)

b.      semnatura lui A este s*; s* este pus la dispozitia entitatilor care doresc sa verifice semnatura

1.                              verificarea

entitatea B executa

.        obtine cheia publica autentica, VA a lui A

a.       calculeaza p = VA(s*)

b.      verifica ca pPr si in acest caz accepta semnatura

c.       recupereaza mesajul p din p calculand r-1(p)

functia redundanta r si inversa sa sunt cunoscute public; selectia lui r este critica pentru securitatea sistemului

    • RSA

atat spatiul de semnare Ps cat si spatiul semnaturilor S sunt reprezentate de Zn

                                 generarea cheilor

fiecare entitate creeaza o cheie publica RSA si o cheie privata corespondenta; o entitate A executa

0.                              genereaza doua numere prime distincte, p si q, de acceasi marime

1.                              calculeaza n = pq si φ = (p-1)(q-1)

2.                              selecteaza aleator in intreg e, 1 < e < φ ai cmmdc(e, φ) = 1

3.                              calculeaza intregul (Euclid extins) d, 1 < d < φ ai ed ≡ 1 mod φ

4.                              cheia publica a lui A este (n, e) si cheia privata este d

                                 semnarea/verificarea

entitatea A semneaza un mesaj p ∈ P si oricare alta entitate B poate verifica smenatura lui A si recupera mesajul p din semnatura

0.                              semnarea

o entitate A executa

0.      calculeaza p = r(p) ca un intreg in intervalul [0, n-1]

1.      calculeaza s = pd mod n

2.      semnatura lui A pentru p este s

1.                              verificarea

o alta entitate B executa

0.      obtine cheia publica autentica a lui A, (n, e)

1.      calculeaza p = se mod n

2.      verifica ca p ∈ Pr si daca nu rejecteaza semnatura

3.      recupereaza mesajul p = r-1(p)

    • Rabin
    • Nyberg-Rueppel








Politica de confidentialitate

DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 692
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2019 . All rights reserved

Distribuie URL

Adauga cod HTML in site