Wachtwoord genereren, hoeveel veiliger kan dit?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior PHP Developer

As a Senior PHP Developer at Coolblue, you ensure that our webshops work as optimal as possible and you choach other colleagues on the hard and soft skills. How do I become a Senior PHP Developer at Coolblue? As a PHP Developer you work together with other development teams to make our webshop work as optimal as possible and to make our customers happy. Although you are a PHP Developer, you are not averse to a little TypeScript or other technologies that might be used. Would you also like to become a PHP Developer at Coolblue? Read below if the

Bekijk vacature »

Oracle APEX Ontwikkelaar (3.500-6.000 euro)

Bedrijfsomschrijving Ben jij een getalenteerde Oracle APEX ontwikkelaar met minimaal één jaar ervaring in het ontwikkelen van Oracle APEX-applicaties? Ben je gepassioneerd over het ontwikkelen van bedrijfskritische oplossingen en wil je werken bij een toonaangevend consultancybedrijf? Dan zijn wij op zoek naar jou! Deze organisatie beschikt over zowel inhouse als externe projecten, maar bovenal over een sterk team en netwerk van opdrachten waardoor jij jezelf verder kunt ontwikkelen. Het team bestaat uit een aantal junior en medior developers, maar vooral uit senioren. De business unit managers binnen het team zijn mensen die hun vak verstaan en zelf als Oracle APEX

Bekijk vacature »

(Lead) PHP Software Developer

Functie omschrijving Voor een klein softwarebedrijf in Breda, zijn wij op zoek naar een PHP software developer met een aantal jaar werkervaring. Je krijgt een plek in een klein team met 2 andere software developers. Wil jij graag werken met de nieuwste technieken bij een bedrijf waar jij de lead gaat nemen in de verder ontwikkeling en modernisering van een eigen software pakket? Dan ben je hier aan het juiste adres! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat aan de slag met de ontwikkeling en vernieuwing van het "in-house" ontwikkelde multimedia platform. Je neemt de lead in

Bekijk vacature »

.NET Developer Senior

Dit ga je doen Het ontwikkelen van backend applicaties in C#; Het maken van vele koppelingen met andere ERP-applicaties zoals JD Edwards en SAP; Je bent (mede) verantwoordelijk voor het opstellen van technisch ontwerpen voor de te ontwikkelen software oplossingen; Je bent gemiddeld 90% van je tijd inhouse oplossingen aan het ontwikkelen en testen. De overige 10% van je tijd ben je bij klanten op locatie om oplossingen te implementeren, klanten te begeleiden en de software verder te innoveren; Naast het zelfstandig ontwikkelen van software oplossingen ben je ook bezig met het waarborgen van je contacten bij de klant, het

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 »

Medior PHP developer

Functie Samen met je development team werk je Agile Scrum en met jullie gezamenlijke kennis en ervaring bepalen jullie samen de beste keuze voor techniek en architectuur. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en denkniveau • Je hebt goede kennis en ervaring met PHP • Je bent niet bang voor complexe projecten • Je werkt graag zelfstandig aan applicaties • Je bent altijd nieuwsgierig naar nieuwe

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: 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 je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

PHP developer (Laravel, Docker, Gitlab-CI)

Functie Het IT-team bestaat momenteel uit 4 ontwikkelaars. Ieder onderdeel van de software draait op aparte servers en het bestaat dus echt uit verschillende componenten intern ontwikkeld en je werkt aan alle facetten. Van uitbreiding van de core tot maatwerk voor de klant. Ook liggen er verschillende uitdagingen op servervlak en databases. Je zult de eerste periode veel samenwerken met de lead developer om vervolgens echt je gang te gaan binnen de software. Een groot deel van de systemen is gebouwd met behulp van het Laravel framework en PHP (minimaal 7.2), Docker voor lokaab gebruik en Gitlab-CI voor het deployen

Bekijk vacature »

.NET developer

Functie Voor jou als junior .NET ontwikkelaar staat er een flinke uitdaging klaar bij dit bedrijf waar jij veel van kan gaan leren. Zo willen zij een flinke uitbreiding doen op het webbased gedeelte dat zij nu hebben en willen zij het standaard deel gaan moderniseren. Jouw team is dan ook op zoek naar een junior .NET ontwikkelaar die het leuk vindt om op basis van research en development aan de slag te gaan. Jouw mening telt mee als het gaat om hoe en met wat deze applicaties gebouwd en herschreven gaan worden. Jouw functie bij dit bedrijf gaat dan

Bekijk vacature »

Ervaren Software Developer

Functie omschrijving Ben jij een ervaren Software Developer, en heb je ervaring met technieken zoals C#, MS Access & SQL? Vind jij het leuk om maatwerk software te ontwikkelen voor klanten in een specifieke branche? Dan is dit de baan voor jou! Als ontwikkelaar ben jij samen met een team van 12 collega’s verantwoordelijk voor het bouwen van nieuwe functionaliteiten en het uitbreiden van de core applicatie. Belangrijk is dat je ervaring hebt met C# en MS Access. Je bent flexibel en klantvriendelijk ingesteld, omdat het belangrijk is om de klanten zo goed mogelijk van dienst te kunnen zijn. Thuiswerken

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

Bekijk vacature »

Front End Ontwikkelaar (React)

In het kort Als front end developer ga je aan de slag met maatwerkprojecten voor onze klanten. Denk bijvoorbeeld aan het toevoegen van een machine aan een database of het corrigeren van formulieren voor ingestuurde orders. Voorbeeld van zo’n project is Smart Link. De projecten waar je op ingezet kunt worden liggen binnen het technische domein waar jij als front end developer een grote rol speelt om samen met je back end collega’s de juiste oplossingen te leveren. please note that this particular role requires fluent Dutch language skills. Dit vind je leuk om te doen Het omzetten van designs

Bekijk vacature »

Frontend Developer

Functieomschrijving Voor de NIPV zijn wij opzoek naar een Frontend Developer. Als Frontend Developer ga jij aan de slag om dashboards te bouwen vanuit het datawarehouse. Dit stelt NIPV in staat om snel en eenvoudig bij correcte bedrijfsvoeringsinformatie te kunnen. Je ontwikkelt dashboards in PowerBI, publiceert en onderhoud die, verzameld en verwerkt feedback in overleg met het ontwikkelteam. Naast dashboards ontwikkel en onderhoud je een datamodel in Excel waarmee adviseurs, controllers en analisten in staat worden gesteld om de gegevens uit de dashboards te raadplegen en anders te filteren of bepaalde gegevens nader te verfijnen, zodat verdiepende vragen kunnen worden

Bekijk vacature »

C#.NET Developer Jr. Functie

Functie omschrijving Bouw jij graag aan applicaties om processen in distributiecentra te optimaliseren? Wij zijn op zoek naar een C#.NET ontwikkelaar in regio Breda die hier graag een steentje aan bijdraagt! Jouw werkzaamheden zullen er als volgt uitzien: Je krijgt veel vrijheid in de keuze van de technieken die je gaat gebruiken. Uiteraard wel binnen de gestelde kaders, en door gebruik te maken van het .NET platform. Je gaat aan de slag met de ontwikkeling van een nieuwe module binnen de WMS suite van dit bedrijf. Deze "carrier" module gaat er voor zorgen dat de selectie van een vervoerder volledig

Bekijk vacature »

.NET Developer te Naarden

Bedrijfsomschrijving Voor mijn klant ben ik op zoek naar een .NET Developer om het huidige team te komen versterken. Deze organisatie bevindt zich in de logistieke sector, en zij hebben een eigen ERP systeem ontwikkeld dat zij inzetten ter optimalisatie van de logistieke processen van haar eindklanten. Deze organisatie bestaat inmiddels al ruim 20 jaar, waarbij zij een duidelijke missie hebben, namelijk: het werk van de eindklant makkelijker maken door de systemen die zij leveren. Ze werken over heel de wereld, wat deze organisatie een echte internationale speler maakt. Binnen de organisatie kenmerken ze zich door een dynamische en professionele

Bekijk vacature »
G P

G P

20/08/2012 02:59:05
Quote Anchor link
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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php

function txt_to_pass ($txt = NULL, $times = 3){
    $alfa = 'abcdefghijklmnopqrstuvwxyz0123456789';
    $beta = 'kgnvy39bwmp41sjx02eqfci6lau8hdrzt7o5';
    $txt = isset($txt) ? $txt : NULL;
    $new_pass = '';
    for ($check=0; $check<strlen($txt); $check++){
        $letter = substr($txt, $check, 1);
        $found = '0';
        for ($i='0'; $i<=strlen($beta); $i++){
            if (substr(strtolower($alfa), $i, 1) == strtolower($letter)){
                $found = '1';
                if ($letter === strtolower($letter)){
                    $new_pass .= substr(strtoupper($beta), $i, '1');
                }
elseif($letter === strtoupper($letter)) {
                    $new_pass .= substr(strtolower($beta), $i, '1');
                }
else {
                    $new_pass .= $letter;
                }
            }
        }

        if ($i > strlen($beta) && $found == '0'){
            $new_pass .= $letter;
        }
    }

    for ($i=0; $i<$times; $i++){
        $new_pass = strrev($new_pass);
        $new_pass = sha1($new_pass);
    }

    return $new_pass;
}


print txt_to_pass('Mijn Wachtwoord!', 1).'<br />'.PHP_EOL;
print txt_to_pass('Mijn Wachtwoord!', 5).'<br />'.PHP_EOL;
print txt_to_pass('MijnWachtwoord', 5).'<br />'.PHP_EOL;

?>
Kan dit nu nog veiliger?
 
PHP hulp

PHP hulp

02/01/2025 14:17:56
 
Eddy E

Eddy E

20/08/2012 09:22:17
Quote Anchor link
Regel 6 lijkt me wat overbodig, aangezien je dat op regel 3 ook al doet. Als er geen eerste string wordt geleverd, dan is $txt altijd NULL.
Tenslotte doe je dat met $times ook niet.

Voor de rest, prima zo toch?
crypt() doet iets vergelijkbaars....
 
Kris Peeters

Kris Peeters

20/08/2012 10:52:56
Quote Anchor link
Ik zou er trouwens dit van maken:

function txt_to_pass ($txt = '', $times = 3){

Binnenin de functie wordt $txt overal gebruikt als string. Dan liever een lege string dan een NULL
 
Flip --

Flip --

22/08/2012 13:02:23
Quote Anchor link
Regel 11: $i wordt defineerd als string en wordt dan incremented++. Zal vast wel werken, zeer vreemd wel.

$found lijkt als boolean te worden ingezet, gebruik dan ook true en false in plaats van string waarders '0' en '1'

regel 14 type controle overbodig.

Maar je originele vraag: ja het kan altijd veiliger, bcrypt() is een van de veiligste, zo niet de veiligste.

Even de uitleg:

Regel 8-26: je genereerd / verandert letters op een bepaalde manier --> kan gekraakt worden. Dit is zeg maar een beetje geheimcode zoals we dat op school deden, het alfabet en dan 5 letters verschuiven (maar dan de geavanceerde versie).

Regel 27-30: $times op 1 of 5 instellen is nog te snel. strrev() voegt verder niets toe aan het moeilijker maken om te kraken (relatief). sha1 is een twijfelachtig hashing algoritme gebruik sha256 als je al geen bcrypt wil gebruiken.

En verder .. waar is je salt ?!?! als $beta een salt moet voorstellen dan pak je dezelfde salt voor ieder wachtwoord. Maar je moet voor ieder wachtwoord een nieuwe unieke sat genereren en deze samen met het wachtwoord opslaan.
 
- Ariën  -
Beheerder

- Ariën -

22/08/2012 13:04:20
Quote Anchor link
De salt hoort niet in deze functie.

Dit is alleen het genereren van een random string, voor bijv. een password.
De encryptie komt er later bovenop... ;-)
Gewijzigd op 22/08/2012 13:05:41 door - Ariën -
 
Flip --

Flip --

22/08/2012 13:43:38
Quote Anchor link
Voor het genereren van een random string heb je geen input nodig 'Mijn Wachtwoord!'.

Verder wordt er ook geen encryptie toegepast bij wachtwoorden maar hashing.
 
Pim -

Pim -

27/08/2012 18:24:46
Quote Anchor link
Waarom zou dit beter zijn dan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$chars
= 'abcdef...';
$str = '';
for($i = 0; $i < $len; $i++) {
    $str .= $chars[ mt_rand(0, strlen($chars)-1) ];
}

?>
 
Niels K

Niels K

27/08/2012 18:59:17
Quote Anchor link
Waarom wil je het genereren van een wachtwoord veilig maken?

Wat dacht je van deze Pim ? ;-)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<?php
$pass
= substr(str_shuffle('abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789'), 0, rand(6,8));
 



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.