[security] wachtwoord/sleutel, hoeveel tekens?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

Software developer (PHP) - Utrecht centrum

Functie Ieder onderdeel van de software draait op aparte servers en het bestaat dus echt uit verschillende componenten. Het team bestaat uit 4 developers, een klein team dus met korte lijnen. Alles in 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. In het team streven ze naast de hoogst haalbare kwaliteit. Hiervoor werken ze nauw met elkaar samen en levert

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 »

High level C++ QT Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 13486 Introductie Would you like to be involved in every aspect of software development for our exceptional products, from specification and design to testing and integration? If you're passionate about software development and eager to apply your programming skills to create customer-focused deliverables, then this is the perfect chance for you to expand your expertise. You can become a member of our Machine Control department's data-driven development team, where you'll design and build software solutions that optimize machine productivity. As a senior software design engineer, you'll participate in all phases

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 »

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 »

Front-end developer

Functie Als front-end developer kom je te werken in een team van 30 gedetacheerde, en het team is momenteel flink aan het groeien. Je hebt ervaring met het bouwen van complexe bedrijfsapplicaties waar je gebruik maakt van de nieuwste technologieën waarmee jij elke klant omver blaast. Het gaat om uitdagende projecten met een gemiddelde doorlooptijd van 2 jaar. Hierdoor heb jij echt de volledige focus op een project en kun je flinke impact maken. Het team zit boordevol met ervaren developers die samen dezelfde ambitie delen. Aan de hand van opleidingen en trainingen kun je certificaten halen in jouw expertise

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 »

Lead Fullstack developer

Functie omschrijving Ben jij een leergierige en ambitieuze junior developer met technische skills? Ben jij op zoek naar een werkgever die jouw de volledige vrijheid geeft om jezelf tot een volwaardige senior te ontwikkelen? Wij zijn op zoek naar een full stack developer die zich bezig wil bezig houden met het uitbreiden en verbeteren van de online webshop. Een onderdeel van jouw werkzaamheden is naast het beheren van de webshop ook om de processen en structuren te stroomlijnen. Werkzaamheden Onderhouden van de webshop (denk aan het bijhouden van de voorraad); Nieuwe functies toevoegen aan de product configurator door middel van

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

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 »

Traineeship IT regio Amsterdam/Utrecht

Wat ga je doen? Het traineeship begint met een fulltime maand cursussen en praktijkdagen, waarin je de basis van het IT-vak leert op de Shared Servicedesk (SSD). Daarnaast ga je meteen aan de slag voor je eerste certificering! (ITILv4). Je start in een groep met 4 tot 10 deelnemers, waarmee jij gedurende die maand optrekt en je kennis kunt delen. Na het voltooien van de eerste maand ga je direct voor een langere periode aan de slag bij één van onze klanten of blijf je intern bij ons op de Shared Servicedesk. Je bent het eerste aanspreekpunt van de eindgebruikers

Bekijk vacature »

Webshop beheerder / Fullstack developer

Functie omschrijving Wij zijn op zoek naar een full stack developer die zich bezig gaat houden met het uitbreiden en verbeteren van de online webshop. Een onderdeel van jouw werkzaamheden is naast het beheren van de webshop ook om de processen en structuren te stroomlijnen. Ben jij een leergierige en ambitieuze junior developer met technische skills? Ben jij op zoek naar een werkgever die jouw de volledige vrijheid geeft om jezelf tot een volwaardige senior te ontwikkelen? Lees dan snel verder! Werkzaamheden Onderhouden van de webshop (denk aan het bijhouden van de voorraad); Nieuwe functies toevoegen aan de product configurator

Bekijk vacature »

Front-end developer Supply Chain Angular, ReactJS,

Functie Het development team bestaat momenteel uit 9 fullstack (Python en .NET) developers. Binnen het team ga jij je toespitsen op het creëren van de optimale toegankelijkheid en user experience. Om dit voor elkaar te krijgen zul je ontwerpen, programmeren, testen en implementeren. Het hele proces dus! Maar ook bijvoorbeeld meedenken over strategie en design. Hierin krijg je veel vrijheid om de functie naar eigen inzicht in te vullen en te pionieren. Alle data die wordt gebruikt is zichtbaar in een webapplicatie, geschreven in Angular en React. Momenteel zijn ze bezig om de dashboards anders vorm te geven en de

Bekijk vacature »

Node.js developer looking for a challenging consul

Functie Under the guidance of 3 account managers, one of whom will be your point of contact within your expertise, you will start working for various clients. He or she will help you find a suitable and challenging assignment. Naturally, they will take your situation, experience and (technical) ambitions into account. The assignments last one to two years on average. This allows you to really commit to a project and make an impact as a consultant. Besides the assignment, you will regularly meet your colleagues from the IT department to share knowledge or discuss new trends, for example. Master classes

Bekijk vacature »
Ozzie PHP

Ozzie PHP

13/04/2015 17:45:30
Quote Anchor link
Hallo mensen,

Lang geleden heb ik ook ooit zoiets gevraagd, en toen had SanThe er volgens mij een tooltje voor gemaakt, maar ik kan het helaas niet meer terugvinden.

Anyhow ... mijn vraag is de volgende. Ik ben benieuwd hoeveel tekens er nodig zijn voordat een wachtwoord of (encryptie)sleutel (relatief) veilig is, waarbij ik de veiligheid in dit geval enkel laat afhangen van de tijd die het kost om een wachtwoord of sleutel te "raden". Tegenwoordig zijn computers veel sneller dan vroeger, speelt dat nog een rol?

Stel je encrypt een bestand met een sleutel. De (zelf te verzinnen) encryptiesleutel moet minimaal 8 en maximaal 20 tekens zijn. Stel nu dat Pietje een sleutel van 8 tekens invoert, en Jantje een sleutel van 20 tekens. Een kwaadwillende hacker weet ook dat de sleutel minimaal 8 en maximaal 20 tekens is. Hij hoeft dus niet te zoeken naar sleutels kleiner dan 8 of groter dan 20 tekens. Hoe lang is hij dan bezig om de sleutel van Pietje (8 tekens) en van Jantje (20 tekens) te vinden? Waarbij de hacker dus niet weet uit hoeveel tekens beide sleutels bestaan. Ik ga er vanuit dat ie eerst alle combinaties met 8 tekens zal proberen, en dat ie het wachtwoord van Pietje dus eerder te pakken zal hebben dan het wachtwoord van Jantje.

Oh ja, alle tekens op het toetsenbord kunnen gebruikt worden, dus (hoofd)letters, getallen en vreemde tekens als ! @ # $ enzovoorts.

Wie kan en vooral DURFT hier iets over te zeggen? Ik ben erg benieuwd namelijk! Zelf heb ik geen idee :)
 
PHP hulp

PHP hulp

30/11/2024 22:38:31
 
Willem vp

Willem vp

13/04/2015 18:55:06
Quote Anchor link
Via het toetsenbord kun je 52 letters, 10 cijfers en 32 rare tekens (op een eenvoudige manier) invoeren. Laten we dus uitgaan van 94 mogelijke tekens voor een wachtwoord, maar als je nog raardere tekens gaat gebruiken (letters met accentjes en dergelijke) dan wordt het nog gekker.

Voor een wachtwoord met exact 8 tekens zijn dan 94^8 = 6095689385410816 combinaties mogelijk, voor een wachtwoord met exact 20 tekens zijn dat 94^20 = 2901062411314618233730627546741369470976 combinaties.

Stel dat je een miljoen combinaties per seconde kunt checken. Om alle mogelijkheden te proberen ben je dan voor een wachtwoord met 8 tekens 6095689385 seconden kwijt, oftewel 70552 dagen, oftewel ruim 193 jaar.

Heb je een wachtwoord van 20 tekens, dan duurt ben je met het checken van alle mogelijkheden 2901062411314618233730627546741369 seconden kwijt, oftewel 33577111242067340668178559568 dagen, oftewel ruim 91929120443716196216779081 jaar.

Statistisch gezien zul je slechts de helft van alle combinaties hoeven te proberen, maar dat is dan evengoed bijna 46 triljard jaar.

Toevoeging op 13/04/2015 19:02:14:

Stel nu dat je er een botnetje van maakt dat 1 miljard computers infecteert (die elk 1 miljoen combinaties per seconde kunnen checken).

Een wachtwoord van 8 tekens is dan in iets meer dan 6 seconden gekraakt (worst case). Voor een wachtwoord van 20 tekens heb je in het slechtste geval nog steeds 91929120443716196 (bijna 92 biljoen) jaar nodig.
Gewijzigd op 13/04/2015 18:57:54 door Willem vp
 
Ozzie PHP

Ozzie PHP

13/04/2015 20:52:03
Quote Anchor link
Thanks Willem :-)

Dat zijn interessante berekeningen. Je kunt dus eigenlijk zeggen dat een wachtwoord van 8 tekens al wel veilig is, maar het kan geen kwaad om er nog een paar tekens bij te stoppen dus :)

Met zo'n botnet wordt het wel even een ander verhaal, maar ja ... ik acht de kans dat iemand een botnet maakt om mijn wachtwoord te kraken niet zo heel groot :-)

Overigens ben ik wel benieuwd. Een wachtwoord van 8 tekens doe je dus 193 jaar over, maar zou er ooit een tijd komen, bijv. over 10 jaar, dat computers dusdanig snel zijn dat het ineens minutenwerk wordt, of zijn zulke snelheden voor een enkele processor onhaalbaar?
Gewijzigd op 13/04/2015 20:53:03 door Ozzie PHP
 
Willem vp

Willem vp

13/04/2015 20:57:40
Quote Anchor link
Bij bovenstaande voorbeelden ben ik uitgegaan van een vaste lengte. Voor de totale tijdsduur van de scan maakt het ongeveer een procent uit of je wachtwoord precies 20 of maximaal 20 tekens is.

Als het wachtwoord elke lengte tussen 8 en 20 tekens kan zijn, heb je 2932256630791119505061064336537627364096 combinaties, wat bij een miljoen combinaties per seconde uitkomt op ongeveer 92917605609777660692228316 jaar. Niet echt een noemenswaardig verschil dus. ;-)

> of zijn zulke snelheden voor een enkele processor onhaalbaar?

Nou, het schijnt dat een kwantumcomputer wel raad weet met dat soort wachtwoorden. Tegen de tijd dat die computers gemeengoed gaan worden, zullen we moeten gaan nadenken over een andere manier van beveiligen.
Gewijzigd op 13/04/2015 21:17:18 door Willem vp
 
Ozzie PHP

Ozzie PHP

13/04/2015 21:29:00
Quote Anchor link
>> Tegen de tijd dat die computers gemeengoed gaan worden, zullen we moeten gaan nadenken over een andere manier van beveiligen.

Maar praten we dan over tientallen jaren denk je? Of zit over 5 jaar zo'n chip al in iedere smartphone? Ik ben overigens wel benieuwd wat voor andere manieren er dan overblijven om te beveiligen. Pasjes / fysieke kenmerken / onderhuidse chips ... het lijkt me allemaal niet echt ideaal. En het nadeel blijft dat het allemaal digitaal is, en dat het dus op de een of andere manier weer te kraken valt als de computers sneller worden. Best heel irritant eigenlijk.
 
Ward van der Put
Moderator

Ward van der Put

13/04/2015 21:40:07
Quote Anchor link
Het gaat niet om het wachtwoord (of de wachtwoordhash) op zich, maar om het systeem als geheel.
Als je nú een hash van een wachtwoord opslaat, weet je inderdaad niet of die 180 jaar of maar 90 dagen meegaat. Je systeem moet dus ingesteld zijn op variabele wachtwoordhashes én wachtwoorden met een variabele uiterste houdbaarheidsdatum.
 
Ozzie PHP

Ozzie PHP

13/04/2015 21:45:56
Quote Anchor link
>> Je systeem moet dus ingesteld zijn op variabele wachtwoordhashes

Je bedoelt dan variabel in de zin van een variabele lengte?
 
Willem vp

Willem vp

13/04/2015 23:39:33
Quote Anchor link
> Maar praten we dan over tientallen jaren denk je? Of zit over 5 jaar zo'n chip al in iedere smartphone?

Tsja, moeilijk te zeggen. De ontwikkeling staat nog in de kinderschoenen, maar je weet nooit wanneer er een groeispurt komt.

> Ik ben overigens wel benieuwd wat voor andere manieren er dan overblijven om te beveiligen.

Nou, om te beginnen zullen de password-hashes moeten worden gegenereerd met andere algoritmes. Momenteel is de encryptie gebaseerd op grote priemgetallen, maar dat moet je opzij schuiven. Er zijn algoritmes die wél bestand zijn tegen een aanval door kwantumcomputers.

Verder zou je naar een meerstaps-autorisatiemechanisme moeten overstappen, zodat je ook niet zomaar iets kan wanneer je het wachtwoord hebt. Dus bijvoorbeeld na het invoeren van je wachtwoord een code per SMS/IM sturen die je moet invoeren om het inlogproces af te ronden.
 
Ozzie PHP

Ozzie PHP

13/04/2015 23:44:43
Quote Anchor link
>> Verder zou je naar een meerstaps-autorisatiemechanisme moeten overstappen ...

Daar zat ik dus ook inderdaad aan te denken, maar dat wordt toch wel iets raars dan. Want dat wordt dus een extra stap waarop de luie consument niet echt zit te wachten. Zou je het nog zo kunnen maken dat je gewoon in plaats van een wachtwoord je e-mailadres moet invullen, en dat je dan een wachtwoord krijgt toegemaild wat maar een minuut geldig is of zo? Zou dat een oplossing zijn? Dan hoef je ook geen wachtwoord meer te onthouden ...
 
Wouter J

Wouter J

13/04/2015 23:55:16
Quote Anchor link
Waarom heeft de lengte enige invloed, aannemende dat ze gehashed worden en deze hashes dezelfde lengte hebben (of in elk geval, geen lengte die afhangt van de input)?
 
Ozzie PHP

Ozzie PHP

14/04/2015 00:00:33
Quote Anchor link
De hash is als het goed is uniek. Ieder wachtwoord heeft een unieke hash. Als je een wachtwoord van maar 2 tekens hebt, dan heb je veel minder mogelijkheden dan wanneer het wachtwoord bijvoorbeeld 10 tekens heeft. Een wachtwoord van 2 tekens heb je dus veel sneller "geraden" dan een wachtwoord van 10 tekens.
 
Willem vp

Willem vp

14/04/2015 01:33:00
Quote Anchor link
> waarop de luie consument niet echt zit te wachten

Tsja, veiligheid en gebruiksgemak zijn omgekeerd evenredig aan elkaar. Wanneer het belangrijk is, kun je het best aan de consument verkopen dat hij een extra stap nodig heeft. Denk aan pincodecalculators of TAN-lijsten (op papier dan wel per SMS) die bij banken worden gebruikt. Geen enkele klant die zal vinden dat dat te omslachtig is, omdat het hem direct geld kost als er misbruik van wordt gemaakt. Als het alleen maar gaat om het bijhouden van de high score van een of ander dom spelletje kun je met een veel eenvoudiger mechanisme werken.

> Zou je het nog zo kunnen maken dat je gewoon in plaats van een wachtwoord je e-mailadres moet invullen

Zoiets bestaat al. Dat heet "wachtwoord vergeten" en wordt daadwerkelijk door sommige mensen gebruikt om in te loggen. Dat zijn -denk ik- mensen die te lui zijn om een wachtwoord te onthouden. ;-) Ik weet overigens niet of je het redt met een levensduur van 1 minuut. Het duurt soms wel langer dan dat om een email op de plaats van bestemming te krijgen. Je kan het window echter ook weer niet te lang maken, omdat dat ten koste gaat van de veiligheid.

> Waarom heeft de lengte enige invloed, aannemende dat ze gehashed worden en deze hashes dezelfde lengte hebben

Ter aanvulling op het verhaal van Ozzie: dat werkt alleen omdat tijdens het hashen informatie wordt weggegooid, waardoor het originele wachtwoord niet kan worden teruggerekend vanuit de hash. Als het een omkeerbaar proces zou zijn, zou de lengte van een wachtwoord inderdaad niet (of in ieder geval minder) relevant zijn. De enige manier om nu te kijken welk wachtwoord bij een bepaalde hash hoort is door alle wachtwoorden afzonderlijk te hashen en de gehashte versie te vergelijken. En bij korte wachtwoorden gaat dat nu eenmaal een stuk sneller (want minder mogelijkheden) dan bij lange.
 
Ozzie PHP

Ozzie PHP

14/04/2015 02:19:05
Quote Anchor link
>> Zoiets bestaat al. Dat heet "wachtwoord vergeten" en wordt daadwerkelijk door sommige mensen gebruikt om in te loggen.

Haha, ja da's waar. Maar daar is het natuurlijk niet voor bedoeld. Maar zou je het er wel voor kunnen gebruiken eigenlijk? Zou dat volledig veilig zijn ... net zo veilig als het invoeren van gebuikersnaam en wachtwoord? Want eigenlijk is het zo'n gek idee helemaal niet toch? Je hoeft als gebruiker niks te onthouden, je moet alleen even op je mailtje wachten. Enige nadeel is dat iemand anders jouw e-mailadres kan invoeren waardoor jij gespamt wordt met e-mail ... hmmm :-s
 
Willem vp

Willem vp

14/04/2015 08:13:51
Quote Anchor link
> Maar zou je het er wel voor kunnen gebruiken eigenlijk?

Ja hoor. Ik ken mensen die die functie structureel misbruiken voor dat doel. 100% veilig zal het niet zijn; hangt een beetje af van het achterliggende mechanisme. Sommige sites sturen je een plaintext wachtwoord per email dat je niet hoeft te veranderen. Dat is slecht. Andere sites sturen je een link naar een pagina waarop je een nieuw wachtwoord kunt/moet invoeren. Dat is beter. De zwakke plek is dat email onderschept kan worden.
 
Ozzie PHP

Ozzie PHP

14/04/2015 13:01:15
Quote Anchor link
>> De zwakke plek is dat email onderschept kan worden.

Ja oke ... dan zul je toch inderdaad moeten denken aan het invullen van een gebruikersnaam en wachtwoord, en als die kloppen dan als extra een "inlogcode" per mail die bijv. maar 5 minuten geldig is. Voor de gevoeligere systemen lijkt dat me dan de beste oplossing.
 



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.