Wachtwoord hashen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior/Medior Front-end developer

Functie Als Front-end developer werk je intensief samen met 1 van de UX-designers en denk je mee over de gebruiksvriendelijkheid en design van onze web- en mobile apps. Je bent betrokken bij sessies met gebruikers om designs te valideren en usability van de app-in-wording te testen. Vervolgens gebruik je dit om samen met je team waarin ook back-end (.NET) developers zitten, te zorgen voor de realisatie van de best mogelijke apps voor studenten en docenten. Eisen • Je hebt een hands-on development en coding mind-set en werkt graag aan een high quality code base welke je consequent onderhouden kan worden

Bekijk vacature »

Developer (One Data)

Do you have experience with managing IT Teams in a service delivery organization? Are you keen to bring the team and our platform to a higher level? Then Nutreco has a very interesting role for you! As a One Data developer you are responsible for the management, running and functional use of our integration landscape and processes within Nutreco. Nutreco is using at this time BizTalk 2016, and Apigee for its API management, to be replaced by Azure Integration Services as of 2023. You will be part of a virtual teams of 11 people (own and outsourced) working in an

Bekijk vacature »

Ervaren PHP Software Developer

Functieomschrijving Voor een toffe opdrachtgever in regio Breda zijn wij op zoek naar een medior PHP Developer met affiniteit met Laravel. Je komt te werken bij een uitdagende opdrachtgever met supergave klanten in een specifieke branche. Als PHP ontwikkelaar ben je samen met een vooruitstrevende team van 6 collega’s verantwoordelijk voor de ontwikkeling, beheer en het vernieuwen van informatiesystemen voor een specifieke branche. Je ondersteunt complexe uitdagingen van klanten. Vervolgens breng je hun wensen in kaart en vertaalt deze door naar maatwerk software. Affiniteit met Laravel is een pré. Om de klanten zo goed mogelijk te ondersteunen en snel in

Bekijk vacature »

Cymer Patch Server Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Veldhoven Vacature ID: 12919 Introductie This new patch server will be built on Python and Django ReST and GraphQL services with a React frontend, it will consist of several microservices and run on a Kubernetes cluster. It will be supported by several middleware applications such as ElasticSearch, Redis, RabbitMQ, Oracle and Artifactory. Functieomschrijving The Patch Admin team always aim to deliver software at a high quality, we avoid sacrifices here to maintain our velocity. Practically this means that we practice test driven development and perform end-to-end automated testing on our software. This means

Bekijk vacature »

SAP Integratie Ontwikkelaar

Ben jij ambitieus in de verdere ontwikkeling van SAP binnen HANOS, en heb je kennis van SAP PI, CPI (SAP integration suite) en of andere middleware tooling? Dan ben jij mogelijk onze nieuwe SAP Integratie (middleware) Ontwikkelaar! Lees snel verder en solliciteer! Wat ga je doen? Als SAP Financieel Consultant ben je, als deel van een gedreven team van interne SAP consultants, de schakel tussen de gebruikersorganisatie en ICT. Je draagt proactief bij aan een optimale aansluiting van de SAP-functionaliteit (een applicatielandschap met o.a. Suite on HANA, Fiori, Hybris, C4C en BO), op de bedrijfsprocessen. Verder ondersteun je de HANOS

Bekijk vacature »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

API Developer Red Hat Fuse

Dit ga je doen Als API Developer zal je verantwoordelijk zijn voor het: het maken van API's en het correct laten draaien van de API's op het platform. Hierdoor kom je in aanraking met Red Hat Fuse, Springt Boot, 3Scale, Red Hat SSO, Openshift en Azure DevOps; zorgen voor de kwaliteit van de ontwikkeling, integratie en prestaties van de API's; zorgen voor een stabiel integratieplatform. Hier ga je werken Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met meer dan 150 applicaties staat er een complex applicatielandschap dat hoofdzakelijk op OpenShift, Azure en

Bekijk vacature »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

Cloud Developer

Cloud Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

Magento2 Developer

Functie Ben jij een ontwikkelaar en wil jij een volgende stap zetten en als teamlead aan de slag? Lees dan snel verder! Voor een gewilde opdrachtgever in omgeving Delft zijn wij op zoek naar een programmeur die als meewerkend voorman aan de slag wilt gaan. Een developer die een team van twee man aan zal sturen. Jouw werkzaamheden zullen er als volgt uitzien; Ontwikkelen en ontwerpen van API's; Maatwerkoplossingen; Databeveiliging; Optimalisatie webshops; Ontwikkelen technische implementaties voor verbetering database; Aanspreekpunt voor de organisatie en verantwoordelijk voor de aansturing van externe developers. Zoek je veel uitdaging en veelzijdigheid in je werk dan

Bekijk vacature »

Grafisch vormgever

Standplaats: Maasland Aantal uren: 32 – 40 uur per week Opleidingsniveau: HBO werk- en denkniveau Ben jij een ambitieuze grafisch vormgever met een passie voor creativiteit en oog voor detail? Vind jij het daarnaast leuk om ook marketingactiviteiten op te pakken? Dan zijn wij op zoek naar jou! Bedrijfsinformatie Westacc Group BV is het zusterbedrijf van HABA en specialiseert zich in (maatwerk) oplossingen voor (elektro) techniek en verlichting in de kampeerbranche. Zij produceren en assembleren onderdelen voor caravans, campers en boten. Voor een groot aantal caravan- en campermerken leveren wij producten als zekeringkasten, invoerdozen, acculaders, schakelmateriaal en verlichting. De producten

Bekijk vacature »

Lead developer

Functie Als Lead developer wordt jij onderdeel van een multidisciplinair team van circa 23 software engineers. Als team werken jullie agile en zijn termen als Continuous Integration en Continuous Delivery dagelijkse koek. Jullie werken aan uitdagende en afwisselende projecten met als doel klanten een totaal oplossing aan te kunnen bieden. Jij wordt verantwoordelijk voor complete projecten waarbij jij als verantwoordelijke zorgt dat het project op de juiste manier blijft draaien. Zo haal jij ook de requirements op bij de klant en kijk jij samen met het team en met de salesafdeling hoeveel uren hiervoor nodig zijn. Daarnaast stuur jij jouw

Bekijk vacature »

Software Ontwikkelaar C# .NET

Functie omschrijving Startende Software Ontwikkelaar gezocht met kennis van C# .NET! Ben jij net klaar met je opleiding en ben je op zoek naar je eerste echte werkervaring? Of heb jij al enige werkervaring maar ben toe aan iets nieuws? Dan is dit de perfecte kans voor jou! Wij zoeken namelijk een Junior Software Ontwikkelaar die klaar is voor een nieuwe uitdaging bij een leuke werkgeven in de regio Zeist. In deze functie werk jij vaak aan verschillende projecten en ga je bij klanten op bezoek. Ben jij op zoek naar een functie met uitdaging, diversiteit en verantwoordelijkheid? Dan is

Bekijk vacature »

Python (Django) developer - Remote in The Netherla

Functie Together with your team, consisting of a senior, 2 mediors and one junior developer, you will work on their software in an Agile-based approach. You have an eye for quality, risk, and customer interest. Communication with your colleagues and, where necessary, with customers, plays an important role in achieving a successful result. As a person, you are smart, get things done, and are result-oriented. There is a lot of independence within the development team, apart from the stand-up (10:00 am) and occasional pair-programming sessions. Techniques they use include Python, Django, MySQL, Mercurial, Ubuntu Linux, Nginx. In terms of front-end

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Dordrecht zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »
- Rob -

- Rob -

04/04/2017 16:56:24
Quote Anchor link
Hallo!

Als ik wachtwoorden zoals: test hash en controleer met de volgende code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
$password = password_hash(md5(hash('sha256', sha1(md5('test')))), PASSWORD_DEFAULT);


    if (password_verify(md5(hash('sha256', sha1(md5('test')))), $password))
    {
        echo 'test';
    }


Dan zou dit toch hartstikke veilig moeten zijn? Want wie komt er nou achter zulke ritmes (als ik dat bv. 10 keer achter elkaar door elkaar haal).

En van de link https://crackstation.net/hashing-security.htm
snap ik het niet helemaal.

Dus wie zou mij kunnen uitleggen waarom dit niet veilig is?
 
PHP hulp

PHP hulp

24/04/2024 20:45:44
 
- Ariën  -
Beheerder

- Ariën -

04/04/2017 18:58:54
Quote Anchor link
Waarom zou je nog eens hash(), sha1() en md5() erratum toe willen voegen? Het standaard geheel is al veilig zat. En anders kan je de 'cost' iets ophogen.
 
Ward van der Put
Moderator

Ward van der Put

04/04/2017 19:54:34
Quote Anchor link
Als je een lange hash nog eens door een algoritme voor een kortere hash haalt, maak je het geheel onveiliger.

Als je bijvoorbeeld 10.000 wachtwoorden door een hash met maar 1.000 mogelijke combinaties haalt, houd je niet 10.000 maar slechts 1.000 combinaties over. Iets soortgelijks gebeurt wanneer je md5(sha1(…)) gebruikt: je beperkt het grotere aantal combinaties van SHA-1 tot het kleinere aantal combinaties van MD5.

Daarom is jouw variant md5(hash('sha256', sha1(md5('test')))) technisch eigenlijk gewoon even erg, maar veroorzaakt die daarnaast nog schijnveiligheid: je lijkt sterk te coderen met SHA-256, maar verzwakt de boel tot MD5.
 
Ozzie PHP

Ozzie PHP

04/04/2017 20:23:43
Quote Anchor link
Dit soort dingen vind ik zelf ook altijd lastig te begrijpen.

>> Als je bijvoorbeeld 10.000 wachtwoorden door een hash met maar 1.000 mogelijke combinaties haalt, houd je niet 10.000 maar slechts 1.000 combinaties over.

Ward, mag ik even van de gelegenheid gebruik maken om je te complimenteren met je duidelijke antwoord. Hoe je het hier uitlegt, is erg helder. Een ketting is zo sterk als z'n zwakste schakel ... in dit geval dus die md5.
 
- Rob -

- Rob -

04/04/2017 20:32:53
Quote Anchor link
Maar als ik sha256 nou eerst doe, dan sha1 en dan md5, is het toch juist veiliger?

Toevoeging op 04/04/2017 20:37:28:

Want dan moet een hacker 3 combinaties van 3 verschillende hashes achterhalen, right?
 
Ben van Velzen

Ben van Velzen

04/04/2017 20:42:59
Quote Anchor link
Nee natuurlijk is dat niet veiliger, het maakt voor de volgorde niets uit, alleen de zwakste schakel telt.
Een hacker die sha256 kan achterhalen kan de rest ook achterhalen.
 
- Rob -

- Rob -

04/04/2017 20:44:03
Quote Anchor link
Dan blijf ik gewoon lekker password_hash(ww, PASSWORD_DEFAULT) gebruiken :)
 
Ben van Velzen

Ben van Velzen

04/04/2017 20:45:40
Quote Anchor link
Ik zou voor de zekerheid ook geen PASSWORD_DEFAULT gebruiken, wat zal er namelijk gebeuren als de default verandert? Dan werkt je login routine opeens niet meer met bestaande accounts.
 
- Rob -

- Rob -

04/04/2017 20:46:19
Quote Anchor link
Wat moet ik dan gebruiken?

Toevoeging op 04/04/2017 20:46:31:

PASSWORD_BYCRYPT?
 
Ben van Velzen

Ben van Velzen

04/04/2017 20:50:21
Quote Anchor link
Bcrypt is momenteel de default, dus dat is momenteel gelijk aan wat je toch al had. Wel zo veilig dan dus.
 
- Rob -

- Rob -

04/04/2017 20:52:53
Quote Anchor link
Oké, maar dan wordt het dus password_hash(ww, PASSWORD_BYCRYT) ipv password_hash(ww, PASSWORD_DEFAULT)
Maar is sha256 niet veiliger? Of maakt dat niet zo veel uit?
 
Ben van Velzen

Ben van Velzen

04/04/2017 20:58:21
Quote Anchor link
Bcrypt werkt net even anders dan sha256. Het is dus geen vraag over veiligheid, maar over de methode. Bcrypt levert geen 2x dezelfde waarde op, waardoor je ook kunt besluiten om na een correcte inlogpoging een nieuwe hash in de database op te slaan.
 
Ozzie PHP

Ozzie PHP

05/04/2017 01:34:24
Quote Anchor link
>> waardoor je ook kunt besluiten om na een correcte inlogpoging een nieuwe hash in de database op te slaan.

Is dat gebruikelijk?
 
Bart V B

Bart V B

05/04/2017 08:52:07
Quote Anchor link
Dat kan. Zie http://php.net/manual/en/function.password-needs-rehash.php
Een voordeel lijkt me, dat als er een nieuwe word gegenereerd je een brute force bijna onmogelijk maakt.
Quote:
Ik zou voor de zekerheid ook geen PASSWORD_DEFAULT gebruiken, wat zal er namelijk gebeuren als de default verandert? Dan werkt je login routine opeens niet meer met bestaande accounts.

Ehm... Hier wil even op inhaken.

Dat is toch echt niet wat de manual voorschrijft.
Ik meen zelfs te hebben gelezen dit juist WEL te gebruiken omdat het kan veranderen.
Het enige waar je over na moet denken is dat je het op moet slaan in een kolom die een behoorlijke grote is. bij php5.5 zo de grote van kolom 60 karakters genoeg moeten zijn, maar omdat hij in de toekomst kan veranderen word het advies gegeven om hem 255 karakters te maken. En als je php 7 gebruikt is een salt niet meer nodig extra toe te voegen, want dat doet hij voortaan zelf.
Gewijzigd op 05/04/2017 09:02:58 door Bart V B
 
Ward van der Put
Moderator

Ward van der Put

05/04/2017 09:11:49
Quote Anchor link
Als je alleen de hash wijzigt maar het wachtwoord niet, is het wachtwoord nog steeds bruikbaar en kun je dus remote bruteforcen. Je kunt brute force beter tegengaan door het aantal requests per periode, per IP-adres en per gebruikersnaam te beperken en door een zware work factor te gebruiken.

Het rehashen dient vooral een ander doel: als de hashes (dus de database) in verkeerde handen zijn gevallen, worden die bij een rehash onbruikbaar. Aangezien diefstal van wachtwoordhashes niet altijd onmiddellijk wordt ontdekt, beperk je automatisch de potentiële schade voor actieve gebruikers door wachtwoorden bij een login te rehashen.
 



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.