Date post: | 01-May-2015 |
Category: |
Documents |
Upload: | eloisa-salerno |
View: | 218 times |
Download: | 0 times |
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.
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.
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.
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;
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;
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.
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;
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;
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;
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>;
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>;
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.
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 .
15
OCSP Request
Una richiesta OCSP deve contenere :
protocol version service request target certificate identifier
16
OCSP ResponseUna risposta OCSP deve contenere :
nome del responder. le risposte per ogni certificato
presente. nella richiesta. estensioni opzionali.
17
OCSP Response (2)
Lo stato di un certificato può essere :
good revoked unknown
18
Security Considerations
I problemi che introduce un estensione wireless sono legati a :
Truncated MAC. CA root Key.
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.
20
IC Esempio
SmartCard di Steve
21
IC
Impersonation risolve i seguenti problemi :
Single sign-on
Delegation
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.
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.
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.
25
Security Consideration
PRO L’utilizzo degli ICs aumenta la sicurezza dell’
EEC. CONTRO
Un IC è generalmente meno sicuro di un EEC.