Come posso dimostrare SSL / TLS a 10 anni?

14

Sono un ingegnere del software con una particolare inclinazione alla sicurezza delle informazioni e al DRM; Ho una buona conoscenza dell'implementazione (e alcuni dei calcoli matematici).

La scuola di mio figlio sta facendo attenzione alla sicurezza delle informazioni e al momento sono al sicuro online. Uno degli argomenti trattati sarà http vs. https e il suo insegnante ha chiesto se posso entrare e aiutare a facilitare. Mi piacerebbe trovare un modo molto semplice di dimostrare la crittografia delle coppie di chiavi usando qualcosa come un barattolo di latta per dimostrare quanto sia facile per Eve ascoltare Bob e Alice semplicemente attaccando un terzo barattolo di latta alla stringa, seguito con una (molto rudimentale) stretta di mano di tls su un telefono di stagno per poi inviare un messaggio crittografato . Idealmente avrebbero crittografato il messaggio in un modo appropriato (penna e carta, calcolatrice).

Come potrei farcela?

    
posta BenLanc 16.11.2017 - 01:17
fonte

6 risposte

4

Questo non ha un analogo in Information Security per quanto ne so, tuttavia ho sempre pensato che fosse un modo interessante per mostrare come qualcosa poteva essere consegnato a Bob da Alice su un canale non protetto.

Alice mette il suo messaggio in una scatola, blocca la scatola e la invia a Bob su un sistema postale insicuro. (Il sistema di spedizione non può visualizzare il contenuto della scatola da quando Alice lo ha bloccato.) Bob riceve la scatola ma non riesce a sbloccarla. Bob aggiunge quindi il proprio lucchetto alla scatola e lo rimanda ad Alice. Alice quindi rimuove il suo lucchetto e lo rimanda a Bob. Ora bob può sbloccare la scatola senza che nessun MIT sia in grado di visualizzare il contenuto.

    
risposta data 20.11.2017 - 14:41
fonte
8

Una lezione o un'attività sull'argomento "HTTP vs HTTPS" per 10 anni non è una lezione sulla crittografia. Riguarda la privacy e rimanere "sicuri" sul Web.

Il FEP ha un buon materiale educativo su HTTPS e Tor che puoi usare come ispirazione (Tor è fuori ambito, ma la parte relativa a HTTPS è pertinente). Il punto è spiegare le minacce e il modo in cui l'utilizzo di HTTPS le attenua.

Come demo, puoi configurare una rete wifi e un laptop con Firesheep o un altro strumento che visualizza visivamente HTTP intercettazioni: Puoi chiedere ai bambini di utilizzare i loro smartphone per esplorare i siti web in HTTP e confrontarli con i siti web in HTTPS.

Se vuoi entrare nei dettagli, puoi dire che TLS garantisce riservatezza, autenticità e integrità dei dati provenienti da e verso i siti web. Spiega quelle 3 parole.

Se inizi a parlare di chiavi di crittografia o matematica, stai andando lontano. Ma potresti provare a convincere gli insegnanti a fare un secondo discorso sulla storia della crittografia e della crittanalisi (di solito è un buon modo per introdurre l'argomento).

    
risposta data 16.11.2017 - 15:58
fonte
3

Per l'autenticazione sarebbe facile mostrare -

  • Il client invia un messaggio al server chiedendo di connettersi
  • Server che restituisce un pezzo di carta con la sua firma firmata anche da terzi di fiducia (l'insegnante?)
  • Client controlla la firma degli insegnanti contro la propria copia. Ora si fida del server.

Potresti quindi spiegare un uomo nel mezzo. Cioè il server può ora firmare tutti i suoi messaggi per dimostrare che li ha inviati. Ma il cliente non ha modo di provare i propri messaggi al server - così [l'altra persona] può cambiare il messaggio dei clienti in passaggio. Possono anche leggere i messaggi dal server.

Il modo migliore che ho trovato per descrivere la crittografia a chiave pubblica / privata per persone con meno competenze tecniche è dividerlo in due processi.

  • L'invio di un messaggio a qualcuno crittografato con la sua chiave pubblica è come pubblicare una lettera attraverso una buca delle lettere bloccata. Chiunque può pubblicare la lettera ma solo il proprietario ha le chiavi per aprirlo e leggere il messaggio.

  • Firmare un messaggio con una chiave privata è come avere una vetrina chiusa. Di nuovo solo il proprietario ha la chiave. Quindi sai che c'è qualcosa che li ha messi lì.

Con un po 'di legno e un paio di fogli di perspex dovrebbe essere abbastanza facile da riunire quanto sopra.

Diffie-Hellman è un po 'più difficile. A meno che tuo figlio non sia un adolescente di mezza età immagino che potresti non voler entrare nei dettagli qui.

Come lasciare che provino la propria crittografia, un metodo semplice sarebbe un codice sostitutivo. Stampa in anticipo le mappe dei personaggi. Se volessi dimostrare perché non sono più sicuri, potresti usare l'analisi della frequenza per rompere un messaggio lungo di fronte a loro (a mano o con software).

    
risposta data 16.11.2017 - 09:59
fonte
1

Potresti voler coprire qualcosa che i bambini possono fare direttamente e poi seguire i tipi di crittografia SSL / TLS. Ad esempio, forse mostragli la Cearea cistiana, poi Vigenere, ecc. E lasciali fare a mano. Poi spiega come un cifrario più complesso usa una chiave più lunga, e così via, per proteggere le loro informazioni da chiunque essendo molto difficile da indovinare.

    
risposta data 16.11.2017 - 14:57
fonte
1

L'analogia della casella di blocco

Uno dei modi più potenti per lasciare un'impressione sui bambini è di mostrare loro, attraverso la dimostrazione, che un'idea che probabilmente hanno un evidente buon senso è completamente falsa. In questo caso, l'idea che tutte le scommesse siano disattivate se passi un messaggio segreto a qualcuno tramite un messaggero curioso o malevolo.

Trovo che molti bambini e persone in genere non esperti di sicurezza tendano ad avere il problema più difficile nella comprensione della crittografia asimmetrica. È abbastanza facile credere che una password possa essere usata per creare dati, ma pensare che due persone possano scambiare un segreto condiviso in un mezzo di comunicazione ostile non è affatto intuitivo. Un'analogia che ho usato con successo sfrutta il comportamento unidirezionale dei blocchi comuni (ad esempio chiunque può bloccarlo, ma solo quelli con la chiave corrispondente possono sbloccarlo).

Una dimostrazione pratica

È utile qui descrivere come un segreto condiviso può essere comunicato, usando un approccio pratico. Non lo renderei particolare per TLS (poiché la stretta di mano implica molto di più), ma piuttosto generale tra tutti i cifrari asimmetrici. Suoni Alice, un bambino suona Bob e l'altro suona Eva. Dì al bambino che interpreta Bob che il suo obiettivo è quello di comunicare con te in segreto senza far sapere a Eve cosa stai dicendo, nonostante sia Eva a passare il messaggio. La dimostrazione è semplice:

  • Fornisci una serratura a chiave sbloccata (ma non la chiave!) a Eve e digli di passarla a Bob.

  • Fai scrivere a Bob una nota segreta, mettila nella serratura e chiudi il lucchetto.

  • Chiedi a Bob di restituire la cassetta di sicurezza a Eve e chiedigli di restituirla a te (Alice).

  • Utilizza la chiave per sbloccare la cassetta di sicurezza e osserva la nota.

  • Cripta un messaggio con un semplice codice di sostituzione, usando la nota come chiave.

  • Invia il messaggio crittografato a Eve e chiedigli di passarlo a Bob.

  • Lascia che Bob decrittografi il messaggio. Parla avanti e indietro alcune volte usando il segreto condiviso.

Puoi ignorare la parte di cifratura di sostituzione se sei a corto di tempo, e concentrati invece sul fatto che sei riuscito a condividere un segreto senza che Eve sia in grado di capire di cosa si tratta, ma potrebbe spiegare le basi della crittografia simmetrica aiuta ancora i bambini a capire meglio la teoria alla base, piuttosto che dire loro di confidare che un breve valore segreto può essere usato per scindere in modo reversibile un messaggio più grande.

Attacchi man-in-the-middle

Se sei fortunato, un bambino intelligente potrebbe chiedere perché Eva non può semplicemente scambiare la scatola sbloccata con una che possiede, nel qual caso si ottiene un'utile opportunità per spiegare gli attacchi MITM e le firme digitali. La soluzione diventa più facile da capire quando hanno un'analogia nella vita reale di una funzione di botola: qualcosa che è facile da verificare, ma difficile da falsificare. Una firma scritta si adatta perfettamente a questo. Non penso che sia necessario spiegare i certificati o le CA. Basta renderlo generale a tutte le firme digitali, quindi la loro comprensione si applicherà ugualmente a TLS, eseguibili firmati o GnuPG.

Forse menzioni anche che i browser ti daranno un'indicazione quando questo processo fallisce, dal momento che un malinteso è comunemente sfruttato nei tentativi di phishing.

Ciò che Eva rappresenta

Potrebbe essere necessario spiegare che la connessione a un sito Web richiede server in mezzo per passare i dati avanti e indietro. Anche se può essere ovvio per noi, un bambino di 10 anni potrebbe pensare che il tuo computer che comunica con qualsiasi sito Web implichi naturalmente una connessione diretta, senza alcuna entità intermedia. Spiegando che ci sono dei computer di cui non ti fidi, tra te e la destinazione potrai capire meglio cosa rappresenta Eve.

Puoi espandere un po 'dicendo che quello che passa i messaggi avanti e indietro non è necessariamente dannoso. Eve può benissimo essere qualcuno che ficca il messenger (annusando il Wi-Fi o usando il router di un'altra persona, per esempio).

Crittografia più strong

Anche se può essere fuori dal campo di applicazione, puoi mostrare come questi semplici cifrari di sostituzione possono essere interrotti, e poi dare loro qualcosa come mandarti un messaggio di solitario crittografato come compiti a casa (o suggerirli all'insegnante, se non lo fai avere l'autorità di distribuire i compiti), in modo che possano vedere che cosa è un cifrario crittograficamente strong, anche se giocattolo. Può lasciare una strong impressione su un bambino sapere che nessuno sa come rompere un messaggio che ha crittografato con le proprie mani! Un senso di potere durante l'apprendimento è molto attraente per i bambini.

Punti bonus per l'utilizzo dei nomi Alice, Bob ed Eve nelle discussioni. ;)

    
risposta data 18.11.2017 - 06:42
fonte
1

Ecco qualcosa da considerare:

  • Fornisci loro computer e istruiscili a navigare in un sito senza SSL / TLS dove devono digitare del testo in una casella di testo e inviare i dati.

  • Mostra loro come sei stato in grado di intercettare tutti i dati che hanno inviato e spiega quanto potrebbe essere pericoloso se inserissero una password.

  • Ora ripeti di nuovo ma con un sito SSL / TLS. Mostra come nessuno è in grado di visualizzare quali dati hanno inviato - nemmeno le persone che gestiscono il sito web.

Capiranno ora che quando si gestiscono informazioni sensibili online, devono sempre assicurarsi che il sito web stia utilizzando HTTPS.

    
risposta data 17.11.2017 - 17:17
fonte

Leggi altre domande sui tag