Hash, maar dan veiliger

Door , 20 jaar geleden, 6.870x bekeken

Dit script genereert een hash van parameter $str.
Het script is niet geschikt om lange strings te hashen, maar eerder bedoelt voor wachtwoorden omdat dit script niet erg snel is als hij lange strings moet hashen.

Ieder teken uit $str wordt afzonderlijk ge'md5't, waarna al deze md5's achter elkaar worden geplakt. Deze (enorm lange) string wordt eerst gecodeerd met base64_encode, daarna ge sha1't en dan nog eens ge md5't.

In php versies lager dan 5 is de tweede functie ook nodig, deze vervangt de str_split functie uit php 5. Plaats script nummer twee wel boven de eerste!
Het tweede script is NIET zelf geschreven maar gekopieerd van php.net

Succes:)

Gesponsorde koppelingen

PHP script bestanden

  1. hash-maar-dan-veiliger

 

Er zijn 11 reacties op 'Hash maar dan veiliger'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Thijs X
Thijs X
20 jaar geleden
 
0 +1 -0 -1
MD5 en een goede SALT is alvoldoende imo, zelfs al je het wilt bruteforcen duurd het eeuwen ( mits je een goede SALT hebt ).
Frank -
Frank -
20 jaar geleden
 
0 +1 -0 -1
Een md5-hash met voldoende tekens en voldoende variatie van tekens, is al niet binnen redelijke tijd na te maken. Wat voegt bovenstaand script dan nog toe aan phphulp waar menig beginner met crimiclowns ligt te klooien?

Een betere beveiliging dan md5 of sha1 met een snufje zout, voegt niks toe aan huis-tuin-en-keuken-scriptjes, het maakt de boel alleen maar langzamer. En zorgt voor schijnveiligheid, niet geheel onbelangrijk.
Martijn B
Martijn B
20 jaar geleden
 
0 +1 -0 -1
Sorry, maar sha1 voldoet nog tenminste tot 2010, volgens de Amerikanen.

Je zou ook sha256 (of nog bruter ;D) kunnen gebruiken.
Maar dan moet je nog oppassen met kleine wachtwoorden.

zie: http://nl3.php.net/manual/en/function.hash-algos.php
Bart Waarom verplicht
Bart Waarom verplicht
20 jaar geleden
 
0 +1 -0 -1
SHA1 is al gekraakt.
Frank -
Frank -
20 jaar geleden
 
0 +1 -0 -1
@M-D: Wat wil je daarmee zeggen? Dat het voor jan-met-de-pet niet meer veilig is? Alles is te kraken, zeker met gebruikers die zwakke wachtwoorden gebruiken. md5, sha1, sha256, allemaal leuk en aardig, maar zolang er gebruikers zijn, zijn die gebruikers het zwakste punt. Een beetje hobbieen met extra beveiliging is leuk en aardig, maar ga niet denken dat je daarmee de beveiliging op een hoger niveau brengt. Dan zou je jezelf voor de gek houden.
Kwastie
Kwastie
20 jaar geleden
 
0 +1 -0 -1
Zoals thijs ook al gezegt heeft gebruik een salt key. dit werkt zo

$password = sha1(sha1($password).$saltkey); deze saltkey moet je opslaan in de database.. dit is zo goed als onhackbaar ..(zeker bij 8 charakters)
Wouter K
Wouter K
20 jaar geleden
 
0 +1 -0 -1
Thijs schreef op 03.01.2008 19:24
MD5 en een goede SALT is alvoldoende imo, zelfs al je het wilt bruteforcen duurd het eeuwen ( mits je een goede SALT hebt ).


@thijs : kan je soms uitleggen hoe te bruteforcen ? Hoe je dat doet
Joren de Wit
Joren de Wit
20 jaar geleden
 
0 +1 -0 -1
wouter:
kan je soms uitleggen hoe te bruteforcen ? Hoe je dat doet
Bruteforcen is het simpelweg uitproberen van alle mogelijke combinaties van tekens tot je het juiste wachtwoord/code gevonden hebt.
Niels
Niels
20 jaar geleden
 
0 +1 -0 -1
Als je een gecodeerd wachtwoord wil kraken moet je wel eerst weten hoe deze gecodeerde is zeg maar.

Stel je doet dit:
md5(sha1(md5($wachtwoord)));
Dan moet de 'hacker' dit maar net weten, of zeg ik nou dingen die niet waar zijn?
Phpnuke r
phpnuke r
17 jaar geleden
 
0 +1 -0 -1
zo kan je inderdaad mooi doorgaan Niels(of kan dit niet:?)

md5(sha1(md5(md5(sha1(sha1(md5($wachtwoord)))))));
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen


17 jaar geleden
 
0 +1 -0 -1
Je reageert op een bericht van drie jaar terug.
Maar goed, doe NOOIT meerdere hash-methodes over elkaar heen.
Een hash is een string van een bepaald aantal tekens die bestaat uit bepaalde karakters. Dit betekend dus dat hash in feite minder uniek was dan je oorspronkelijke string (alleen heb je een paar voordelen: het is makkelijker werkbaar, niet zichtbaar en makkelijk vergelijkbaar). Doordat je iedere keer de string minder uniek gaat maken zal je wellicht uiteindelijk steeds op dezelfde string uitkomen.

Wat je wel moet doen is gebruik maken van een salt.

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. hash-maar-dan-veiliger

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.