salting vraagje

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

3D BIM Add-on Developer

Als 3D BIM add- on ontwikkelaar bij KUBUS ontwikkel je add-ons (BCF Managers genaamd) voor de toonaangevende building information modeling (BIM) programma's Revit, Navisworks, Archicad, AutoCAD en Tekla Structures. BCF Managers maken gegevensoverdracht mogelijk tussen BIM-software en BIMcollab. Je werkt zowel aan de front- als aan de back-end. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein genoeg om als individuele ontwikkelaar invloed uit te kunnen oefenen en

Bekijk vacature »

Software Ontwikkelaar

Functie omschrijving Voor een echt familiebedrijf in de omgeving van 's-Hertogenbosch ben ik op zoek naar een Software Developer. Jij gaat in de functie van Software Developer werken met C# en .NET framework Jij gaat maatwerk software ontwikkelen en softwareoplossingen creëren. Daarnaast optimaliseer je de bestaande software. Oplossingen waar de klant echt iets aan heeft, jij krijgt er energie van op dit te realiseren. Je gaat werken in een Microsoft omgeving(ASP.NET) en gebruikt daarnaast C# en MVC. Samen met het huidige IT team binnen deze organisatie verwerk je de wensen van de klant tot een (eind)product. Bedrijfsprofiel Deze organisatie is

Bekijk vacature »

Typescript Developer / Cloud platform

Dit ga je doen (Door)Ontwikkelen van het cloud platform; (Door)Ontwikkelen van microservices; Bouwen van nieuwe functionaliteiten; Verbeteringen aandragen voor het cloud platform; Sparren met de business. Hier ga je werken Onze opdrachtgever, gevestigd in regio Eindhoven, levert een compleet dienstenpakket op het gebied van IT. Zij pakken verschillende (complexe) vraagstukken van grote organisaties op. De sfeer intern is gezellig en informeel. Men houdt van hard werken maar gezelligheid door middel van een borrel of gezamenlijke lunch komt er veel voor. Als Typescript ontwikkelaar word je onderdeel van het team gericht op de (door)ontwikkeling van hun eigen cloud platform welke wordt

Bekijk vacature »

IT Manager team PaaS

TenneT is hard groeiende om haar ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Lead PaaS die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je wordt de Teammanager (Lead) van een nieuw team binnen de afdeling Basic van Information Technology and Facilities (ITF) van TenneT. Het team heet Platform as a Service. Hier wordt elke dag in een goede sfeer met zijn allen hard gewerkt om vanuit IT

Bekijk vacature »

.NET developer

Functie Als .NET developer werk jij samen in een multidisciplinair ontwikkel team met 1-2 Senior .NET developers, twee front-end developers, Data Scientists en één UX designer. Als team werken jullie aan het ontwikkelen van een Cloud based applicatie en aan het stabieler maken van deze applicatie. Ook unit testing gaat erg belangrijk worden in jouw nieuwe functie. Samen met de Senior .NET ontwikkelaar wordt jij verantwoordelijk voor het ontwikkelen van de API. Jullie werken met veel data en incidenteel komen er ook data vraagstukken en zullen er wat queries gedraaid moeten worden. Dit betekend dat jij veel gaat werken met

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 »

IoT Developer

Ben jij innovatief, heb jij passie voor energie en ben je data gedreven? Bouw dan mee aan IoT binnen Bredenoord. Samen met een gedreven team werk jij aan mooie technische en innovatieve oplossingen. Wat houdt de functie van IoT Developer in? Binnen Bredenoord zijn wij momenteel volop in ontwikkeling met ons IoT platform. Als uitbreiding van ons team zijn wij op zoek naar een IoT Developer. Je zal in projectverband meehelpen met het implementeren van IoT vraagstukken binnen Bredenoord. Als IoT Developer op onze R&D-afdeling word je verantwoordelijk voor het verder inrichten en beheren van ons nieuwe IoT platform. Dat

Bekijk vacature »

Programmeur / Developer

Voor een familiebedrijf in Doetinchem, actief in de machinebouw voor de food-sector, zijn wij op zoek naar een programmeur / developer. In deze functie ben je werkzaam in een team van 5 medewerkers. Je werkzaamheden bestaan onder andere uit het verhelderen van requirements vanuit de opdrachtgever, de klant en de afdeling ontwikkeling. Je verricht haalbaarheidsstudies en werkt specificaties uit die je afstemt met de opdrachtgever. Je ontwerpt design in software en stemt af met je collega's. De huidige vision-systemen zijn geschreven in C software, welke draait op een CUDA platform. Je schrijft en codeert software en zal gaan testdraaien. Tot

Bekijk vacature »

.NET developer

Functie As a .NET developer you work together in a multidisciplinary development team with 1-2 Senior .NET developers, two front-end developers, Data Scientists and one UX designer. As a team you work on developing a Cloud based application and making this application more stable. Unit testing will also become very important in your new position. Together with the Senior .NET developer you will be responsible for developing the API. You work with a lot of data and occasionally there will also be data issues and some queries will have to be run. This means that you will work a lot

Bekijk vacature »

Medior Java developer

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 »

Lead Webdeveloper

Als Lead webdeveloper bij KUBUS ben je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de webapplicatie en services van BIMcollab. In je rol als lead developer zoek je als vanzelf op een creatieve manier naar het optimum tussen benodigde implementatie-tijd, de performance van de applicatie en een snelle go-to-market van features, aansluitend bij onze geautomatiseerde test- en release train. Hierbij bewaak je in samenwerking met de andere senior ontwikkelaars in je team de architectuur van de applicatie en adviseer je de product owner over noodzakelijke refactoring om de onderhoudbaarheid van het platform te verbeteren. Ons

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 »

Java developer Zorgsysteem

Dit ga je doen Werken aan het eigen gebouwde zorgsysteem; Verbeteringen maken en toepassen binnen de applicatie; Jij gaat werken aan de Back-end van de applicatie en sporadisch werk je mee aan de Front-end; Samenwerken met andere teams voor een optimaal resultaat; Jij kan 'clean' werken en high quality code schrijven; Jij werkt resultaatgericht. Hier ga je werken De organisatie houdt zich bezig met diverse applicaties met betrekking tot zorgregistratie. Dankzij hun systeem komt alle informatie, omtrent de zorg van een patiënt, op een overzichtelijke en toegankelijke manier samen in één systeem te staan. Op deze manier is deze informatie

Bekijk vacature »

Developer Full Stack

Functie omschrijving Developer gezocht! Ben jij een enthousiaste developer die graag wil bijdragen aan ontwikkelingen binnen een mooie organisatie? Solliciteer dan snel. Wij zijn op zoek naar een Full Stack Developer uit de regio Nijkerk die gaat bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van een SaaS applicatie. Je moet beschikken over beheersing van zowel de Nederlandse als Engelse taal aangezien je samen met de klant gaat werken. Bedrijfsprofiel Je komt te werken binnen een echt familiebedrijf dat al sinds 1925 actief is binnen de FMCG branche. Het bedrijf heeft 40 medewerkers en er heerst een platte communicatiestructuur waarbij

Bekijk vacature »

.NET Developer

Functie omschrijving Ervaren .NET Developer gezocht! Wij zoeken een ervaren .NET developer die aan de slag gaat voor een softwarebedrijf in de regio Rhenen. In deze rol ben jij zowel zelfstandig als in teamverband verantwoordelijk voor het ontwikkelen en verbeteren van bestaande producten. Daarnaast houdt jij je bezig met de nieuwbouw van websites, webapplicaties en mobiele applicaties die zowel intern als extern gebruikt worden. Je werkt hierbij nauw samen met andere developer, productmanagers en product specialisten om mooie producten te creëren. Bedrijfsprofiel Waar kom je te werken? Je komt te werken voor snelgroeiende softwareleverancier en allround dienstverlener. Klanten van deze

Bekijk vacature »
Kristof s

Kristof s

25/07/2009 15:53:00
Quote Anchor link
Hallo, ik heb zopas een filmpje gezien over PHP-security. Het ging hierbij op een moment over salting/rainbowtables etc.

Na heb bekijken van het filmpje kwam het hierp neer:

je hebt de gebruiker zijn psw die verstuurd wordt bij registratie
daarnaast heb je een vaste $salt die je in een config bijhoudt

en nu komt het

daarnaast heb je ook een unieke salt per persoon/gebruiker.

ik maakte er dan maar een functie van:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
function salt($password){
        $salt = "abcjkl123";
        $user_salt = sha1(microtime());
        $password = md5($user_salt . $salt .  $password);
        return $password;
    }

nu ik snap het nut van de $user_salt echter wel, zo is niet elke hash hetzelfde (ook niet als er gebruikers zijn met eenzelfde paswoord). Maar het nut ontgaat me toch een beetje. Aangezien ik bij de login het wachtwoord moet kunnen terugvinden, heb ik de $user_salt ook nodig. Dus als ik het goed begrijp, dan moet ik deze bijhouden in een DB, wat is dan nog het nu ?

Begrijp ik het nu fout of niet? Kan iemand me hier even duidelijkheid brengen?
Gewijzigd op 01/01/1970 01:00:00 door Kristof s
 
PHP hulp

PHP hulp

26/04/2024 08:28:07
 
GaMer B

GaMer B

25/07/2009 15:58:00
Quote Anchor link
De static salt (in dit geval $salt) kan je instellen in je config.php. De dynamic salt (in dit geval $user_salt) zal je samen met het wachtwoord van de gebruiker in de database moeten opslaan en iedere keer oproepen als iemand zich wil inloggen.

Het nut van een dynamic salt is dat een hacker dan wel een static salt kan verkrijgen, maar dan heeft de hacker nog altijd de dynamic salt nodig (die per gebruiker dus verschilt!!). Het geeft een extra dimensie aan de gegenereerde hash die dus uit een static en dynamic salt en het wachtwoord bestaat.
 
Lode

Lode

25/07/2009 21:58:00
Quote Anchor link
je kan nog een veel leukere salt maken...

stel je laat als wachtwoord tekens A-Za-z0-9 toe (sha1 / md5 bestaan hier altijd uit).
Dan kan je dus alle overige tekens in ASCII (http://www.asciitable.com/)
random gebruiken om te salten op willekeurige plekken.
Met name 0-31 zijn hiervoor wellicht interesant.

Gezien jij de reeks salt tekens weet kan je die ook filteren.

sha1 en md5 zijn onomkeerbare algoritmes, maar wel de meest gebruikte ook. Er zijn heel veel algoritmes ook omkeerbare, als je iets verder gaat dan md5 en sha1 alleen ben je ook al een stuk veiliger wellicht..
 
Kristof s

Kristof s

26/07/2009 13:18:00
Quote Anchor link
@GaMer13 dank je je beantwoorde mooi mijn vraag:)

@Lode
je bedoelt zoiets dan: ?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$md5_paswordhash = 123456;
$md5_paswordhash_modified = (substr ($md5_paswordhash,0,2).'STX'.substr ($md5_paswordhash,2,6));
echo ($md5_paswordhash_modified);

en om het eruit te filteren:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
$search = array('STX');
$replace = array(''); // aka verwijderen
$target = $md5_paswordhash_modified;

echo stro_replace($search, $replace, $target);


zit dit zowat juist f helemaal fout?
Gewijzigd op 01/01/1970 01:00:00 door Kristof s
 
Matthias R

Matthias R

26/07/2009 14:19:00
Quote Anchor link
Wat is het nut hiervan?
zijn gegevens neit even veilig als je ze gwn MD5 doet als met salting

Wat wel in me opkomt is voor een login
Dat maakt sql injection al een heel stuk moeilijker
 
- Ricardo -

- Ricardo -

26/07/2009 14:49:00
Quote Anchor link
md5 zijn via websites waar miljarden records in staan van de md5 hashes veel woorden nog wel terug te halen, zeker gewone taal. Als je je eigen salt maakt, en jij houd gewoon je hash voor jezelf, is er niemand die het gaat lukken om dat te kraken tenzij je guus geluk heet...
 
Matthias R

Matthias R

26/07/2009 14:52:00
Quote Anchor link
:o
zeg nooit nooit!!!
Er zijn voor alles manieren
 
GaMer B

GaMer B

26/07/2009 15:32:00
Quote Anchor link
@Matthias, salting voegt een extra dimensie toe aan de hash. Bruteforcing met een woordenlijst zal dan dus niet meer lukken, omdat de hash nu ook bestaat uit X aantal onbekende tekens die van alles kunnen zijn.

Het enige wat nu kan optreden is hash-collision, wat inhoud dat een andere (veel simpelere) woord dezelfde hash kan opleveren als de hash die bestaat uit twee salts en het wachtwoord.
 
Matthias R

Matthias R

26/07/2009 15:50:00
Quote Anchor link
...
Het MOET mogelijk zijn er gwn achter te komen...
want je gaat mij niet wijsmaken dat Banken te hacken zijn maar een simpele salt codering niet...

Maar swat
idd is handig voor extra beveileging...
Maar als je nu vermoed dat iemand dat woordje teweten is gekomen..
En dit wilt veranderen...
Dan heb je ook zooi he...
 
GaMer B

GaMer B

26/07/2009 15:53:00
Quote Anchor link
:P Alles is mogelijk. Mij hoor je ook niet zeggen dat het helemaal onmogelijk is. Met een paar clusters aan computers is het makkelijk te doen, maar dat heeft een doorsnee wanna-be-hacker niet.
 
Matthias R

Matthias R

26/07/2009 16:22:00
Quote Anchor link
En wat zijn een paar clusters aan computers???
 
GaMer B

GaMer B

26/07/2009 16:25:00
Quote Anchor link
Hmm, duizenden computers :P
 
Matthias R

Matthias R

26/07/2009 16:32:00
Quote Anchor link
Geen idee hoe prof hackers het doen :p
Maar enigzins wel respect dat ze het kunnen,
Keur hun werk niet goed ofzo he!
 
Kristof s

Kristof s

26/07/2009 17:06:00
Quote Anchor link
je hebt inderdaad een punt als je zegt dat wanneer je je salt wil veranderen je miserie hebt. Langs de andere kant kan je ook met een array werken met bv 10 strings in dan is het nog moeilijker :-)

maar helemaal veilig ben je natuurlijk nooit
 
Matthias R

Matthias R

26/07/2009 18:13:00
Quote Anchor link
Ik was aan het denken :p

Als je nu eens altijd versleuteld met het IP vanwaar de account geregisteerd word,
Dat gegeven moet nooit veranderd worden, Kan opgeslagen worden ook in db om te decoderen.
En is een op elke account veranderende versleuteling :)
Gewijzigd op 01/01/1970 01:00:00 door Matthias R
 
Kristof s

Kristof s

27/07/2009 17:10:00
Quote Anchor link
ja goed maar dat kan je ook gewoon met microtime().
het idee van Lode vind ik wel leuk gevonden
 
Lode

Lode

07/08/2009 16:40:00
Quote Anchor link
oke je laat toe A-Z en 0-9 -_ wellicht als pasword tekens.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
function ValidatePassword($string){
    if(preg_match('~^[\w-]{1,}$~D')){
         //geldig
    }
    //blaat...
}
?>


En dan gaan we naar: http://www.asciitable.com/ zie de Dec(imal) column.
1 t/m 44 kunnen we dus gebruiken gezien ze niet in het wachtwoord voorkomen.
127 t/m 255 ook...

Jij weet dat... iemand anders niet natuurlijk...

Oke dan kan je die ASCII tekens dus random in het password gaan strooien..
En er ook weer uit filteren.

Dat is mijn random salt basis curses denk ik.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$chars
= array_rand(
                 array_merge(
                      range(1, 44),
                      range(127, 255)
                 ),

              5);
//nou heb je 5 random extended ASCII nummers die je dan weer random in een string kan gooien middels http://nl.php.net/manual/en/function.chr.php
?>
Gewijzigd op 01/01/1970 01:00:00 door Lode
 
GaMer B

GaMer B

07/08/2009 16:46:00
Quote Anchor link
Zolang je de salt maar niet "static" of "dynamic" gaat opslaan (in raw formaat), want dan kunnen er problemen ontstaan. Vooral de tekens 1 tm 44 kunnen niet "opgeslagen" worden. Je kan het wel als extra laag salting opnemen in de hash :-)
 



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.