Crittografia simmetrica

Ci sono molti tipi di crittografia simmetrica, ovvero un tipo di crittografia dove entrambe le parti hanno accesso alla chiave.

Cifrario a trasposizione

Si basa sulla permutazione delle lettere del testo. Si può invertire l’ordine, ITALY ⇒ YLATI

Un altro modo per implementare questo tipo di cifrario è tramite lo scitale greco, che esegue una trasposizione colonnare:

Shift ciphers

Ceasar

Il Ceasar è basata su uno shift cipher.

  • m: alfabeto con 26 simboli con ogni simbolo numerato da 0 a 25
  • k: chiave tra 0 e 25 (Caesar usa k=3)
  • c: testo criptato

Vigenere

Shift cipher polialfabetico. Si utilizza una parola come chiave.

Cifrario a sostituzione

Cifrario a sostituzione polialfabetica

Crittografia moderna

La crittografia moderna utilizza:

  • chiave abbastanza grande da prevenire il bruteforce
  • disegnata per prevenire cryptanalysis del testo cifrato
  • il testo cifrato non si può distinguere da testo random

Perfect secrecy

Schemi sicuri anche dal punto di vista algoritmico, ma non fattibile nell’uso comune.

One time pad

Computational security

Potenzialmente si può conoscere un algoritmo che riesce a rompere la chiave (anche brute force), ma la potenza di calcolo necessaria non è accessibile.

Stream cipher Block ciphers