Ce este criptografia?


Înainte de a ne familiariza cu materialul tehnic, vreau să fac o scurtă trecere în revistă a criptografiei și a diferitelor părți ale acesteia și să vorbesc despre adevărata criptografie.







[Slide]
Miezul criptografiei:
1. Crearea cheilor securizate:
Alice (știe că vorbește cu Bob) <================> Bob (știe că vorbește cu Alice)
Alice și Bob au o cheie comună K
Atacatorul încearcă să audă conversația dintre Alice și Bob, fără să știe cheia comună

2. Comunicații securizate
Există o cheie comună, există un transfer sigur de mesaje (confidențialitatea și integritatea sunt respectate)
[Slide]

La începutul cursului, am spus deja că este nucleul criptografiei, dacă o doriți ca o piatră de temelie. Acestea sunt două componente. Prima este crearea cheilor securizate atunci când Alice încearcă să vorbească cu serverul lui Bob, să spunem și la sfârșitul protocolului de reconciliere, de fapt, avem o cheie comună care este creată între cele două părți. În plus, Alice știe cu siguranță că comunică cu serverul (și nu cu nimeni) și intenționează să continue conversația. Și Bob știe cu siguranță că vorbeste cu un client, să zicem, al cărui nume este Alice. Și atacatorul, desigur, nu știe nimic despre cheia secretă. În al doilea rând, după cum am spus deja, când ambele părți au convenit asupra unei chei comune, o transmisie sigură a mesajelor începe să funcționeze între ele. Dar se pare că criptografia poate face mult, mult, mult, mult mai mult. Vă voi oferi o scurtă trecere în revistă a ceea ce puteți face cu ea.

[Slide]
Dar criptografia poate face mult, mult, mult, mult mai mult
1. Semnătura digitală
2. Comunicarea anonimă
[Slide]

Deci, primul lucru care poate fi făcut, de exemplu, ceea ce se numește o semnătură digitală. În lumea reală, știm că, dacă vrem să semneze un contract, asta e ceea ce fac, de fapt - să ia doar numele tău și să semneze contractul. În lumea digitală nu mai este sigur, pentru că, de fapt, dacă am semna contractul numele lor digital, este foarte usor pentru cei care primesc contractul meu digital - trebuie doar să taie și lipiți semnătura mea pe un contract complet diferit pe care am putea N-aș vrea să semneze. Și apoi întrebarea de modul în care vom copia noțiunea de o semnătură digitală din lumea fizică la lumea digitală? Și vom vorbi mult despre asta. Acest lucru este destul de un mecanism interesant, și vom vedea cum, de fapt, putem semna documente, astfel încât semnătura nu pot fi copiate pe un alt document.

O altă secțiune se ocupă de criptografie de comunicare anonimă. Ei bine, de exemplu, aici avem un utilizator Alice. Ea vrea să vorbească cu serverul Bob, dar Alice nu vrea server pentru Bob știa că era ea. Există mai multe motive pentru care doriți să comunice cu serverul confidențial și așa întrebarea este cum să facă acest lucru. Și se pare, există un concept numit de rețea mixtă (rețea mixtă), care nu permit în mod corect criptarea și traficul ruta prin mai multe servere proxy, permițându-vă astfel să comunice Alice cu serverul, astfel încât acest server săraci nu are nici o idee despre cine este de fapt un se spune. Astfel, comunicarea anonimă - o altă utilizare bună a criptografiei.

[Slide]
Unul dintre tipurile de comunicare anonimă este banul digital anonim.
întrebări:
- Cum să plătiți anonim "banii digitali"?
- Cum să evitați cheltuielile duble?
[Slide]

Acum, că aveți posibilitatea de a comunica anonim, s-ar putea întreba: „dar eu pot fi bani digitale anonime (bani)?“ Deci, încă o dată, în lumea fizică, avem banii și anonimatul lor înseamnă că, de îndată ce voi a luat un proiect de lege dolar de la banca, eu pot merge afară și petrece un proiect de lege dolar de la vânzător și nu există nici o cale pe care cineva ar putea spune că acest lucru este exact ceea ce am petrecut dolar de la vânzător (bani de hârtie are un număr unic, care pot fi urmărite, dar este imposibil de a urmări proprietarului). De fapt, atunci când folosesc banii, o fac în mod anonim. Întrebarea este dacă putem face același lucru în lumea digitală? Și aici, problema este mult, mult mai greu. Și încă o întrebare, dacă am o monedă digitală, sau avem aici, de exemplu, există Alice, ea are un dolar monede digitale, întrebarea este dacă într-adevăr se poate merge de fapt afară și cheltui dolar? Vânzătorul, de exemplu, atât de mult, astfel încât vânzătorul nu are nici o idee care de fapt a cheltuit banii.

Există încă un motiv care cauzează complexitate - în lumea digitală este foarte ușor pentru Alice să ia o monedă digitală și să o copie pe altă monedă. Deci, acum sunt brusc două în loc de o monedă și cine va spune că Alice nu poate merge și să cheltuiască aceste monede de la alți vânzători. Dacă a acționat anonim, atunci nu există nicio modalitate de a spune cine a comis această fraudă. Cine a cheltuit o monedă de două ori de la doi vânzători diferiți? Și acum, se pare, există o tensiune între securitate și intimitate, pentru că nu există nici o cale de a ști cine angajează o astfel de fraudă. Și se dovedește că acest lucru este complet fezabil. Și vom vorbi mai târziu despre banii digitali anonimi. Doar pentru a vă oferi un indiciu, voi spune că de fiecare dată când petrec o monedă, sunt complet anonim. Dar dacă îmi petrec mai mult decât o dată monedele, atunci, brusc, personalitatea mea va fi dezvăluită pe deplin și aș putea avea probleme juridice din cauza cheltuielilor duble ale aceleiași monede. În continuare, vom examina în detaliu cum funcționează cu banii digitali anonimi.







[Slide]
protocoale
1. Problema alegerilor
pe diapozitiv există câțiva bărbați mici, fiecare dintre ei fiind 1 sau 0
2. Licitații închise
[Slide]

O altă aplicație a criptografiei este asociată cu protocoale mai abstracte, dar înainte de a exprima rezultatul global, vă voi da două exemple. Primul exemplu este legat de sistemul electoral. Deci, problema alegerilor. Să presupunem. Avem două partide. Un lot de zero și un lot de unități. Și alegătorii votează pentru aceste partide. De exemplu, acest alegător votează pentru un lot de zero, iar acesta pentru un lot de unități (pe diapozitiv, profesorul atrage 0 și 1 pentru bărbații mici, 5 pentru toți oamenii). Și așa mai departe. Astfel, în aceste alegeri, partidul zero a primit trei voturi, iar unitățile de partid - două voturi. Câștigătorul alegerilor, desigur, este partidul zero. Dar, în general, câștigătorul alegerilor este partidul care primește majoritatea voturilor. Acum, care este problema alegerilor (votare). Alegătorii ar dori să conteze într-o oarecare măsură majoritatea voturilor, dar să facă acest lucru în așa fel încât vocile lor individuale să nu fie dezvăluite. Bine? Întrebarea este cum să faceți acest lucru? Și pentru asta, vom adăuga un centru de votare. care ne va ajuta să calculam majoritatea voturilor, dar vom păstra secretul în voce (profesorul desenează centrul electoral unde se înfruntă vocile). Și fiecare alegător va trimite fonemele de criptare a voturilor lor la centrul electoral. La sfârșitul alegerilor, centrul electoral poate conta pe cine a câștigat. Cu toate acestea, în plus față de câștigător, nimic nu va fi cunoscut despre voci individuale. În caz contrar, vocile individuale sunt păstrate în secret. Desigur, centrul electoral verifică, de asemenea, că, de exemplu, un alegător are dreptul de vot, iar alegătorul a votat doar o singură dată. Dar restul lumii nu ar trebui să știe nimic, cu excepția rezultatului alegerilor. În cazul nostru, protocolul include șase partide: cinci alegători și un centru electoral. Aceste partide se află între ele. Și la sfârșitul calculelor, rezultatul alegerilor devine cunoscut, dar nu se știe nimic despre vocile individuale.

O problemă similară apare în contextul licitațiilor închise. Într-o licitație închisă, fiecare participant oferă oferta sa de participare la licitație. Acum, să presupunem că acest mecanism de licitație - câștigătorul licitației este cel care va oferi mai mult cu plată. Dar suma pe care va plăti câștigătorul este de fapt al doilea mare rata. Astfel, se plătește a doua cea mai mare ofertă (al doilea preț de licitație - licitație închisă, în care câștigătorul este concurentul cu cel mai mare preț, dar plata ar trebui „al doilea preț“, adică, prețul cel mai apropiat concurent) Deci, un mecanism de licitație standard, am identificat ca câștigător al licitației. Și acum ce vrem să facem - pentru a oferi participanților posibilitatea de a afla cine va plăti mai mult, și cât de mult trebuie să plătească, dar toate celelalte informații cu privire la propunerile individuale ar trebui să rămână un secret. De exemplu, valoarea reală a câștigătorului unui pariu ar trebui să rămână un secret. Singurul lucru care este disponibil în mod public - a doua cea mai mare ofertă și identitatea câștigătorului. Deci, încă o dată, ca să facă procesul de licitație a lucrat și-a exprimat. De fapt, participanții vor trimite ofertele lor criptate în centrul de licitație. Centrul se va calcula identitatea câștigătorului, dar, de fapt, va calcula, de asemenea, cea de a doua cea mai mare ofertă, dar altele decât aceste două valori nimic mai mult pentru a arăta, ceea ce înseamnă propunerile individuale.

[Slide]
protocoale
1. Problema alegerilor
pe diapozitiv sunt reprezentați câțiva bărbați puțin, în cazul în care deja toată lumea este un fel de variabilă x1, x2 ...
2. Licitații închise

Scop: calculați f (x1, x2, x3, x4)
"Teorema": tot ce se poate face cu ajutorul unor centre de încredere poate fi făcut și fără ele
3. Protocolul de calcul confidențial
[Slide]

[Slide]
Criptografia "magică"
* Outsourcing de calcul privat
* Cunoștințe zero
Alice cunoaște multiplicatorii numărului N = p * q, iar Bob știe doar numărul N și vrea să verifice: știe Alice exact multiplicatorii. Alice dovedește lui Bob că știe P și Q, fără a-și divulga semnificația lor specifică.
[Slide]

Și acum voi vorbi despre unele aplicații de criptografie care, altfel, cât de magică nu pot clasifica. Permiteți-mi să vă dau două exemple. Deci, primul se numește externalizarea computerelor private (calculul privat de outsourcing). Voi exemplifica acest lucru cu un exemplu de căutare Google. Deci, imaginați-vă, Alice are o interogare de căutare, pe care vrea să obțină rezultatul. Se pare că există scheme de criptare foarte specifice în care Alice trimite cererea criptată către Google. Apoi, deoarece Google utilizează propria schemă de criptare, Google calculează valorile criptate fără să știe nimic despre textul simplu. Astfel, Google va putea să lanseze algoritmul de căutare prin primirea unei cereri criptate și returnarea rezultatelor criptate. Bine. Google trimite rezultatele criptate înapoi la Alice. Alice descifrează și primește rezultatele. Dar magia aici este că Google a văzut doar cererea criptată și nimic mai mult. Se pare că, prin urmare, Google nu știe ce căuta Alice, dar, totuși, Alice știa de fapt, știa exact ce căuta. Ei bine, ce fel de scheme magice există? Acestea au fost introduse relativ recent, doar o nouă dezvoltare cu aproximativ doi sau trei ani în urmă, ceea ce face posibilă calcularea datelor necriptate, chiar dacă nu știm ce se află în criptare. Dar, înainte de a alerga și de a gândi să punem în aplicare acest mecanism, trebuie să vă avertizez că, în realitate, în prezent este o teorie, în sensul că lansarea căutării de către Google a datelor criptate va dura probabil un miliard de ani. Dar totuși, chiar faptul că este fezabil este deja uimitor și este deja foarte util pentru calcule relativ simple. De fapt, vom vedea câteva aplicații mai târziu.

[Slide]
Știință exactă.
Trei pași în criptografie:
1. Identificați modelul de amenințare
2. Sugerați un design
3. Să demonstreze că atacatorul nu poate sparge structura în conformitate cu modelul actual de amenințare
[Slide]

Și ultimul lucru pe care vreau să spun este că criptografia modernă este o știință foarte precisă. Și, de fapt, fiecare concept pe care îl vom lua în considerare urmează trei reguli. Reguli foarte stricte, bine, iar noi le vom înfrunta din nou și din nou, așa că vreau să explic ceea ce sunt. Primul lucru pe care îl vom face atunci când introducem o nouă primitivă, de exemplu, o semnătură digitală, o vom determina - modelul de amenințare. Asta este ceea ce poate face un atacator atunci când atacă o semnătură digitală și care este scopul său în crearea unei semnături? Deci, vom determina exact ce înseamnă pentru o semnătură, de exemplu, că trebuie să fie autentică. Este autentic. De exemplu, avem în vedere o semnătură digitală. Pentru fiecare dintre noi, vom determina exact ce amenințări există.

In continuare, vom oferi un fel de structură, iar apoi furnizează dovada că orice intrus este capabil să atace structura propusă în conformitate cu acest model amenințare. De asemenea, atacatorul poate folosi câteva dintre caracteristicile problemei de rezolvat. Și, ca urmare, dacă problema este foarte dificilă, adică dovedește că un atacator nu poate rupe un design în conformitate cu modelul actual de amenințare. Bine.

Dar acești trei pași sunt de fapt foarte importanți. În cazul semnăturii, definim amenințarea - un semn fals - pe, a propus construcția, și apoi, de exemplu, noi spunem că oricine poate rupe design-ul nostru se va confrunta cu problema de numere întregi de factoring, care sunt considerate a fi dificil de realizat sarcina. Deci, vom aplica cele trei reguli descrise (amenințare, proiectare, dovada) tuturor, și veți vedea cum este de fapt imposibil. Deci, acesta este sfârșitul segmentului. În următorul segment, vom vorbi puțin despre istoria criptografiei.







Trimiteți-le prietenilor: