Citat:
Originally posted by Brazzan@Jan 11 2008, 20:20
Att använda egensnickrat så som vissa beskriver det, behöver inte alls vara osäkert och lätt att bruteforca. Det gäller dock att vet vad man gör, har tid att göra det och testar funktionen hårt.
Exempel på samma ord
MD5: b7bc47bd82143c3c21943e55d4eae087
Sha1: c3d303de5c0ddf84bc5f1f6f4c758ba47722f746
Min: 50 tecken. Bokstäver, siffror, specialtecken. Dessutom, om man omvandlar samma lösenord två gånger blir det inte samma sträng. Har inte lyckats få en dublett på samma ord på 200 000 000 genererade hashar.
Men hur kan man veta att det är rätt lösenord när man loggar in frågar ni Det ni, det säger jag inte 
Den används inte externt (internet) dock, så man kan aldrig säga att det är supersäkert... allt går att hacka sig igenom.
|
200 000 000 hashar? det är ingenting om man försöker leta efter hashkollisioner...
En säker hashfunktion beräknas lämna en kollision efter 2^(n/2) försök där n = antalet bits på 'slutsumman'.
Så om man har en hashfunktion som ger 50 st tecken (8-bitar) blir det ca 2^200 försök, att köra igenom 2^200 värden kommer att ta miljontals år även om man använder alla jordens datorer samtidigt, det är därför man inte testar hashfunktioner genom vanliga bruteforce attacker.
Ett av dom vanligaste felen när det gäller krypteringskydd är att man försöker göra en egen algoritm.
Det finns nog ingen i världen som kan göra en egen säker kryptografisk funktion helt själv, 99.9% av alla officiella algoritmer som finns har blivit granskade och testade av oberoende experter under en lång period innan dom blivit accepterade som kryptografiskt säkra. Det finns redan många bra säkra algoritmer, därför är det helt onödigt att göra någon egen, och om algoritmen inte ska skydda någonting viktigt behöver man ju ingen...