[PIPython] Algoritmo che verifica l'efficenza di una password

Luigi Pantano pantano.luigi
Gio 28 Lug 2005 10:19:37 CEST


Il 28/07/05, Andrea Giammarchi<andrea a 3site.it> ha scritto:
> Luigi Pantano wrote:
> 
> >Allego a questa email il file zip contenente l'algortmo.
> >
> Lo studio da te effettuato e' sicuramente ottimo.
> Tutta quella teoria pero' cade se il brute force viene fatto al
> contrario, partendo da z piuttosto che da a, sbaglio ?

Supponiamo di avere una password di 6 caratteri solo numerici (un
bancomat)...sicuramente il metodo di brute force partira' da 0 per
arrivare al valore 10^6 -1. E' improbabile che parta a
contrario...perche' le combinazioni fino a 4 caratteri vengono trovate
quasi subito rispetto a quelle di 6,7,8,... Lo scopo del brute force
e' quello di trovare il maggior numero di password nel minor tempo
possibile.

> Inoltre non considera che un brute forcing veramente fatto bene potrebbe
> anche fare tentativi pseudo casuali, impedendo di sapere quando trovera'
> il risultato o con quale percentuale di riuscita, puo' essere il primo,
> come l' ultimo.
> 
sinceramente questo non l'ho capito.

> Oltre questi appunti, scrivendo una password da non so quante cifre con
> tutte z mi da percentuale di sicurezza 192.0 % ... il che mi fa supporre
> che come metodo scientifico ha qualcosa da rivedere, tipo che dovresti
> in qualche modo misurare il contenuto assieme alla lunghezza, ovvero
> come dici che 'aaaaaz' e 'zaaaaa' hanno lo stesso numero di combinazioni
> ma la seconda e' piu' difficile da trovare, dovresti riuscire a
> calcolare qualcosa tipo:
> 
> caratteri utilizzati: 6
> affidabilita' per numero caratteri: 10%
> sicurezza per questo numero di caratteri: 30%
> 
> o qualcosa di simile ... dove affidabilita' e' una percentuale da 0 a
> 100 che vale 0 sotto i 6 caratteri e 100 da 32 in su ( sparo cifre a
> caso ma 32 penso sia una password veramente anti brute force ) e la
> percentuale di sicurezza e' misurata in base a quel numero di caratteri.
> 
> Forse gia' l' hai fatto e non ho letto bene tutta la questione, mi sono
> limitato a scrivere e(password) e leggere i vari risultati a seconda di
> password.
> 
La bonta' di questo algortmo consiste nei coefficenti K che vanno a
moltiplicare l'efficenza intrinseca della password. Se leggi la
documentazione troverai riscontro di queste mie parole. Inoltre di
coefficenti k se ne possono calcolare tutti quelli che si vogliono. Ad
esempio si potrebbe calcolare un coefficente k che verifica
particolari simmetrie nella password, e nel caso cio' si verifichi
tenda a dimezzare il il valore del''efficenza della password.

> 
> Sono solo opinioni personali e non vogliono togliere niente al tuo utile
> ed interessante lavoro.
> 
Queste sono critiche costruttive, che possono solo giovare al mio
modesto lavoro. Per questo motivo ti ringrazio e ringrazio chiunque
voglia darmi il suo parere sul mio  operato.
> Saluti,
>     andr3a
> 
Ricambio

> P.S. ho gia' fatto un sistema di brute forcing per MD5 in ANSI C , fino
> a sorgenti di 8 caratteri puo' impiegare ore ma mi ha sempre trovato il
> riscontro, se interessato ti posto il link al mio schifo-programmino :-)

certo, mi interessa molto.

P.S.
un buon sito (o libro) di critto-analisi sai consigliarmelo?

-- 
Luigi Pantano


More information about the Python mailing list