Bcrypt

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Embedded Software Developer

Functie omschrijving Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar een Embedded Software developer. Ben jij enthousiast en een echte team player? Lees dan snel of dit iets voor jou is! Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Laat dan snel wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot

Bekijk vacature »

Laravel / PHP developer

Functie omschrijving Wij zijn op zoek naar een Medior PHP / Laravel Developer voor een IT-consultancy in de omgeving van Hoofddorp! Ben jij op zoek naar een leuke nieuwe uitdaging binnen een veelzijdige werkomgeving? Lees dan snel verder! Binnen dit bedrijf werk je in een ontwikkelteam, waarin je zeer betrokken bent en meedenkt over softwareoplossingen. Binnen dit Team hou je je bezig met het aanpassen, verbeteren en vernieuwen van de logistieke oplossingen. Je zult je bezig houden met de volgende werkzaamheden: Je gaat aan de hand van de wensen van klanten software ontwikkelen; Je bent bij het gehele proces betrokken;

Bekijk vacature »

Ervaren Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als ervaren developer zul je hiernaast ook andere developers assisteren en waar nodig de leiding nemen in het project.

Bekijk vacature »

Java (Java EE) Developer

In het kort Werken als Java developer betekent werken aan complexe IT projecten bij onder meer een internationaal containeroverslag bedrijf. Zo sturen we apparaten en eindgebruikers aan d.m.v. onze custom-made software oplossing, die dagelijkse vele duizenden containers verwerkt. Denk aan systemen die volautomatische kranen aansturen en op afstand bedienen, de volledige afhandeling van containernummerherkenning bij het laden en lossen van zeeschepen of het tonen van instructies aan de chauffeurs van ruim 300 straddle carriers. En dat allemaal redundant, robuust en in een dynamische 24/7 omgeving! Jij versterkt ons ontwikkelteam en gaat aan de slag met oa. Java i.c.m. Spring (Boot),

Bekijk vacature »

Front-end developer E-Commere

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als front-end developer heb je een adviserende rol en sta je aan het eindpunt van alles wat met designs te maken heeft. Je overlegt met klanten en collega’s, en zet je in om ideeen om te zetten tot unieke concepten. Je bent het aanspreekpunt voor de klant en bewaakt tevens de planning. Eisen

Bekijk vacature »

Digital Agency is looking for PHP developers!

Functie The team currently has 20 colleagues, consisting of developers (front and backend) and the operations team, which also includes management and two scrum masters. They are looking for a PHP developer who is able to work independently. You will work in one of the three scrum teams and start working on a project for the customer. The interesting thing about this is that you do have variety in terms of work, but at the same time continuously work for existing customers. This also gives you the opportunity to really go into depth and develop innovative technical solutions. In terms

Bekijk vacature »

PHP Developer

Functie Middels Scrum en sprints bouw jij in deze functie mee aan complexe webapplicaties en ons SaaS platform. Hierbij hoort ook architectuur tot een van je taken. Daarnaast ben je één van de leden van het Scrum team. Dat betekent dat je naast je kerntaken ook in contact staat met de product owner. Oftewel, je bent bij het gehele ontwikkelproces betrokken. Tools die hierbij gebruikt worden zijn o.a. PHP, Symfony en Git. Eisen • Minimaal HBO werk- en denkniveau • Minimaal 3 jaar aantoonbare ervaring met PHP • Kennis en ervaring Symfony (Laravel is pré) & Lando • Kennis van

Bekijk vacature »

Senior Developer ERP Dynamics 365

Samengevat: Deze werkgever is een softwarebedrijf. Ben jij een enthousiaste developer? Heb je ervaring met ERP of Dynamic 365 bussines central? Vaste baan: ERP Applicatie Specialist ERP MBO €3.600 - €5.200 Wij houden ons als bedrijf bezig met het leveren en implementeren van het Microsoft Dynamics pakket binnen verschillende industriële sectoren. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Binnen ons open team is er een no-nonsense cultuur. Daarnaast is er veel onderling contact door de korte communicatielijnen. Het team werkt enthousiast samen om een

Bekijk vacature »

Back end developer PHP

Functie Heb jij altijd al eens bij een bedrijf willen werken waar jij géén nummertje bent, die alleen maar uitvoerend werk doet? Dan zou je hier perfect passen! Tuurlijk, je werkt aan projecten voor grote of kleine bedrijven… Het enige verschil hier is, jouw mening telt hier écht. Jouw inbreng wordt gewaardeerd, serieus genomen en gebruikt. En vergeet niet, je werkt niet alleen aan deze projecten. Er werken in totaal ruim 25 developers en designers, onderverdeeld over 3 development teams. Voornamelijk bestaande uit Medior en Senior developers, die samen voor een inspirerende en ambitieuze omgeving zorgen. Hun visie is namelijk

Bekijk vacature »

Front-end Developer

Gezellige team, passie en een groene toekomst! Lees hier de vacature van Front-end Developer bij All in Power! All in power heeft zich tot doel gesteld écht bij te dragen aan de energietransitie. Dit doen wij door de markt voor energie volledig op zijn kop te zetten. Producenten van schone (wind- of zonne-)energie verkopen via ons platform hun energie rechtstreeks aan gebruikers. Of dit nu huishoudens, bedrijven of bijvoorbeeld laadpalen zijn ons platform maakt het uitwisselen van energie mogelijk. Zo maken we de business case van onze klanten veel sterker en loont het om (meer) te investeren in vergroening voor

Bekijk vacature »

Oracle Developer / PL SQL

Dit ga je doen Software ontwikkeling aan een internationaal gebruikt pakket; Werken met technieken als Oracle 19c, Toad, PL/SQL, Oracle Forms, Reports en Designer; Meedraaien in internationale projecten; Meedenken over technisch en functioneel ontwerp; Samenwerken met collega's als Informatie Analisten, Testers en Release Managers; Soms wensen en eisen afstemmen met de business. Hier ga je werken Onze klant, een internationaal bekend bedrijf dat essentiële producten maakt waar iedereen graag gebruik van maakt, zoekt versterking in het Software Development team. Samen met 3 developers, een release manager, een informatie analist en 3 testers werk jij aan een systeem waarmee complexe producten

Bekijk vacature »

Java Developer bij een jonge groeiende organisatie

Bedrijfsomschrijving Vind jij het als Java developer ook zo belangrijk dat een bedrijf je de ruimte en tijd geeft voor persoonlijke ontwikkeling? Dan zit je hier helemaal goed. Deze jonge organisatie is opgericht in 2018 en is ondertussen uitgegroeid tot een club van ongeveer 30 medewerkers. Het gaat hier om een echte Java club, die vrijheid en verantwoordelijkheid erg belangrijk vinden. Het bedrijf heeft een informele sfeer en de teams zijn erg hecht met elkaar. Ze delen graag de kennis en ervaringen met anderen, maar vinden andermans mening ook zeer belangrijk. De organisatie zet zich in voor ontwikkeling en besteed

Bekijk vacature »

(Junior) Back-end Ontwikkelaar

Functie omschrijving We are looking for a dutch native speaker Altijd al willen werken bij een organisatie, die maatwerk applicaties bouwt, die echt impact hebben in de maatschappij? Dit is je kans. Voor een kleine organisatie in de regio van Eindhoven ben ik op zoek naar een C# Ontwikkelaar. Jij gaat aan de slag met de ontwikkeling van maatwerk software en applicaties. Deze organisatie werkt voor grote organisaties in Nederland, maar ook voor het MKB. De projecten waar je aan gaat werken zijn erg divers, waardoor je werk uitdagend blijft en je erg veel kan leren. Verder ga je aan

Bekijk vacature »

Medior C# Developer

You'll build modern applications for Coolblue's back office. We have a lot of friends, and they crave well-structured data and user-friendly, task-focused applications. How do I become a Medior C# Developer at Coolblue? You regularly participate in brainstorm sessions about user experience, data, and task flow with the UX Designer, Product Owner, and Data Scientists in your team. Besides that you will create disconnected, highly congruent, and testable code that can easily be maintained and is future-proof. Want to become C# Developer at Coolblue? Read below if the job suits you. You enjoy doing this Working with various types of

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

Pagina: « vorige 1 2 3 4 5 volgende »

- Marco -

- Marco -

20/12/2012 10:57:07
Quote Anchor link
Ja maar md5 is iig al gecracked en kan ook al gedecrypt worden dus ik houd het op bcrypt :)

en van die 07 was een reactie op deze post:
Henze Berkheij op 20/12/2012 10:42:41:
nee..dan is hij niet random, maar dan krijg je unexpected behaviour omdat de crypt functie dan zelf gaat bepalen welk algoritme er gebruikt gaat worden..

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
crypt('rasmuslerdorf', '$2a$07$usesomesillystringforsalt$');
?>

is the way to go: de 2a geeft aan dat het gaat om blowfish_encrypt gaat welke je moet hebben, 07 is de cost die je opgeeft waarmee je de functie trager of sneller kan laten gaan.
 
PHP hulp

PHP hulp

18/12/2024 19:39:37
 
No One

No One

20/12/2012 10:57:23
Quote Anchor link
je moet zelf de salt random maken natuurlijk ;)je kan het stukje "usesomesillystringforsalt" vervangen door alles wat je wilt.

@Chris...het idee van een Salt is om rainbow tabellen tegen te gaan. Dit zijn lijsten met wachtwoorden in bepaalde hashes. gebruik je geen salt, is dat makkelijk gedaan. gebruik je een single salt, hoeft de hacker alleen de salt nog te weten om een rainbow tabel te genereren. heb je een random salt dan zal het genereren van genereren van rainbow tabellen geen nut meer hebben omdat dat te lang gaat duren.
 
- Marco -

- Marco -

20/12/2012 10:58:30
Quote Anchor link
Ja maar wel zoals Chris dan zei als ze je database hacken dan hebben ze ook de random salt weer te pakken.

Dus wat kan ik nu het beste doen? een random salt gebruiken (en die opslaan in de database bij het registreren van een user) of een vaste salt gebruiken.
Gewijzigd op 20/12/2012 10:59:10 door - Marco -
 
No One

No One

20/12/2012 11:00:42
Quote Anchor link
@Marco, ja..maar dan hacken ze maar 1 random password. en dat is voor veel hackers totaal niet interessant...
 
Chris PHP

Chris PHP

20/12/2012 11:01:48
Quote Anchor link
Henze Berkheij op 20/12/2012 10:57:23:
@Chris...het idee van een Salt is om rainbow tabellen tegen te gaan. Dit zijn lijsten met wachtwoorden in bepaalde hashes. gebruik je geen salt, is dat makkelijk gedaan. gebruik je een single salt, hoeft de hacker alleen de salt nog te weten om een rainbow tabel te genereren. heb je een random salt dan zal het genereren van genereren van rainbow tabellen geen nut meer hebben omdat dat te lang gaat duren.


Rainbow/dictionary attack het is maar hoe je het beestje wilt noemen. Beide houdt het zelfde in, een db met woorden en hun bijbehoorde hashes.

Er is overigens een groot verschil tussen random (Bijvoorbeeld een 'faceroll' over je keyboard) of een random salt met bijvoorbeeld rand(). De eerste is random maar statisch en veranderd niet, de tweede zal telkens wijzigen wat niet werkt voor vergelijkingen.
 
- Marco -

- Marco -

20/12/2012 11:01:59
Quote Anchor link
ok dus een random salt is het beste?
 
Chris PHP

Chris PHP

20/12/2012 11:03:27
Quote Anchor link
@marco,

Gewoon eenmalig een 'random' salt maken en deze als string declareren aan $salt in een config file. Dus bijvoorbeeld $salt = 'JKL*^234-0dfg;j*()^d';

Deze dan in elke crypt() toevoegen.

Dus niet telkens een nieuwe random maken maar 1x een random salt en deze hergebruiken.
Gewijzigd op 20/12/2012 11:04:09 door Chris PHP
 
- Marco -

- Marco -

20/12/2012 11:05:12
Quote Anchor link
Chris NVT op 20/12/2012 11:01:48:
de tweede zal telkens wijzigen wat niet werkt voor vergelijkingen.

Dat kan toch wel werken als je die random salt die dan gegenereerd is op de pagina (tijdens het registreren) in de database opslaat? en dan tijdens het inloggen de username vergelijkt met username en dan de salt uit de database haalt en dan het ingevulde wachtwoord encrypt met die salt en dan ook het wachtwoord vergelijkt?

Want dat kan toch ook en zoals ik van Henze begreep was dat dus ook veiliger?
 
No One

No One

20/12/2012 11:06:47
Quote Anchor link
@Chris. idee is iedere gebruiker zijn eigen salt, niet iedere gebruiker met een nieuwe random salt gaan vergelijken.

stappenplan die ik voor ogen heb en jij hopelijk ook is
1. wachtwoord wordt ingevoerd
2. script genereerd random salt, bcrypt wachtwoord met deze salt en plakt de random salt aan de bcrypted wachtwoord.

3. gebruiker wil inloggen en voert wachtwoord in
4. script knipt de salt van het in de db opgeslagen wachtwoord
5. met de salt wordt het wachtwoord opnieuw gebcrypted.
6. vervolgens wordt hiermee vergeleken of er het zelfde uitkomt

piece of cake toch?
 
Chris PHP

Chris PHP

20/12/2012 11:07:09
Quote Anchor link
@Marco,

Nogmaals een database is over het algemeen gevoeliger voor hacken dan .php bestanden. Dus als jij in je users tabel een veld maakt rand_salt of iets dergelijks en daar je salt in plakt, is dat velemalen gevoeliger dan een statische $salt in je config file.

Het is aan jou wat je wil.

Toevoeging op 20/12/2012 11:10:15:

@Henze,

Piece of cake? Ik vind het behoorlijk omslachtig en overdreven. Het is nergens voor nodig om elke gebruiker een eigen salt te geven, wanneer je gewoon een sterke salt maakt en deze verwerkt in je crypt (SHA256 aangeraden) zit je safe.

Waarom z'n omslachtig script gaan schrijven en salt's opslaan in een database?
 
Erwin H

Erwin H

20/12/2012 11:10:59
Quote Anchor link
Ik gebruik altijd een 'random' salt berekend op andere gegevens van de gebruiker. Neem bijvoorbeeld zijn user_id, inlogdatum registreerdatum of een ander veld dat niet zal wijzigingen. Daaroverheen gooi ik een redelijk simpel algoritme dat die gegevens vertaalt naar karakters uit een string die in de code zit. Die string bevat ook double byte karakters (Chinese tekens) en verandert dus nooit per applicatie. Op die manier heb ik een verschillende salt voor elke gebruiker, hoef ik die niet op te slaan in de database want die is wel reproduceerbaar.
Dat het wat meer tijd kost om dan in te loggen, is overigens een voordeel.
Gewijzigd op 20/12/2012 11:59:30 door Erwin H
 
No One

No One

20/12/2012 11:11:26
Quote Anchor link
@Chris...als ik 1 gebruiker naar de knoppen wil hebben dan hoef ik idd maar 1 dictionary aan te maken...heeft die een dictionary wachtwoord heb ik geluk..zo niet, moet ik de volgende proberen. Daarom dat de meeste hackers ook de hele database willen hebben. en als je je queries niet escaped kan ik vast ook wel een inlogscript zo laten uitvoeren dat ie die salt van je print. eenmaal de salt heeft ie in jou voorbeeld alle wachtwoorden.

in mijn geval is zo'n hacker jaren bezig om een klein deel te kraken...
 
Chris PHP

Chris PHP

20/12/2012 11:14:48
Quote Anchor link
@Henze,

Hoe wil jij doormiddel van een SQL query te manipuleren (niet geescapte input van $_POST of $_GET) een 'script' zodanig aanpassen dat je ineens alles kan laten echo'en?

Toevoeging op 20/12/2012 11:30:14:

@Erwin,

Jou aanpak is dan logischer en stukken 'makkelijker' uit te voeren zonder salt's op te slaan in een db. Zolang je idd niet wijzigende gegevens van een gebruiker hanteert is dat een mooie oplossing, en genereerd een unieke salt per user.

@Marco,

Mocht je toch een unieke salt per user willen, zou ik de methode van Erwin aanhouden.
 
- Marco -

- Marco -

20/12/2012 11:42:31
Quote Anchor link
Ik heb nu zoiets voor bij het registreren:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
    function generateCode($length=8)
    {

        $string = "";
        $possible = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=";
        for($i=0;$i < $length;$i++)
        {

            $char = $possible[mt_rand(0, strlen($possible)-1)];
            $string .= $char;
        }

        return $string;
    }


    // Deze word opgesladen in de database bij de registratie van een gebruiker
    echo generateCode(40)."\n";    
    echo "<br>";
    ?>


Ik krijg alleen het laatste stukje niet werkend:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$generateCode
= function generateCode;
echo $generateCode;
?>
 
Chris PHP

Chris PHP

20/12/2012 11:49:32
Quote Anchor link
Hier gebruik je mt_rand, je krijgt dus telkens een ander resultaat als je deze functie aanroept. Hoe controleer je nu met het opgeslagen wachtwoord?
 
- Marco -

- Marco -

20/12/2012 11:50:11
Quote Anchor link
Door dat random nummer als salt op te slaan in de database?
en dan later als de gebruiker wilt inloggen checken USERNAME=USERNAME
en dan pakt die het opgeslagen salt uit de db en encrypt die het password en vergelijkt die dat.
Gewijzigd op 20/12/2012 11:51:02 door - Marco -
 
Erwin H

Erwin H

20/12/2012 11:53:10
Quote Anchor link
Chris NVT op 20/12/2012 11:14:48:
Zolang je idd niet wijzigende gegevens van een gebruiker hanteert is dat een mooie oplossing, en genereerd een unieke salt per user.

Dat is inderdaad wel key. Als je bijvoorbeeld zijn geboortedatum neemt en die blijkt opeens toch niet te kloppen...

@Marco,
Genereer dat random nummer dan buiten de functie en geef het mee aan de functie. Anders moet je het vanuit de functie terugsturen.
 
Chris PHP

Chris PHP

20/12/2012 11:58:05
Quote Anchor link
@Marco,

Als je toch perse je salt wilt opslaan moet je dat maar doen, ik raad het alleen niet aan. Ga voor de methode van Erwin, stukken veiliger en makkelijk te hanteren.
 
- Marco -

- Marco -

20/12/2012 11:59:57
Quote Anchor link
Ja maar wat erwin gebruikt kan ik niet gebruiken want die gegevens waarmee hij een salt maakt sla ik niet op.
Behalve UserID voor de rest kan de user alles aanpassen.
En om van userid een random salt te maken heeft net zo veel effect als helemaal een random salt te maken.
Gewijzigd op 20/12/2012 12:00:26 door - Marco -
 
Chris PHP

Chris PHP

20/12/2012 12:04:38
Quote Anchor link
@Marco,

Ook met variabele gegevens werkt de methode van Erwin, ook vrij simpel aan te passen.

Stel je maakt gebruik van bijvoorbeeld voornaam, achternaam en geboortedatum om een salt te genereren. Dan is het heel makkelijk aan te passen wanneer een gebruiker bijvoorbeeld zijn achternaam wijzigd.

In de profiel wijzigen pagina waar de gebruiker dus zijn gegevens kan wijzigen laat je hem zijn gegevens wijzigen. Dus stel hij is aangemeld met piet hein, en hij maakt er jan hein van. Dan kun je dus voor het opslaan de gebruiker verplichten zijn wachtwoord in te vullen (ter beveiliging als reden bijvoorbeeld).

Op dat moment genereer je op de zelfde gegevens een nieuwe hash met zijn wachtwoord en gewijzigde naam, en sla je dit vervolgens op. Dus dan is de hash aangepast naar de nieuwe 'vaste' gegevens als salt, en heb je geen problemen tijdens het inloggen.

Vrij makkelijk te maken zie je wel.
Gewijzigd op 20/12/2012 12:05:15 door Chris PHP
 

Pagina: « vorige 1 2 3 4 5 volgende »



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.