Estratto del documento

Introduzione agli standard di sicurezza

Martedì 4 giugno 2019 10:05

Standard di sicurezza

Gli standard di sicurezza includono IETF, ITU, ISO, NIST, e RSA. ITU - X.800 è un modo sistematico per definire requisiti di sicurezza e per caratterizzare gli approcci che soddisfano i requisiti. Si focalizza su tre aspetti principali: attacchi alla sicurezza, servizi di sicurezza e meccanismi di sicurezza.

Attacchi alla sicurezza

  • Azione che compromette la sicurezza delle informazioni in possesso.
  • Prevenire gli attacchi e scoprirli nel minor tempo possibile.
  • Due tipi di attacchi:
    • Attacchi passivi (accedere ai dati senza modificarli, monitorarli)
    • Attacchi attivi (accedere e modificare dati)

Servizi di sicurezza

  • Migliorano la sicurezza delle informazioni.
  • Contrastare attacchi di sicurezza.
  • X.800 include:
    • Autenticità: assicurare comunicazione con due autenticati.
    • Confidenzialità: protezione dati da letture non autorizzate.
    • Segretezza dei dati: protezione dati durante trasmissione.
    • Integrità dei dati: assicura la protezione dei dati da modifiche non autorizzate.
    • Non ripudiabilità: protegge che uno neghi di aver inviato o ricevuto messaggi.
    • Disponibilità: assicura che agli autorizzati non sia negato accesso.

Meccanismi di sicurezza

  • Ogni meccanismo per prevenire, scoprire o ripristinare il sistema da attacco.
  • Adottati uno o più servizi.
  • I servizi citati prima sono garantiti da:
    • Confidenzialità: controllo dell'accesso.
    • Segretezza: tecniche di cifratura.
    • Integrità: controllo accesso, vincoli d'integrità, tecniche di cifratura.
    • Disponibilità: tecniche di recovery.
    • Autenticità: firma digitale, protocolli di autenticazione.
    • Non ripudiabilità: firma digitale, protocolli di autenticazione.

Fondamenti di sicurezza: cifratura

Martedì 4 giugno 2019 10:55

Concetti base

  • Plaintext (testo in chiaro)
  • Ciphertext (testo cifrato)
  • Cipher (algoritmo di cifratura)
  • Chiave
  • Algoritmo di decifratura

Sistemi crittografici

Caratterizzati da:

  • Numero di chiavi utilizzate:
    • Unica chiave (simmetrica): ogni utente genera una coppia di chiavi, una pubblica (distribuita) e una privata (tenuta segreta). Il messaggio cifrato con una chiave pubblica può essere decifrato solo con la chiave privata corrispondente.
    • Due chiavi (asimmetrica)
  • Operazioni usate per la cifratura:
    • Sostituzione
    • Trasposizione
    • Funzioni matematiche
  • Metodo con cui viene elaborato il testo in chiaro:
    • A blocchi: plaintext suddiviso in blocchi e criptato in blocchi. Utilizzata da DES, AES, e RSA.
    • A flussi: elabora il messaggio bit a bit.

Sicurezza dei sistemi crittografici

  • Incondizionatamente sicuro: il testo cifrato non contiene informazioni sufficienti sul testo in chiaro.
  • Computazionalmente sicuro: non si può risalire alla chiave in un tempo utile per attacco.

Tipi di attacchi

Scopo: ricostruire la chiave utilizzata.

Crittoanalisi

  • Sfrutta le caratteristiche dell'algoritmo e conoscenza di testi in chiaro e cifrati per cercare di capire la chiave.
    • Chipertext only (si conosce solo algoritmo e testo cifrato)
    • Known plaintext (si conoscono coppie di testo in chiaro e cifrato)
    • Chosen plaintext (si conoscono coppie di testo in chiaro/cifrato, quello in chiaro è scelto dall'attaccante)

Brute force

  • Si tenta ogni possibile chiave su un frammento di testo cifrato fino alla traduzione corretta.
    • Sempre possibile
    • Tempo proporzionale alla dimensione della chiave

Cifratura simmetrica

Mittente e destinatario condividono la stessa chiave. Requisiti:

  • Algoritmo di cifratura:
    • Deve essere pubblico
    • Deve essere forte
  • Chiave segreta conosciuta solo dal mittente e dal ricevente
    • Necessità di un canale sicuro per distribuire la chiave

Algoritmi si basano su due operazioni: sostituzioni e trasposizioni.

Sostituzioni

  • Ogni simbolo sostituito con un altro
  • Cifratura di Cesare:
    • Ogni lettera sostituita con quella a 3 posizioni di distanza
    • Assegnato ad ogni lettera un valore numerico
    • C = E(p,k) = (p+k) mod (26)
    • p = D(C,k) = (p-k) mod (26)
  • Cifratura monoalfabetica:
    • Unico alfabeto per le sostituzioni
    • Non è sicuro:
      • Perché è possibile effettuare degli attacchi che sfruttano le regolarità presenti nel linguaggio
      • Perché è possibile analizzare il testo e capire in base alle lettere più utilizzate nel linguaggio (e/t in inglese)
    • Alternativa: sostituire la stessa lettera con più sostituti
      • Attacchi sempre possibili analizzando frequenze

Trasposizioni

  • Cifratura basata su una permutazione delle lettere del testo in chiaro
  • Non cambia la frequenza delle lettere da testo in chiaro a testo cifrato
  • Rail Fence:
    • Testo in chiaro viene scritto come una sequenza di diagonali e poi letto come una sequenza di righe
  • Le trasposizioni aiutano a togliere le strutture all'interno del testo in chiaro, gli schemi possono essere più sicuri eseguendo la trasposizione in più fasi

Cifratura classica II

Martedì 4 giugno 2019 11:22

Riprendiamo dagli appunti di prima.

Associare più omofoni

Playfair (crittografare più lettere insieme) (Poligrammi)

  • Plaintext cifrato due lettere alla volta
  • Ogni lettera ha più sostituzioni scelti in base al diagramma di appartenenza
  • Utilizza una matrice 5x5 di lettere:
    • Si scrive la parola da sinistra a destra, riempiendo la matrice con le lettere dell'alfabeto
    • Come cifrare:
      • Se entrambe le lettere cadono nella stessa riga si sostituiscono con quelle che seguono a destra
      • Se entrambe le lettere cadono nella stessa colonna si sostituiscono con quelle sottostanti
      • Ogni lettera ha più sostituti, scelti in base al diagramma
    • Sicurezza migliorata

Vigenere (utilizzare più alfabeti) (Poliafabetica)

  • Diverse sostituzioni monoalfabetiche, ogni lettera cifrata con un monoalfabetico diverso
  • Due componenti:
    • Insieme di sostituzioni monoalfabetiche
    • Utilizzo chiave per determinare quale sostituzione applicare
  • Vigenere Chiper:
    • Si considerano 26 cifrari di Cesare
    • N-esima lettera della chiave indica quale alfabeto bisogna usare
    • Chiave lunga quanto il plaintext (ripetendola fino alla lunghezza desiderata)
    • Problema:
      • Se scopro lunghezza della chiave
      • Ripetizione della stessa sostituzione

OTP - One Time Pad

  • Lettere combinate in XOR con corrispondenti lettere della chiave
  • Lavora sui bit
  • Unico cifrario che ha la sicurezza incondizionata
  • Casualità della chiave garantisce che il chipertext non mantenga informazioni sulle correlazioni interne
  • Inviolabile anche da attacchi a forza bruta

Cifratura simmetrica Feistel

Martedì 4 giugno 2019 15:42

Rete di Feistel

Cifratura basata sulla rete S-P (Sostituzioni-Permutazioni) proponendo la struttura di Feistel. Cifrario del prodotto: cifratura eseguita in più fasi, dove si eseguono stesse operazioni con chiavi diverse. Cifratura e decifratura molto simile. Molti algoritmi ad oggi si basano su Feistel (DES).

Rete di Feistel

  • Input è un blocco di dati ed una chiave
  • Blocco in input viene diviso in due:
    • Fasi di elaborazione e poi si ricombinano
    • Ogni fase ha un input il blocco generato e una sottochiave
    • Ogni fase ha la stessa struttura
    • Ogni sottochiave è diversa
    • L'output di ogni fase è:
      • Li = Ri-1
      • Ri = Li-1 XOR F(Ri-1,Ki)

Algoritmo di decifratura in Feistel è uguale a quello di cifratura solamente che le sottochiavi si utilizzano in ordine inverso.

DES (Data Encryption Standard)

Schema di cifratura a blocchi più utilizzato, adottato nel 1977 dal NBS. Usa blocchi di 64 bit con chiave di 56 bit.

Permutazione iniziale (IP)

  • Primo passo della cifratura DES
  • Dopo le 16 iterazioni dell'algoritmo, il blocco viene diviso in due metà che vengono scambiate (blocco pre-output)
  • Al blocco pre-output viene applicata una permutazione inversa a quella iniziale

Funzione F

  • L'input Ri-1 viene espanso da 32 bit a 48 bit utilizzando una tabella che definisce una permutazione più un'espansione
  • Il risultato viene combinato in XOR con Ki
  • Il risultato viene passato in input a una funzione di sostituzione (S-Box) per ottenere 32 bit
  • I 32 bit vengono permutati prima di essere composti in XOR con Li-1
  • S-Box: tabella 4x16 elementi dove ogni riga contiene valori da 0 a 15, dove vengono scambiati i valori con il valore corrispondente alla coppia di righe e colonna scelte

Permutazione finale

  • Per garantire che alla fase successiva la S-Box coinvolga quanti più valori possibili

AES (Cifratura Simmetrica)

Martedì 4 giugno 2019 12:05

Non è basato sul cifrario di Feistel, ma prevede un numero variabile di fasi:

  • Ogni fase usa uno sottochiave
  • Ogni fase elabora l'intero blocco
  • L'elaborazione prevede 3 sostituzioni e 1 permutazione

Differenze con Rijndael

  • Rijndael AES
  • Plaintext è un blocco di n bits
  • Plaintext è un blocco di solo 128 bit
  • Rappresentato come matrice di byte
  • Stato riempito per colonna

Rijndael - Schema algoritmo

  1. AddRoundKey (XOR dello stato con sottochiave)
  2. 9/11/13 Fasi uguali:
    • Ogni fase prevede 3 sostituzioni e 1 permutazione:
      • SubstituteByte - sostituzione sui byte
      • ShiftRow - scorrimento delle righe dello stato
      • MixColumn - trasformazione sulle colonne
      • AddRoundKey - XOR con sottochiave
  3. 10/12/14 Fase finale
    • Uguale a fasi precedenti senza MixColumn

SubstituteByte

  • Utilizza una tabella (S-box) di 16x16 bytes contenente una permutazione di tutti i byte possibili.
Anteprima
Vedrai una selezione di 6 pagine su 21
Fondamenti di Sicurezza Pag. 1 Fondamenti di Sicurezza Pag. 2
Anteprima di 6 pagg. su 21.
Scarica il documento per vederlo tutto.
Fondamenti di Sicurezza Pag. 6
Anteprima di 6 pagg. su 21.
Scarica il documento per vederlo tutto.
Fondamenti di Sicurezza Pag. 11
Anteprima di 6 pagg. su 21.
Scarica il documento per vederlo tutto.
Fondamenti di Sicurezza Pag. 16
Anteprima di 6 pagg. su 21.
Scarica il documento per vederlo tutto.
Fondamenti di Sicurezza Pag. 21
1 su 21
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher biuzzo di informazioni apprese con la frequenza delle lezioni di Fondamenti di sicurezza e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi dell' Insubria o del prof Carminati Barbara.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community