ANDOS (salaus)

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 8. heinäkuuta 2019 tarkistetusta versiosta . tarkastukset vaativat 2 muokkausta .

ANDOS ( All or Nothing Disclosure Of Secrets ) on salausprotokolla "salaisuuksien salaiseen myyntiin" .  Anna S - salaisuuksien myyjälle luettelo kysymyksistä ja laita myyntiin vastaukset mihin tahansa niistä. Oletetaan, että ostaja B haluaa ostaa salaisuuden, mutta ei halua paljastaa, mitä. Protokolla takaa, että B saa tarvitsemansa salaisuuden eikä mitään muuta, kun taas S ei tiedä tarkalleen, minkä salaisuuden B sai .

Algoritmi

Olkoon S :n hallussa olevat salaisuudet , jokainen niistä sisältää vähän. Jokaiselle S julkaisee salaisuuden kuvauksen. Oletetaan, että ostajat B ja C haluavat ostaa salaisuuksia ja vastaavasti . Ajatuksena on, että ostajilla on yksilölliset yksisuuntaiset toiminnot ja jokainen niistä toimii toisen vastaanottamilla numeroilla.

Vaihe 1. S antaa B :lle ja C :lle yksittäiset yksisuuntaiset funktiot f ja g , mutta pitää niiden käänteisfunktiot itselleen. Vaihe 2. B kertoo C :lle (vastaavasti C  - B ) satunnaiset bittiluvut (vastaavasti ).

Jos , joka yhdistää -bittiluvut -bittisiin lukuihin ja -bitin numero , sano, että indeksi  on Fixed Bit Index (FBI) , joka vastaa paria, jos -th bit in on yhtä suuri kuin -th bit in . On selvää, että paria vastaava IFB on, jos se on paria vastaava IFB . Jos se käyttäytyy melko satunnaisesti bittejä vaihtaessaan (kuten hyvät salaustoiminnot), niin satunnaiselle voidaan karkeasti arvioida, että suunnilleen indeksit ovat IFB:itä, jotka vastaavat

Vaihe 3. B kertoo C :lle (vastaavasti C  - B ) IFB- indeksien joukon, joka vastaa vastaavasti IFB- indeksien joukkoa, joka vastaa Vaihe 4. B (vastaavasti C ) kertoo S numeroa (vastaavasti , missä  on tulos, joka saadaan korvaamalla jokainen bitti kohdassa , jonka indeksi ei ole IFB , sen vastineella (vastaavasti saatu vastaavalla tavalla). Vaihe 5. S kertoo B (vastaavasti C ) numerot vastaavasti , . Vaihe 6. B (vastaavasti C ) osaa laskea (vastaavasti ), koska ne tunnetaan vastaavasti

B ja C oppivat tarvitsemansa salaisuudet. S ei oppinut valinnastaan ​​mitään. Myöskään B ja C eivät oppineet enempää kuin yhtä toistensa salaisuuksista tai valinnoista. B :n ja C :n välinen salaliitto johtaa siihen, että he voivat oppia kaikki salaisuudet. S :n ja yhden ostajan välinen salaliitto voi paljastaa, minkä salaisuuden toinen ostaja haluaa.

Suurin ongelma on siis salaliitto. Jos ostajia on kuitenkin vähintään kolme, niin yksi rehellinen ostaja riittää, jotta muiden huijaaminen on mahdotonta salaustoimintojen käytön ansiosta, koska jokainen S :ltä ostajille lähetettävä sekvenssin bitti on erittäin riippuvainen biteistä. rehellisen ostajan tarjoama.

Jos ostajia on useita , protokolla toimii täsmälleen samalla tavalla, mutta jokainen ostaja saa myyjältä toiminnon sekä numerosarjat muilta ostajilta.

Esimerkkejä

Valitaan . Oletetaan, että S :llä on myytävänä seuraavat 8 12-bittistä salaisuutta: Vaihe 1. S antaa B :lle ja C :lle yksittäiset yksisuuntaiset funktiot f ja g alkulukujen (vastaavasti ), modulo (vastaavasti ) perusteella. Avoin ja suljettu eksponentti ovat yhtä suuret (vastaavasti ). Vaihe 2 B kertoo C : lle kahdeksan 12-bittistä numeroa : C kertoo B : lle kahdeksan 12-bittistä numeroa : Vaihe 3 Anna B :n ostaasalaisuuden . Hän laskee Vertaamalla binääriesitystä ja B kertoo C :lle joukon IFB:itä vastaavasta Anna C haluaa ostaasalaisuuden . Laskelmien jälkeen C kertoo B :lle joukon IFB:itä vastaavasta Vaihe 4 B kertoo S :lle luvun , jossa  on tulos, joka saadaan korvaamalla jokainen bitti kohdassa , jonka indeksi ei kuulu , päinvastoin, esimerkiksi: C kertoo S :lle luvut , missä  on tulos, joka saadaan korvaamalla jokainen bitti kohdassa , jonka indeksi ei kuulu , päinvastoin, esimerkiksi: Vaihe 5 S kertoo B : lle käänteisfunktion , esimerkiksi: S kertoo C - luvuille esimerkiksi käänteisfunktion . Vaihe 6 B oppii S : ltä saadun 7. luvun salaisen bittikohtaisen lisäyksen , nimittäin:

.

Jos C haluaa ostaa salaisuuden , se laskee S : ltä saadun 2. luvun bittikohtaisen lisäyksen , nimittäin:

.

Kirjallisuus