ANDOS (kryptografi)

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 8. juli 2019; checks kræver 2 redigeringer .

ANDOS ( All or Nothing Disclosure Of Secrets ) er en kryptografisk protokol til "hemmeligt salg af hemmeligheder" .  Lad sælgeren af ​​S -hemmeligheder have en liste med spørgsmål og sæt svarene på ethvert af dem til salg. Antag, at køber B ønsker at købe en hemmelighed, men ikke ønsker at afsløre hvilken. Protokollen garanterer, at B får den hemmelighed, den har brug for, og intet andet, mens S ikke ved præcis, hvilken hemmelighed B har fået .

Algoritme

Lad de hemmeligheder, som S besidder , hver af dem indeholder en smule. For hver S udgiver en beskrivelse af hemmeligheden. Antag, at købere B og C ønsker at købe hemmeligheder og hhv. Tanken er, at køberne har individuelle envejsfunktioner, og hver af dem opererer på de tal, den anden modtager.

Trin 1. S giver B og C individuelle envejsfunktioner f og g , men holder deres inverse for sig selv. Trin 2. B fortæller C (henholdsvis C  - B ) tilfældige -bit-tal (henholdsvis ).

For , som kortlægger -bittal til -bittal og -bittal , sig, at indekset  er det faste bitindeks (FBI) svarende til parret, hvis -th bit i er lig med -th bit i . Det er klart, at der er en IFB, der svarer til parret , hvis det er en IFB, der svarer til parret . Hvis det opfører sig ret tilfældigt, når der skiftes bits i (som gode kryptografiske funktioner), så kan man for random groft estimere, at ca. indeksene er IFB'er svarende til

Trin 3. B fortæller C (hhv. C  - B ) det sæt af IFB - indekser, der henholdsvis svarer til sættet af IFB - indekser svarende til Trin 4. B (henholdsvis C ) fortæller S - tal (hhv . hvor  er resultatet opnået ved at erstatte hver bit i , hvis indeks ikke er IFB , med sin modsætning (henholdsvis opnået fra på en lignende måde). Trin 5. S fortæller B (henholdsvis C ) tal hhv . _ Trin 6. B (hhv. C ) kan beregne (hhv. ), da de er kendte hhv.

B og C lærte de hemmeligheder, de havde brug for. S lærte ikke noget om deres valg. Desuden lærte hverken B eller C mere end én af hinandens hemmeligheder eller valg. Et samarbejde mellem B og C resulterer i, at de kan lære alle hemmelighederne. Samarbejde mellem S og en af ​​køberne kan afsløre, hvilken hemmelighed den anden køber ønsker.

Så hovedproblemet er samordning. Men hvis der er mindst tre købere, så er en ærlig køber nok til at gøre det umuligt at snyde resten, takket være brugen af ​​kryptografiske funktioner, da hver bit af sekvensen sendt til købere fra S er meget afhængig af bitsene leveret af den ærlige køber.

I det tilfælde, hvor der er et antal købere , fungerer protokollen på nøjagtig samme måde, men hver køber modtager en funktion fra sælgeren sammen med sæt tal fra andre købere.

Eksempler

Lad os vælge . Overvej, at S har følgende 8 12-bit hemmeligheder at sælge: Trin 1. S giver B og C individuelle envejsfunktioner f og g baseret på primtal (henholdsvis ), modulo (henholdsvis ). De åbne og lukkede eksponenter er ens (henholdsvis ). Trin 2 B fortæller C otte 12-bit tal : C fortæller B otte 12-bit tal : Trin 3 Lad B ønske at købe hemmeligheden . Han beregner Sammenligning af den binære repræsentation og B fortæller C et sæt IFB'er for de tilsvarende Lad C gerne købe en hemmelighed . Efter beregninger fortæller C B et sæt IFB'er af de tilsvarende Trin 4 B fortæller S tallet , hvor  er resultatet opnået ved at erstatte hver bit i , hvis indeks ikke tilhører , med det modsatte, for eksempel: C fortæller S tallene , hvor  er resultatet opnået ved at erstatte hver bit i , hvis indeks ikke tilhører , med det modsatte, for eksempel: Trin 5 S fortæller B -tallene den inverse funktion , for eksempel: S fortæller C -tal en omvendt funktion , for eksempel. Trin 6 B lærer den hemmelige bitvise tilføjelse af det 7. tal modtaget fra S , nemlig:

.

Hvis C ønsker at købe hemmeligheden , så beregner den den bitvise tilføjelse af det 2. tal modtaget fra S , nemlig:

.

Litteratur