Quando si utilizza la modalità concatenamento CFB con AES, I vedi istruzioni che la "lunghezza in testo semplice (in byte) deve essere un multiplo di segment_size / 8" (citato anche qui ). Cosa significa?
La dimensione del segmento si riferisce alla quantità di testo in chiaro crittografata dall'output dell'operazione di crittografia AES.
AES ha input e output in blocchi da 128 bit e la modalità CFB converte il codice di blocco in un codice di flusso utilizzando un IV, emettendo 128 bit di flusso alla volta.
Nelle modalità segmentate, viene utilizzata solo una porzione di quel flusso. Per una dimensione di segmento a 8 bit, vengono utilizzati solo i primi 8 bit di flusso per crittografare 8 bit di testo in chiaro. I restanti 120 bit non vengono utilizzati. Questi 8 bit di testo cifrato diventano quindi gli ultimi bit del blocco di input.
Come vengono generati i restanti 120 bit del blocco di input dipende dall'implementazione. Potrebbero persino rimanere invariati rispetto alla IV originale. L'alternativa comune è quella di spostare a sinistra il blocco di input precedente per la dimensione del segmento, questo è il metodo descritto in Wikipedia per la crittografia segmentata CFB.
La crittografia segmentata non è ovviamente efficiente quanto l'utilizzo dell'intero blocco di output. Ciò consente la sincronizzazione quando si perdono i dati di un determinato formato.
Il seguente diagramma è estratto da Pubblicazione speciale NIST 800-38a che descrive l'operazione di crittografia segmentata:
Leggi altre domande sui tag encryption aes