Wachtwoord hash

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ervaren C# .NET developer gezocht, hardware interf

Je bent een ervaren .NET C# developer woonachtig ergens tussen Dordrecht en Rotterdam en op zoek naar een nieuwe uitdaging? Binnen een leuke, kleine en informele club van enthousiaste mensen? En het bouwen van Windows Services en de communicatie tussen software en hardware interfaces spreken je aan? Wellicht dat dit bedrijf dan iets voor jou is. Voor een organisatie in de regio Ridderkerk zijn we op zoek naar een .NET C# developer. Het bedrijf richt zich op een specifieke branche binnen de logistieke sector. Dit doen ze inmiddels ruim 15 jaar en momenteel werken er ca. 50 mensen. Door het

Bekijk vacature »

Junior .NET Programmeur

Organisatie De organisatie is een dynamisch bedrijf dat zich focust op dienstverlening. De core bussiness is het ontwikkelen en optimaliseren van innovatieve software oplossingen voor de overheid en het bedrijfsleven. Er word met een topteam van 10FTE gewerkt aan de meest innovatieve oplossingen. Zeven van de tien werknemers zijn IT’er en de rest houdt zich bezig met de randzaken: sales en HR. Samen met haar partners kijkt het bedrijf hoe er op een nog innovatievere manier gegevens kunnen worden gevisualiseerd en geïmplementeerd. Ze zijn er bij deze organisatie van overtuigd het integraal ontsluiten van gegevens sneller, goedkoper, veiliger en kwalitatief

Bekijk vacature »

Enthousiaste Junior web based C# developer

Bedrijfsinfo Momenteel ben ik op zoek naar een creatieve software ontwikkelaar die ervaring heeft met het ontwikkelen van web based applicaties. Je gaat werken in een organisatie die al 20 jaar een bepalende speler is op de markt van web oplossingen. De organisatie telt momenteel 10 werknemers, waarvan er 5 op de development afdeling werkzaam zijn. Je komt te werken in een organisatie met een zeer open cultuur waarin het gehele team in 1 grote ruimte zit. Dit zorgt voor een leuke informele werksfeer onder het jonge team waarin de gemiddelde leeftijd rond de 30 ligt. Functie-omschrijving Jouw taak als

Bekijk vacature »

Medior PHP developer

Waar kom je terecht? In deze gezellige Delftse organisatie slaan zij de brug tussen makelend Nederland en online marketing. Je komt binnen in een grote open ruimte dat er uit ziet als een soort glazen bunker (hoe vet is dat)! Samen met diverse jonge en informele collega’s zorgen zij er dagelijks voor dat elke dag, weer een gezellige dag wordt waarin zowel hard gewerkt als veel gelachen wordt. Met ruim 10 jaar ervaring in het ontwikkelen van online marketing producten voor de makelaardij, laten ze zien dat ze het makelaarsvak begrijpen, zowel een kopers- als een verkopersmarkt. Omdat de online

Bekijk vacature »

JavaScript Developer voor snelgroeiende innovatiev

Vacature Omschrijving Dit bedrijf is een snelgroeiende FinTech organisatie die concurrenten ver achter zit laat en vooroploopt met haar onlinediensten op het gebied van Vermogensbeheer. Het bedrijf helpt klanten met het bereiken van hun financiële doelen door advies te geven op het gebied van beleggingen. Klanten kunnen online een rekening openen, beleggingen aankopen/verkopen, rendement monitoren in hun persoonlijke dashboard en nog veel meer. Dit alles gebeurt in een Javascript webapplicatie. Functieomschrijving Om deze webapplicatie up to speed en up to date te houden, maar vooral om nieuwe state of the art features in te bouwen, zijn zij op zoek naar

Bekijk vacature »

PHP Developer met interesse in de logistiek

Vacature Omschrijving Dit snelgroeiende bedrijf in een rustige omgeving in Noord-Brabant is op zoek naar uitbreiding van hun ontwikkelaars team. Het is een marketing communicatie bedrijf die met hun eigen CRM systeem werkt. Inmiddels is het bedrijf in 8 jaar uitgegroeid tot een club van 60 man. Er zijn verschillende vestigingen geopend in Nederland en ze zijn continu op zoek naar vernieuwing. Functieomschrijving Je gaat werken in een team van 6 personen. De organisatie heeft een eigen CMS ontwikkeld en je zult vooral aan technische projecten gaan werken met het team. Er word gezocht naar een proactieve PHP ontwikkelaar. Elke

Bekijk vacature »

Senior PHP ontwikkelaars gezocht in de groene sect

Functieomschrijving Als ervaren PHP developer kom je te werken in een team van vakspecialisten waarbij er gewerkt wordt volgens de Agile Methode. Je gaat werken aan de eigen ontwikkelde systemen van deze organisatie, hierin bouw je aan nieuwe applicaties en functionaliteiten. Ook het doorontwikkelen van bestaande producten zal in je takenpakket vallen. Het IT team bestaat uit meerdere SCRUM project teams waarbij gewerkt wordt met korte sprints. Technieken die gebruikt worden zijn PHP (framework Symfony), DDD, Continuous, Delivery, Git en de bekende front end technieken. Functie-eisen - HBO werk en denkniveau; - PHP kent geen geheimen voor jou; - Ervaring

Bekijk vacature »

Medior C# Developer

Vacature Omschrijving De financiële wereld is absoluut saai en de verzekeringswereld ook, maar niet bij dit bedrijf. Geloof je het niet? Let them prove it. Dit bedrijf is in 2010 begonnen in een kelderkamertje en zijn nu al met ruim 100 man. Zij houden zich bezig met pensioenen en vermogens. Dit klinkt natuurlijk saai, maar gelukkig niet bij hun. Zij doen het op hun eigen manier. Zij zijn van mening dat het anders moet met lage kosten, begrijpelijke producten en lekker hard rennen voor je klant. Ze hanteren een open en frisse cultuur, lekker informeel. Met dit bedrijf krijg je

Bekijk vacature »

Junior .NET Developer

Organisatie Leef jij voor muziek, heb je minimaal één jaar ervaring als .NET developer en ben je toe aan een nieuwe uitdaging omgeving Oss? Deze toonaangevende organisatie met ruim 15 jaar ervaring in de muziekbranche is klaar voor de internationale stap en zoekt daarom een ambitieuze webdeveloper. Het bedrijf zit gevestigd in Oss maar heeft wegens succes ook ambities wereldwijd te gaan, te starten in Australië, Engeland, Duitsland en binnenkort Amerika. Wanneer je in contact staat met dit bedrijf merk je dat er één gemeenschappelijke bindende factor is: Iedereen houdt onwijs veel van muziek. In het jonge team is dan

Bekijk vacature »

Senior .NET Developer / Innovator / Disruptor

Organisatie Direct bij binnenkomst word je gegroet door vrolijke baliemedewerkster. Jij loopt door de open gangen door naar de ontwikkelaarsruimte. Hier staat de dampende koffie op je bureau al op jouw te wachten. Je bent iets vroeger aangekomen, dus jij begroet de rest van jouw team ook bij binnenkomst. Jullie zijn namelijk écht een hechte club! Als losse start-up binnen de grote moederorganisatie waar jullie deel van uit maken zien jullie jezelf ook als innovators en disruptors (denk Billy Beane in Moneyball). Iedere dag zijn jullie als team bezig om grote veranderingen door te voeren binnen de financiële branche! Jouw

Bekijk vacature »

Software Developer PHP Java Node.js regio Gouda

Functieomschrijving Ben jij een gemotiveerde back-end ontwikkelaar en heb je ervaring met PHP, Java en Node.js? Wil je aan technisch uitdagende projecten werken en de ruimte krijgen om jezelf zeer breed te ontwikkelen? Reageer dan snel! Ontwikkelen van multiplatform software oplossingen (Windows en Linux); Meedraaien in vernieuwende projecten; In kaart brengen van requirements en specificaties met klanten; Maken en onderhouden van documentatie en ondersteunen van klanten. Functie-eisen Een afgeronde technische HBO opleiding; Kennis en ervaring met PHP, Java, Node.js en Linux; Kennis van MySQL, XML,JSON en (RESTful) API's; Zowel goed zelfstandig werken als in teamverband; Kennis van CI/CD en netwerkprotocollen

Bekijk vacature »

Medior .NET Developer regio Den Bosch

Organisatie Voor dit toffe familiebedrijf ben ik op zoek naar een Medior .NET Developer in de regio Den Bosch. Het is een echt IT bedrijf, die inmiddels al meer dan 30 jaar bestaat. Ze maken hun eigen software en hier zal jij je dan ook volledig op focussen! Het bedrijf kenmerkt zich door een platte organisatiestructuur, waarbij de werkruimte voor programmeurs informeel is ingericht en waarbij er in scrum teams wordt gewerkt, in teams van 5 personen. Aan de voorkant van het bedrijf is het strakker. Aangezien de overheid een van de grootste klanten is, is de voorkant zakelijker ingericht.

Bekijk vacature »

Junior .NET C# developer gezocht

Organisatie Voor een marktleider in de omgeving van Waalwijk ben ik op zoek naar een Junior .NET developer. Het bedrijf is de grootste speler op het gebied van koeltechnieken. Er heerst een informele bedrijfscultuur waarbij je genoeg vrijheid en mogelijkheden hebt om je eigen ideeën te uiten en om je ideeën ook daadwerkelijk door te voeren. De organisatie heeft diverse wisselende projecten. Denk aan projecten variërend van 3 maanden of meer, maar ook projecten van 2 weken. Je zult samen gaan werken met 1 senior .net engineer en 2 medior ASP.net, C# ontwikkelaars. Het team bestaat uit pure liefhebben op

Bekijk vacature »

medior .NET Developer

Organisatie Deze Digital Agency specialiseert zich met name op klanten in de non-profit sector. Het concept, de code, het design en vervolgens de online marketing wordt volledig uit handen genomen door deze organisatie. Met ruim 30 man in dienst in een organisatie die al ruim 9 jaar bestaat kom je terecht in een omgeving waar zowel backend als frontend developers werken en wat marketeers. Opererend vanuit omgeving Tilburg bedienen ze de gehele Nederlandse markt met een breed klantenbestand van goede doelen tot overheidsinstanties. De meeste applicaties worden wereldwijd gebruikt en hebben tienduizenden eindgebruikers. Een leuke bijkomstigheid aan deze organisatie is

Bekijk vacature »

Als .NET developer software voor digitale dienstve

Vacature Omschrijving Deze fraaie partij levert sinds 1998 software voor digitale dienstverlening. Van digitale formulieren tot procesoptimalisatie en van zaakgericht werken tot kennismanagement. De missie is om iedereen in staat te stellen kennis en processen, ongeacht complexiteit, snel en eenvoudig te automatiseren. Dit is hoe zij er alles aan doen om het verschil te maken in IT-beleving. De oplossingen maken het inrichten van complexe in- en externe processen eenvoudiger. Ze brengen de kwaliteit van dienstverlening naar een hoger niveau zonder ingewikkelde techniek. De drive en expertise binnen deze groeiende werkgever spreken voor zich en hier zijn ze trots op: ze

Bekijk vacature »
Ozzie PHP

Ozzie PHP

12/02/2019 14:49:40
Quote Anchor link
Wat is tegenwoordig de beste manier om wachtwoorden te hashen? En welke algoritme te gebruiken?

Iemand wellicht een voorbeeldje?
 
PHP hulp

PHP hulp

22/08/2019 18:46:24
 
- Ariën -
Beheerder

- Ariën -

12/02/2019 16:33:35
Quote Anchor link
Ikzelf gebruik password_hash die zelf bcrypt gebruikt. Maar er is nog meer mogelijk:

Quote:
The following algorithms are currently supported:

PASSWORD_DEFAULT - Use the bcrypt algorithm (default as of PHP 5.5.0). Note that this constant is designed to change over time as new and stronger algorithms are added to PHP. For that reason, the length of the result from using this identifier can change over time. Therefore, it is recommended to store the result in a database column that can expand beyond 60 characters (255 characters would be a good choice).
PASSWORD_BCRYPT - Use the CRYPT_BLOWFISH algorithm to create the hash. This will produce a standard crypt() compatible hash using the "$2y$" identifier. The result will always be a 60 character string, or FALSE on failure.
PASSWORD_ARGON2I - Use the Argon2i hashing algorithm to create the hash. This algorithm is only available if PHP has been compiled with Argon2 support.
PASSWORD_ARGON2ID - Use the Argon2id hashing algorithm to create the hash. This algorithm is only available if PHP has been compiled with Argon2 support.


Controleren moet je doen met password_verify
Gewijzigd op 12/02/2019 16:34:26 door - Ariën -
 
Thomas van den Heuvel

Thomas van den Heuvel

12/02/2019 17:11:03
Quote Anchor link
Ik begrijp dat dit belangrijk is, maar ik durf haast te zeggen dat dit lang niet het belangrijkste (of enige belangrijke ding) is.

Om de veiligheid van applicaties te waarborgen werk je met lagen. Het hashen van je wachtwoord is daar slechts één van, die meer garandeert dat iemand zijn/haar originele wachtwoord niet achterhaald kan worden dan dat dit de applicatie nu echt veiliger maakt.

Het zou bijvoorbeeld al meer helpen wanneer je afdwingt dat een wachtwoord aan bepaalde criteria zou moeten voldoen (lengte, karaters, case), en dat deze eens in de zoveel tijd veranderd zou moeten worden. In die zin maakt een ingewikkeld(er) hashing mechanisme je applicatie niet veiliger.

Er is ook geen "beste manier". Er is misschien wel een "beste (of op zijn minst goede/acceptabele) manier voor situatie X".
 
Ozzie PHP

Ozzie PHP

12/02/2019 17:51:18
Quote Anchor link
@Ariën

Thanks. Bedoel je dan deze? PASSWORD_BCRYPT


@Thomas

Ik snap dat er meer lagen zijn, maar ik wil specifiek weten wat de beste hashing methode is op dit moment. Bijvoorbeeld MD5 is geen aanrader.
 
Thomas van den Heuvel

Thomas van den Heuvel

12/02/2019 18:04:32
Quote Anchor link
> Bijvoorbeeld MD5 is geen aanrader.
WAAROM niet :p.

Ik ken de redenen wel een beetje, en de "industrie" plaatst dit mechanisme in het verdomhoekje, maar als MD5 als hashingmethode een probleem vormt, wil dat dan niet zeggen dat er op een andere plek iets mis is?

Brute force: dan zit er geen limiet op het aantal inlogpogingen?
Collisions/toevalstreffers: wachtwoord te zwak?
Toegang tot database verkregen: ik denk dat het ontcijferen van wachtwoorden dan het minste van je problemen is.

> de beste hashing methode
Bestaat niet. Security is ook een tradeoff versus oa gebruikersgemak. Zo levert een hogere cost dan wellicht een betere versleuteling (?) op, maar wil je dan seconden langer wachten als je inlogt?

Je bent in je vraagstukken vaak op zoek naar "het beste" zonder dat je dit toepast op een concrete situatie.

Dit is zoiets als "wat is de beste manier om drukwerk op te bergen"? Who knows? Een kartonnen doos? Een gelakte eikenhouten boekenkast? Een vitrine met klimaatcontrole? Wat voor drukwerk betreft het uberhaupt? Een kopie van een meesterwerk met zeer beperkte oplage? Een antieke geillustreerde bijbel? De Donald Duck? Hoe kun je in hemelsnaam zo'n vraagstuk eenduidig beantwoorden?

Ik denk dat je veel te veel leunt op theorie, en te weinig op een praktische toepassing.
Gewijzigd op 12/02/2019 19:30:00 door Thomas van den Heuvel
 
- Ariën -
Beheerder

- Ariën -

12/02/2019 19:53:08
Quote Anchor link
MD5 kent voor zover ik weet veel mogelijkheden tot collisions, waardoor het behoorlijk zwak is. Tot hoever weet ik zelf niet echt.

Zelf gebruik ik het niet voor wachtwoorden, en enkel voor plekken waarbij een unieke code van belang is. Zoals mijn CMS waarbij ik nieuwe en niet-opgeslagen nieuwsitems toch een tijdelijk ID meegeef voor het koppelen/uploaden van afbeeldingen.
 
Ozzie PHP

Ozzie PHP

12/02/2019 20:13:56
Quote Anchor link
@Aar

Kun je mijn vraag nog even beantwoorden?

@Thomas

Ik snap je wel, maar er bestaat ook zoiets als algemeen gangbaar. En MD5 is dat zeker niet. Ik denk / mag hopen dat je snapt wat ik bedoel. Ik wil gewoon een fatsoenlijke en veilige hashingmethode en of iemand dan een tiende van een seconde moet wachten om in te loggen, boeit me eerlijk gezegd geen @!w#@!. Het gaat erom dat het veilig is, en van MD5 (wat ik puur even als voorbeeldje gaf) is algemeen bekend dat dat niet meer als veilig wordt beschouwd. Ik vraag ook niet naar andere methodes van security, enkel naar wat een goede en gebruikelijke hashingmethode is ;-)
 
Rob Doemaarwat

Rob Doemaarwat

12/02/2019 20:31:30
Quote Anchor link
Volgens mij is het gewoon de bedoeling dat je password_hash / password_verify, en password_needs_rehash gaat gebruiken. Team-PHP zorgt er dan voor dat je altijd "de beste" hashing hebt (wat dat dan ook is). Het voorkomt in ieder geval dat ieder weer z'n eigen algoritmes moet knutselen die na een paar jaar zonder onderhoud / met nieuwe inzichten volledig achterhaald zijn.
 
- Ariën -
Beheerder

- Ariën -

12/02/2019 20:39:48
Quote Anchor link
@Ozzie: Standaard gebruikt password_hash() bcrypt.
Als je PASSWORD_BCRYPT meegeeft aan de functie wordt er Blowfish Crypt gebruikt, maar de standaard Bcrypt is er enkel van afgeleid.
 
Ozzie PHP

Ozzie PHP

12/02/2019 21:46:59
Quote Anchor link
@Rob

Maar als je het overlaat aan het 'team' en niet expliciet een algoritme aangeeft, heb je wel een probleem als het team dat algoritme wijzigt. Dan kan niemand meer inloggen.

@Ariën

>> Als je PASSWORD_BCRYPT meegeeft aan de functie ...

Geef jij zelf PASSWORDT_BCRYPT mee aan de functie? Of gebruik je de default?
 
Rob Doemaarwat

Rob Doemaarwat

12/02/2019 22:20:30
Quote Anchor link
Daarom moet je na een succesvolle password_verify() ook even een password_needs_rehash() doen (zie example #1).
 
- Ariën -
Beheerder

- Ariën -

12/02/2019 22:25:32
Quote Anchor link
Ozzie PHP op 12/02/2019 21:46:59:
@Rob

Maar als je het overlaat aan het 'team' en niet expliciet een algoritme aangeeft, heb je wel een probleem als het team dat algoritme wijzigt. Dan kan niemand meer inloggen.

@Ariën

>> Als je PASSWORD_BCRYPT meegeeft aan de functie ...

Geef jij zelf PASSWORDT_BCRYPT mee aan de functie? Of gebruik je de default?

Nee, ik gebruik de standaard.


Toevoeging op 12/02/2019 22:31:41:

Rob Doemaarwat op 12/02/2019 22:20:30:
Daarom moet je na een succesvolle password_verify() ook even een password_needs_rehash() doen (zie example #1).

Goed idee....
Maar wanneer zou de hash niet meer kloppen? Bij een wijziging van de PHP-versie of de cost?
Gewijzigd op 12/02/2019 22:31:59 door - Ariën -
 
Ozzie PHP

Ozzie PHP

12/02/2019 23:40:25
Quote Anchor link
@Aar

"As mentioned on the Password Hashing Predefined Constants and password_hash pages, the algorithm used by PASSWORD_DEFAULT is subject to change as different versions of PHP are released."

Anders gezegd, met de default optie (die jij dus gebruikt) kan een keer het algoritme veranderen. Dat zou dan inhouden dat niemand meer kan inloggen. Oeps ...
 
- Ariën -
Beheerder

- Ariën -

12/02/2019 23:56:35
Quote Anchor link
En in dat geval lijkt die password_needs_rehash() erg handig ;-)
Weer wat geleerd.
 
Thomas van den Heuvel

Thomas van den Heuvel

13/02/2019 00:26:29
Quote Anchor link
> Het gaat erom dat het veilig is, en van MD5 (wat ik puur even als voorbeeldje gaf) is algemeen bekend dat dat niet meer als veilig wordt beschouwd.
Een verkeerd gebruik van welke methode dan ook is per definitie niet veilig. Gebruik maken van password_hash() en password_verify() maakt oplossingen ook niet automagisch "veilig". Dit is een complete misvatting. Stel dat jouw oplossing dit gebruikt, maar je query is vatbaar voor SQL-injectie, dan kan ik wel een wachtwoord + een hash verzinnen en meegeven zodat dit resultaat oplevert. Sterker nog, er zijn hele volksstammen die zo denken, en vervolgens het evangelie lopen te verkondigen met baggertutorials op YouTube.

> Ik vraag ook niet naar andere methodes van security, enkel naar wat een goede en gebruikelijke hashingmethode is ;-)
Actually, je vroeg (zoals vanouds?) weer naar de "beste" oplossing. Ik heb geen idee wat dit in jouw geval betekent.
 
Ozzie PHP

Ozzie PHP

13/02/2019 00:37:45
Quote Anchor link
@Aar

Ik denk dat die check niet nodig is als je zelf expliciet een algoritme kiest.

@Thomas

>> Een verkeerd gebruik van welke methode dan ook is per definitie niet veilig.

Dat klopt. Maar jij gaat nu uit van "als dan" situaties en dat kun je overal dan wel op toepassen. Je kunt in een heel veilige auto rijden, maar als je tijdens het rijden je autoportier wagenwijd openzet, kun je erop wachten dat je vroeg of laat uit de auto dondert ;-)

Als ik vraag wat een veilige auto is, dan zou een antwoord kunnen zijn "een Volvo vanwege een grote kreukelzone", en dan zit ik niet te wachten op / kan ik niet zoveel met een antwoord à la "geen enkele auto is veilig als je je gordel niet omdoet".

Ik hoop dat je een beetje begrijpt wat ik je probeer te zeggen. Ik snap dat een hashing methode op zichzelf geen unieke garantie biedt voor een veilige website. Dat was echter mijn vraag ook niet. Mijn vraag is wat heden ten dage wordt beschouwd als de beste manier om een wachtwoord te hashen. Niks meer en niks minder. En volgens mij valt daar best een concreet antwoord op te geven.
 
- Ariën -
Beheerder

- Ariën -

13/02/2019 00:52:33
Quote Anchor link
@Ozzie: Volgens mij klopt het. Maar ik gebruik, zoals ik al zei, de standaard algoritme in PHP. Ik heb geen zin om die boel opnieuw te compileren :-P

Dan is er nog wat interessants...

En wat als je tussentijds switched van algoritme?
Stel je gebruikt nog md5 en je wilt leden zonder een password-reset een veiliger password geven?

Is het dan slim om in de ledentabel een veld aan te maken hoe het wachtwoord gehashed is (md5, crypt), en bij een oude onveilige encryptie dit na het succesvol inloggen het ingevoerde wachtwoord omzetten naar de veilige variant, en het record te flaggen met 'crypt' i.p.v. 'md5'? Of zijn er nog dingen om over na te denken?

Uiteraard lijkt het mij wel handig om niet eeuwig hashes van zwakke algoritmes te gebruiken in een inlogsysteem, en op dat moment de deur tijdelijk dicht doen totdat ze een nieuw wachtwoord hebben aangemaakt.
Gewijzigd op 13/02/2019 00:54:27 door - Ariën -
 
Ozzie PHP

Ozzie PHP

13/02/2019 01:42:32
Quote Anchor link
Het lijkt me dat ze niet een nieuw wachtwoord hoeven in te geven, maar dat je het bestaande wachtwoord opnieuw hasht en opslaat. Daar is die password_needs_rehash() volgens mij precies voor bedoeld. Die kan blijkbaar detecteren of het algoritme gewijzigd moet worden, en zo ja ... dan opnieuw genereren en opslaan.
 



Overzicht Reageren

 
 

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.