Schnorr- ordningen er en af de mest effektive og teoretisk baserede autentificeringsordninger . Kredsløbets sikkerhed er baseret på vanskeligheden ved at beregne diskrete logaritmer . Ordningen foreslået af Klaus Schnorr er en modifikation af ordningerne ElGamal (1985) og Fiat-Shamir (1986) , men har en mindre signaturstørrelse. Schnorr-ordningen ligger til grund for standarden for Republikken Belarus STB 1176.2-99 og de sydkoreanske standarder KCDSA og EC-KCDSA. Det var dækket af US Patent 4.999.082 , som udløb i februar 2008.
Autentificering og elektroniske signaturordninger er en af de vigtigste og mest almindelige typer kryptografiske protokoller, der sikrer informationens integritet.
Formålet med godkendelsesprotokoller kan let forstås af følgende eksempel. Antag, at vi har et informationssystem, hvor det er nødvendigt at differentiere adgangen til forskellige data. Også i dette system er der en administrator, som gemmer alle brugeridentifikatorer med et tilhørende sæt rettigheder, ved hjælp af hvilke adgangen til ressourcer differentieres. Én bruger kan samtidigt få lov til at læse én fil, ændre den anden og samtidig nægtes adgang til den tredje. I dette eksempel betyder sikring af informationens integritet at forhindre adgang til systemet af personer, der ikke er dets brugere, samt at forhindre brugere i at få adgang til de ressourcer, som de ikke har autoritet til. Den mest almindelige metode til adgangskontrol, adgangskodebeskyttelse , har mange ulemper, så lad os gå videre til den kryptografiske formulering af problemet.
Der er to deltagere i protokollen - Alice, som ønsker at bekræfte sin identitet, og Bob, som skal verificere denne bekræftelse. Alice har to nøgler , en offentlig (offentlig) nøgle og en privat (privat) nøgle, som kun Alice kender. Faktisk skal Bob bekræfte, at Alice kender sin private nøgle ved kun at bruge .
Schnorr-ordningen er en af de mest effektive blandt praktiske godkendelsesprotokoller, der implementerer denne opgave. Det minimerer afhængigheden af den beregning, der kræves for at skabe en signatur på beskeden. I denne ordning kan de vigtigste beregninger udføres, mens processoren er inaktiv, hvilket giver dig mulighed for at øge underskrivelseshastigheden. Ligesom DSA bruger Schnorrs ordning en ordreundergruppe i . Denne metode bruger også en hash-funktion .
Nøglegenerering for Schnorr-signaturskemaet er det samme som nøglegenerering for DSA , bortset fra at der ikke er nogen størrelsesbegrænsninger. Bemærk også, at modulet kan beregnes autonomt.
Algoritmens sikkerhed afhænger af parameteren t . Kompleksiteten ved at åbne algoritmen er omtrent lig med . Schnorr anbefaler at bruge t omkring 72 bit, til og . For at løse det diskrete logaritmeproblem, i dette tilfælde, kræves i det mindste trinene fra kendte algoritmer.
Nøglegenerering:
Godkendelse:
Hvis vi i Schnorrs skema antager, at Alice er en modstander, så kan hun i trin 1 vælge på en tilfældig, men effektiv måde. Lad være nummeret, som Alice har passeret. Lad os antage, at det er muligt at finde to tilfældige tal og sådan, at for hver af dem kan Alice finde den tilsvarende , og for hvilken bekræftelse vil give et positivt resultat. Vi får:
.Herfra eller . Siden , Så eksisterer og derfor, , Det vil sige den diskrete logaritme af . Således er enten sådan, at Alice kan reagere passende på dem begge (givet det samme ) i trin 3 i protokollen, sjældent, hvilket betyder, at Alices angreb kun lykkes med en ubetydelig sandsynlighed. Eller sådanne værdier støder ofte på, og så kan den algoritme, som Alice bruger, bruges til at beregne diskrete logaritmer.
Med andre ord er det bevist, at under den antagelse, at det diskrete logaritmeproblem er vanskeligt, er Schnorr-autentificeringsskemaet modstandsdygtigt over for en passiv modstander, det vil sige korrekt.
Aktiv fjendeEn aktiv modstander kan udføre et antal protokoludførelsessessioner som verifikator med en ærlig bevis (eller aflytte sådanne henrettelser) og derefter forsøge at angribe godkendelsesskemaet. For modstand mod en aktiv modstander er det tilstrækkeligt, at autentificeringsprotokollen er et nul-vidensbevis . Ingen har dog endnu kunne bevise nulviden-egenskaben for Schnorr-ordningen.
Schnorr-algoritmen kan også bruges som en protokol til digital signering af en besked . Nøgleparret er det samme, men en envejs-hash-funktion er tilføjet .
De vigtigste beregninger til generering af en signatur udføres på forbehandlingsstadiet og på beregningsstadiet , hvor tallene og har rækkefølgen af bit, og parameteren er en bit. Den sidste multiplikation er ubetydelig sammenlignet med den modulære multiplikation i RSA- skemaet .
Signaturverifikation består hovedsageligt af en beregning , der kan udføres på gennemsnittet af modulo-beregninger , hvor der er en længde i bit.
En kortere signatur reducerer antallet af operationer til signaturgenerering og -verifikation: i Schnorr-ordningen og i ElGamal-ordningen .
Nøglegenerering:
Meddelelsessignatur:
Schnorr-ordningen har patenter i flere lande. For eksempel US #4.995.082 dateret 19. februar 1991 (udløb 19. februar 2008). I 1993 erhvervede Public Key Partners (PKP) fra Sunnyvale de verdensomspændende rettigheder til dette patent. Ud over USA er denne ordning også patenteret i flere andre lande.
En kredsløbsmodifikation af Ernie Brickell og Kevin McCurley i 1992 forbedrede kredsløbets sikkerhed i høj grad. Deres metode bruger tallet , der ligesom , er svært at nedbryde, en simpel divisor af tallet , og et eksponentelement i , som efterfølgende bruges i signaturen. I modsætning til Schnorr-skemaet beregnes signaturen i deres metode af ligningen
.Mens Brickell og McCarleys modifikation er beregningsmæssigt mindre effektiv end Schnorr-skemaet, har denne metode den fordel, at den er baseret på vanskeligheden ved to komplekse problemer: