cursuri criptografie

19
01/11/2007 Introducere in Criptografie 1 Introducere în Criptografie Prof. univ.dr. Constantin Popescu Departamentul de Matematica si Informatica http://webhost.uoradea.ro/cpopescu/

Upload: andrada-szabo

Post on 01-Feb-2016

221 views

Category:

Documents


0 download

DESCRIPTION

Pentru toti cei care vor sa invete sau sunt pasionati de Criptografie. Cursul ii apartine lui Constantin Popescu si este predat la Universitatea din Oradea.

TRANSCRIPT

Page 1: Cursuri Criptografie

01/11/2007 Introducere in Criptografie 1

Introducere înCriptografie

Prof. univ.dr. Constantin PopescuDepartamentul de Matematica si Informaticahttp://webhost.uoradea.ro/cpopescu/

Page 2: Cursuri Criptografie

Agenda

1. Protocoale TCP/IP

2. Securitatea Web

3. Protocolul Secure Electronic Transaction (SET)

4. Cerinţe ale protocolului SET

Introducere in Criptografie 2

Page 3: Cursuri Criptografie

Protocoale TCP/IP

• Protocolul IP asigură livrarea pachetelor numai dacă în funcţionarea reţelelor nu apar erori.

• Dacă un mesaj este prea lung, IP cere fragmentarea lui în mai multe pachete.

• Transmiterea pachetelor IP se face între calculatoare gazdă şi nu direct între programele de aplicaţie.

• Din aceste motive, protocolul IP este completat cu un altul, numit TCP (Transmission Control Protocol), care face fragmentarea şi asigură transmiterea corectă a mesajelor între utilizatori.

• Pachetele unui mesaj sunt numerotate, putându-se verifica primirea lor în forma în care au fost transmise şi reconstituirea mesajelor lungi, formate din mai multe pachete.

Introducere in Criptografie 3

Page 4: Cursuri Criptografie

Protocoale utilizate în suita TCP/IP

NIVEL APLICAŢIE

TELNET SMTP FTP DNS

NIVEL TRANSPORT

TCP UDP

NIVEL INTERNET

IP

LLC 802.2

NIVEL REŢEA

ETHERNET MAC 802.3 MAC 802.4 MAC 802.5

ETHERNET TOKEN BUS 802.4 802.3

TOKEN RING 802.5

Introducere in Criptografie 4

Page 5: Cursuri Criptografie

Protocolul IP

• Începând cu 1982, cel mai utilizat protocol Internet a fost IPv4 • Din 1995, IETF (Internet Engineering Task Force), care dezvoltă

protocoale standard pentru Internet, a emis o specificaţie pentru noua generaţie de IP, numită IPng sau IPv6.

• Datele sunt trimise sub forma unor blocuri de caractere, numite datagrame sau pachete.

• Fiecare pachet este prefaţat de un mic ansamblu de octeţi, numit header (antet), urmat de datele propriu-zise ce formează conţinutul pachetului.

• După sosire la destinaţie, datele transmise sub forma unor pachete distincte sunt reasamblate în unităţi logice de tip fişier, mesaj.

• Internetul comută pachetele pe diferite rute de la sursă la destinaţie, numindu-se reţea cu comutare de pachete.

Introducere in Criptografie 5

Page 6: Cursuri Criptografie

Structura unui pachet IP

Biţi 0 4 8 16 19 31 Versiune Lungime Tip serviciu Lungime totală

Identificare Indicatori Offset fragmentTimp de viaţă Protocol Sumă control antet

Adresă IP sursă Adresă IP destinaţie

Opţiuni IP Nefolosiţi Date

Introducere in Criptografie 6

Page 7: Cursuri Criptografie

Structura unui pachet IP Câmpurile unui antet pentru IPv4 sunt:

• Versiune (4 biţi): Indică numărul versiunii. Valoarea este 4. • Lungime (4 biţi): Specifică lungimea antetului. Valoarea minimă

este 5, pentru o lungime a antetului de minim 20 de octeţi. • Tip serviciu (8 biţi): Specifică rutele IP în termenii de prioritate a

pachetelor. • Lungimea totală (16 biţi): Specifică lungimea totală a pachetului

IP, în octeţi. • Identificare (16 biţi): Împreună cu adresa sursei, adresa

destinaţiei şi cu protocolul utilizatorului, identifică un pachet într-un mod unic.

• Indicatori (3 biţi): Indică dacă un pachet este fragmentat sau nu. Introducere in Criptografie 7

Page 8: Cursuri Criptografie

Structura unui pachet IP

• Offset fragment (13 biţi): Indică cui îi aparţine pachetul fragmentat.

• Timp viaţă (8 biţi): Specifică cât timp (în secunde) rămâne un pachet în Internet.

• Protocol (8 biţi): Indică protocolul de la nivelul imediat superior care primeşte datele.

• Sumă control antet (16 biţi): Este un cod de detectare a erorilor aplicat numai antetului. Acesta se calculează şi se verifică la fiecare rută.

• Adresa IP sursă (32 biţi): Specifică adresa sursă a IP. • Adresa IP destinaţie (32 biţi): Specifică adresa destinaţie a IP. • Opţiuni (variabil): Specifică opţiunile emiţătorului: eticheta de

securitate, căile de rutare. • Nefolosiţi (variabil): Utilizaţi pentru a se asigura că un antet este

un multiplu de 32 de biţi în lungime.Introducere in Criptografie 8

Page 9: Cursuri Criptografie

Securitatea Web

• Sistemul World Wide Web a luat fiinta la începutul anilor '90. • Sistemul Web nu este o reţea, ci este un sistem de aplicaţii. • Sistemul Web poate fi instalat pe diferite tipuri de reţele, care nu

trebuie să facă parte din Internet, şi poate fi folosit chiar pe calculatoare neconectate la reţea.

• World Wide Web este un sistem de comunicare a informaţiilor hipertext folosit în general în reţeaua Internet

• Funcţionează prin comunicare de date pe baza unui model client-server.

• Clienţii, adică navigatoarele Web, au acces la informaţiile hipermedia şi multiprotocol aflate pe un server Web.

• Modelul client-server pentru calculatoarele conectate în reţea implică trei componente: clientul, serverul şi reţeaua.

Introducere in Criptografie 9

Page 10: Cursuri Criptografie

Securitatea Web

• Clientul este o aplicaţie care de obicei rulează pe calculatorul utilizatorului final.

• Serverul este o aplicaţie care de obicei rulează pe calculatorul furnizorului de informaţii.

• Programul client este adaptat sistemului hardware pe care rulează şi funcţionează ca o interfaţă între sistemul respectiv şi informaţiile furnizate de server.

• Cererea este transportată prin reţea, de la client la server. • Serverul analizează cererea şi execută activităţile corespunzătoare. • Protocolul HTTP (Hyper Text Transfer Protocol) este un protocol

simplu, la nivel aplicaţie, în modelul TCP/IP, ce descrie cererile de la clienţi şi răspunsurile de la servere.

• Protocolul HTTP foloseşte portul TCP 80.

Introducere in Criptografie 10

Page 11: Cursuri Criptografie

Securitatea Web • O modalitate de a furniza securitatea Web este utilizarea securităţii

la nivel IP (IPSec). • Avantajul utilizării IPSec este acela că este transparent pentru

utilizatorii finali şi pentru aplicaţii. • Mai mult, securitatea la nivel IP include posibilităţi de filtrare aşa

încât numai mesajele selectate circulă în reţea (Figura 1).

HTTP FTP SMTPTCP

IP/IPSec

Figura 1. Securitatea la nivel IP

Introducere in Criptografie 11

Page 12: Cursuri Criptografie

Securitatea Web

• O altă soluţie de a furniza securitatea Web este aceea de a implementa o securitate deasupra protocolului TCP (Figura 2).

• Cel mai cunoscut exemplu este folosirea protocolului Secure Sockets Layer (SSL) şi a urmaşului lui SSL, numit Transport Layer Security (TLS).

• Browserele Netscape şi Microsoft Explorer au încorporate protocolul SSL şi cele mai multe servere Web au implementat acest protocol.

HTTP FTP SMTPSSL sau TLS

TCP IP

Figura 2. Securitatea la nivel SSL Introducere in Criptografie 12

Page 13: Cursuri Criptografie

Securitatea Web

• A treia soluţie pentru securitatea Web este folosirea unor aplicaţii cum ar fi (figura 3):

o Kerberos o S/MIME o PGP o SET (Secure Electronic Transaction).

S/MIME PGP SET KERBEROS SMTP HTTPUDP TCP

IP Figura 3. Securitatea la nivel aplicaţie

Introducere in Criptografie 13

Page 14: Cursuri Criptografie

Ameninţări Web

Ameninţări Urmări Contramăsuri Integritate • Modificare date

utilizator • Modificarea

memoriei • Modificarea

traficului de mesaje în tranzit

• Pierderea informaţiilor

• Compromiterea calculatorului

• Vulnerabilitate la alte ameninţări

Sume de verificare criptografică

Confidenţialitate • Ascultarea traficului în reţea

• Furtul de informaţii din server

• Furtul de informaţii de la client

• Informaţii despre configurarea reţelei

• Pierderea informaţiilor

• Pierderea datelor secrete

Criptare Folosirea proxi-urilor Web

Introducere in Criptografie 14

Page 15: Cursuri Criptografie

Ameninţări Web Ameninţări Urmări Contramăsuri Refuzul de servicii (denial of service)

• Umplerea discului sau a memoriei

• Umplerea calculatorului cu cereri false

• Izolarea calculatorului de atacurile DNS

• Imposibilitatea de a lucra la calculatorul respectiv

Greu de prevenit

Autenticitate • Date false • Utilizatori care

pretind că sunt legitimi

Se crede că informaţia falsă e validă

Tehnici criptografice

Introducere in Criptografie 15

Page 16: Cursuri Criptografie

Protocolul Secure Electronic Transaction (SET)

• Protocolul SET este o specificaţie deschisă de criptare şi de securitate proiectată să protejeze tranzacţiile cu cărţi de credit în Internet.

• Versiunea curentă, SET v1, a fost proiectată din necesitatea celor două companii Master Card şi Visa de a realiza un standard de securitate, în anul 1996.

• Un număr însemnat de companii au fost implicate în dezvoltarea SET: IBM, Microsoft, Netscape, RSA, Terisa şi Verisign.

• SET nu este un sistem de plată. • SET este un set de protocoale de securitate ce permite utilizatorilor

să folosească infrastructura de plăţi cu cărţi de credit într-o reţea deschisă, cum este Internet, într-un mod sigur.

Introducere in Criptografie 16

Page 17: Cursuri Criptografie

Protocolul SET În esenţă, protocolul SET furnizează trei servicii:

• Un canal sigur de comunicare între toate părţile implicate într-o tranzacţie.

• Furnizează încredere în utilizarea certificatelor digitale X.509v3.

• Asigură secretizarea informaţiilor, astfel încât acestea să fie disponibile doar părţilor implicate în tranzacţie.

Introducere in Criptografie 17

Page 18: Cursuri Criptografie

Cerinţe ale protocolului SET

• Să furnizeze confidenţialitatea plăţilor. SET utilizează criptarea pentru a realiza confidenţialitatea.

• Să asigure integritatea tuturor datelor transmise. Semnăturile digitale sunt utilizate pentru a realiza integritatea.

• Să furnizeze autenticitatea astfel încât un deţinător de carte de credit este utilizatorul legitim al contului cărţii de credit respective. Acest mecanism reduce frauda. Semnăturile digitale şi certificatele sunt utilizate pentru a verifica dacă un deţinător de carte de credit este utilizatorul legitim al contului cărţii de credit respective.

• Să furnizeze autenticitatea astfel încât un comerciant să poată să accepte tranzacţiile cu cărţi de credit cu instituţia financiară (banca). Pentru aceasta se folosesc semnăturile digitale şi certificatele.

Introducere in Criptografie 18

Page 19: Cursuri Criptografie

Cerinţe ale protocolului SET • Să asigure utilizarea celor mai buni algoritmi criptografici şi tehnici

de proiectare a sistemelor pentru a proteja toate părţile legitime în tranzacţiile comerţului electronic.

• Să creeze un protocol care să nu depindă de alte mecanisme de securitate a transportului şi să nu împiedice utilizarea lor:

o SET poate opera sigur deasupra protocolului TCP/IP o SET nu interferează cu protocoale ca IPSec sau SSL/TLS.

• Să faciliteze şi să încurajeze interoperabilitatea între furnizorii de software şi de reţele:

o Protocolul SET este independent de platforma hardware o Este idependent de sist. de operare sau de software-ul Web.

Introducere in Criptografie 19