Come configurare smartphone e PC. Portale informativo
  • casa
  • Ferro
  • Una rapida panoramica delle basi della crittografia. Classificazione dei moderni sistemi crittografici

Una rapida panoramica delle basi della crittografia. Classificazione dei moderni sistemi crittografici

Inviare il tuo buon lavoro nella knowledge base è semplice. Utilizza il modulo sottostante

Studenti, dottorandi, giovani scienziati che utilizzano la base di conoscenze nei loro studi e nel loro lavoro ti saranno molto grati.

Pubblicato su http://www.allbest.ru/

Lezione 3. Classificazione sistemi crittografici

1. La crittografia come scienza. Concetti basilari

Con questo argomento iniziamo lo studio dei metodi crittografici per la sicurezza delle informazioni.

La crittografia è una scienza fondamentale che studia metodi di trasformazione delle informazioni volti a nasconderne il contenuto.

La parola "crittografia" deriva dalle parole greche "kryptus" - segreto, "graphein" - scrivere, cioè scrivere. letteralmente "scrittura segreta".

La crittoanalisi è una scienza che studia i metodi per decifrare i codici.

La crittologia è una scienza che si occupa dello studio dei codici e della loro forza.

Crittologia = Crittografia + Crittoanalisi

La storia della crittografia risale a diverse migliaia di anni fa. I primi sistemi di crittografia apparvero contemporaneamente alla scrittura nel IV millennio a.C.

David Kohn, nel suo epico libro sulla crittoanalisi, "Eminent Cipherbreakers", ha citato prove che la crittografia fu usata in Egitto nel 1900 a.C., nella stesura della Bibbia nel 500 a.C. Grecia antica e nell'Antica Roma, la crittografia era già ampiamente utilizzata in vari campi di attività, soprattutto in ambito governativo. (Giulio Cesare, Note sulla guerra gallica, I secolo aC) Durante gli anni bui del Medioevo, la pratica della crittografia veniva mantenuta nella massima riservatezza. Durante gli anni delle Crociate, i crittografi al servizio del Papa furono soggetti alla distruzione fisica dopo un anno di lavoro.

Il periodo di sviluppo della crittologia dai tempi antichi al 1949 è solitamente chiamato l'era della crittologia prescientifica, poiché i risultati di quei tempi erano basati sull'intuizione e non erano supportati da prove. La crittologia allora veniva praticata quasi esclusivamente come un'arte piuttosto che come una scienza.

La Seconda Guerra Mondiale rappresentò un punto di svolta nella storia della crittografia: mentre prima della guerra la crittografia era un campo piuttosto ristretto, dopo la guerra divenne un campo di attività molto ampio.

La pubblicazione dell'articolo di Claude Shannon "La teoria della comunicazione nei sistemi segreti" nel 1949 segnò l'inizio di una nuova era della crittografia scientifica con chiavi segrete. In questo brillante lavoro, Shannon collegò la crittografia alla teoria dell'informazione.

Gli ultimi 25-30 anni hanno visto un aumento significativo dell’attività nello sviluppo della crittografia e una rapida crescita della ricerca accademica aperta. Fino ad allora la crittografia veniva utilizzata esclusivamente per scopi militari e di intelligence.

Negli anni '70 si verificarono due eventi che lo influenzarono seriamente ulteriori sviluppi crittografia Innanzitutto è stato adottato (e pubblicato!) il primo Data Encryption Standard (DES). In secondo luogo, dopo il lavoro dei matematici americani W. Diffie e M. Hellman, è nata una “nuova crittografia”: la crittografia con chiave pubblica. Entrambi questi eventi sono nati dalle esigenze del rapido sviluppo dei mezzi di comunicazione, sia locali che globali reti di computer, la cui protezione richiedeva mezzi crittografici facilmente accessibili e sufficientemente affidabili. La crittografia è diventata ampiamente richiesta non solo nella sfera militare, diplomatica e governativa, ma anche in quella commerciale, bancaria, ecc.

La steganografia è un insieme di metodi progettati per nascondere l'esistenza di un messaggio.

Per esempio:

1. Organizzare parole o lettere di testo semplice in modo che contengano un messaggio nascosto.

2. Contrassegnare i caratteri.

3. Inchiostro invisibile.

4. Carta perforante.

5. Stampare tra le righe utilizzando il nastro correttore.

Di per sé, tali metodi sembrano arcaici, ma hanno equivalenti moderni. Ad esempio, nascondere i messaggi utilizzando bit non importanti nei fotogrammi video del CD.

Attualmente sono stati sviluppati numerosi pacchetti software che consentono tali operazioni. Il vantaggio della steganografia è che può nascondere il fatto che vengono trasmessi i messaggi, non solo il loro contenuto. Dopotutto, la crittografia stessa suscita sospetti: significa che c'è qualcosa da nascondere.

La pietra angolare della crittografia è la crittografia (elaborazione crittografica delle informazioni utilizzando uno degli algoritmi).

Il messaggio originale si chiama testo in chiaro. Il messaggio crittografato è chiamato testo cifrato.

Qualsiasi algoritmo di crittografia deve essere integrato da un algoritmo di decrittografia per riportare il testo cifrato alla sua forma originale.

(Decifratura - recupero testo di origine senza conoscere la chiave)

La coppia di procedure - crittografia e decrittografia - è chiamata crittosistema.

Nell’introduzione al libro “Crittografia applicata”, B. Schneier scrive: “Esistono due tipi di crittografia al mondo: la crittografia che impedirà alla tua sorellina di leggere i tuoi file, e la crittografia che impedirà ai governi dei grandi paesi di leggendo i tuoi file Questo libro riguarda la crittografia di tipo II."

Esistono 2 tipi di crittografia ampiamente utilizzati oggi:

1. Tradizionale

2. Crittografia a chiave pubblica.

Il processo di crittografia tradizionale comprende due componenti:

1. Algoritmo di crittografia.

2. Chiave: un valore che non dipende dal testo in chiaro.

Il risultato ottenuto durante l'esecuzione dell'algoritmo dipende dalla chiave utilizzata. Cambiando la chiave cambia il testo cifrato.

La forza della crittografia tradizionale è determinata da diversi fattori:

1. Complessità dell'algoritmo di crittografia (deve essere sufficientemente complesso da rendere impossibile decrittografare il messaggio se è disponibile solo il testo cifrato).

2. La segretezza della chiave è il fattore principale dell'affidabilità della crittografia tradizionale. L'algoritmo stesso potrebbe non essere segreto.

Nella crittografia tradizionale (classica) è stata adottata una regola fondamentale, formulata nel XIX secolo: la regola di Kerckhoff:

La forza del codice dovrebbe essere determinata solo dalla segretezza della chiave.

Questa caratteristica della crittografia tradizionale è responsabile della sua ampia popolarità e accettazione. Perché Poiché non è necessario mantenere segreto l’algoritmo, i produttori possono implementare algoritmi di crittografia sotto forma di chip economici e disponibili al pubblico presenti in molti sistemi moderni.

Consideriamo più in dettaglio il modello di un crittosistema tradizionale.

Fondamenti teorici del modello tradizionale crittosistema simmetrico furono delineati per la prima volta nel 1949 nel lavoro di Claude Shannon.

La fonte crea un messaggio in chiaro:

Gli elementi xi del testo in chiaro X sono i simboli di un alfabeto finito A, costituito da n simboli:

Tradizionalmente veniva utilizzato un alfabeto di 26 lettere in inglese, ma oggi viene utilizzato più spesso l'alfabeto binario (0,1).

Per la crittografia, viene generata una chiave nel formato:

K=[k1, k2, …, kj]

Se la chiave viene generata nello stesso posto del messaggio stesso, deve essere inoltrata al destinatario tramite canali segreti. Oppure la chiave viene creata da una terza parte, che deve consegnarla in modo sicuro al mittente e al destinatario del messaggio.

Avendo X e K utilizzando un algoritmo di crittografia, viene formato un testo cifrato

У=[у1, у2, …, уn]

Questo può essere scritto come una formula:

Y si ottiene applicando l'algoritmo di crittografia E al testo in chiaro X utilizzando la chiave K.

Conversione inversa:

2. Tipologie di crittosistemi

algoritmo di crittografia di crittografia

La classificazione dei sistemi crittografici si basa sulle seguenti tre caratteristiche:

Numero di chiavi utilizzate.

Tipo di operazioni per convertire il testo in chiaro in testo cifrato.

Metodo di elaborazione del testo in chiaro.

1) Dal numero di chiavi utilizzate.

Ci sono:

Crittosistemi simmetrici;

Crittosistemi asimmetrici.

Se il mittente e il destinatario utilizzano la stessa chiave, il sistema di crittografia è chiamato sistema simmetrico a chiave singola, sistema a chiave segreta o schema di crittografia tradizionale. (Ad esempio DES, CAST, RC5, IDEA, Blowfish, cifrari classici);

Se il mittente e il destinatario utilizzano chiavi diverse, il sistema viene chiamato schema di crittografia a chiave pubblica asimmetrica a due chiavi. (RSA, El Gamal).

2) Per tipo di operazioni per convertire il testo in chiaro in testo cifrato.

Cifrature a sostituzione: la crittografia si basa sulla sostituzione di ciascun elemento del testo in chiaro (bit, lettera, gruppo di bit o lettere) con un altro elemento. (Cesare, Playfair, Hill);

Cifrari a permutazione: la crittografia si basa sulla modifica dell'ordine degli elementi di testo in chiaro. (Scala, riorganizzazione delle colonne);

Cifrari di produzione: la crittografia si basa su una combinazione di diverse operazioni di sostituzione e permutazione. I codici di produzione vengono utilizzati nella maggior parte del mondo reale sistemi moderni crittografia. (DES).

3) Con il metodo di elaborazione del testo in chiaro.

· Cifrari a blocchi - I cifrari a blocchi sono codici in cui l'unità logica di crittografia è un certo blocco di testo in chiaro, dopo la trasformazione del quale si ottiene un blocco di testo cifrato della stessa lunghezza. Ad esempio: DES, cifrario Feistel.

· Cifratura a flusso: implica la crittografia di tutti gli elementi del testo in chiaro in sequenza, uno dopo l'altro (bit per bit, byte per byte). Esempi di cifrari a flusso classici sono i cifrari di Vigenère (con selezione automatica chiave) e Vernam.

I cifrari a blocchi sono studiati molto meglio. Si ritiene che abbiano una gamma di applicazioni più ampia rispetto a quelle in linea. La maggior parte delle applicazioni di rete che utilizzano uno schema di crittografia tradizionale utilizzano cifrari a blocchi.

3. Tipi di attacchi crittografici e forza degli algoritmi

Il processo di ricostruzione del testo in chiaro (X) e/o della chiave (K) è chiamato crittoanalisi.

Un algoritmo di cifratura si considera risolto se viene trovata una procedura che permette di ritrovare la chiave in tempo reale.

La complessità dell'algoritmo di divulgazione è una delle caratteristiche importanti di un crittosistema ed è chiamata forza crittografica.

Il cifrario di sostituzione più antico e più semplice conosciuto è il cifrario di Giulio Cesare. Nel cifrario di Cesare, ogni lettera dell'alfabeto è sostituita da una lettera che si trova 3 posizioni più in là nello stesso alfabeto.

IN caso generale lo spostamento può essere qualsiasi (da 1 a 25). Se a ciascuna lettera viene assegnato un equivalente numerico, allora:

Y = Ek(X) = (x + k)mod26

Otteniamo un algoritmo di Caesar generalizzato.

Un codice di Cesare spostato di 13 lettere a destra è denominato rot13.

Tale cifra può essere risolta semplicemente enumerando in sequenza le opzioni. L'uso dell'enumerazione semplice è giustificato da quanto segue:

sono noti algoritmi di crittografia e decrittografia;

solo 25 opzioni;

il linguaggio del testo in chiaro è noto.

Nella maggior parte dei casi, quando si proteggono le reti, 1) viene eseguito, ma non 2). Caratteristica importante- 3). Se il testo di origine è precompresso, ciò rende molto difficile il riconoscimento.

Per un crittoanalista esiste un'altra possibilità di decifrare il codice (ad eccezione delle opzioni di forza bruta). Se il crittoanalista comprende la natura del testo in chiaro, possono essere utilizzate informazioni sulle caratteristiche inerenti ai testi nella lingua corrispondente (metodi statistici). Ad esempio, l'analisi della frequenza di occorrenza delle lettere dell'alfabeto.

I codici monoalfabetici sono facili da decifrare perché... ereditano la frequenza d'uso delle lettere dell'alfabeto originale. Per far sì che la struttura del testo di origine appaia in modo meno evidente nel testo crittografato utilizzando metodi di sostituzione, puoi utilizzare:

crittografia a più lettere, ad es. sostituzione non di singoli caratteri di testo in chiaro, ma di combinazioni di più caratteri;

diversi alfabeti.

Uno dei cifrari più famosi basati sul metodo di crittografia multi-lettera è il cifrario Playfair. In esso, i bigrammi (combinazioni di due lettere) di testo in chiaro sono considerati come unità indipendenti che vengono convertite in dati bigrammi di testo cifrato. L’analisi della frequenza bigram è più difficile. Per molto tempo si è creduto che il codice Playfair non potesse essere decifrato. Servì come standard di crittografia per l'esercito britannico durante la prima guerra mondiale e fu utilizzato anche durante la seconda guerra mondiale negli Stati Uniti.

Un esempio di cifrario multilettera è anche il cifrario di Hill (1929). Si basa su un algoritmo che sostituisce ogni m lettere consecutive di testo in chiaro con m lettere di testo cifrato.

Una possibilità per migliorare un semplice codice monoalfabetico è utilizzare diverse sostituzioni monoalfabetiche a seconda di determinate condizioni. Una famiglia di cifrari basata sull'uso di tali metodi di crittografia è chiamata cifrari polialfabetici. Hanno le seguenti proprietà:

viene utilizzata una serie di sostituzioni monoalfabetiche correlate;

esiste una chiave che determina quale trasformazione specifica deve essere utilizzata per la crittografia in una determinata fase.

I cifrari a sostituzione polialfabetica furono inventati nel XV secolo. Leon Battista-Alberti. Erano popolari fino al 19° secolo, quando iniziarono ad essere hackerati.

Il più famoso e semplice algoritmo Questo tipo di cifratura è la cifratura Vigenère (stream).

La migliore difesa contro i metodi statistici di crittoanalisi (vale a dire, in base alla frequenza di occorrenza delle lettere) è scegliere parola chiave, uguale in lunghezza alla lunghezza del testo in chiaro, ma diverso dal testo in chiaro in termini statistici. Un tale sistema fu proposto dall'ingegnere AT&T Gilbert Vernam nel 1918. Nell'algoritmo di Vernam, il testo cifrato viene generato eseguendo XORing tra il testo in chiaro e la chiave bit per bit.

Potrebbe esistere un codice perfetto che non può essere decifrato? Che tu ci creda o no, esiste un metodo di crittografia assoluto.

Joseph Mauborgne ha apportato un miglioramento al circuito di Vernam che lo ha reso estremamente affidabile. Lui ha offerto a caso generare una chiave di lunghezza uguale alla lunghezza del messaggio. Ogni carattere chiave viene utilizzato una sola volta e in un solo messaggio. L'output è una sequenza casuale che non ha collegamento statistico con testo aperto. Lo schema è chiamato nastro monouso o blocco monouso. Non può essere hackerato perché... Il testo cifrato non contiene alcuna informazione sul testo in chiaro. Tuttavia, l'utilizzo di un one-time pad è difficile perché il mittente e il destinatario devono avere la stessa chiave casuale, il che è difficile da implementare nella pratica.

Il concetto di cifrario ideale è stato introdotto nelle sue opere da Shannon. Il suo obiettivo era prevenire tentativi di crittoanalisi basati su metodi statistici. Un cifrario ideale è un cifrario che nasconde completamente tutti i modelli statistici del testo in chiaro nel testo cifrato.

Si dice che uno schema di crittografia sia assolutamente forte (incondizionatamente sicuro) se il testo cifrato non contiene informazioni sufficienti per ricostruire in modo univoco il testo in chiaro.

Ciò significa che non importa quanto tempo un avversario impiega per decifrare il testo, non sarà in grado di decifrarlo semplicemente perché il testo cifrato non contiene le informazioni necessarie per recuperare il testo in chiaro.

Il massimo che un algoritmo di crittografia può raggiungere è il rispetto di almeno una delle seguenti condizioni:

1) Il costo per decifrare la cifra supera il costo delle informazioni decrittografate;

2) Il tempo necessario per decifrare il codice supera il tempo durante il quale l'informazione è valida.

Se uno schema di crittografia soddisfa entrambi questi criteri, si dice che sia computazionalmente sicuro.

Tutte le forme di crittoanalisi per gli schemi di crittografia tradizionali sono sviluppate sulla base del fatto che alcuni tratti caratteristici della struttura del testo in chiaro possono essere preservati durante la crittografia, apparendo nel testo cifrato.

La crittoanalisi per gli schemi a chiave pubblica si basa su qualcosa di completamente diverso: sul fatto che le dipendenze matematiche che collegano coppie di chiavi consentono di utilizzare il ragionamento logico, conoscendo una delle chiavi, per trovare la seconda.

Principali tipologie di attacchi crittografici:

Attacco al testo cifrato.

Un crittoanalista possiede i testi cifrati di diversi messaggi crittografati con lo stesso algoritmo di crittografia e possibilmente con la stessa chiave.

Attacco al testo in chiaro.

Un crittoanalista ha accesso non solo ai testi cifrati di diversi messaggi, ma anche al testo in chiaro di questi messaggi. Il suo compito è determinare la chiave o le chiavi in ​​modo da poter decrittografare altri messaggi.

Attacco con testo in chiaro scelto (il crittoanalista può scegliere testo in chiaro per la crittografia).

Molti messaggi utilizzano inizi e finali standard che potrebbero essere noti a un crittoanalista (attacchi 2, 3).

A questo proposito, i codici sorgente crittografati dei programmi sono particolarmente vulnerabili a causa dell'uso frequente di parole chiave (define, struct, else, return, ecc.). Il codice eseguibile crittografato presenta gli stessi problemi: funzioni, strutture cicliche, ecc.

Apertura frontale (attacco frontale, metodo della "forza bruta" - cercando tra tutti possibili chiavi).

Crittoanalisi dei banditi.

Per ottenere la chiave, il “crittoanalista” ricorre a minacce, ricatti o torture. È anche possibile la corruzione, chiamata acquisto di chiavi. Questi sono metodi molto potenti e spesso i più efficaci per violare un algoritmo.

Non dimenticare mai la regola di Kerckhoff. Se l'affidabilità di un nuovo sistema crittografico si basa sull'ignoranza dell'algoritmo da parte dell'aggressore, allora sei perduto. Ti sbagli se pensi che mantenere segreto il principio dell’algoritmo proteggerà il crittosistema. Questa è un'ipotesi ingenua.

“Attenzione alle persone che esaltano le virtù dei loro algoritmi ma si rifiutano di pubblicarli. Affidarsi a tali algoritmi equivale a credere nelle proprietà curative degli stregoni”. (B. Schneier)

I migliori algoritmi di crittografia sono quelli che sono stati pubblicati, violati per anni dai migliori crittografi del mondo, e tuttavia rimangono inosservati.

Pubblicato su Allbest.ru

Documenti simili

    L'emergere dei cifrari, la storia dell'evoluzione della crittografia. Un metodo per applicare la conoscenza delle caratteristiche del testo naturale alle esigenze di crittografia. Criteri per determinare la naturalezza. Metodo di costruzione degli algoritmi crittografia simmetrica. Crittosistema a chiave pubblica.

    abstract, aggiunto il 31/05/2013

    Caratteristiche della crittografia dei dati, scopo della crittografia. Il concetto di crittografia come scienza, i compiti principali. Analisi del metodo gamma, metodo della sostituzione e della permutazione. Metodi di crittografia a chiave privata simmetrica: vantaggi e svantaggi.

    lavoro del corso, aggiunto il 05/09/2012

    Studio dei metodi e degli algoritmi di base della crittografia a chiave pubblica e loro uso pratico. Analisi e applicazione pratica di algoritmi di crittografia a chiave pubblica: crittografia dei dati, riservatezza, generazione e gestione delle chiavi.

    tesi, aggiunta il 20/06/2011

    Confronto delle prestazioni implementazioni software algoritmi di crittografia con ottimizzazioni per i linguaggi C e Java. Storia dello sviluppo, essenza, principi della crittografia e successi nella crittoanalisi di algoritmi di crittografia come AES, RC4, RC5, RC6, Twofish e Mars.

    abstract, aggiunto il 13/11/2009

    La protezione crittografica come elemento dei sistemi di sicurezza delle informazioni. Cifre storiche e loro decifrazione. Caratteristiche della crittografia moderna e della crittografia. Metodi di base della moderna crittoanalisi, loro essenza, caratteristiche e caratteristiche.

    lavoro del corso, aggiunto il 14/06/2012

    Metodi di crittografia simmetrica e asimmetrica. Crittografia utilizzando un sensore di numeri pseudocasuali. Algoritmo di crittografia DES. Standard russo firma digitale. Descrizione della crittografia del messaggio originale mediante metodo asimmetrico con chiave pubblica RSA.

    lavoro del corso, aggiunto il 03/09/2009

    Studio di algoritmi crittografici classici di sostituzione monoalfabetica e permutazione per sicurezza informazioni di testo. Analisi della frequenza di occorrenza dei simboli nel testo per la crittoanalisi cifre classiche. L'essenza del metodo di crittografia monoalfabetico.

    lavoro di laboratorio, aggiunto il 25/03/2015

    Crittografia e crittografia. Crittosistemi simmetrici e asimmetrici. Di base metodi moderni crittografia. Algoritmi di crittografia: sostituzione (sostituzione), permutazione, gamma. Metodi di crittografia combinati. Crittografi software.

    abstract, aggiunto il 24/05/2005

    Storia della crittografia. Confronto degli algoritmi di crittografia, applicazione nel sistema operativo. Analisi dei prodotti nel campo della crittografia personalizzata. Abilita o disabilita la crittografia della curva ellittica. Utilizzando una funzione hash. Firma elettronica.

    lavoro del corso, aggiunto il 18/09/2016

    La crittografia come metodo di protezione delle informazioni. Storia dello sviluppo della crittologia. Classificazione degli algoritmi di crittografia, simmetrici e algoritmi asimmetrici. Utilizzo degli strumenti di crittografia nelle applicazioni Delphi. una breve descrizione di Ambienti Delphi 7.

In base alla loro forza, i sistemi crittografici sono classificati in sistemi di forza temporanea e sistemi di forza garantita. Questi ultimi garantiscono la protezione delle informazioni per lungo tempo in condizioni di notevoli risorse materiali, intellettuali e informatiche dell'autore del reato. Altrimenti, un crittosistema a forza garantita è in grado di implementare molte funzioni diverse informazioni segrete può essere rivelato utilizzando una ricerca totale di funzioni di decrittazione. La complessità del problema di decrittazione dovrebbe basarsi sulla giustificazione della complessità della risoluzione di un difficile problema matematico utilizzando tecnologie moderne avanzate.

I sistemi crittografici sono classificati anche in base ai compiti che risolvono. Per garantire la riservatezza delle informazioni, vengono utilizzati sistemi di crittografia per autenticare dati, parti del protocollo e altri parametri - sistemi di identificazione, per l'autenticazione del messaggio - sistemi di protezione dalle imitazioni, per autenticare la paternità dei messaggi (documenti) - sistemi di firma elettronica(EP).

Varie classi utilizzate funzioni crittografiche determinare la divisione dei crittosistemi in sistemi con segreto E con una chiave pubblica.

Sistemi di crittografia a chiave segreta A sono utilizzati dall'antichità fino ai giorni nostri e si basano sul classico principio dell'utilizzo di un'unica chiave &, segreta a tutti tranne che agli utenti autorizzati. Gli algoritmi di crittografia e decrittografia sono implementati con una chiave A funzioni reciprocamente inverse E k E E k x > quelli. Ek(x) - y E da E a Y) = X. Tali crittosistemi sono chiamati simmetrico a causa del fatto che le chiavi per la crittografia e la decrittografia coincidono o hanno una certa simmetria. La protezione delle informazioni utilizzando sistemi simmetrici è garantita dalla segretezza delle chiavi A.

La comparsa dei sistemi a chiave pubblica nel 1975 (autori - i crittografi americani W. Diffie e M. Hellman) fu stimolata dalla necessità di sviluppare reti di computer per nuovi protocolli chiave. Un altro nome per loro è sistemi asimmetrici , contengono la chiave di crittografia e e chiave di decrittazione (1 non sono legati da alcuna relazione esplicita di simmetria o uguaglianza. Gli algoritmi di crittografia e decrittografia implementano anche funzioni reciprocamente inverse: E e (x) = y E E(1(y) = x. Chiave crittografica e Forse aprire, accessibile a tutti, ma il messaggio può essere decifrato solo se si conosce la chiave segreta (1 decrittazione. Chiave c1 chiamano spesso chiave privata per evitare confusione con la chiave del sistema simmetrico.

Calcolo della chiave privata (1 per chiave e> quelli. rivelare il codice è legato alla risoluzione di complessi problemi matematici. Tali problemi includono, ad esempio, trovare i divisori di un grande numero naturale e prendere i logaritmi in un gruppo di grande ordine.

Il vantaggio dei sistemi simmetrici è ad alta velocità crittografia, nella dimensione più piccola della chiave utilizzata, garantendo la forza, e in un grado più elevato di validità scientifica della forza crittografica. Tuttavia, i sistemi crittografici asimmetrici consentono di implementare protocolli che ampliano significativamente la portata della crittografia (ad esempio, distribuzione delle chiavi tra utenti senza intermediari). Crittosistemi ibridi combinano i vantaggi dei sistemi simmetrici e asimmetrici.

I metodi per analizzare i sistemi crittografici possono essere suddivisi in tre classi a seconda della loro natura matematica: metodi di prova, O metodi algoritmici, algebrici, O metodi analitici; metodi statistici, O analisi di frequenza.

I metodi di test consistono nell'enumerare in sequenza i valori di una chiave, o parte di una chiave, oppure i valori di alcune funzioni che dipendono dalla chiave. Lo scopo del test è riconoscere la verità di una chiave o ridurre il problema originale a diversi problemi più semplici.

I metodi algebrici consistono nel comporre e risolvere sistemi di equazioni su determinate strutture algebriche che collegano elementi sconosciuti della chiave (possibilmente aprire il messaggio) con caratteri di testo cifrato e di testo in chiaro noti.

I metodi statistici mirano a rifiutare i falsi valori degli elementi chiave utilizzando analisi statistica dati. Il compito di un crittoanalista è costruire statistiche dipendenti dal materiale cifrato (su dati noti) per distinguere tra ipotesi statistiche sulla verità e falsità di un elemento chiave. Rispetto ai metodi algebrici, l’implementazione efficace dei metodi statistici richiede più materiale di cifratura.

I metodi di analisi crittografica (c.a.) sono classificati in base al loro ambito di applicazione: metodi di c.a. sistemi di cifratura a flusso, sistemi di cifratura a blocchi, metodi di analisi della funzione hash, ecc.

universale sono chiamati metodi ka e sono fondamentalmente applicabili a qualsiasi crittosistema o a una classe molto ampia di crittosistemi. Possibilità di applicazione metodo universale in pratica, è spesso limitato da condizioni quali un’affidabilità troppo bassa; la necessità di implementazione non è realistica grande memoria e altri Metodi di K.A. vengono chiamati un particolare sistema o una particolare classe di crittosistemi speciale.

Spesso i metodi di k.a. sono classificati in base alle caratteristiche dei metodi stessi: per complessità computazionale, per affidabilità, per caratteristiche dei sistemi di calcolo necessari per implementare i metodi. Tali caratteristiche includono il grado consentito di parallelizzazione dei calcoli, la quantità di memoria richiesta sistema informatico, inclusa la quantità di memoria "veloce", ecc. Il metodo CA, la cui affidabilità è inferiore all'unità, è chiamato metodo probabilistico.

Esiste anche una classificazione dei metodi CA. in accordo con loro caratteristiche del progetto. L'implementazione di alcuni metodi è divisa in due fasi: preliminare e operativa. Nella fase preliminare vengono calcolate alcune caratteristiche del crittosistema che non dipendono dal materiale cifrato. I risultati dei calcoli sono presentati in una forma predeterminata (sotto forma di matrici, insiemi ordinati, ecc.) e sono archiviati nella memoria del sistema informatico ai fini di un utilizzo ripetuto nelle fasi operative dei calcoli. Nella fase operativa, gli elementi chiave del crittosistema vengono calcolati utilizzando materiale cifrato e informazioni immesse nella memoria del computer nella fase preliminare.

Lo scopo della progettazione a due stadi è quello di distribuire la complessità del calcolo chiave in modo che una parte più piccola di esso ricada sull’etano operativo. Il fatto è che la complessità del calcolo della chiave è determinata principalmente dalla complessità della fase operativa, e la fase preliminare del metodo viene implementata una volta e "in anticipo", ad es. prima di ricevere il materiale di cifratura per l'analisi.

In base ai compiti svolti per proteggere le informazioni, si possono distinguere due classi principali di sistemi crittografici:

  • crittosistemi che garantiscono la segretezza delle informazioni;
  • sistemi crittografici che garantiscono l’autenticità delle informazioni.

Questa divisione è dovuta al fatto che il compito di proteggere la segretezza delle informazioni (mantenerle segrete) è fondamentalmente diverso dal compito di proteggere l'autenticità delle informazioni e quindi deve essere risolto con altri metodi crittografici.

La classificazione dei crittosistemi in base ai compiti che svolgono per proteggere le informazioni è presentata in Fig. 10.1.

I sistemi crittografici che garantiscono la segretezza delle informazioni si dividono in sistemi di crittografia e sistemi di codifica delle informazioni crittografiche.

I sistemi di crittografia delle informazioni sono storicamente i primissimi sistemi crittografici. Ad esempio, in una delle prime opere sull'arte della guerra, scritta da Enea Tattico, nel capitolo "Sui messaggi segreti", i principi della costruzione e dell'uso degli strumenti di crittografia delle informazioni furono descritti nell'antica Sparta (IV secolo a.C.) . Gli Spartani utilizzavano la cosiddetta scitale, un codificatore meccanico a forma di cilindro, per trasmettere messaggi dai teatri di guerra. Durante la crittografia, il messaggio veniva scritto lettera per lettera su uno stretto nastro avvolto su una scitale lungo la generatrice di questo cilindro. Successivamente, il nastro è stato svolto e nel mezzo sono state aggiunte lettere arbitrarie. La chiave sconosciuta alla parte opposta era il diametro del viandante. È interessante notare che al vagabondo è associato anche il primo nome del crittoanalista giunto fino a noi: Aristotele propose di avvolgere un nastro intercettato con un messaggio crittografato su un cono, e il luogo in cui appariva una frase significativa determinava l'ignoto diametro del vagabondo (la chiave del sistema di crittografia).

In generale, la crittografia di un messaggio (informazione) è una trasformazione reversibile di un messaggio, indipendente dal messaggio stesso, al fine di nasconderne il contenuto. Un messaggio crittografato è chiamato cifragramma. La conversione di un messaggio in un cifrario è descritta dalla funzione di crittografia; la trasformazione di un cifragramma in un messaggio è descritta dalla funzione di decrittazione.

Un altro metodo per garantire la segretezza delle informazioni è la codifica crittografica. La codifica crittografica delle informazioni è, in generale, la conversione dei messaggi in codogrammi utilizzando una chiave, dipendente dai messaggi stessi, in modo da nasconderne il contenuto. I sistemi di codifica delle informazioni crittografiche sono sistemi crittografici in cui la protezione delle informazioni tramite chiave si basa sull'uso della sua ridondanza. Il termine "codifica crittografica" viene utilizzato per enfatizzare la differenza tra questo tipo di trasformazione crittografica e altri tipi di trasformazioni di informazioni non crittografiche, come la codifica di correzione degli errori e la codifica di efficienza (Capitoli 4 e 5).

I sistemi crittografici per l'autenticazione delle informazioni sono progettati per controllarne l'autenticità, ma in alcuni casi possono garantire efficacemente il controllo dell'integrità del messaggio sotto varie influenze distruttive.

Questa classe di crittosistemi può essere suddivisa, a seconda del problema da risolvere, in sistemi di autenticazione delle informazioni (messaggi) e sistemi di autenticazione delle fonti di informazione (corrispondenti, utenti, reti, sistemi, ecc.). I metodi di autenticazione delle informazioni variano a seconda delle condizioni per garantire l'autenticità delle informazioni.

Consideriamo un esempio quando è necessario verificare l'autenticità delle informazioni trasmesse dal mittente al destinatario, che si fidano incondizionatamente l'uno dell'altro; gli utenti non possono ingannarsi a vicenda e solo un intruso esterno può distorcere le informazioni. I sistemi crittografici di autenticazione dei messaggi per tali condizioni utilizzano la generazione e la verifica di inserti di messaggi simulati. In conformità con GOST 28147-89, un inserto imitativo è un'informazione di lunghezza fissa, ottenuta secondo una determinata regola da dati aperti e una chiave e aggiunta ai dati crittografati per garantire la protezione imitativa. La protezione dall'imitazione dei messaggi consiste nella loro trasformazione per proteggersi dall'imposizione da parte del trasgressore di messaggi falsi e precedentemente trasmessi. Il destinatario di un messaggio criptato e del suo inserimento imitativo, avendo la stessa chiave segreta, è in grado di riformare l'inserimento imitativo dal messaggio decriptato e, se coincide con l'inserimento imitativo ricevuto dal canale di comunicazione, assicurarsi che vi siano nessuna distorsione.

Nel caso in cui sia necessario verificare l'autenticità delle informazioni trasmesse da un mittente al destinatario che non si fida l'uno dell'altro, i crittosistemi di autenticazione basati su imitazioni non sono efficaci.

L'autenticità delle informazioni in condizioni di reciproca sfiducia tra le parti può essere assicurata utilizzando la cosiddetta firma digitale del messaggio, generata dal mittente e verificata dal destinatario del messaggio. L'incapacità del mittente di eseguire qualsiasi azione per il destinatario e del destinatario per il mittente quando utilizza la firma digitale di un messaggio è dovuta al fatto che utilizzano varie informazioni chiave per generare e verificare la firma digitale. La maggior parte dei sistemi crittografici e dei protocolli di autenticazione degli oggetti sono costruiti sulla base di sistemi crittografici con firma digitale dei messaggi.

I crittosistemi che garantiscono la disponibilità delle informazioni non costituiscono attualmente una classe indipendente e sono costruiti sulla base di principi presi in prestito dai crittosistemi di autenticazione delle informazioni e dai crittosistemi di sicurezza delle informazioni.

Pertanto, un breve esame dei possibili metodi di sicurezza delle informazioni indica che molti problemi di sicurezza delle informazioni vengono risolti più efficacemente con metodi crittografici e che un certo numero di problemi può generalmente essere risolto solo utilizzando metodi di sicurezza delle informazioni crittografiche.

Classificazione dei sistemi crittografici

Esistono diverse classificazioni dei sistemi crittografici (cifrature). Diamo un'occhiata ad alcuni di loro.

I. In base al loro campo di applicazione distinguono tra crittosistemi limitati e limitati. uso generale.

La forza di un sistema crittografico ad uso limitato si basa sul mantenimento segreto dell'algoritmo di trasformazione crittografica a causa della sua vulnerabilità, del numero limitato di chiavi o della loro mancanza (sistemi di codice segreto).

La forza di un sistema crittografico di uso generale si basa sulla segretezza della chiave e sulla difficoltà di trovarla da parte di un potenziale avversario.

II. In base alle caratteristiche dell'algoritmo di crittografia, i sistemi crittografici generalmente utilizzati possono essere suddivisi nei seguenti tipi.

Nei sistemi a chiave singola, la stessa chiave viene utilizzata per la crittografia e la decrittografia.

Nei codici a permutazione, tutte le lettere del testo in chiaro rimangono nel messaggio crittografato ma cambiano posizione. Nelle cifre a sostituzione, al contrario, le posizioni delle lettere nella cifra rimangono le stesse del testo in chiaro, ma i caratteri del testo in chiaro vengono sostituiti da caratteri di un alfabeto diverso.

Nella cifratura additiva, le lettere dell'alfabeto vengono sostituite da numeri, ai quali vengono poi aggiunti i numeri di una sequenza numerica casuale (pseudo-casuale) segreta (gamma). La composizione della scala varia a seconda della tonalità utilizzata. In genere, per la crittografia viene utilizzata l'operazione logica "OR esclusivo" (XOR). Durante la decrittografia, la stessa gamma viene applicata ai dati crittografati. La gamma è ampiamente utilizzata nei sistemi crittografici militari.

Riso. Classificazione degli algoritmi crittografici

La crittografia quantistica introduce la naturale incertezza nel processo di crittografia mondo quantistico. Il processo di invio e ricezione di informazioni viene effettuato attraverso oggetti della meccanica quantistica (ad esempio, utilizzando gli elettroni in corrente elettrica, o fotoni nelle linee di comunicazione in fibra ottica). La proprietà più preziosa di questo tipo di cifre Il problema è che quando si invia un messaggio, sia il mittente che il ricevente possono con una probabilità abbastanza elevata stabilire che il messaggio crittografato è stato intercettato.

Nei sistemi a due chiavi vengono utilizzate due chiavi completamente diverse per la crittografia e la decrittografia. Quando si utilizza un algoritmo deterministico, la crittografia e la decrittografia sono possibili solo utilizzando la coppia di chiavi corrispondente l'unico modo. Un algoritmo probabilistico, quando crittografa lo stesso messaggio originale con la stessa chiave, può produrre testi cifrati diversi che, una volta decrittografati, danno lo stesso risultato.

I metodi combinati (compositi) implicano l'utilizzo di diversi metodi contemporaneamente per crittografare un messaggio (ad esempio, prima sostituendo i caratteri e poi riorganizzandoli).

Secondo l'algoritmo di conversione, anche tutti i codici sono divisi in stream e blocchi. Nei codici a flusso, la trasformazione viene eseguita separatamente su ciascun carattere del messaggio originale. Per i codici a blocchi, le informazioni vengono suddivise in blocchi di lunghezza fissa, ciascuno dei quali viene crittografato e decrittografato separatamente.

III. In base al numero di simboli del messaggio (o alla sostituzione del codice), crittografati o decrittografati utilizzando la stessa procedura di conversione:

Streaming – la procedura di conversione viene applicata al singolo carattere del messaggio;

Blocco – la procedura di conversione viene applicata ad un set (blocco) di caratteri del messaggio;

È possibile distinguere un codice a flusso da un codice a blocchi in base al seguente criterio: se, come risultato della suddivisione del messaggio originale in singoli personaggi ed applicando ad essi lo stesso tipo di procedura di trasformazione, il cifrario risultante è equivalente a quello ottenuto applicando la trasformazione all'intero messaggio originale, quindi un cifrario a flusso, altrimenti un cifrario a blocchi.

In base alla loro forza, i cifrari si dividono in tre gruppi:

Perfetto (assolutamente sicuro, teoricamente sicuro) - cifre che sono ovviamente indistruttibili (se uso corretto). La decrittazione di un messaggio segreto risulta in diversi messaggi aperti significativi e ugualmente probabili;

Istituzione educativa a bilancio statale

Collegio del liceo "Centro per bambini dotati"

Società Scientifica degli Studenti

Crittografia. Classificazione dei cifrari e loro caratteristiche

Completato da: Smirnova Anna,

studente della classe 10A

Consulente scientifico:

Lazareva M.V.,

Insegnante di informatica

N. Novgorod

2015
Contenuto

Introduzione……………………………………3

Capitolo 1. La crittografia come strumento per garantire la riservatezza……………………………….….4


  • 1.1 Storia dello sviluppo della scienza della crittografia…………..…4

  • 1.2 Classificazione dei sistemi crittografici…………7

  • 1.3 Requisiti di base per i crittosistemi……….9
Capitolo 2. Cifrazioni………….…………..................................................10

  • 2.1 Classificazione delle cifre…………………………….…11

  • 2.2 Codici a barre................................................19
Conclusione……………………………….…..27

Elenco delle fonti…………….…………28

introduzione
Negli ultimi decenni del XX secolo iniziarono a verificarsi cambiamenti fondamentali: negli anni '80 cadde la cortina di ferro, nel 1991 si verificò il crollo Unione Sovietica e all'inizio del duemilionesimo, con l'avvento dell'Internet pubblica, divenne quasi impossibile controllare il flusso di informazioni.

Il cambiamento nella visione del mondo all'inizio del terzo millennio è stato preparato da una rivoluzione nel campo delle comunicazioni e dell'informazione, che ha raggiunto proporzioni tali che le generazioni precedenti non potevano nemmeno immaginare. L’informazione è diventata una risorsa importante in tutti gli ambiti della società.

Con l’emergere della società dell’informazione, la crittografia sta diventando uno strumento centrale per garantire la riservatezza delle informazioni.

La crittografia deve garantire un livello di segretezza tale che le informazioni critiche possano essere protette in modo affidabile dalla decrittazione da parte di grandi organizzazioni, come la mafia, le multinazionali e i grandi stati. Attualmente, i grandi stati hanno accesso a mezzi tecnologici di sorveglianza totale di milioni di persone. Pertanto, la crittografia sta diventando uno dei principali strumenti per garantire riservatezza, fiducia, autorizzazione, pagamenti elettronici, sicurezza aziendale e innumerevoli altre cose importanti.

Materia di studio - sistemi crittografici e tipi di cifre.

Scopo dello studio: studio di metodi crittografici per crittografare le informazioni.

Gli obiettivi della ricerca:

Studiare le caratteristiche dei vari sistemi crittografici;

Esplora diversi tipi di cifre.

Metodi di ricerca: analisi della letteratura, confronto, sintesi.

Capitolo 1 La crittografia come strumento per garantire la riservatezza
Crittografia (da Greco anticoκρυπτός - nascosto e γράφω - scrittura) - la scienza dei metodi di supporto privacy(impossibilità per gli estranei di leggere le informazioni) e autenticità(integrità e autenticità della paternità, nonché impossibilità di negare la paternità) delle informazioni.

In passato la vera crittografia veniva utilizzata solo per scopi militari. Tuttavia, ora, con l'emergere della società dell'informazione, sta diventando uno strumento centrale per garantire la privacy, e le tecniche di crittografia sono diventate proprietà di privati ​​e sono ora ampiamente utilizzate dagli hacker, dagli attivisti per la libertà d'informazione e da chiunque voglia crittografare i loro dati online in una certa misura. La crittografia è una scienza applicata; utilizza le più recenti conquiste delle scienze fondamentali, in primo luogo la matematica. D'altra parte, tutti i compiti specifici della crittografia dipendono in modo significativo dal livello di sviluppo della tecnologia e della tecnologia, dai mezzi di comunicazione utilizzati e dai metodi di trasmissione delle informazioni.

L'uso diffuso della crittografia è uno dei pochi modi per proteggere una persona da una situazione in cui si ritrova improvvisamente a vivere in uno stato totalitario in grado di controllare ogni sua mossa.


    1. Storia dello sviluppo della scienza della crittografia

La storia della crittografia risale a circa 4mila anni fa. Come criterio principale per la periodizzazione della crittografia, è possibile utilizzare le caratteristiche tecnologiche dei metodi di crittografia utilizzati.

1.Primo periodo(dal III millennio a.C. circa) è caratterizzato dalla predominanza di cifre monoalfabetiche (il principio di base è la sostituzione dell'alfabeto del testo sorgente con un altro alfabeto mediante la sostituzione delle lettere con altre lettere o simboli).

2.Secondo periodo(quadro cronologico - da IX secolo nel Medio Oriente ( Al-Kindi) e con 15 ° secolo in Europa ( Leon Battista Alberti) - prima dell'inizio XX secolo) è stato caratterizzato dall'introduzione della cifratura polialfabetica.

3. Terzo periodo(dall'inizio alla metà del XX secolo) è caratterizzato dall'introduzione di dispositivi elettromeccanici nel lavoro dei crittografi. Allo stesso tempo, è continuato l'uso di cifre polialfabetiche.

4.Quarto periodo- dalla metà agli anni '70 del XX secolo - il periodo di transizione alla crittografia matematica. In corso Shannon compaiono definizioni matematiche rigorose quantità di informazioni, trasmissione dati, entropia, funzioni di crittografia. Un passaggio obbligatorio nella creazione di un codice è studiare la sua vulnerabilità ai vari attacchi noti: lineare E differenziale crittoanalisi. Tuttavia, prima 1975 la crittografia rimase “classica”, o, più correttamente, la crittografia a chiave segreta.

5.Periodo moderno lo sviluppo della crittografia (dalla fine degli anni '70 ad oggi) si distingue per l'emergere e lo sviluppo di una nuova direzione: crittografia a chiave pubblica. Il suo aspetto è segnato non solo dal nuovo capacità tecniche, ma anche la diffusione relativamente ampia della crittografia ad uso privato (in epoche precedenti l'uso della crittografia era prerogativa esclusiva dello Stato).
Formalmente, la crittografia (dal greco - "scrittura segreta") è definita come una scienza che garantisce la segretezza di un messaggio.

1. Il pioniere che scrisse il primo lavoro scientifico sulla crittografia è considerato Enea Tacticus, che completò il suo viaggio terreno molto prima della nascita di Cristo. Anche l’India e la Mesopotamia tentarono di crittografare i propri dati, ma i primi sistemi di sicurezza affidabili furono sviluppati in Cina. Gli antichi scribi egiziani usavano spesso sofisticate tecniche di scrittura per attirare l'attenzione sui loro testi. Molto spesso, la crittografia delle informazioni veniva utilizzata per scopi militari: è ampiamente noto Codice Scitala utilizzato da Sparta contro Atene nel V secolo a.C. e.

2. La crittografia si sviluppò attivamente nel Medioevo e numerosi diplomatici e commercianti utilizzarono la crittografia. Si chiama uno dei cifrari più famosi del Medioevo Codice Copiale- un manoscritto dal design elegante con filigrane, che non è stato ancora completamente decifrato.

3. Il Rinascimento divenne l'età d'oro della crittografia: fu studiata da Francis Bacon, che descrisse sette metodi testo nascosto. Ha anche proposto un metodo di crittografia binaria, simile a quello utilizzato nei programmi per computer dei nostri tempi.

4. L'avvento del telegrafo ha avuto un impatto significativo sullo sviluppo della crittografia: il fatto stesso della trasmissione dei dati non era più segreto, il che ha costretto i mittenti a concentrarsi sulla crittografia dei dati.

5. Durante la prima guerra mondiale, la crittografia divenne uno strumento di combattimento consolidato. Il dipanamento dei messaggi nemici ha portato a risultati sorprendenti. L'intercettazione di un telegramma dell'ambasciatore tedesco Arthur Zimmerman da parte dei servizi segreti americani ha portato all'ingresso degli Stati Uniti battagliero dalla parte degli alleati.

6. La Seconda Guerra Mondiale servì da catalizzatore per lo sviluppo sistemi informatici- attraverso la crittografia. Le macchine crittografiche utilizzate (la tedesca Enigma, la Turing Bomb inglese) dimostrarono chiaramente l’importanza vitale del controllo delle informazioni.

Wehrmacht Enigma ("Enigma")

Macchina cifratrice del Terzo Reich. Il codice creato utilizzando Enigma è considerato uno dei più potenti utilizzati nella seconda guerra mondiale.

Turing Bombe

Un decodificatore sviluppato sotto la direzione di Alan Turing. Il suo utilizzo
permise agli Alleati di dividere il codice Enigma apparentemente monolitico.

1.2 Classificazione dei sistemi crittografici

1. Per area di applicazione i codici distinguono tra crittosistemi di uso limitato e generale.


  • Durabilità crittosistemi ad uso limitato si basa sul mantenere segreto l'algoritmo di trasformazione crittografica a causa della sua vulnerabilità, del numero limitato di chiavi o della loro mancanza (sistemi di codice segreto).

  • Durabilità crittosistemi di uso generale si basa sulla segretezza della chiave e sulla difficoltà della sua selezione da parte di un potenziale nemico.
2. Secondo le caratteristiche dell'algoritmo di crittografia I sistemi crittografici generalmente utilizzati possono essere suddivisi nei seguenti tipi.

Riso. Classificazione degli algoritmi crittografici


  • IN chiave unica sistemi La stessa chiave viene utilizzata per la crittografia e la decrittografia.

  • In cifre sostituzioni le posizioni delle lettere nel codice rimangono le stesse del testo in chiaro, ma i caratteri del testo in chiaro vengono sostituiti da caratteri di un alfabeto diverso.

  • In cifre permutazioni tutte le lettere del testo in chiaro rimangono nel messaggio crittografato, ma cambiano posizione.

  • IN additivo Nei codici, le lettere dell'alfabeto vengono sostituite da numeri, ai quali vengono poi aggiunti i numeri di una sequenza numerica casuale (pseudocasuale) segreta (gamma). La composizione della scala varia a seconda della tonalità utilizzata. In genere, per la crittografia viene utilizzata l'operazione logica "OR esclusivo" (XOR). Durante la decrittografia, la stessa gamma viene applicata ai dati crittografati. La gamma è ampiamente utilizzata nei sistemi crittografici militari.

  • IN due chiavi sistemi per la crittografia e la decrittografia vengono utilizzate due chiavi completamente diverse.

  • Utilizzando deterministico algoritmo, la crittografia e la decrittografia utilizzando la coppia di chiavi corrispondente è possibile solo in un unico modo.

  • Probabilistico Un algoritmo, quando crittografa lo stesso messaggio originale con la stessa chiave, può produrre testi cifrati diversi che, una volta decrittografati, danno lo stesso risultato.

  • Crittografia quantistica introduce la naturale incertezza del mondo quantistico nel processo di crittografia. Il processo di invio e ricezione di informazioni viene effettuato attraverso oggetti della meccanica quantistica, ad esempio utilizzando elettroni in una corrente elettrica o fotoni in linee di comunicazione in fibra ottica. La proprietà più preziosa di questo tipo di crittografia è che quando si invia un messaggio, il mittente e il destinatario possono con una probabilità abbastanza elevata (99,99...%) stabilire che il messaggio crittografato è stato intercettato.

  • Combinato metodi (compositi). implicano l'utilizzo di diversi metodi contemporaneamente per crittografare un messaggio (ad esempio, prima sostituendo i caratteri e poi riorganizzandoli).

  • Secondo l'algoritmo di conversione, anche tutti i codici sono divisi in stream e blocchi. IN streaming Nei codici, la conversione viene eseguita separatamente su ciascun carattere del messaggio originale. Per bloccare Con i codici, le informazioni vengono divise in blocchi di lunghezza fissa, ciascuno dei quali viene crittografato e decrittografato separatamente.
3. In base al numero di simboli del messaggio (o alla sostituzione del codice), crittografati o decrittografati utilizzando lo stesso tipo di procedura di conversione:

  • - streaming – la procedura di conversione viene applicata al singolo carattere del messaggio;

  • - blocco – la procedura di conversione viene applicata ad un insieme (blocco) di caratteri del messaggio;

  • È possibile distinguere un codice a flusso da un codice a blocchi in base al seguente criterio: se, come risultato della suddivisione del messaggio originale in singoli caratteri e dell'applicazione ad essi dello stesso tipo di procedura di trasformazione, il cifrario risultante è equivalente a quello ottenuto durante l'applicazione la trasformazione nell'intero messaggio originale, allora il codice è un codice a flusso, altrimenti un codice a blocchi.
4. Per forza di cifratura I crittosistemi si dividono in tre gruppi:

  • perfetto(assolutamente forte, teoricamente forte) - codici ovviamente indistruttibili (se usati correttamente). La decrittazione di un messaggio segreto risulta in diversi messaggi aperti significativi e ugualmente probabili;

  • praticamente (computazionalmente, sufficientemente) persistente– codici la cui apertura in un tempo accettabile è impossibile al livello attuale o futuro della tecnologia informatica. La stabilità pratica di tali sistemi si basa sulla teoria della complessità e viene valutata esclusivamente in un determinato momento da due posizioni:
- complessità computazionale della ricerca esaustiva;

Conosciuto su questo momento debolezze (vulnerabilità) e loro impatto sulla complessità computazionale;


  • cifre deboli.

1.3 Requisiti di base per i crittosistemi


  • Per i moderni sistemi crittografici si possono formulare i seguenti requisiti:

  • - la complessità e l'intensità del lavoro delle procedure di crittografia e decrittografia dovrebbero essere determinate in base al livello richiesto di sicurezza delle informazioni (è necessario garantire protezione affidabile informazione);

  • - i costi in termini di tempo e costi per la protezione delle informazioni dovrebbero essere accettabili a un dato livello di segretezza (i costi di protezione non dovrebbero essere eccessivi);

  • - le procedure di cifratura e decifratura non dovrebbero dipendere dalla lunghezza del messaggio;

  • - il numero di tutte le possibili chiavi di crittografia deve essere tale che la loro ricerca completa utilizzando le moderne tecnologie dell'informazione (compreso il calcolo distribuito) sia impossibile in un tempo accettabile per il nemico;

  • - ciascuna delle tante chiavi possibili deve fornire una protezione affidabile delle informazioni;

  • - una leggera modifica della chiave dovrebbe comportare un cambiamento significativo nel tipo di messaggio crittografato;

  • - la ridondanza del messaggio introdotta durante il processo di cifratura dovrebbe essere la minima possibile (il risultato è considerato buono quando la lunghezza del cifragramma non supera la lunghezza del testo originale);

  • - un messaggio crittografato deve essere leggibile solo se è disponibile la chiave.

Capitolo 2. Cifrazioni

Cifra(da p. chiffre"cifra" dall'arabo. صِفْر‎, sifr“zero”) - qualsiasi sistema di conversione del testo con un segreto (chiave) per garantire la segretezza delle informazioni trasmesse.

Cifra può essere un insieme di segni convenzionali (un alfabeto convenzionale di numeri o lettere) o un algoritmo per convertire numeri e lettere ordinari. Viene chiamato il processo di crittografia di un messaggio utilizzando una cifra crittografia.

Si chiama la scienza della creazione e dell'uso dei codici crittografia.

Crittoanalisi- la scienza dei metodi per ottenere il significato originale delle informazioni crittografate.

Un parametro importante qualsiasi cifra lo è chiave- un parametro di un algoritmo crittografico che garantisce la selezione di una trasformazione da un insieme di trasformazioni possibili per questo algoritmo. Nella crittografia moderna si presuppone che tutta la segretezza di un algoritmo crittografico sia concentrata nella chiave, ma non nei dettagli dell'algoritmo stesso (principio di Kerkhoff).

Una cifra non deve essere confusa con la codifica: una trasformazione fissa di informazioni da un tipo a un altro. Quest'ultimo manca del concetto di chiave e non soddisfa il principio di Kerkhoff. Al giorno d'oggi, la codifica non viene praticamente utilizzata per proteggere le informazioni da accessi non autorizzati, ma solo da errori nella trasmissione dei dati (codificazione resistente al rumore) e per altri scopi non legati alla protezione.

Se k è una chiave, allora possiamo scrivere f(k(A)) = B. Per ogni chiave k, la trasformazione f(k) deve essere invertibile, cioè f(k(B)) = A. L'insieme della trasformazione f(k) e la corrispondenza dell'insieme k è chiamata cifra.

2.1 Classificazione delle cifre


Le frecce che escono da qualsiasi rettangolo del diagramma indicano solo le più grandi sottoclassi private di cifrari.

Frecce tratteggiate che portano alle sottoclassi di cifratura permutazioni , significano che queste cifre possono essere considerate come cifrari sostitutivi a blocchi in conformità con il fatto che il testo in chiaro viene diviso durante la crittografia in blocchi di lunghezza fissa, in ciascuno dei quali viene eseguita una certa permutazione delle lettere.

1.Singolo alfabetico e multialfabetico le cifre possono essere a flusso o a blocchi. Allo stesso tempo le cifre gioco d'azzardo , formando una sottoclasse multialfabetico le cifre si riferiscono basato su thread anziché basato su blocchi cifre Inoltre, lo sono cifrari simmetrici e non asimmetrici.

2. Classi di cifratura simmetriche e asimmetriche

Le primissime classificazioni dei cifrari furono simmetrico cifre Caratteristica distintiva simmetrico i codici sono la chiave decrittazione e la chiave crittografia sono gli stessi. La funzione di tale classi di crittografia l'unico è garantire la riservatezza delle informazioni provenienti da persone non autorizzate. E solo di recente, alla fine del XX secolo, sono stati inventati asimmetrico classe di cifratura. Funzionalità di questo classificazioni di cifratura estremamente ampio dalla riservatezza alla firma digitale e alla conferma dell'autenticità delle informazioni.

3. Classi di crittografia a blocchi e in streaming

La classe simmetrica dei cifrari è divisa in classi di cifratura a blocchi e a flusso. Caratteristica distintiva classificazione a blocchi dei cifrari è che questi le classi di crittografia elaborano diversi byte (solitamente 8 o 16) di informazioni aperte contemporaneamente in un'unica iterazione, in contrasto con il tipo di crittografia a flusso, che elabora 1 byte (carattere) alla volta.

A seconda della dimensione dei valori di cifratura, le cifrature sostitutive vengono suddivise in in linea (N= 1) e bloccare(N > 1).

4. Cifrari a sostituzione semplice

I cifrari a sostituzione trasformano (da qui il loro nome) parti del testo in chiaro in qualcos'altro. Cifrario a sostituzione semplice effettuano una sostituzione carattere per carattere, ovvero sostituiscono in modo inequivocabile ogni carattere del testo in chiaro con qualcosa di proprio, e questo è qualcosa di proprio nel processodecrittazioneviene sostituito in modo univoco dal carattere originale. Esempi cifre facile sostituzione come cifre come Caesar Cipher, Affine Cipher, Atbash Cipher, Dancing Men Cipher.


Cifra di Cesare

Il cifrario di Caesar (cifrario a turni, codice Caesar o Caesar shift) è il cifrario più semplice e famoso.

Il cifrario di Cesare prende il nome dallo stesso Gaya Julia Cesare, che usò questo codice per corrispondenza segreta con spostamento a sinistra 3 (k=3). Attualmente, il codice di Cesare, come tutti cifrari a sostituzione semplice, facilmente decifrato e non ha applicazione pratica(tranne che per nascondere informazioni non confidenziali alla lettura casuale, ad esempio risposte a indovinelli, spoiler, insulti, per l'alfabeto inglese viene utilizzato a questo scopo il cifrario di Cesare con k = 13 (chiamato ROT13) che lo rende simmetrico)


Cifratura affine

Cifratura affine - un semplice codice a sostituzione che utilizza due numeri come chiave. Questi numeri (cioè la chiave della cifratura affine) determinano la dipendenza lineare dei numeri seriali dei simboli della futura crittografia dai numeri seriali dei simboli sostituiti informazioni aperte nell'alfabeto utilizzato. Quindi, ad esempio, se dipendenza lineare cifra affine 2x+8, quindi il simbolo "A" ( numero di serie simbolo è uguale a 1) viene sostituito da “AND” (il numero di serie del simbolo è 2*1+8=10).

Cifratore Atbash

La crittografia con il codice Atbash è identica crittografia Un cifrario affine con la dipendenza N+1-x, dove N è la dimensione dell'alfabeto utilizzato. Ciò significa che quando crittografia Con la cifratura Atbash la prima lettera dell'alfabeto verrà sostituita dall'ultima, e la seconda dalla penultima. E il nome stesso del codice - "Atbash" è composto dalla prima, ultima, seconda e penultima lettera dell'alfabeto ebraico.
Quindi, ad esempio, quando crittografia utilizzando il codice Atbash della frase "questo è un codice Atbash", la crittografia risultante sarà simile a questa: "VMR ZhTSKO YAMYAZH".

Codice degli uomini danzanti


Codice degli uomini danzanti- Un semplice codice di sostituzione utilizzando crittografia immagini schematicheumano figure.

La storia del cifrario degli uomini danzanti

Nel 1903 fu pubblicata la storia di Arthur Conan Doyle sul detective Sherlock Holmes, The Dancing Men. Nella storia, Ilsey Patrick e Ab Sleny, il suo ex fidanzato, comunicano tra loro attraverso un codice di uomini danzanti. Ab Sleni, usando il codice degli uomini danzanti, cerca di restituire Ilsea, e quando lei lo rifiuta, le manda un avvertimento sulla sua morte. Sherlock Holmes, dopo aver decifrato il codice dei ballerini (utilizzando la crittoanalisi delle frequenze e supponendo che una delle parole fosse "Ilsey"), ha inviato un messaggio utilizzando lo stesso codice dei ballerini all'assassino. Ab Sleni, essendo sicuro che Ilsi lo stesse chiamando, si sbagliò (dopo tutto, il codice degli uomini danzanti, essendo un codice simmetrico a sostituzione semplice, non fornisce autenticità), fu catturato e condannato ai lavori forzati.

Nel testo alcune persone hanno delle bandiere. Dividono il testo in parole.

Vantaggi e svantaggi del cifrario degli uomini danzanti

Il cifrario degli uomini danzanti ha un solo vantaggio: grazie alle sue proprietà stenografiche e alla sua breve lunghezza. crittografia può essere scritto ovunque: su una staccionata, su un palo, sull'asfalto e passerà per i disegni dei bambini. Per quanto riguarda gli svantaggi, il codice degli uomini danzanti ne presenta una serie completa: essendo un codice a sostituzione semplice simmetrica, non fornisce sufficiente riservatezza o autenticità.

5. Cifrari a sostituzione monofonica

Monofonico i cifrari a sostituzione sono del tutto simili ai cifrari facile sostituzione, tranne per il fatto che nel processo crittografia un carattere di testo in chiaro può essere sostituito da una delle numerose varianti, ciascuna delle quali corrisponde in modo univoco a quella originale. Monotono classe di cifratura sostitutiva, in contrapposizione alle classi di cifratura sostituzioni, non può essere violato utilizzando crittoanalisi di frequenza, poiché mascherano la risposta in frequenza del testo, sebbene non nascondano tutte le proprietà statistiche.

6. Cifratura a sostituzione di poligrammi

Poligrammaclassificazioni di cifratura Le sostituzioni sostituiscono non un carattere alla volta, ma diversi contemporaneamente. Ad esempio, il codice Giocare pulito sostituisce i bigram (due lettere consecutive) e il codice Hilla dalla radice quadrata della lunghezza della chiave.

Utilizzando il codice Playfair

Cifra Giocare pulito utilizza una matrice 5x5 (per l'alfabeto latino, per l'alfabeto cirillico è necessario aumentare la dimensione della matrice a 4x8) contenente una parola chiave o una frase. Per creare una matrice e utilizzare un codice, basta ricordare la parola chiave e quattro regole semplici. Per creare una matrice chiave, devi prima riempire celle vuote matrice per lettere di parole chiave(senza scrivere i caratteri ripetuti), quindi riempire le restanti celle della matrice con caratteri alfabetici non presenti nella parola chiave, al fine(V Testi inglesi di solito il carattere "Q" viene omesso per rimpicciolire l'alfabeto; altre versioni combinano "I" e "J" in un'unica cella).

La parola chiave può essere scritta nella riga superiore della matrice da sinistra a destra o in una spirale da sinistra angolo superiore al centro. La parola chiave, integrata dall'alfabeto, forma una matrice 5x5 ed è la chiave di cifratura.

Per crittografare un messaggio, è necessario suddividerlo in bigram (gruppi di due caratteri), ad esempio "Hello World" diventa "HE LL OW OR LD" e trovare questi bigram in una tabella. I due simboli bigramma corrispondono agli angoli del rettangolo nella matrice chiave. Determiniamo le posizioni degli angoli di questo rettangolo l'uno rispetto all'altro.

Quindi, guidati dalle seguenti 4 regole, crittifichiamo le coppie di caratteri nel testo di origine:

1. Se due simboli bigram corrispondono (o se è rimasto un simbolo), aggiungi una "X" dopo il primo simbolo, crittografa una nuova coppia di simboli e continua. Alcune varianti del codice Playfair utilizzano "Q" invece di "X".

2. Se i simboli bigramma del testo di partenza si trovano su una riga, questi simboli vengono sostituiti dai simboli situati nelle colonne più vicine a destra dei simboli corrispondenti. Se il carattere è l'ultimo di una riga, viene sostituito con il primo carattere della stessa riga.

3. Se i simboli bigramma del testo di partenza si trovano in una colonna, vengono convertiti nei simboli della stessa colonna che si trova immediatamente sotto di essi. Se un carattere è l'ultimo carattere in una colonna, viene sostituito dal primo carattere della stessa colonna.

4. Se i caratteri bigram del testo di origine si trovano in colonne diverse e righe diverse, vengono sostituiti con caratteri situati nelle stesse righe, ma corrispondenti ad altri angoli del rettangolo.

Per decriptare è necessario utilizzare l'inversione di questi quattro regole, scartando i simboli "X" (o "Q") se non hanno senso nel messaggio originale.

Come la maggior parte dei codici crittografici formali, anche il codice Playfair può essere facilmente violato se è presente abbastanza testo. Ottenere la chiave è relativamente semplice se crittografata e testo semplice. Quando è noto solo il testo cifrato, i crittoanalisti analizzano la corrispondenza tra la frequenza dei bigrammi nel testo cifrato e la frequenza nota dei bigrammi nella lingua in cui è scritto il messaggio.

Cifrario di Hill

Il cifrario di Hill è un cifrario a sostituzione di poligrammi basato sull'algebra lineare che utilizza matrici.

Crittografia Hill si ottengono come segue: la chiave, rappresentata nella forma matrice quadrata NxN modulo la lunghezza dell'alfabeto utilizzato viene moltiplicato per un vettore N-dimensionale. Il vettore risultante viene convertito in testo e il cifrario Hill elabora il blocco successivo. A proposito, il cifrario di Hill è il primo cifrario a blocchi che funziona con blocchi di più di 3 caratteri.

Forza della crittografia Hill

Come tutti i cifrari lineari, il cifrario di Hill può essere facilmente decifrato se gli viene fornito un tempo sufficientemente lungo crittografia. Tuttavia, per il 1929, il triplo crittografia Il cifrario di Hill con blocchi di 6 caratteri era estremamente potente.

7. Cifrario a sostituzione multialfabetica

Polialfabetico Una classe di codici a sostituzione sostituisce ogni volta gli stessi caratteri del testo in chiaro in modo diverso, poiché per ogni posizione nel testo in chiaro esiste una chiave che determina quale carattere verrà sostituito con l'uno o con l'altro. Esempi multialfabetico tipi di cifre possono essere cifre come Cipher Vigenere e Cifra Vernama.
Cifratura di Vigenère

Cifra Vigenere- cifratura polialfabetica che utilizza una parola chiave (frase in codice).

L'essenza della crittografia Vigenere identico e simile alla crittografia cifrata Cesare, con l'unica differenza che se il cifrario Cesare abbina tutti i simboli del messaggio (testo in chiaro nascosto nella crittografia) con lo stesso valore di spostamento, quindi nella cifra Vigenere A ogni carattere di testo in chiaro è associato il proprio valore di offset. Ciò significa che la lunghezza della chiave di cifratura Vigenere deve essere uguale alla lunghezza del messaggio. Tuttavia, ricordare tale chiave di decrittazione se il messaggio è lungo non è facile. La via d'uscita da questa situazione è questa: per la chiave di cifratura Vigenere prendi una parola (frase) che è conveniente per memorizzare, la parola (frase in codice) viene ripetuta finché non diventa pari alla lunghezza messaggi. La sequenza di simboli risultante viene utilizzata per la crittografia Vigenere utilizzando una tabella Vigenere.

Tavolo Vigenère

Per crittografare un messaggio con una cifra Vigenere utilizzando una tabella Vigenere, seleziona la colonna che inizia con il primo carattere del testo in chiaro e la riga che inizia con il primo carattere della chiave. All'intersezione di queste colonne e righe ci sarà il primo carattere di crittografia. Ad esempio, quando si valutano i simboli “L” e “D”, il risultato è “P”. Puoi fare lo stesso per i restanti caratteri del messaggio. Di seguito forniamo una tabella Vigenere per l'alfabeto russo.

Decifrare il cifrario di Vigenère

Cifra Vigenereè un codice abbastanza potente e tuttavia è stato considerato indistruttibile per molto tempo Kasiski decifrato il codice Vigenere nel 19 ° secolo. Per infrangere il codice Vigenereè necessario trovare la lunghezza di ripetizione della chiave (periodo della passphrase), quindi dividere la crittografia in colonne (il cui numero dovrebbe essere uguale al periodo della chiave), che verranno crittografate con la cifra Cesare e decifrare il codice Cesare non difficile. L'unica difficoltà è trovare il punto della chiave (passphrase). Esistono diversi modi per farlo, ma in ogni caso la crittografia deve essere sufficientemente lunga.



Cifratura di Vernam

Cifra Vernama - cifra simmetrica con assoluta forza crittografica

Creatori del cifrario Vernam

Cifra Vernamaè stato inventato nel 1917 dai dipendenti della AT&T (una delle più grandi società di telecomunicazioni americane negli USA) Major Joseph Mauborgne e Gilberto Vernam. Cifra Vernamaè nato dopo tentativi falliti Vernama migliorare il cifrario Vigenere(un codice considerato indistruttibile, ma che fu decifrato da Friedrich Kasiski nel 1854) a indistruttibile.

Crittografia con cifratura Vernam

L'essenza della crittografia Vernama facile da comprendere e implementare su un computer. Per crittografare il testo in chiaro è sufficiente combinare il codice binario del testo in chiaro con il codice binario della chiave utilizzando l'operazione "OR esclusivo" ottenuta codice binario, presentato in forma simbolica e sarà la crittografia della cifra Vernama. Se provi il codice ricevuto Vernama crittografare nuovamente la crittografia con un codice Vernama con la stessa chiave riceveremo nuovamente il testo in chiaro. In realtà, la crittografia del codice Vernama identico alla sua decrittazione, che ci dice che il cifrario Vernamaè un cifrario simmetrico.

Svantaggi del cifrario Vernam

Nonostante le evidenti difficoltà nel ricordare, generare e trasmettere la chiave, il cifrario Vernama presenta i seguenti svantaggi:

Distruggere una chiave ricevuta non è così facile come sembra, soprattutto una chiave così lunga come quella contenuta nel codice Vernama

Quando si intercetta la chiave di cifratura Vernama, un utente malintenzionato o un avversario può sostituire la crittografia che, una volta decrittografata, risulterà in un testo in chiaro completamente diverso

Tuttavia, speriamo che con lo sviluppo della tecnologia (ad esempio, utilizzando il protocollo di distribuzione della chiave quantistica BB84), queste carenze verranno eliminate e la cifratura potrà essere realizzata Vernama il metodo più semplice e sicuro per trasmettere informazioni.

2.2 Codici a barre

Codice a barre lineare

Codice a barre (codice a barre) - informazioni grafiche applicate sulla superficie, marcatura o imballaggio dei prodotti, che ne rendono possibile la lettura mezzi tecnici- sequenza di strisce bianche e nere o altro forme geometriche.

Metodi di codifica delle informazioni

1.Lineare

I codici a barre lineari (chiamati anche codici a strisce) sono leggibili in una direzione (orizzontale).

2.Bidimensionale


Sono state sviluppate simbologie bidimensionali per codificare grandi quantità di informazioni. La decifrazione di tale codice viene eseguita in due dimensioni (orizzontale e verticale).

I codici bidimensionali si dividono in multilivello (stacked) e a matrice (matrix). I codici a barre multilivello sono apparsi storicamente prima e rappresentano diversi codici lineari ordinari impilati uno sopra l'altro. I codici a matrice impacchettano gli elementi informativi più strettamente verticalmente.


№1

Paese produttore

№2

№3

Codice aziendale

№4

№5

№6

№7

№8

Nome del prodotto

Proprietà di consumo

№9

Caratteristiche del consumatore

№10

Peso

№11

Composto

№12

Colore

№13

Determinazione dell'autenticità del codice

Il codice a barre è composto da 13 cifre secondo lo standard europeo.

Se esegui semplici calcoli aritmetici con i numeri dei codici a barre, c'è la possibilità di scoprire con certezza se il prodotto che hai di fronte è reale o un banale falso. Ecco la formula:

10-((((№2+№4+№6+№8+№10+№12)*3)+ (№1+№3+№5+№7+№9+№11))-№1)

Somma i numeri in numeri pari. Moltiplicare l'importo risultante per tre. Aggiungi i numeri nei posti dispari tranne l'ultimo. Aggiungi i due risultati precedenti. Ora scarta la prima cifra di questo importo. Sottrai l'ultimo risultato ottenuto da dieci. Se ottieni un numero uguale all'ultimo controllo, allora hai un prodotto originale. Se i numeri non corrispondono, molto probabilmente è un falso.


  • Il codice a barre non ha nulla a che fare con la qualità della merce. È stato creato non tanto per i consumatori quanto per i produttori e, soprattutto, i distributori. L'unica cosa che un consumatore può determinare dal codice a barre è il paese di origine. Tuttavia, ci sono anche delle difficoltà qui. Se il paese di origine indicato sull'etichetta non corrisponde ai dati del codice a barre, ciò non significa sempre che ti sei imbattuto in un prodotto contraffatto. Alcune aziende, che producono beni in un paese, sono registrate in un altro o hanno le loro filiali in paesi terzi. O forse è una coproduzione.

  • In conformità con le regole di EAN International, il diritto di priorità sui prodotti con codice a barre appartiene al proprietario del marchio (marchio) o delle specifiche per la produzione del prodotto, indipendentemente da dove e da chi è stato prodotto. Tuttavia, se per qualche motivo il proprietario marchio non ha applicato il codice a barre, il produttore può farlo. Se il produttore del prodotto non ha applicato un codice a barre, il fornitore (importatore) può farlo. Sull'etichetta è riportato “Fornitore: nome dell'azienda fornitrice” e il relativo codice a barre.

  • Un codice a barre è semplicemente un numero univoco tramite il quale è possibile trovare i dati sul prodotto specificato nel catalogo elettronico del produttore. Senza l'accesso a questa directory non si può imparare nulla. Tuttavia, puoi scoprire il produttore del prodotto tramite il codice a barre. Nel 1999, un Sistema informativo registro globale GEPIR, che consente di ottenere informazioni sulla proprietà dei codici a barre tramite Internet. Per fare questo, devi solo andare in russo o pagina iniziale GEPIR su Internet e inserisci il codice che ti interessa.

  • L'assenza del codice a barre inserito nel database non indica che si tratti di contraffazione. Ad esempio, ciò potrebbe essere il risultato delle leggi sulla divulgazione in molti paesi in base alle quali un’azienda può, in alcuni casi, scegliere se divulgare o meno i dati.

  • Codici a barre dei paesi produttori i cui prodotti si trovano più spesso sul mercato russo:

Paesi

Codice (prime due cifre)

Stati Uniti, Canada

00, 01, 03, 04, 06

Francia

30, 31, 32, 33, 34, 35, 36, 37

Germania

40, 41, 42, 43

Gran Bretagna (e Irlanda del Nord)

50

Giappone

49

Belgio (e Lussemburgo)

54

Norvegia

70

Danimarca

57

Finlandia

64

Portogallo

56

Svezia

73

Svizzera

76

Italia

80, 81, 82, 83

Israele

72

Olanda

87

Austria

90, 91

Australia

93

Turchia

86

Sud Africa

60, 61

Islanda

84

RUSSIA

46

Separatamente, è necessario parlare della codifica dei beni prodotti in Russia. L'intervallo di codici 460-469 è assegnato alla Russia. Tuttavia attualmente è in uso solo il 460, il resto dei numeri è ancora bloccato. Possono essere messi in atto da EAN Russia solo a condizione che gli attuali 460 numeri di prefisso siano completamente esauriti e solo con l'accordo obbligatorio della sede centrale di EAN International. Pertanto, se trovi un codice a barre che inizia con i prefissi 461-469, questo codice è decisamente falso.

Aree di applicazione


  • Aumentare la velocità del flusso di documenti nei sistemi bancari e in altri sistemi di pagamento;

  • Ridurre al minimo gli errori di lettura dei dati automatizzando il processo;

  • Identificazione del dipendente (codice a barre aziendale);

  • Organizzazione di sistemi di registrazione del tempo;

  • Unificazione delle forme di raccolta tipi diversi dati (medicina, statistica, ecc.);

  • Semplificazione dell'inventario di magazzino;

  • Monitoraggio della disponibilità e della promozione delle merci nei negozi, garantendone la sicurezza, ecc.


QR Code

QR Code risposta rapida- risposta rapida) - codice a matrice (bidimensionale codice a barre), sviluppato e presentato dalla società giapponese Denso-Wave nel 1994.

Descrizione

A differenza del vecchioUn codice a barre scansionato con un raggio sottile, il codice QR viene rilevato dal sensore o dalla fotocamera dello smartphone come immagine bidimensionale. Tre quadrati agli angoli dell'immagine e quadrati di sincronizzazione più piccoli in tutto il codice normalizzano la dimensione dell'immagine e il suo orientamento, nonché l'angolo con cui è posizionato il sensore rispetto alla superficie dell'immagine. I punti vengono convertiti in numeri binari somma di controllo.


Il vantaggio principale di un codice QR è il suo facile riconoscimento tramite scanner, che ne consente l'utilizzo nel commercio, nella produzione e nella logistica.

Numero massimo di caratteri che rientrano in un codice QR:


  • numeri - 7089;

  • numeri e lettere (latino) - 4296;

  • codice binario - 2953 byte (quindi, circa 2953 lettere cirilliche nella codifica Windows-1251 o circa 1450 lettere cirilliche in utf-8);

  • geroglifici - 1817.
Sebbene la designazione "codice QR" sia registrata marchio DENSO Corporation, i codici sono esenti da royalty per l'uso e sono descritti e pubblicati come standard ISO.

La specifica del codice QR non descrive il formato dei dati.

Blocco

La sequenza di byte è divisa in un numero di blocchi determinato per la versione e il livello di correzione, mostrato nella tabella “Numero di blocchi”. Se il numero di blocchi è uno, questo passaggio può essere saltato. E quando la versione viene aggiornata, vengono aggiunti blocchi speciali.

Innanzitutto viene determinato il numero di byte (dati) in ciascun blocco. Per fare ciò è necessario dividere il numero totale di byte per il numero di blocchi di dati. Se questo numero non è un numero intero, è necessario determinare il resto della divisione. Questo resto determina quanti blocchi tra tutti vengono riempiti (quei blocchi il cui numero di byte è uno in più rispetto al resto). Contrariamente alle aspettative, i blocchi imbottiti non dovrebbero essere i primi blocchi, ma gli ultimi. Quindi i blocchi vengono riempiti in sequenza. È importante che i dati riempiano tutti i blocchi di correzione

Esempio: per la versione 9 e il livello di correzione M, la quantità di dati è 182 byte, il numero di blocchi è 5. Dividendo il numero di byte di dati per il numero di blocchi, otteniamo 36 byte e 2 byte rimasti. Ciò significa che i blocchi di dati avranno le seguenti dimensioni: 36, 36, 36, 37, 37 (byte). Se non ci fosse resto, tutti e 5 i blocchi avrebbero una dimensione di 36 byte.

Il blocco è completamente riempito con byte di dati. Quando il blocco corrente è completamente pieno, la coda passa a quello successivo. Dovrebbero esserci abbastanza byte di dati per tutti i blocchi, né più né meno.

Fase di inserimento delle informazioni nel campo codice

C'è un codice QR campi richiesti, non trasportano informazioni codificate, ma contengono informazioni per la decodifica. Questo:

  • Modelli di ricerca

  • Modelli di allineamento

  • Sincronizza le barre

  • Codice maschera e livello di correzione

  • Codice versione (dalla versione 7)
e anche obbligatorio rientro attorno al codice. La rientranza è una cornice di moduli bianchi, la sua larghezza è di 4 moduli. I modelli di ricerca sono 3 quadrati negli angoli, ad eccezione di quello in basso a destra. Utilizzato per determinare la posizione del codice. Sono costituiti da un quadrato 3x3 di moduli neri, attorno a una cornice di moduli bianchi, larghezza 1, poi un'altra cornice di moduli neri, anch'essa larghezza 1, e una recinzione dal resto del codice - mezza cornice di moduli bianchi, larghezza 1 Il totale di questi oggetti ha una dimensione di 8x8 moduli.

Modelli di allineamento- compaiono a partire dalla seconda versione, utilizzati per un'ulteriore stabilizzazione del codice e un suo posizionamento più accurato durante la decodifica. Sono costituiti da 1 modulo nero, attorno al quale è presente una cornice di moduli bianchi con una larghezza di 1, e poi un'altra cornice di moduli neri, anch'essa con una larghezza di 1. La dimensione finale dello schema di livellamento è 5x5. Tali modelli si trovano in posizioni diverse a seconda del numero di versione. I modelli di allineamento non possono sovrapporsi ai modelli di ricerca. Di seguito è riportata una tabella con la posizione del modulo nero centrale, i numeri sono indicati lì: questi sono possibili coordinate, sia in orizzontale che in verticale. Questi moduli si trovano all'intersezione di tali coordinate. Il conto alla rovescia proviene dal nodo in alto a sinistra e le sue coordinate sono (0,0).

Sincronizza le barre- utilizzato per determinare la dimensione dei moduli. Si trovano in un angolo, uno parte dal modello di ricerca in basso a sinistra (dal bordo della cornice nera, ma scavalcando quella bianca), va in alto a sinistra, e da lì inizia il secondo, secondo la stessa regola , termina in alto a destra. Una volta sovrapposto al modulo di livellamento, dovrebbe rimanere invariato. Le barre di sincronizzazione sembrano linee di moduli bianchi e neri alternati.

Codice maschera e livello di correzione- si trovano accanto agli schemi di ricerca: sotto in alto a destra (8 moduli) e a destra in basso a sinistra (7 moduli), e sono duplicati ai lati in alto a sinistra, con uno spazio nella 7a cella - dove passano le bande di sincronizzazione e codice orizzontale nella parte verticale e la parte verticale nella parte orizzontale.

Codice versione: necessario per determinare la versione del codice. Si trovano a sinistra in alto a destra e sopra in basso a sinistra e sono duplicati. Vengono duplicati in questo modo: la copia speculare del codice superiore viene ruotata di 90 gradi in senso antiorario. Di seguito la tabella dei codici, 1 - modulo nero, 0 - bianco.

Immissione dei dati

Residuo posto libero Sono divisi in colonne larghe 2 moduli e lì vengono inserite le informazioni, e lo fanno a “serpente”. Innanzitutto, la prima informazione viene inserita nel riquadro in basso a destra, quindi in quello vicino a sinistra, quindi in quello sopra il primo e così via. Le colonne vengono riempite dal basso verso l'alto, quindi dall'alto verso il basso, ecc., e lungo i bordi i bit vengono riempiti dall'ultimo bit di una colonna all'ultimo bit della colonna adiacente, creando un "serpente" sulla colonna. colonne verso il basso. Se le informazioni non sono sufficienti, i campi vengono semplicemente lasciati vuoti (moduli bianchi). In questo caso ad ogni modulo viene applicata una maschera.


Descrizione dei campi del codice QR.

Codice maschera e livello di correzione, eventuali maschere XOR

Conclusione

Nel processo di lavoro sul progetto, si possono trarre alcune conclusioni:


  1. Esiste una classificazione unificata dei sistemi crittografici secondo diversi parametri, ognuno dei quali ha il proprio caratteristiche distintive, Vantaggi e svantaggi.
I sistemi crittografici sono classificati in:

  • Aree di utilizzo;

  • caratteristiche dell'algoritmo di crittografia utilizzato;

  • numero di caratteri del messaggio;

  • forza della cifratura.

  1. Nel mondo esiste un numero enorme di codici, che a loro volta possono essere combinati in gruppi in base alle caratteristiche individuali. Un parametro importante di qualsiasi cifra è chiave- un parametro di un algoritmo crittografico che garantisce la selezione di una trasformazione da un insieme di trasformazioni possibili per questo algoritmo.

  2. La crittografia ha una storia di 4mila anni, ma anche adesso questa scienza non ha perso la sua rilevanza, perché la protezione delle informazioni oggi è uno dei problemi più gravi dell'umanità nella società dell'informazione.
Questo lavoro sarà utile agli studenti interessati alla crittografia e alle basi della crittografia.

Il lavoro sullo studio continuerà. In futuro, si prevede di studiare le questioni relative alla sicurezza delle informazioni nei social network.

Fonti


  1. http://shifr-online-ru.1gb.ru/vidy-shifrov.htm

  2. http://studopedia.org/3-18461.html

  3. http://students.uni-vologda.ac.ru/pages/pm00/kan/demand.htm

  4. http://bezpeka.ucoz.ua/publ/kriptografija/kriptosistemy/klassifikacija_shifrov/7-1-0-14

  5. http://dic.academic.ru/dic.nsf/ruwiki/672132

I migliori articoli sull'argomento