Puncte:1

Dovada de cunoștințe a cheilor private de la schimbul de chei DH

drapel us

Având în vedere un grup în care ipoteza de calcul DiffieâHellman (DH) este valabilă și generator G.

Să presupunem că există un set de chei private selectate aleatoriu {a, b, c, d, e,...} și setul de chei publice corespunzătoare {A, B, C, D, E,...} calculat ca A=aG. Fiecare cheie publică este legată public de utilizatorul/proprietarul corespunzător.

Alice își poate folosi cheia privată A și cheia publică a lui Bob, B, a calcula K=aB. Acest K este folosit ca etichetă pentru ambii utilizatori, poate fi disponibil public, deoarece nu va fi folosit pentru a cripta mesajele, doar ca referință. Bob poate verifica acest lucru știind că Alice face cererea (să presupunem asta), calculând K'=bA și verificând dacă K=K'. Numai Alice și Bob pot ști că asta K este legat de ele.

Din ipoteza DH de calcul, K este lipsit de sens pentru ceilalți utilizatori. Și K este o modalitate de a urmări această combinație pentru utilizatorii relevanți, în acest caz, Alice și Bob. Presupun deocamdată că asta K este unic pe combinație de chei private.

Este posibil să se demonstreze asta K conține două chei private diferite din setul de chei private fără a dezvălui cheile private?

Cheile private/publice trebuie folosite pentru a crea o altă combinație, să spunem în cazul în care Alice și Charlie, acG. Din această cauză, (M)LSAG, așa cum este folosit în Moreno, nu este utilizabil, deoarece cheile trebuie reutilizate și un astfel de link i-ar putea dezvălui lui Charlie că Alice a făcut deja un fel de tranzacție cu altcineva din setul de chei publice.

Aș dori să am această dovadă pentru ca fiecare utilizator să poată verifica că K este valid, (adică, calculat folosind cheile private din set), pentru a evita spamul. Un utilizator rău ar putea genera K aleatoriu folosind cheia sa privată, dar ar fi lipsit de sens pentru toți ceilalți. Un blockchain va fi folosit pentru a urmări referințele.

LSAG reprezintă Grupul anonim anonim care poate fi conectat și M pentru versiunea matrice.

Puncte:1
drapel cn

Dacă am înțeles bine, vrei o modalitate de a demonstra, având o listă $\{A, B, C, D, \cdots\}$ de chei publice, că unele chei date $K$ este „eticheta” corespunzătoare unei perechi de chei din această listă, fără a dezvălui care dintre ele. Permiteți-mi să numesc asta „etichetă validă”.

Pentru simplitate, să presupunem că $K$ este eticheta lui Alice și Bob. Fie Alice, fie Bob pot dovedi asta $K$ este o etichetă validă, folosind tehnici standard de demonstrare a cunoștințelor zero. Intuiția este următoarea:

(1) Dacă perechea $(A,B)$ nu trebuia să rămână ascuns, atunci Bob putea doar să facă o dovadă fără cunoștințe că $(G,A,B,K)$ este un tuplu Diffie-Hellman, folosindu-și martorul $b$ (astfel încât $G^b = B$ și $A^b = K$). Există dovezi standard de cunoștințe zero pentru această relație, vezi, de exemplu, răspunsul meu Aici.

(2) Pentru a păstra perechea ascunsă, schimbăm afirmația: în loc să dovedim "$(G,A,B,K)$ este un tuplu Diffie-Hellman”, Bob demonstrează afirmația „$(G,A,B,K)$ este un tuplu Diffie-Hellman, OR $(G,A,C,K)$ este un tuplu Diffie-Hellman, OR $(G,A,D,K)$ este un tuplu Diffie-Hellman..." și așa mai departe (pentru fiecare pereche de chei publice distincte). Apoi, folosind CDS OR-truc, putem converti dovada zero-cunoștințe pentru relația Diffie-Hellman într-o dovadă zero-cunoaștere pentru un OR a mai multor relații Diffie-Hellman (în special, demonstrația rezultată nu va dezvălui care dintre afirmațiile din OR este adevărată unu).

Cele de mai sus este cea mai simplă, cea mai directă soluție. Desigur, este scump: costul probei crește pe măsură ce $n\cdot(n-1)/2$ de ori costul unei singure dovezi Diffie-Hellman (sau $n$ ori dacă putem scurge identitatea uneia dintre cele două părți implicate în etichetă $K$). Există soluții de reducere a costurilor, dar folosesc tehnici criptografice mult mai avansate. Un bun exemplu sunt una din multe dovezi care permit tocmai acest tip de demonstrații OR, dar cu comunicare logaritmică în numărul de clauze OR.

Ultimul lucru: dacă doriți ca toată lumea să verifice dovada și nu doriți să refacă dovada cu toată lumea, atunci puteți face ca dovada să nu fie interactivă în modelul de oracol aleatoriu folosind transformarea Fiat-Shamir; în acest fel, devine verificabil public. De asemenea, rețineți că atunci când o parte trimite această dovadă, aceasta va scurge întotdeauna informații: de ex. faptul că Bob trimite dovada că $K$ este o etichetă validă dezvăluie întotdeauna că Bob ar putea verifica asta în primul rând, ceea ce înseamnă că cheia publică a lui Bob este una dintre cheile implicate. Ar putea fi ok în scenariul tău, dar trebuie să fii clar cu asta.

drapel us
Ai inteles corect si apreciezi raspunsul tau detaliat! Voi studia ambele lucrări.Despre dovada scumpă, în loc să generez declarația folosind fiecare pereche de chei publice distincte, mă gândeam că se poate alege și un mic subset. La fel cum se numără mixin-urile din Monero.
drapel us
Citirea [FS](https://eprint.iacr.org/2016/771.pdf) și [Note cu dovezi zero](https://web.mat.upc.edu/jorge.villar/doc/notes/ DataProt/zk.pdf), ar fi corect să spunem că folosirea trucului CDS ar duce la o Probă Chaum-Pedersen Disjunctive? Pentru că generatoarele nu sunt independente, nu sunt sigur dacă este corect să spun așa.
Puncte:0
drapel it

Nu știu niciodată cazul practic pentru ca ECDH să fie folosit pentru a grup de perechi de chei de genul acesta. Există modalități formale de a Despică secretă pentru un grup de persoane mai mult de 2. de ex. https://en.wikipedia.org/wiki/Secret_sharing

AFAIK, ECDH ar trebui să fi folosit pentru a crea secrete partajate între exact 2 petreceri.

Din ipoteza DH de calcul, K este lipsită de sens pentru ceilalți utilizatori. Și K este o modalitate de a urmări această combinație pentru utilizatorii relevanți, în acest caz, Alice și Bob. Presupun deocamdată că acest K este unic pe combinație de chei private.

S-ar putea să aveți o neînțelegere la secretă comună, dar K este, de asemenea, lipsit de sens pentru Alice și Bob să urmărească și cheia privată a celuilalt. Natura înmulțirii scalare ECC, pe care ați folosit-o pentru a genera o cheie publică, este unidirecțională. Din punct de vedere matematic, modul în care Alice poate găsi cheia privată a lui Bob este să epuizeze toate punctele într-un spațiu mare, cum ar fi 2^256 sau mai mare, ceea ce este într-adevăr greu de a face cu resursele de calcul actuale de pe pământ.

drapel us
Bună, Match Man, Bob (sau Alice) trebuie doar să verifice _K_ cu elementele setului de chei publice și cheia privată a lui Bob (sau Alice). Dacă nu există nicio potrivire, atunci Bob poate ignora _K_.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.