Domanda Zero Knowledge Proof (except with some small probability)

Stato
Discussione chiusa ad ulteriori risposte.

Warez

Utente Electrum
5 Novembre 2011
170
63
24
178
Ultima modifica:
Salve, studiando un poco la Zero Knowledge Proof mi è sorto un dibbio dopo aver trovato scritto:

  1. Soundness: if the statement is false, no cheating prover can convince the honest verifier that it is true, except with some small probability.
Con excpet with some small probability cosa si intende, che con una piccola probabilità riuscirei ad "imbrogliare" chi verifica?
 
Esatto. Inoltre, visto che le zero knowledge proof sono un protocollo interattivo, la probabilità di imbrogliare va a discrezione dei partecipanti. Non ho idea di che protocollo hai visto, quindi non ti posso rispiegare a modo mio quello che hai letto sul libro, ma in generale il concetto è:
  • completeness: appena il dimostrante commette un errore, il verificatore lo smaschera con certezza (probabilità = 1);
  • soundness: se il dimostrante non commette un errore, c'è il 50% di probabilità che gli sia andata di culo.
Finché il verificatore non sarà convinto, metterà alla prova il dimostrante. Per il dimostrante non è un problema ripetere l'esperimento perché la prova è zero knowledge: il verificatore non ha alcun modo di sfruttare le informazioni che riceve.

Per esempio, io sono capace di prevedere il futuro e, se mi paghi, posso dirti i numeri della prossima estrazione del superenalotto. Tu, ovviamente, non mi credi sulla parola e io, ovviamente, non ho alcuna intenzione di farti vincere al superenalotto senza ottenere nulla in cambio. Mi chiedi "uscirà testa o croce", io ti rispondo e poi tu lanci una moneta. Se io sbaglio tu sei consapevole che ti ho detto una boiata e non hai bisogno di mettermi nuovamente alla prova, se invece ci azzecco... eh, 50% di probabilità che mi sia andata di culo. Ripeti il lancio della moneta per 10 volte e io continuo ad azzeccarci: adesso la probabilità che sto cercando di fregarti è inferiore allo 0.1% e tu sei sufficientemente convinto che io so veramente prevedere il futuro.

Le zero knowledge proof sono concettualmente simili. Non mi sta bene darti i numeri del superenalotto senza ricevere soldi e a te non sta bene pagarmi senza essere convinto delle mie capacità. Scendiamo a compromessi e ti do un informazione inutile (zero knowledge), ma in grado di dimostrarti (proof) di un certo fatto. Con un po' di fortuna potrei ingannarti, ma tu puoi mettere alla prova la mia fortuna.
 
  • Mi piace
Reazioni: Sunacchi e Warez
Esatto. Inoltre, visto che le zero knowledge proof sono un protocollo interattivo, la probabilità di imbrogliare va a discrezione dei partecipanti. Non ho idea di che protocollo hai visto, quindi non ti posso rispiegare a modo mio quello che hai letto sul libro, ma in generale il concetto è:
  • completeness: appena il dimostrante commette un errore, il verificatore lo smaschera con certezza (probabilità = 1);
  • soundness: se il dimostrante non commette un errore, c'è il 50% di probabilità che gli sia andata di culo.
Finché il verificatore non sarà convinto, metterà alla prova il dimostrante. Per il dimostrante non è un problema ripetere l'esperimento perché la prova è zero knowledge: il verificatore non ha alcun modo di sfruttare le informazioni che riceve.

Per esempio, io sono capace di prevedere il futuro e, se mi paghi, posso dirti i numeri della prossima estrazione del superenalotto. Tu, ovviamente, non mi credi sulla parola e io, ovviamente, non ho alcuna intenzione di farti vincere al superenalotto senza ottenere nulla in cambio. Mi chiedi "uscirà testa o croce", io ti rispondo e poi tu lanci una moneta. Se io sbaglio tu sei consapevole che ti ho detto una boiata e non hai bisogno di mettermi nuovamente alla prova, se invece ci azzecco... eh, 50% di probabilità che mi sia andata di culo. Ripeti il lancio della moneta per 10 volte e io continuo ad azzeccarci: adesso la probabilità che sto cercando di fregarti è inferiore allo 0.1% e tu sei sufficientemente convinto che io so veramente prevedere il futuro.

Le zero knowledge proof sono concettualmente simili. Non mi sta bene darti i numeri del superenalotto senza ricevere soldi e a te non sta bene pagarmi senza essere convinto delle mie capacità. Scendiamo a compromessi e ti do un informazione inutile (zero knowledge), ma in grado di dimostrarti (proof) di un certo fatto. Con un po' di fortuna potrei ingannarti, ma tu puoi mettere alla prova la mia fortuna.
Grazie :)
 
Stato
Discussione chiusa ad ulteriori risposte.