Puoi utilizzare Trasferimento Oblivious .
Oblivious Transfer (OT) è una primitiva crittografica in cui il mittente trasferisce uno dei potenziali molti ingressi a un ricevitore ma rimane ignaro dell'input inviato. Il ricevitore rimane anche ignaro degli input che lui o lei non ha scelto.
Chou e Orlandi definiscono OT come segue:
”In its simplest flavour, 1-out-of-2 OT, a sender has two input
messages M0 and M1 and a receiver has a choice bit c. At the end of
the protocol the receiver is supposed to learn the message M c and
nothing else, while the sender is supposed to learn nothing.”
Di seguito c'è un protocollo OT 1-out-of-2 che è sicuro contro semi-onesto
avversari, come descritto da P. Snyder :
Neltuocaso,haimoltinumeri(dieciperlaprecisione)evuoisceglierneunoognivolta.Quindihaibisognodiunprotocollo1-out-of-KOT.TaleprotocolloesistemaèmoltopiùcomplicatoperchéèbasatosuObliviousTransferExtensions.
ObliviousTransferExtensions:
C'èunproblemariscontratoinogniimplementazioneOT.AcausadelfattocheogniprotocolloOTèimplementatotramitecrittografiaachiavepubblica,èsemprepiùdifficilesimulareunnumeromoltoelevatoditransazioniOT.Perrisponderealproblemaprecedentementeindicato,dovrebbeesseretrovataunasoluzione.Infatti,nel1996,DonaldBeaverhadimostratochegliOTpossonoessereestesiusandosimmetriacrittografia.QuestanozioneèstatasuccessivamentedimostrataefficacedaY.Ishaietal.Comespiegatoda Asharov et al :
”An OT extension protocol works by running a small number of ”base
OTs” de- pending on the security parameter (e.g. a few hundred) that
are used as a base for obtaining many OTs via the use of cheap
symmetric cryptographic operations only. This is conceptually similar
to public-key encryption where instead of encrypting a large message
using RSA, which would be too expensive, a hybrid encryption scheme is
used such that the RSA computation is only carried out to encrypt a
symmetric key, which is then used to encrypt the large message.”
Puoi verificare un'implementazione del più noto protocollo di estensione OT qui .
Riguardo al protocollo 1-out-of-K OT , nel 2013, Vladimir Kolesnikov e Ranjit Kumaresan hanno proposto un'ottimizzazione e generalizzazione del protocollo IKPN03 che puoi leggere //ect.bell-labs.com/who/kolesnikov/papers/otext.pdf">here.
Per concludere, OT è un primitivo crittografico conosciuto che fa esattamente quello che vuoi. Puoi usarlo nella sua forma più semplice (il 1-out-of-2 OT) ed eseguirlo molte volte poiché hai 10 numeri invece di 2. Oppure, puoi implementare qualcosa di più sofisticato come uno schema di estensione OT.
Vedi anche: