sha256 vs bcrypt

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »

C# .NET Developer

Functieomschrijving Voor dit leuke softwarre bedrijf in de omgeving Vught zijn we per direct op zoek naar een C#/.NET Developer. Is development jouw passie en doe je dit graag met C#/.NET? Lees dan snel verder! Jou werkzaamheden zullen zijn: Zorgen voor de optimalisatie van de huidige software en het automatiseren van bedrijfsprocessen. Naar aanleiding van de wensen van de klant ga je, met je collega's op zoel naar passende oplossingen en je werkt dit uit tot een mooi eindproduct. Je gaat webshops, websites en webapplicaties ontwikkelen door middel van ASP.NET, C# en MVC Framework. Bedrijfsprofiel Deze opdrachtgever houdt zich bezig

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving Voor de gemeente Amsterdam zijn wij op zoek naar een softwareontwikkelaar Cleopatra. De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van brom- en snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie. Functie

Bekijk vacature »

.NET Developer

Dit ga je doen Programmeren in .NET, Javascript & C# en ontwikkelen in Web Services, Windows Services en MS SQL Server; Zelfstandig verbanden maken Analyseren, testen, bugs fixen, reviewen en rapporteren; Juiste prioriteiten stellen en verantwoordelijkheid nemen; Op architectuur niveau meedenken; Af en toe klanten bezoeken. Hier ga je werken Voor onze relatie zijn wij opzoek naar een .NET ontwikkelaar met minimaal 3 jaar werkervaring. Je komt te werken in een groeiend bedrijf met betrokken collega's die zorgen voor een familiaire sfeer op de werkvloer. Als .NET ontwikkelaar word jij vanaf de eerste werkdag betrokken bij het gehele ontwikkelproces. De

Bekijk vacature »

Senior Front-end Developer

Dit ga je doen Met behulp van diverse programmeertalen ontwikkelen van Front-end software; Het begeleiden van het front-end team; Het oplossen van incidenten; Het bijhouden van een backlog; Je hebt een actieve bijdrage in de wekelijkse overleggen met de omliggende teams; Je houdt trends bij en adviseert het management hierover waar nodig; Helder communiceren met de stakeholders om hen zo mee te nemen in projecten en laten inzien wat de duur en toegevoegde waarde van bepaalde projecten is. Hier ga je werken Deze organisatie heeft circa 40 miljoen bezoekers per maand en heeft innovatie hoog in het vaandel staan. Het

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 »

Senior Java Developer

Als Senior Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde Java professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfs kritische systemen voor onze klanten in regio Noordoost zoals DUO, ING, CJIB en Tendernet. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We organiseren regelmatig technische Meetups en doen veel aan kennisdeling. Sogetisten hebben plezier in hun werk en

Bekijk vacature »

Senior PHP developer met ambities tot Software Arc

Functie Momenteel zijn ze op zoek naar een ervaren PHP developer die zichzelf graag bezighoudt met zaken als architectuur en de algehele verbetering van structuren en standaarden. Het is eigenlijk meer operationeel als uitvoerend omdat je bezig gaat met zaken als het verder uitrollen en verbeteren van testautomatisering, codereviews, tickets en de doorloop hiervan en architectuurkeuzes. Mocht je hiernaast ook wat DevOps kennis meenemen is dit mooi meegenomen! Vanwege het kleine team maar de wereldwijde impact die zij leveren is er veel focus op kwaliteit. In deze functie werk je aan één van hun belangrijkste applicaties. Hierin werk je nauw

Bekijk vacature »

.NET developer

Functie Als junior .NET Developer start jij in een team met 15 developers. In het team is er genoeg senioriteit om ervoor te zorgen dat jij de juiste begeleiding krijgt. Jij begint als eerst alle software pakketten en processen eigen te maken. Vervolgens ga jij deze software programmeren, onderhouden en testen. Ook ga jij research doen naar nieuwe mogelijkheden en zoek jij uit hoe je dit kan implementeren. Jullie werken intern op project basis en afhankelijk van het project werken jullie wel of niet iedere ochtend met een standup. 50% van jullie werkzaamheden is maatwerk en de overige 50% is

Bekijk vacature »

Software developer

Functieomschrijving Voor een gewaardeerde werkgever in de regio van Middelburg zijn wij op zoek naar een ambitieuze PHP/Symfony Developer. Een enthousiast persoon die het development team komt versterken met het aanpakken van complexe en nieuwe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor zowel persoonlijke als professionele groei? Lees dan snel verder! Dit ga je doen: Aanpassingssuggesties van collega’s in kaart brengen, vervolgens te analyseren en daarna te concluderen of de aanpassing een verbetering is; Ontwikkeling en beheer van de serviceportal in Symfony en

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

SQL database ontwikkelaar

Functie omschrijving Ben jij niet bang voor complexe algoritmes? Schikt het schrijven van procedures in T-SQL jouw niet af en heb jij al de nodige informatie in SQL, dan is functie precies wat voor jou! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat werken aan de complexere projecten waar jij van A tot Z bij betrokken bent. Je gaat zorg dragen voor het ontwerp, de ontwikkeling en het updaten van SQL databases. Dit doe je op basis van T-SQL. Jij bent van start tot finish betrokken bij de projecten die jij leidt. Je houdt contact met klanten en

Bekijk vacature »

Software Programmeur PHP

Functie Wij zijn op zoek naar een PHP programmeur voor een leuke opdrachtgever in omgeving Alblasserdam. Heb jij altijd al willen werken bij een bedrijf dat veilige netwerkverbindingen levert door middel van veilige oplossingen? Lees dan snel verder. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten goed verlopen. Je gaat klanten ondersteunen op het gebied van geleverde software en webapplicaties. Tevens

Bekijk vacature »

Software developer - senior

Functie omschrijving Voor een echt softwarebedrijf in omgeving Gouda zijn wij op zoek naar versterking voor de afdeling Software Development! Ben jij op zoek naar een werkgever waar meerdere software developers werken aan interessante projecten? Ben jij op zoek naar een werkgever waar je onderdeel wordt van een team dat echt passie heeft voor het ontwikkelen van software? Dan ben je hier aan het juiste adres! Als softwareontwikkelaar kom je terecht bij een onafhankelijk, door kwaliteit gedreven, doortastend en daarbij op een Agile wijze werkend bedrijf. Ben jij een expert in het vertalen van Componenten van Functionaliteit naar Business lagen?

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »
Maarten van Rijssel

Maarten van Rijssel

20/10/2016 14:58:14
Quote Anchor link
Hallo.

Ik wil graag duidelijkheid. Ik gebruik al een poosje sha256 hash methode + salt en dat bevalt mij prima. Ik heb van meerdere mensen gehoord dat dat veilig genoeg is. Echter hoor ik ook mensen die zeggend dat sha256 absoluut niet veilig is en dat je per se bcrypt moet gebruiken omdat anders je webapplicatie heel makkelijk te hacken is.

Ik weet het dus niet meer. Kan iemand mij dus vertellen wat echt beter is? En dan graag niet alleen je mening ook graag bewijs. En als de een beter is, is de andere dan per definitie slecht en onveilig?

Gr. Maarten
 
PHP hulp

PHP hulp

24/11/2024 08:11:45
 
Pg Vincent

Pg Vincent

20/10/2016 15:11:40
Quote Anchor link
Tsja, wat is "veilig"? Als je de hash functie gebruikt om wachtwoorden te hashen, dan gaat een hacker echt niet proberen je hash te reverse-engineren, die gaat gewoon aan de voorkant snuffelen of hij het wachtwoord kan meelezen. Het wachtwoord is uiteindelijk het zwakste punt in de schakel.

Dus waar wi je jezelf tegen beveiligen?
 
Maarten van Rijssel

Maarten van Rijssel

20/10/2016 15:19:10
Quote Anchor link
100% is bijna onmogelijk. Waar ik voor wil zorgen is dat sql injecties niet meer mogelijkzijn en mocht tog iemand in de db komen hij geen wachtwoorden kan kraken
 
Pg Vincent

Pg Vincent

20/10/2016 15:44:31
Quote Anchor link
SQL injecties kun je voorkomen door overal en altijd alleen te werken met "prepared statements".
Maar het is veel waarschijnlijker dat er ergens in je code een bug zit die de hashes zichtbaar kan maken, b.v. door een var_dump() die iets meer dumpt dan je zou willen. de database zelf heeft als het goed opgezet is gewoon geen toegang van buitenaf, dus daar komt een hacker dan echt niet in buiten jouw code om.
 
Maarten van Rijssel

Maarten van Rijssel

20/10/2016 15:54:19
Quote Anchor link
Ik gebruik alleen var_dump als ik iets wil testen en verder nooit dus dat zit wel goed. En ik maak gebruik van prepared statements. Al met al prima beveiliging.
 
Pg Vincent

Pg Vincent

20/10/2016 16:11:27
Quote Anchor link
Nou, ho, dat is geen beveiliging he, dat zijn twee "niet lekken". Als je ergens een exception werpt die door een of andere instelling een stack-trace dumpt, dan ben je nog veel verder van huis. Je moet wel echt maatregelen nemen om te zorgen dat php op geen enkele manier iets kan weergeven wat niet de bedoeling is. Jou zou b.v. niet de eerste zijn die een debug log in zijn document root schrijft, waar "voor het gemak" ook het password in wordt geschreven, maar is vergeten om die URL vanuit de webserver te blokkeren....

Je moet dus zorgen dat jouw systeem niets vrijgeeft, dat niemand data uit je systeem kan peuteren, en als laatste komt pas het versleutelen van de data in de database.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/10/2016 18:29:09
Quote Anchor link
>> Waar ik voor wil zorgen is dat sql injecties niet meer mogelijk zijn

Dit heeft niets te maken met welke encryptie methode je werkt. Zoals Vincent al aangeeft moet je dit voorkomen bij het schrijven naar de database. Prepared statements is maar één van de mogelijkheden waarmee je de kans op SQL injectie probeert te beperken of uit te sluiten.

>> en mocht togch iemand in de db komen hij geen wachtwoorden kan kraken.
Goed punt. Gebruik in dit geval liever BCrypt. SHA(256) is makkelijker te kraken. Overigens is het voor jouw website of database dan al te laat. Maar je voorkomt dan misschien dat de hacker het wachtwoord van je gebruikers gaat gebruiken op andere diensten zoals hun gmail account bijvoorbeeld.
 
Pg Vincent

Pg Vincent

21/10/2016 09:20:05
Quote Anchor link
"SHA(256) is makkelijker te kraken."

En kort googlen leert dat dat is omdat het SHA algorythme heel snel is als je het draait op een GPU. Als in: miljoenen/miljarden pogingen per seconde snel. Zwakke wachtwoorden zijn dus zo gehackt, en ook je salt zal sterk moeten zijn.
 
Maarten van Rijssel

Maarten van Rijssel

21/10/2016 09:23:40
Quote Anchor link
De salt wordt bij mij gegenereerd op basis van de licentie code die de applicatie heeft. Dus die is bij elke applicatie verschillend
 
Pg Vincent

Pg Vincent

21/10/2016 09:51:19
Quote Anchor link
Bon, maar de hacker gaat de hash aanvallen met rainbow-tables, dat zijn lange lijsten van woorden en kreten die mensen vaak gebruiken. Als jouw wachtwoord is "oliebol" en je salt is "563" zodat de hash wordt gemaakt van "oliebol563" dan hoeft een hacker de rainbow tabel maar 563 keer te proberen om jouw wachtwoord te vinden. Als je de salt toepast als "o5lie6bo3l" dan werkt de rainbow table niet meer en moet hij brute-force dingen gaan proberen, wat weer langer duurt als je afdwingt dat er hoofdletters en leestekens worden gebruikt.
 
Maarten van Rijssel

Maarten van Rijssel

21/10/2016 10:20:41
Quote Anchor link
Ja das waar idd. De salt is nu een serial key. 4x een combinatie van letters en cijfers met een streepje ertussen. Lijkt me al weer beter dan 563
 
Willem vp

Willem vp

21/10/2016 14:55:43
Quote Anchor link
Pg Vincent op 21/10/2016 09:51:19:
Bon, maar de hacker gaat de hash aanvallen met rainbow-tables, dat zijn lange lijsten van woorden en kreten die mensen vaak gebruiken. Als jouw wachtwoord is "oliebol" en je salt is "563" zodat de hash wordt gemaakt van "oliebol563" dan hoeft een hacker de rainbow tabel maar 563 keer te proberen om jouw wachtwoord te vinden.

Iets met een klok en een klepel die de plank misslaan. ;-)

Een salt is er juist voor om te voorkomen dat er uberhaupt een rainbow table kan worden gebruikt. Bovendien hoeft een rainbow table in dit voorbeeld niet "563x geprobeerd te worden" (wat dat dan ook moge betekenen). Als het gecrypte wachtwoord bekend is (omdat iemand bijvoorbeeld toegang heeft weten te krijgen tot je database) is ook je salt bekend. Maar dat is helemaal niet erg, want omdat de indringer waarschijnlijk geen rainbow table heeft liggen die met die salt is gemaakt, zal hij een dictionary attack of misschien zelfs wel een brute force attack moeten uitvoeren. Om die reden is het dus ook geen probleem als de salt bekend is, zolang elk wachtwoord maar met een unieke salt is gehasht.
 
Thomas van den Heuvel

Thomas van den Heuvel

21/10/2016 15:01:31
Quote Anchor link
Pg Vincent op 20/10/2016 15:44:31:
SQL injecties kun je voorkomen door overal en altijd alleen te werken met "prepared statements".

Hier ben ik het niet helemaal mee eens.

De/een eerste cruciale stap in het voorkomen van SQL injectie is begrijpen hoe dit ontstaat.

Vervolgens dien je er voor te zorgen dat alle DATA delen in je SQL op de juiste manier worden ge-escaped.

Prepared statements zijn een middel hiertoe. Maar wederom dien je te snappen hoe prepared statements werken en hoe je hier veilig mee omgaat. Ik heb hier (of ergens anders) iemand serieus prepared statements zien gebruiken waarbij superglobal-variabelen werden geconcateneerd aan een querystring. Het (verkeerd) gebruik van prepared statements kan nog veel catastrofaler zijn dan andere oplossingen omdat het je een vals gevoel van veiligheid kan geven.
 



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.