ahccc FAQ
--[ CRIPTING ]--
Q) Dove posso trovare un buon
testo (italiano) che parli di crittografia?
A) Una piccola bibbia in materia e' considerato
il libro kriptonite, che puoi trovare interamente su
Q) Qualcuno mi puo' spiegare
l'algoritmo per crittare le password unix?
A) I sistemi *nix usano una funzione chiamata
crypt() per cifrare le password che mettono in /etc/passwd.
Il login NON decrifra la password, ma cifra la password che l'utente
ha inserito e la confronta con quella in /etc/passwd. La funzione crypt()
e' basata sul DES a 56 bit. La funzione prende la password inserita e la
usa per cifrare un blocco di zeri, il risultato viene di nuovo cifrato
con la password utente ed il tutto ripetuto per 25 volte, attivita'
abbastanza pesante in termini di cpu-time.
Crypt() ideato da Morris e Thompson ha delle tabelle di DES modificate
per evitare l'uso "dizionari" cifrati e per evitare che chip DES-cracker
"standard" possano facilmente decifrare le password.
A questo punto i sacri libri recitano la litania della sicurezza relativa
di una password cosi' concepita che lascia spazio in pratica solo al brute-force
attack.
Viene comunque considerata "sicura" dai crittografi.
La modifica fatta dal dinamico duo M/T e' un numero di 12 bit compreso
fra 0 e 4095 che viene scelta diverso ogni volta che viene cifrata una
password.
In questa maniera ogni password viene cifrata in 4096 maniere diverse.
Alcuni sistemi tipo HP/UX usano un crypt() modificato chiamato bigcrypt()
o crypt16() che usa 16 o piu' caratteri in ogni password contro lo standard
a 8.
Per completezza alcuni UniX hanno la possibilita' di utilizzare sistemi
diversi per la cifratura, per ottenere le One-time password (ma io
non li ho mai visti).
P.S.
Esiste anche un programma crypt per la cifratura di password (credo
sia un one-time crypt) che NON è quello che usa UniX.
Q) Cosa si intende per "steganografia"?
A) In poche parole e' l'arte di nascondere dati
in maniera quasi trasparente in un altro file.
Quindi potrebbe essere un metodo steganografico il nascondere un testo
in una immagine, a scapito di un leggero disturbo che passi abbastanza
inosservato, o in un file audio, magari a discapito di un leggero fruscio
di fondo. il vantaggio di questo metodo e' che un eventuale terzo personaggio
un po' indiscreto che riesce ad appropriarsi di tali file non e' portato
a pensare che nascondano un tipo di informazione estraneo alla sua natura;
per esempio se viene in possesso di un file grafico, non sara' portato
a pensare che nasconda qualcosa, ma credera' probabilmente che sara' solo
un'immagine
Q) Come funziona l'algoritmo
OTP?
A) Molto semplice: e' un algoritmo di cifratura
*teoricamente* inviolabile, e di una semplicita' estrema.
Prendi una sequenza casuale di 0 e 1, e prendi il tuo messaggio. Fai
un bel xor e la cifratura e' servita:
sequenza: 01110010100110
messaggio: 10011011101010
cifrato: 11101001001100
Per decifrare basta usare la stessa chiave di partenza, cioe' la sequenza casuale, e rifare lo XOR:
cifrato: 11101001001100
sequenza: 01110010100110
messaggio: 10011011101010
Pro di questo metodo: il cifrato risultera' essere una sequenza casuale di 0 e di 1, quindi qualcosa senza alcun senso, qualcosa di inviolabile.
Contro: bisogna avere una chiave grande almeno quanto il messaggio (a meno di non reciclare la chiave riapplicandola). Ma la controindicazione maggiore e' il fatto che la chiave di cifratura bisogna scambiarsela: chi invia e chi riceve devono utilizzare la stessa chiave, quindi entra in gioco il fatto di avere un canale sicuro per scambiarsi la chiave.
Q) E' possibile crittare un
messaggio e renderlo inviolabile al 100% ?
A) L'inviolabilita' totale e' solo teorica.
Molti degli algoritmi usati per crittare si basano su teoremi matematici
per ora inconfutati. Qualora dovessero risultare falsi, allora si correrebbe
il rischio che tale sistema di codifica non possa piu' ritenersi sicuro.
Altra considerazione va fatta sulla potenza dei computer in continua
crescita: algoritmi come quello usato da PGP funzionano in base alla ricerca
di numeri primi, operazione matematica computazionalmente troppo pesante
per poter pensare di effettuarla per numeri molto grandi. Di recente
e' stata craccata la chiave a 512 bits, che fino ad un po' di tempo fa,
avendo a disposizione computer di potenza piu' limitata, si pensava fosse
piu' che sicura. Lo stesso si pensa oggi per la chiave a 1024 bits, ma
magari tra qualche anno sara' violabile [attenzione che si parla sempre
di reti di computer, di calcolo distribuito anche via internet, non di
un'unica potentissima workstation, che da sola forse non riuscirebbe a
craccare una chiave a 128 bits]
Ultima considerazione: il fatto che abbiano craccato la chiave a 512
bits non vuol dire che questa sia ora insucura per l'utente medio.
Il tempo necessario e' stato dell'ordine di grandezza del mese, e il
numero di computer coinvolti era notevole
Q) Come posso scrivere tranquillo
Echelon a parte?
A) Ci sono almeno 2 modi tramite le quali puoi
aggirare sistemi del genere:
-steganografia
-crittografia
Oppure anche un terzo metodo, incasinare il sistema con false mail:
<Master>
ma lo sai che durante un wire transfer ho un e-cash!
Se Bubba "the Love" mi facesse lo Sponge col Digicash
e uno zip io avrei piu' SWAT da Ortega su PPP. Certo
il crypto-anarchy dell' AT&T con un SGI su un SUN
MCI fa molto Blacknet Middleman. Ma del resto KLM Blackbird
non avevo piu' plutonium del Texas e jihad col suo SDI
Uzi di Fort Meade lavorava su un supercomputer bullion
3 della Blackmednet. Facendo un po' di Propaganda per ABC Satellite
con i phones di Planet-1 si dice che cryptanalysis del nuclear
e' un prodotto FBI di Panama forse fissionable ma di certo
Sears Tower. Anche NORAD lo sa! Volendo i Delta Force e i SEAL
hanno virtual Dolch e secure shell sulle screws di Black-Ops.
Viva l' Area51.
:))
Cia (o) a tutti.
</Master>