Crittografa Testo

Uno strumento di crittografia del testo online che fornisce funzioni di decrittografia MD5, SHA, AES e crittografia AES.

Input
Formato di input
Formato di output
Dimensione chiave in bit
Chiave segreta
vettore di inizializzazione (Opzionale)
Modalità cifratura
Schema di riempimento
Produzione

L'importanza della crittografia dei dati

La crittografia dei dati può migliorare la sicurezza dei dati, in modo che anche se i dati vengono rubati, gli hacker non possano accedere direttamente ai dati, riducendo così il rischio di perdita e di divulgazione dei dati.

Algoritmo di crittografia MD5

La crittografia MD5 è una funzione hash comunemente utilizzata per comprimere informazioni di qualsiasi lunghezza in 128 bit (16 byte) di dati. È stata progettata dal crittografo americano Ron Rivest nel 1991 ed è diventata uno degli algoritmi di crittografia più utilizzati.
L'idea principale dell'algoritmo MD5 è quella di convertire i dati originali in un digest di informazioni di lunghezza fissa attraverso molteplici operazioni di hash. I passaggi specifici sono i seguenti:
Riempimento dei dati: riempire i dati originali in modo che la sua lunghezza soddisfi 448 modulo 512, ovvero n * 512 + 448, dove n è un numero intero non negativo.
Aggiunta della lunghezza: Aggiungere un valore di lunghezza a 64 bit alla fine dei dati riempiti, indicando la lunghezza dei dati originali. Poiché l'algoritmo MD5 supporta solo dati di input la cui lunghezza non supera 2^64, il valore di lunghezza deve essere espresso in 64 bit.
Inizializzazione delle variabili: definire quattro registri a 32 bit A, B, C, D e un array costante a 64 bit T.
Elaborazione dei dati del pacchetto: dividere i dati riempiti in pacchetti da 512 bit e elaborare un pacchetto alla volta. Per ogni gruppo, vengono eseguiti 4 cicli di round, e ogni ciclo include 4 passaggi: F, G, H, I.
a. Funzione F: vengono utilizzati i tre registri B, C e D come input e viene generato un risultato di 32 bit dopo una serie di operazioni a bit e funzioni non lineari.
b. Funzione G: vengono utilizzati i tre registri C, D e A come input e viene generato un risultato di 32 bit dopo una serie di operazioni a bit e funzioni non lineari.
c. Funzione H: vengono utilizzati i tre registri D, A e B come input e viene generato un risultato di 32 bit dopo una serie di operazioni a bit e funzioni non lineari.
d. Funzione I: vengono presi i tre registri C, B e A come input e viene prodotto un risultato di 32 bit dopo una serie di operazioni a bit e funzioni non lineari.
Risultati combinati: i risultati dei quattro registri vengono concatenati in ordine per ottenere un valore hash di 128 bit.
Attraverso i passaggi sopra descritti, l'algoritmo MD5 può comprimere dati di qualsiasi lunghezza in un valore hash di 128 bit, che è irreversibile e unico. Pertanto, la crittografia MD5 è ampiamente utilizzata nella verifica dell'integrità dei dati, nelle firme digitali, nella protezione delle password, ecc. Tuttavia, poiché l'algoritmo MD5 presenta falle di sicurezza ed è vulnerabile a attacchi di collisione e di pre-filtraggio, è necessario utilizzare un algoritmo di crittografia più sicuro in scenari con requisiti di alta sicurezza.

Algoritmo di crittografia SHA

SHA (Secure Hash Algorithm) è un algoritmo di crittografia che converte i dati (messaggi) di lunghezza arbitraria in valori hash di lunghezza fissa ed è solitamente utilizzato per garantire l'integrità e la sicurezza dei dati. L'algoritmo SHA è stato sviluppato dalla National Security Agency (NSA) degli Stati Uniti e attualmente esistono diverse versioni, le più popolari delle quali sono SHA-1, SHA-2 e SHA-3.
SHA-1 (Secure Hash Algorithm 1) è una delle prime versioni ampiamente utilizzate dell'algoritmo SHA, che converte un messaggio di qualsiasi lunghezza in un valore hash a 160 bit. SHA-2 include quattro varianti di SHA-224, SHA-256, SHA-384 e SHA-512, che convertono i messaggi in hash di 224 bit, 256 bit, 384 bit e 512 bit, rispettivamente. SHA-3 è l'ultima versione dell'algoritmo SHA, che converte i messaggi in valori hash di lunghezza fissa. A differenza di SHA-2, la progettazione dell'algoritmo SHA-3 si basa sull'algoritmo Keccak.Il principio di crittografia dell'algoritmo SHA può essere riassunto brevemente nei seguenti passaggi:1. Preelaborazione dei dati (padding): L'algoritmo SHA prima riempie i dati di input per far sì che la loro lunghezza soddisfi i requisiti dell'algoritmo. Il metodo di riempimento specifico è correlato alla versione dell'algoritmo.2. Valori hash iniziali: L'algoritmo SHA imposta un valore hash iniziale fisso come costante.3. Raggruppamento dei messaggi: L'algoritmo SHA divide i dati di input in più blocchi di messaggi di lunghezza fissa (512 bit). Dopo che ogni blocco di messaggi ha subito una serie di calcoli, verrà ottenuto un valore hash a 256 bit.4. Calcolo iterativo del valore hash: L'algoritmo SHA utilizzerà il valore hash del blocco di messaggi precedente come input del blocco di messaggi successivo e svolgerà il calcolo iterativo fino a quando non saranno calcolati i valori hash di tutti i blocchi di messaggi.5. Uscita: L'algoritmo SHA infine combina i valori hash di tutti i blocchi di messaggi per generare un valore hash finale come output.Poiché la lunghezza del valore hash dell'algoritmo SHA è fissa e molto grande, l'algoritmo SHA ha un'elevata sicurezza e irreversibilità e può essere utilizzato per la verifica dell'integrità dei dati, la firma digitale e altre applicazioni di sicurezza.

Algoritmo di crittografia AES

AES (Advanced Encryption Standard) è uno standard di crittografia avanzato, noto anche come algoritmo Rijndael, ed è uno degli algoritmi di crittografia simmetrica più utilizzati al momento. L'algoritmo di crittografia AES utilizza la stessa chiave per crittografare e decrittografare i dati ed è quindi classificato come algoritmo di crittografia simmetrica.
Il principio di crittografia AES può essere riassunto brevemente nei seguenti passaggi:
1. Espansione della chiave: L'algoritmo AES ha bisogno prima di espandere la chiave di input in una grande matrice di chiavi, che viene utilizzata per le successive operazioni di crittografia e decrittografia.
2. Round iniziale (Initial Round): L'algoritmo AES esegue una serie di preelaborazioni sui dati di input, tra cui la suddivisione dei dati di input, l'aggiunta di chiavi di round, la sostituzione di byte e lo spostamento di righe.
3. Round: L'algoritmo AES utilizza più round di iterazioni per le operazioni di crittografia, e ogni round di iterazioni include quattro fasi: sostituzione di byte, spostamento di righe, confusione di colonne e aggiunta di chiavi di round.
4. Round finale: L'algoritmo AES esegue una elaborazione speciale sull'ultimo blocco di dati, tra cui sostituzione di byte, spostamento di righe e aggiunta di chiave di round.
5. Uscita: L'algoritmo AES produce come output il blocco di dati crittografato come testo cifrato e l'operazione di decrittografia inserisce il testo cifrato nell'algoritmo AES per la decrittografia.
Nell'algoritmo AES, le operazioni di crittografia e decrittografia sono reversibili e i dati crittografati possono essere decrittografati utilizzando la stessa chiave. L'algoritmo AES fornisce tre lunghezze di chiavi: 128 bit, 192 bit e 256 bit. Maggiore è la lunghezza della chiave, maggiore è la sicurezza dell'algoritmo.
L'algoritmo AES ha un'elevata sicurezza ed efficienza ed è ampiamente utilizzato in vari scenari di sicurezza, come la trasmissione di dati crittografati, lo storage di file crittografati, la firma digitale, ecc.

Algoritmo di decodifica AES

L'algoritmo per decodificare i dati crittografati AES è lo stesso dell'algoritmo di crittografia, ad eccezione del fatto che la chiave viene utilizzata in modo diverso.
Ecco i passaggi per decodificare i dati crittografati AES utilizzando la chiave:
1. Ottenere dati e chiave crittografati AES.
2. Raggruppare le chiavi per lunghezza della chiave, ad esempio una chiave a 128 bit verrà divisa in quattro parole a 32 bit.
3. Determinare il numero di round richiesti in base alla lunghezza della chiave. Ad esempio, utilizzando una chiave a 128 bit sono necessari 10 round, una chiave a 192 bit richiede 12 round e una chiave a 256 bit richiede 14 round.
4. Utilizzare la chiave per decodificare i dati crittografati. Il processo di decodifica include più passaggi, tra cui l'aggiunta di chiave di round, la sostituzione di byte, lo spostamento di riga e l'oscuramento di colonna.
5. Ripetere il processo di decodifica per diversi round.
6. Eseguire un round finale di decodifica, ma omettere lo step di oscuramento di colonna.
7. Infine, i dati decodificati sono ottenuti.
Si noti che la lunghezza della chiave utilizzata dall'algoritmo di crittografia AES deve essere di 128 bit, 192 bit o 256 bit. Pertanto, quando si utilizza l'algoritmo di decodifica AES, deve essere utilizzata una chiave con la stessa lunghezza dell'algoritmo di crittografia per decodificare correttamente i dati.

La dimensione del file supera il limite.

Non puoi caricare altri file.

Aggiorna il tuo account per sbloccare di più

Fatturazione mensile
Fatturazione annuale
-40%

Premium

US$ / Mese
Pagamento una tantum di US$36

Illimitato

US$ / Mese
Pagamento una tantum di US$72