Crittografia con Python
|
|
|
- Antonietta Manzoni
- 9 anni fa
- Просмотров:
Транскрипт
1 Crittografia con Python Corso introduttivo Marzo 2015 Con materiale adattato dal libro Hacking Secret Cypher With Python di Al Sweigart (
2 Ci eravamo lasciati così... Due volontari: Prendete i numeri 753 e 413 Scegliete un numero a caso x (e ricordatevelo) minore di 413 Elevate 753 alla x e fate modulo 413 Dite a voce alta il numero ottenuto, chiamiamolo y Prendete y e elevato a x modulo 413
3 Scambio di chiavi di Diffie-Hellman Problema: come condividere la chiave (o le chiavi) senza incontrarsi personalmente? Soluzione: algoritmo di Diffie-Hellman Vengono scelti due numeri primi n e g molto grandi e resi pubblici Alice e Bob scelgono indipendentemente due numeri x e y Attraverso uno scambio di messaggi creano una chiave condivisa
4 Scambio di chiavi di Diffie-Hellman Alice sceglie x Alice 1 n, g, g x mod n 2 g y mod n Bob sceglie y Bob Alice calcola (g y mod n) x = g xy mod n Bob calcola (g x mod n) y = g xy mod n
5 Esempio n=47, g=3, x=8, y=10 Messaggio da Alice a Bob 3 8 mod 47=28 quindi (47,3,28) Messaggio da Bob ad Alice 3 10 mod 47=17 quindi (17) Chiave condivisa 17 8 mod 47= mod 47 = 4
6 Scambio di chiavi di Diffie-Hellman Problema: come essere sicuri dell identità di chi manda il primo messaggio? Alice sceglie x 1 n, g, g x mod n Trudy sceglie z Bob sceglie y Alice 3 Trudy 2 n, g, g z mod n Bob g z mod n 4 g y mod n Attacco Man in the middle
7 Algoritmi a chiave pubblica Problema degli algoritmi a chiave segreta: distribuzione e sicurezza delle chiavi Diffie e Hellman, dopo aver proposto l'algoritmo visto in precedenza, nel 1976 proposero un metodo di cifratura nuovo in cui chiave di codifica e di decodifica sono differenti Non possono essere derivate l una dall altra
8 Nel mondo reale Distribuisco un lucchetto uguale in ogni ufficio postale, di cui solo io ho la chiave Chi vuole spedirmi un messaggio segreto va con il suo scrigno in un ufficio e prende uno dei miei lucchetti e chiude lo scrigno Quando mi arriva lo scrigno prendo la mia chiave e lo apro Con i lucchetti non è realistico...
9 L algoritmo RSA Inventato nel 1978 da Rivest, Shamir, Adleman Utilizza l aritmetica modulare Si fonda sul fatto che sia estremamente difficile fattorizzare numeri molto grossi (l esperienza accumulata dai matematici ha dimostrato che è così) RSA (Rivest, Shamir, Adleman)
10 L algoritmo RSA Funzionamento Scegliere 2 grandi numeri primi p e q (> ) Calcolare n = p q e z = (p-1) (q-1) Scegliere un numero primo rispetto a z e chiamarlo d Trovare e tale che (e d) mod z = 1 (e,n) chiave pubblica e (d,n) chiave privata
11 L algoritmo RSA Il messaggio P viene scomposto in blocchi Pi tali che 0 P i n Per ogni blocco Ci = P i e (mod n) Per decodificare Pi = C i d (mod n) La difficoltà sta nell impossibilità di scomporre n nei numeri p e q di cui è il prodotto
12 L algoritmo RSA: esempio p=3, q=11 n=33 z=20 d=7 e=3 Plaintext (P) Ciphertext (C) After decryption Symbolic Numeric P 3 3 P (mod 33) C 7 7 C (mod 33) Symbolic S U Z A N N E S U Z A N N E Sender's computation Receiver's computation
13 L algoritmo RSA Con p e q dell ordine di è possibile avere blocchi di 664 bit, quindi 83 caratteri da 8 bit, contro gli 8 del DES Con 200 cifre di anni a forza bruta RSA è molto più lento di algoritmi a chiave privata come AES, quindi nella realtà vengono usati sistemi ibridi, nei quali RSA viene usato per scambiare la chiave di sessione e AES o analoghi per la cifratura successiva
14 Esempio di numero con 640 bit RSA-640 = RSA-640 =
15 RSA per la cifratura Bob crea una copia chiave privata chiave pubblica e distribuisce la sua chiave pubblica sulla rete Alice cifra il messaggio con la chiave pubblica di Bob Alice spedisce il messaggio cifrato a Bob, che è l'unico che lo può leggere perché solo lui ha la chiave privata che permette la decodifica
16 RSA per la firma Alice crea una copia chiave privata chiave pubblica e distribuisce la sua chiave pubblica sulla rete Alice firma il messaggio cifrandolo con la sua chiave privata (o allegandogli un digest codificato con la sua chiave privata) e lo spedisce a Bob Bob usa la chiave pubblica di Alice per decodificare il messaggio e verificare l'dentità di Alice, che è garantita poiché è l'unica a poter creare il messaggio
17 RSA per cifratura e firma Si combinano i due passaggi precedenti Alice firma il messaggio con la sua chiave privata, poi con la chiave pubblica di Bob e poi lo spedisce Bob prima decodifica il messaggio con la propria chiave privata e successivamente ne verifica il mittente usando la chiave pubblica di Alice
18 Come si trovano numeri primi grandi Magari non è evidente, ma trovare numeri primi grandi non è banale... È vero che sono infiniti, ma più diventano grandi più sono sparsi Inoltre bisognerebbe scegliere primi sempre diversi, quindi bisogna produrli ogni volta
19 Algoritmo di Miller-Rabin Come altri algoritmi di questo tipo non è deterministico Si basa sulla verifica di alcune proprietà che un primo deve soddisfare Purtroppo anche alcuni numeri, detti pseudoprimi, soddisfano queste proprietà.
20 Algoritmo di Miller-Rabin Se si vuole verificare se N è primo, si sceglie un numero a e si verificano alcune proprietà. Se queste proprietà risultano soddisfatte allora N è probabilmente primo, altrimenti è sicuramente composto La probabilità che un numero composto passi il test per a è ¼ (nel peggiore dei casi) Basta ripetere il procedimento per diversi valori di a per ottenere una probabilità grande a piacere di aver trovato un numero primo
Crittografia con Python
Crittografia con Python Corso introduttivo Marzo 2015 Con materiale adattato dal libro Hacking Secret Cypher With Python di Al Sweigart (http://inventwithpython.com/hacking/index.html) Cifrari a trasposizione
logaritmo discreto come funzione unidirezionale
logaritmo discreto come funzione unidirezionale in generale, lavoreremo con il gruppo U(Z p ) = Z p dati g generatore di Z p e x tale che 1 x p 1, calcolare y = g x è computazionalmente facile (y g x (mod
E necessaria la chiave segreta? RSA. Funzioni One-way con Trapdoor. Un secondo protocollo
E necessaria la chiave segreta? RSA Rivest, Shamir, Adelman A manda a B lo scrigno chiuso con il suo lucchetto. B chiude lo scrigno con un secondo lucchetto e lo rimanda ad A A toglie il suo lucchetto
Crittografia a chiave pubblica
Crittografia a chiave pubblica Barbara Masucci Dipartimento di Informatica Università di Salerno [email protected] http://www.di.unisa.it/professori/masucci Cifrari simmetrici canale insicuro Bob 1 Distribuzione
la crittografia tratta delle "scritture nascoste", dei metodi per rendere un messaggio "offuscato"
crittografia kryptós gráphein nascosto scrivere la crittografia tratta delle "scritture nascoste", dei metodi per rendere un messaggio "offuscato" 404 a. C Lisandro riceve un corriere a Sparta recante
Crittografia per la sicurezza dei dati
Crittografia per la sicurezza dei dati Esigenza di sicurezza in rete significa: -garanzia di riservatezza dei dati in rete (e-mail) -garanzia di transazioni sicure (e-commerce, home banking) La crittografia
Crittografia a chiave pubblica
Crittografia a chiave pubblica Barbara Masucci Dipartimento di Informatica Università di Salerno [email protected] http://www.di.unisa.it/professori/masucci Sicurezza CCA In un attacco CCA, è capace di
Crittografia con Python
Crittografia con Python Corso introduttivo Marzo 2015 Con materiale adattato dal libro Hacking Secret Cypher With Python di Al Sweigart (http://inventwithpython.com/hacking/index.html) Attacchi statistici
Aritmetica modulare, numeri primi e crittografia
Università di Pavia 14 Giugno 2016 Numeri primi Definizione Un intero n > 1 è un numero primo se non esistono due interi a, b > 1 tali che n = ab. Sono dunque numeri primi: 2, 3, 5, 7, 11, 13, 17, 19,
! La crittoanalisi è invece la scienza che cerca di aggirare o superare le protezioni crittografiche, accedendo alle informazioni protette
Crittografia Cenni Damiano Carra Università degli Studi di Verona Dipartimento di Informatica La crittografia! Scienza che si occupa di proteggere l informazione rendendola sicura, in modo che un utente
Crittografia a chiave pubblica
Crittografia a chiave pubblica Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno [email protected] http://www.dia.unisa.it/professori/masucci Cifrari simmetrici canale
Sicurezza nelle reti: protezione della comunicazione
Sicurezza nelle reti: protezione della comunicazione Gaia Maselli [email protected] Queste slide sono un adattamento delle slide fornite dal libro di testo e pertanto protette da copyright. All material
idea della crittografia a chiave pubblica
idea della crittografia a chiave pubblica sviluppare un crittosistema in cui data la funzione di cifratura e k sia computazionalmente difficile determinare d k Bob rende pubblica la sua funzione di cifratura
CRITTOGRAFIA 2014/15 Appello del 13 gennaio Nome: Cognome: Matricola:
CRITTOGRAFIA 2014/15 Appello del 13 gennaio 2015 Esercizio 1 Crittografia ellittica [9 punti] 1. Descrivere l algoritmo di Koblitz per trasformare un messaggio m, codificato come numero intero, in un punto
Elementi di Algebra e di Matematica Discreta Cenno di un applicazione alla crittografia
Elementi di Algebra e di Matematica Discreta Cenno di un applicazione alla crittografia Cristina Turrini UNIMI - 2015/2016 Cristina Turrini (UNIMI - 2015/2016) Elementi di Algebra e di Matematica Discreta
CODICI SEGRETI: UN VIAGGIO NELLA CRITTOGRAFIA
CODICI SEGRETI: UN VIAGGIO NELLA CRITTOGRAFIA Agostino Dovier Dip di Scienze Matematiche, Informatiche e Fisiche CLP Lab Univ. di Udine Aprile/Maggio 2017 AGOSTINO DOVIER (UNIV. DI UDINE) CODICI SEGRETI
Elementi di Crittografia
Elementi di Crittografia Algoritmi Messaggio in chiaro messaggio crittografato M X =C k (M C ) Messaggio crittografato messaggio in chiaro M C =D k (M X ) Per la codifica/decodifica è necessario un parametro
Scambio delle chiavi. mercoledì 7 dicembre 2011
Scambio delle chiavi 1 mercoledì 7 dicembre 2011 Distribuzione della chiave Dati due terminali A e B, si possono avere varie alternative per la distribuzione delle chiavi. 1. A sceglie una chiave e la
crittografia a chiave pubblica
crittografia a chiave pubblica Whitfield Diffie Martin Hellman New Directions in Cryptography We stand today on the brink of a revolution in cryptography. The development of cheap digital hardware... has
Fattorizzazione di interi e crittografia
Fattorizzazione di interi e crittografia Anna Barbieri Università degli Studi di Udine Corso di Laurea in Matematica (Fattorizzazione e crittografia) 14 Maggio 2012 1 / 46 Il teorema fondamentale dell
(G, ) un gruppo moltiplicativo di ordine n l ordine di un elemento g G, o(g), è il minimo intero positivo m tale che g m = 1
ordine di un gruppo G un gruppo finito: ordine di G = o(g) = numero di elementi di G l insieme degli invertibili di Z n è un gruppo rispetto al prodotto si denota con U(Z n ) e ha ordine φ(n) esempio:
La firma digitale, o firma elettronica qualificata, basata sulla tecnologia della crittografia a chiavi asimmetriche, è un sistema di autenticazione d
Definizione Sistemi per la creazione e la verifica di firme digitali Differenze tra firma digitale e firma convenzionale Valore giuridico della firma digitale in Italia Crittografia asimmetrica 11-01-2010
Introduzione alla crittografia. Diffie-Hellman e RSA
Introduzione alla crittografia. Diffie-Hellman e RSA Daniele Giovannini Torino 2011, Crittografia a chiave pubblica: oltre RSA Università degli Studi di Trento, Lab di Matematica Industriale e Crittografia
La crittografia. La crittografia è un'arte antica, risale almeno ai Greci (Tucidide, scitala lacedemonica).
Problema State viaggiando in autostrada, e decidete di fermarvi in un autogrill. Chiudete la macchina con il telecomando che aziona la chiusura centralizzata a distanza, andate al bar, tornate. Aprite
Aritmetica modulare: un applicazione alla crittografia
Aritmetica modulare: un applicazione alla crittografia a cura di Alessandro Musesti Università Cattolica del Sacro Cuore, Brescia 10 marzo 2016 Parte I I cifrari a sostituzione L inizio della storia: il
Crittografia da Whatsapp a Wikileakes, tra spie e segreti di stato
Crittografia da Whatsapp a Wikileakes, tra spie e segreti di stato Donatella Iacono Sabina Milella Bari 27.06.2015 Crittografia ne abbiamo piene le tasche Crittografia ne abbiamo piene le tasche Skype
Elementi di crittografia
Elementi di crittografia Francesca Merola a.a. 2010-11 informazioni orario: ma, (me), gio, 14-15.30, aula N1 ricevimento: su appuntamento ma, me, gio, 11.30-12.30 studio 300 dipartimento di matematica
Università del Piemonte Orientale
Compito di Algebra del 13 Gennaio 2009 1) Trovare l ordine di [11] 112 in Z 112. Si dica poi per quali valori di k si ha [11] k 112 [34] 112 = [31] 112. Soluzione. L ordine di [11] 112 è 12. k 12 8. 2)
CRITTOGRAFIA E NUMERI PRIMI TFA A059 ANNA NOBILI OTTAVIANO ROSI
CRITTOGRAFIA E NUMERI PRIMI TFA A059 ANNA NOBILI OTTAVIANO ROSI Cenni Storici Nasce dall esigenza di avere metodi efficienti per comunicare in modo segreto e sicuro. La crittografia non mira a nascondere
NUMERI E CRITTOGRAFIA. Carlo Toffalori (Camerino) Scuola Estiva Mathesis Telese Terme, 28 luglio 2015
NUMERI E CRITTOGRAFIA Carlo Toffalori (Camerino) Scuola Estiva Mathesis Telese Terme, 28 luglio 2015 1 Edgar Allan Poe, Lo scarabeo d oro: la caccia al tesoro di capitan Kidd Istruzioni incomprensibili
Altre alternative a RSA interessanti e praticabili
Altre alternative a RSA interessanti e praticabili Prof. Massimiliano Sala MINICORSI 2011. Crittografia a chiave pubblica: oltre RSA Università degli Studi di Trento, Lab di Matematica Industriale e Crittografia
Sicurezza nelle applicazioni multimediali: lezione 4, crittografia asimmetrica. Crittografia asimmetrica (a chiave pubblica)
Crittografia asimmetrica (a chiave pubblica) Problemi legati alla crittografia simmetrica Il principale problema della crittografia simmetrica sta nella necessità di disporre di un canale sicuro per la
Breve storia della crittografa
Breve storia della crittografa Il problema di codificare o cifrare un messaggio è stato affrontato, generalmente per usi militari, attraverso tutta la storia della civiltà umana. Plutarco descrive la scitala
Identificazione, Autenticazione e Firma Digitale. Firma digitale...
Identificazione, Autenticazione e Firma Digitale In origine crittografia = confidenzialità Diffusione delle reti: nuove funzionalità. Identificazione Autenticazione Firma digitale Identificazione: un sistema
La sicurezza nelle reti di calcolatori
La sicurezza nelle reti di calcolatori Contenuti del corso La progettazione delle reti Il routing nelle reti IP Il collegamento agli Internet Service Provider e problematiche di sicurezza Analisi di traffico
una possibile funzione unidirezionale
una possibile funzione unidirezionale moltiplicare due interi a n bit è facile (in O(n 2 ) con l algoritmo usuale) trovare un primo a n bit, e verificare che è primo, è facile (vedremo poi) fattorizzare
Informatica di base 6/ed
Informatica di base 6/ed Autori: Dennis P. Curtin, Kim Foley, Kunal Sen e Cathleen Morin A cura di: Agostino Marengo e Alessandro Pagano Capitolo 15 La sicurezza informatica: tecniche e legislazione Capitolo
Privacy e firma digitale
WORKSHOP Connessione in rete: sicurezza informatica e riservatezza Privacy e firma digitale C. Giustozzi Privacy e firma digitale Corrado Giustozzi ([email protected]) 1 Le comunicazioni elettroniche
Aritmetica e Crittografia
Aritmetica e Crittografia Luigi Ambrosio Scuola Normale Superiore, Pisa http://cvgmt.sns.it Luigi Ambrosio (SNS) Aritmetica e Crittografia Camigliatello, 22-29/07/2006 1 / 22 Indice 1 Il problema della
Il nano sulle spalle del gigante
Il nano sulle spalle del gigante il sottile legame che separa matematica e informatica Miriam Di Ianni Università di Roma Tor Vergata Cosa è un problema? Dal dizionario: In matematica e in altre scienze,
DIARIO DEL CORSO DI TEORIA DEI NUMERI E CRITTOGRAFIA. (41 ore complessive di lezione)
DIARIO DEL CORSO DI TEORIA DEI NUMERI E CRITTOGRAFIA DOCENTE: SANDRO MATTAREI (41 ore complessive di lezione) Prima settimana. Lezione di martedí 22 febbraio 2011 (due ore) Rappresentazione di numeri interi
La codifica digitale
La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore
La crittografia moderna e la sua applicazione
La crittografia moderna e la sua applicazione Corso FSE per la GdF Crittosistemi basati sulle Curve Ellittiche Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli
Capitolo 8 La sicurezza nelle reti
Capitolo 8 La sicurezza nelle reti Reti di calcolatori e Internet: Un approccio top-down 4 a edizione Jim Kurose, Keith Ross Pearson Paravia Bruno Mondadori Spa 2008 Capitolo 8: La sicurezza nelle reti
Crittografia e firma digitale INTRODUZIONE INTRODUZIONE
Crittografia e firma digitale Prof. Giuseppe Chiumeo [email protected] INTRODUZIONE Lo sviluppo dell e-business oggi ha bisogno di garanzie per quanto riguarda l inviolabilità dei dati trasmessi.
metodi crittografici 2006-2007 maurizio pizzonia sicurezza dei sistemi informatici e delle reti
metodi crittografici 1 sommario richiami di crittografia e applicazioni hash crittografici crittografia simmetrica crittografia asimmetrica attacchi e contromisure attacchi tipici key rollover generatori
Crittografia. Ringraziamenti. Scopo della crittografia. Privatezza
Crittografia Ringraziamenti prof. Francesco Dalla Libera Corso di Commercio Elettronico, Dipartimento di Informatica, Università Ca' Foscari di Venezia. Moreno Marzolla Dipartimento di Informatica Università
Storia della crittografia
Storia della crittografia (dal 700 all RSA) Salvatore Di Giovanni 1 sommario cilindro di Jefferson cifrario di Playfair cifrario di Delastelle cifra campale germanica cifrario di Vernam macchina Lorentz
Crittografia a chiave pubblica. Cenni alla teoria dei numeri
Crittografia a chiave pubblica Cenni alla teoria dei numeri Numeri Primi I numeri primi hanno come divisori solo se stessi e l unità Non possono essere ottenuti dal prodotto di altri numeri eg. 2,3,5,7
Crittografia a chiave pubblica. Crittografia a chiave pubblica. Crittografia a chiave pubblica Autenticazione
Crittografia a chiave pubblica Crittografia a chiave pubblica essaggio in chiaro A KUb KUb B Decodifica KRb: Chiunque può spedire messaggi crittati a B usando KUb Solo B può decodificare tali messaggi
Sicurezza nei Sistemi Distribuiti
Sicurezza nei Sistemi Distribuiti Aspetti di Sicurezza La sicurezza nei sistemi distribuiti deve riguardare tutti i componenti del sistema e coinvolge due aspetti principali: Le comunicazioni tra utenti
Sicurezza nei Sistemi Distribuiti
Sicurezza nei Sistemi Distribuiti Aspetti di Sicurezza La sicurezza nei sistemi distribuiti deve riguardare tutti i componenti del sistema e coinvolge due aspetti principali: Le comunicazioni tra utenti
Cifratura a chiave pubblica Sicurezza nelle reti di TLC - Prof. Marco Listanti - A.A. 2008/2009
Cifratura a chiave pubblica Crittografia a chiave privata Chiave singola Crittografia simmetrica La stessa chiave è utilizzata sia per la cifratura che per la decifratura dei messaggi La chiave rappresenta
Crittografia: dagli antichi codici di Cesare ai protocolli avanzati
Crittografia: dagli antichi codici di Cesare ai protocolli avanzati per l'economia digitaleitale Stefan Dziembowski University of Rome La Sapienza Workshop del Dipartimento di Informatica Workshop del
Crittografia a chiave pubblica
Crittografia a chiave pubblica Cifrari simmetrici Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno [email protected] http://www.dia.unisa.it/professori/masucci canale
Piccolo manuale PGP pubblica privata chiave pubblica chiave privata non firewall personale
Piccolo manuale PGP Il sistema di crittografia si basa su due chiavi una pubblica e una privata. Il mittente e il destinatario si devono scambiare la chiave pubblica per potersi mandare il messaggio codificato
Crittografia. Steganografia
Crittografia Codici e segreti. La storia affascinante dei messaggi cifrati dall antico Egitto a internet. Simon Singh, Rizzoli 2001 FdI 2014/2015 GMDN 2015 1 Steganografia Steganografia: comunicazione
Laboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso
Laboratorio di Informatica Esercitazione su algoritmi e diagrammi di flusso Algoritmi, programmi e dati Algoritmo = insieme di istruzioni che indicano come svolgere operazioni complesse su dei dati attraverso
BLOWFISH. Introduzione Algoritmo. Prestazioni Cryptanalysis of Vaundenay. Egizio Raffaele
Introduzione Algoritmo Prestazioni Cryptanalysis of Vaundenay Egizio Raffaele Introduzione E un cifrario a blocchi a chiave simmetrica Utilizza varie tecniche tra le quali la rete Feistel, le S-box dipendenti
Crittografia con Python
Crittografia con Python Corso introduttivo Marzo 2015 Con materiale adattato dal libro Hacking Secret Cypher With Python di Al Sweigart (http://inventwithpython.com/hacking/index.html) Nascondere segreti
Funzioni di hash sicure: MD5 e SHA-1
POLITECNICO DI MILANO Funzioni di hash sicure: MD5 e SHA-1 CEFRIEL - Politecnico di Milano [email protected] http://www.cefriel.it/~cerri/ Funzioni di hash Una funzione di hash (o message digest) è una
