Semnătură digitală rapidă

Semnătura digitală rapidă este o variantă de semnătură digitală care utilizează un algoritm cu un număr mult mai mic (de zeci de ori) de calcule aritmetice modulare în comparație cu schemele EDS tradiționale . Schema rapidă de semnătură electronică , ca cea obișnuită, include un algoritm pentru generarea perechilor de chei utilizator , o funcție de calcul a semnăturii și o funcție de verificare a semnăturii.

Probleme EDS

De la inventarea EDS în 1976, acesta a fost cel mai promițător domeniu de cercetare în criptosistemele cu cheie publică . Una dintre soluțiile matematice standard pentru construirea algoritmilor criptografici este problema logaritmului discret , pe baza căreia au fost dezvoltați mulți algoritmi pentru obținerea semnăturilor digitale . Principalul dezavantaj al algoritmilor EDS tradiționali , cum ar fi schema ElGamal și RSA , este complexitatea lor de calcul. Calcularea exponențialelor în aritmetică modulară este cea mai intensivă din punct de vedere computațional în schemele criptosistemelor cu cheie publică . În prezent, se lucrează mult pentru a îmbunătăți performanța algoritmilor criptografici prin reducerea numărului de calcule ale exponenților. Cea mai scurtă schemă EDS cunoscută este BLS (Boneh–Lynn–Shacham) care utilizează curbe eliptice , dar este limitată la grupuri care au o funcție de împerechere . Dezvoltatorii de algoritmi lucrează atât pentru a îmbunătăți schemele tradiționale de logaritmi discrete prin utilizarea calculului paralel al exponenților, cât și pentru a explora abordări fundamental diferite bazate, de exemplu, pe teoria grafurilor în loc de aritmetica modulară .

Unii algoritmi rapidi de semnătură digitală

Schema EDS rapidă bazată pe algoritmul Diffie-Hellman

Fie un grup abelian , fie subgrupul său ciclic cu generator de ordine , unde este un număr prim mare . Fie și să fie parametrii de securitate, și . Fie și fie funcții hash . Schema de semnătură este următoarea:

Generarea cheilor

Utilizatorul alege o cheie secretă aleatorie și calculează cheia publică .

Creați o semnătură

Intrările sunt o cheie secretă și un mesaj .

În continuare, partea care creează semnătura:

1. selectează un număr aleator și un bit aleatoriu ;

2. calculează ;

3. calculează ;

4. calculează , unde ;

5. calculează ;

6. calculează .

Semnătura mesajului este .

Verificarea semnăturii

Pentru a verifica semnătura mesajului m, procedați în felul următor:

1. reprezentat ca ;

2. si se calculeaza ;

3. calculat ;

4. se verifică dacă .

Dacă egalitatea din pasul 4 este adevărată, semnătura trece verificarea.

Schema EDS rapidă bazată pe algoritmul Fiat-Shamir

ZN denotă inelul de numere întregi modulo și sunt parametrii de securitate  , de obicei ,

Rolul Centrului de autentificare cheie (KAC)

CAC alege:

CAC publică și cheia publică .

Cheia privată a CAC este folosită pentru a semna cheile publice pe care le generează . Pentru a crea astfel de semnături, CAC poate utiliza orice schemă EDS securizată .

Generarea cheilor utilizatorului.

Fiecare utilizator alege o cheie secretă constând din numere aleatorii , variind de la 1 la , astfel încât GCD pentru toți de la 1 la . Crearea semnăturii poate fi accelerată prin alegerea numerelor întregi mici ca . Securitatea unei astfel de scheme se bazează pe presupunerea că calcularea rădăcinilor este dificilă. În prezent, nu se știe despre existența algoritmilor care calculează rădăcinile , cu condiția ca aceste rădăcini să fie de ordin .

Înregistrare utilizator.

CAC verifică dacă utilizatorul se potrivește, generează un șir care conține numele, adresa etc. și generează o semnătură pentru perechea formată din și cheia publică a utilizatorului .

Crearea unei semnături.

Mesajul de intrare , cheia secretă și modulul  , care este folosit pentru calcule.

1. Un număr aleatoriu este selectat din interval și calculat .

2. Calculat .

3. Calculat .

Semnătura de ieșire este pereche .

Generarea unei semnături necesită cel mult înmulțiri modulo și, în medie, aleatorii necesită doar înmulțiri.

Verificarea semnăturii.

Date de intrare — semnătură , mesaj , , .

1. Semnătura pentru .

2. Calculat .

3. Verificați că .

Pentru verificarea semnăturii este necesar, în medie, pentru operațiile de înmulțire aleatorie modulo, maximum .

Securitatea semnăturii.

Pentru a falsifica o semnătură de mesaj , criptoanalistul trebuie să rezolve o ecuație pentru și .

În prezent, nu există algoritmi cunoscuți pentru rezolvarea acestei ecuații.

Aplicarea EDS rapid

Algoritmii rapidi de semnătură digitală sunt cei mai eficienți în cazurile în care viteza de obținere a cheii și dimensiunea mică a semnăturii sunt de importanță primordială. Cerințe similare există în rețelele mobile, de senzori sau personale (a căror rază este limitată la o cameră) atunci când se transmite trafic multimedia. Utilizarea unei semnături digitale în telefoanele mobile GSM permite utilizatorilor să creeze ei înșiși un cod PIN, mai degrabă decât să-l primească de la operator.

Implementarea algoritmilor accelerați de generare a semnăturii digitale pentru dispozitive cu resurse limitate, cum ar fi PDA-uri, carduri inteligente încorporate și telefoane mobile, a căror putere de calcul este mult inferioară capacităților computerelor personale, va permite cheltuirea mai puțină energie pentru a crea și stoca o semnătură. și astfel crește timpul de funcționare al dispozitivului fără reîncărcare.

Literatură

Vezi și

Link -uri