Puncte:2

Cum să partajați capacitatea de decriptare altora ale căror chei publice nu sunt utilizate în timpul criptării?

drapel br
Leo

după cum spune titlul, de exemplu, A folosește cheia publică a lui B pentru a cripta un mesaj și l-a trimis lui B. În etapele ulterioare, un nou membru C se alătură și B ar dori să îi permită lui C să vadă acest mesaj criptat (adică, să ofere capacitatea de decriptare la C). Cum să realizați acest lucru fără a-l lăsa pe A să cripteze din nou mesajul folosind cheia publică a lui C?

O modalitate la care mă gândesc acum este că B decriptează mai întâi mesajul și folosește cheia publică a lui C pentru a-l cripta din nou și apoi a-l trimite la C. Dar există vreo metodă care necesită mai puține operațiuni pentru a partaja capacitatea de decriptare la C mai mult automat. ? Mulțumiri.

Eugene Styer avatar
drapel dz
Vedeți https://crypto.stackexchange.com/questions/86483/using-public-key-cryptography-with-multiple-recipients
Leo avatar
drapel br
Leo
Mulțumesc @EugeneStyer. Dar problema mea aici este să le permit altor persoane care s-au alăturat mai târziu ale căror chei publice nu sunt folosite la început să poată citi mesajul, ceea ce este puțin diferit de această întrebare în care cerința este să cripteze mesajul folosind cheile publice ale mai multor destinatari. .
Eugene Styer avatar
drapel dz
Motivul pentru care am făcut legătura cu această întrebare anume este să observ că, cu criptarea hibridă, criptăm mesajul o dată folosind AES (sau similar), apoi folosim criptarea publică pentru a trimite cheia AES. Deci, adăugarea unui alt destinatar înseamnă doar criptarea cheii AES folosind cheia publică a noului destinatar. Faptul că acest lucru se întâmplă mai târziu nu face o mare diferență.
Puncte:0
drapel us

Dacă doriți ca C să poată decripta orice adresat lui B, atunci cel mai simplu lucru este să dați pur și simplu cheia de decriptare a lui B lui C.

Există și ceva numit re-criptare proxy asta este și în spiritul „re-adresării” unui text cifrat. În re-criptarea proxy, există un algoritm $\textsf{ProxyKey}(sk_B, pk_C) \to rk_{B\to C}$: ia ca intrare cheia privată a lui B și cheia publică a lui C și generează o cheie de re-criptare $rk_{B \la C}$. Oricine are această cheie de recriptare poate face $\textsf{ReEncrypt}(rk_{B \to C}, ctxt) \to ctxt'$, care ia un text cifrat $ctxt$ adresată lui $B$ și o transformă în $ctxt'$, o criptare a aceluiași lucru, dar adresată $C$.

(Există și variante în care $\textsf{ProxyKey}$ are nevoie de cheia privată a ambelor părți.)

Distincția importantă aici este că persoana care „re-abordează” textul cifrat („proxy”) poate fi altcineva decât B sau C. Un proxy care are doar $rk_{B\la C}$ dar cine nu cunoaște cheile private ale lui B sau C nu poate deschide texte cifrate adresate lui B sau C. Ele pot transforma doar texte cifrate pentru B în texte cifrate pentru C (și nu invers) fără să se uite în interior.Presupunând că proxy-ul și C sunt părți distincte, atunci C poate citi doar mesajele adresate lui B pe care proxy-ul alege să le transforme.

Leo avatar
drapel br
Leo
Mulțumesc @Mikero. Cheia privată a lui B nu poate fi dată lui C în cazul meu, așa că cel mai simplu mod nu poate funcționa aici. Re-criptarea proxy sună interesant. Dar după ce proxy-ul folosește cheia de re-criptare rkB-C pentru a recripta ctxt-ul pentru a obține ctxt' și a-l trimite la C, cum poate C decripta ctxt'? Folosește cheia privată a lui C?
drapel us
Da, ctxt' ar arăta de obicei ca un text cifrat normal adresat direct către C și ar fi decriptat în mod obișnuit.
Leo avatar
drapel br
Leo
Sună bine. Voi căuta și voi încerca mai întâi. Mulțumesc @Mikero. Am găsit o bibliotecă care arată bine https://github.com/nucypher/pyUmbral. Te întrebi dacă ai unele recomandate?

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.