1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

25
1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

Transcript of 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

Page 1: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

1

Novità sul protocollo TLS.

Seminario di :Calabrese Luca

- estensione per il Wireless. - IC.

Page 2: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

2

Il Wireless

L’ambiente wireless spesso ha dei vincoli in più rispetto agli ambienti cablati.

I principali problemi, che si hanno in ambiente wireless sono :

• Limitazione di banda.

• Limitazione di potenza computazionale.

• Limitazione di memoria.

• Limitazione di vita delle batterie.

Page 3: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

3

Estensione del TLS

L’estensione del TLS deve permettere : Ai clients e ai servers di negoziare una

dimensione massima dei records che vogliono spedire tra loro.

Ai clients ed ai servers di negoziare l’uso di client certificate URLs.

Ai clients di indicare ai servers quali CA root keys essi posseggono.

Page 4: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

4

Estensione del TLS (2)Inoltre l’estensione del TLS deve : dare la possibilità ai servers di utilizzare

piccoli identificatori di sessione. permettere ai clients e ai servers di

negoziare l’uso di MACs troncati. permettere ai clients e ai servers di

negoziare il fatto che i servers mandino ai clients un OCSP response durante il TLS handshake.

Page 5: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

5

Client Hello esteso Il formato del msg :

struct {

ProtocolVersion client_version;

Random random;

SessionId session_id;

CipherSuite cipher_suites<2..216-1>;

CompressionMethod compression_methods <1..28-1>;

Extension client_hello_extension_list <0..216-1>;

} ClientHello;

Page 6: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

6

Server Hello esteso

Il formato del msg :

struct {

ProtocolVersion server_version;

Random random;

SessionId session_id;

CipherSuite cipher_suites;

CompressionMethod compression_methods;

Extension server_hello_extension_list <0..216-1>;

} ServerHello;

Page 7: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

7

Hello Extensionsstruct {

ExtensionType extensionType;

opaque unknow_extension<0..216-1>;

} Extension;

Dove : extensionType identifica il particolare

tipo di estensione. unknow_extension contiene informazioni

specifiche per quella particolare estensione.

Page 8: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

8

Extension Type

Le extension type definite in questo documento sono :

enum {

reserved(0), max_record_size(1), client_certificate_url(2), trusted_key_ids(3), truncated_MAC(4), status_request(5)

} ExtensionType;

Page 9: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

9

Wireless Extensions

Maximum Record Size NegotiationPer default la dimensione del record è 214

bytes.

extensionType = “max_record_size”unknown_extension = può contenereenum {

28(1), 29(2), 210(3), 211(4), 212(5)

} Negotiated_max_record_size;

Page 10: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

10

Client Certificate URLsLa struttura del msg è :struct { Certificate_or_URL certificate_trasport_type; select(Certificate_or_URL) { case certificate : ASN.1Cert certificate_list<0..224-1>; case url : opaque url<0..28-1>; } certificate_trasport_body;}CertificateorURL;Dove :enum{certificate(1), url(2)} Certificate_or_URL;

Page 11: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

11

Trusted CA IndicationI client in ambiente wireless, per ragioni di memoria, posseggono un limitato numero di CA root keys.Si utilizza una particolare estensione per comunicare al server il set di chiavi che il client conosce.

extensionType = “trusted_key_ids”unknown_extension = TrustedAuthorities

Dove :ThustedAuthority TrustedAuthorities<0..216-1>;

Page 12: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

12

Small Session Identifiers

Il TLS per default la dimensione dei session identifiers è >= 32 bytes.

Per ragioni di spazio si può decidere di utilizzare meno bytes.

Opaque SessionID<0..32>;

Page 13: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

13

Truncated MACs

Per ridurre lo spazio di banda necessaria per comunicare il client può negoziare con il server di utilizzare un meccanismo di autenticazione basato sull’andare a troncare il MAC ad una dimensione fissa.

Page 14: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

14

OCSP

L’OCSP ( Online Certificate Status Protocol ) fornisce ai client un modo per verificare la validità del certificato fornito dal server.Utilizzando questa tecnica è possibile eliminare le CLRs .

Page 15: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

15

OCSP Request

Una richiesta OCSP deve contenere :

protocol version service request target certificate identifier

Page 16: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

16

OCSP ResponseUna risposta OCSP deve contenere :

nome del responder. le risposte per ogni certificato

presente. nella richiesta. estensioni opzionali.

Page 17: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

17

OCSP Response (2)

Lo stato di un certificato può essere :

good revoked unknown

Page 18: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

18

Security Considerations

I problemi che introduce un estensione wireless sono legati a :

Truncated MAC. CA root Key.

Page 19: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

19

IC (Impersonation Certificate)

Impersonation è una comune tecnica usata nei sistemi di sicurezza per permettere ad una entità A di concedere ad un’altra entità B la possibilità di autenticare altre entità come se fosse fatto da A.

Page 20: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

20

IC Esempio

SmartCard di Steve

Page 21: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

21

IC

Impersonation risolve i seguenti problemi :

Single sign-on

Delegation

Page 22: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

22

IC Descrizione dell’approccioUn IC è un certificato X.509 a chiave

pubblica che ha le seguenti proprietà: viene firmato da un EEC oppure da un

altro IC. Può solamente firmare un altro IC. Ha una coppia di chiavi (privata e

pubblica) distinte da tutti gli altri EEC e IC. Non ha nome proprio ma lo eredita dal

EEC.

Page 23: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

23

Procedimento per creare un IC Creare una coppia di chiavi ( privata e

pubblica). Viene inoltrata una IC request. La IC request viene firmata o da un EEC

oppure da IC. Vengono effettuati dei controlli per verificare la validità della richiesta.

Page 24: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

24

Ritorniamo all’esempio Steve con la sua smartcart effettua

l’autenticazione sul suo computer. Il programma starter può “delegare

l’identità di Steve” ( viene creato un IC ) all’agente che coordina la simulazione.

L’agente può autenticarsi come Steve verso gli altri computer della rete.

Page 25: 1 Novità sul protocollo TLS. Seminario di : Calabrese Luca - estensione per il Wireless. - IC.

25

Security Consideration

PRO L’utilizzo degli ICs aumenta la sicurezza dell’

EEC. CONTRO

Un IC è generalmente meno sicuro di un EEC.