Hashes nader bekeken: functies, algoritmen en toepassingen
Wat is een derivatieve wachtwoordmanager?
In de huidige digitale wereld is wachtwoordbeveiliging belangrijker dan ooit. Omdat cybercriminelen voortdurend op zoek zijn naar nieuwe manieren om toegang te krijgen tot onze accounts en onze gegevens te stelen, is een van de beste manieren om jezelf te beschermen het gebruik van sterke, unieke wachtwoorden voor elke account.
Het kan echter moeilijk zijn om sterke en unieke wachtwoorden te onthouden voor al onze accounts. Daarom is het gebruik van wachtwoordmanagers een steeds populairdere oplossing. Over het algemeen bevatten de verificatiegegevens in een traditionele wachtwoordmanager zowel de gebruiker als het wachtwoord in een enkele gegevensset die is versleuteld met een hoofdwachtwoord. Kennis van het hoofdwachtwoord onthult alle verificatiegegevens die worden beschermd door de traditionele manager, waardoor een aanval gericht op het achterhalen van een enkel kritisch stukje gegevens kan resulteren in een catastrofale inbreuk op de beveiliging.
LISTHASH implementeert een nieuwe vorm van wachtwoordbeheer die meerdere controlepunten bevat en absolute bescherming van gebruikersauthenticatiegegevens mogelijk maakt. Door gebruik te maken van hashfuncties biedt het de noodzakelijke mechanismen om sterke en veilige wachtwoorden te genereren die afgeleid zijn van door de gebruiker verstrekte gegevens in het wachtwoordgeneratieproces. Daarom noemen we LISTHASH een derivatieve wachtwoordmanager, omdat het op een chaotische maar deterministische manier nieuwe gegevens afleidt uit basisgegevens die complex genoeg zijn om als wachtwoord te worden gebruikt.
Wat is wachtwoordafleiding van een master seed?
Het afleiden van wachtwoorden uit een master seed is een methode om veilige en unieke wachtwoorden te genereren uit een geheim stuk data, bekend als een master seed. De master seed kan een zin, een stuk tekst of een reeks gegevens zijn waarvan de enige voorwaarde is dat deze lang en complex genoeg is om moeilijk geraden te worden door een aanvaller, maar gemakkelijk te onthouden is door een gebruiker met uitgebreide kennis van digitale beveiliging.
Zodra je een hoofdseed hebt, kun je een hashfunctie gebruiken om unieke wachtwoorden te genereren voor elke account. Zoals we al hebben besproken, is een hashfunctie een wiskundige functie die een invoer neemt (in dit geval de hoofdseed) en deze omzet naar een uitvoer (in dit geval het wachtwoord). De uitvoer van de hashfunctie is altijd hetzelfde voor dezelfde invoer, maar het is onmogelijk de functie om te keren om de invoer uit de uitvoer te verkrijgen.
Hoe werken hashes om wachtwoorden te maken?
Het gebruik van hashes om wachtwoorden te creëren is een eenvoudige maar effectieve manier om verificatiegegevens te beschermen. Door een gedenkwaardige maar statistisch complexe zin, sleutel of gegevensverzameling te combineren met een veilige hashfunctie, kun je unieke en moeilijk te raden wachtwoorden genereren die je gegevens beschermen tegen cybercriminelen. Het basisproces ziet er als volgt uit:
1. Kies een zin, sleutel of stukje data dat complexe en veilige informatie weergeeft, maar dat gemakkelijk te onthouden is en niet gemakkelijk aan de gebruiker te koppelen is. Bijvoorbeeld, een fragment van een boek, een specifieke afbeelding of een stukje data dat zichtbaar is voor het blote oog maar onbepaald is voor een aanvaller.
2. Gebruik een hashfunctie, zoals SHA-256, om de seed om te zetten in een unieke hashwaarde en een fundamentele tussenliggende bouwsteen voor het ophalen van authenticatiegegevens.
3. Voeg zout toe, of “salting”, om de beveiliging te verhogen. In dit geval is de salt een geheime waarde, bijvoorbeeld een hoofdwachtwoord, die wordt gecombineerd met de seed voordat de hashfunctie een tweede keer wordt toegepast, waardoor het voor een aanvaller nog moeilijker wordt om het uiteindelijk verkregen wachtwoord te kraken.
4. Breng het resultaat van het toepassen van de uiteindelijke hashfunctie in kaart als een reeks alfanumerieke tekens uit de seed die gebruikt kan worden als wachtwoord.
Zijn er risico’s verbonden aan het gebruik van wachtwoordafleiding van een master seed?
Het grootste risico is dat als je je master seed verliest of vergeet, of de gegevens vergeet die gebruikt zijn om de seed te zouten, je geen toegang meer hebt tot je accounts. Daarom is het cruciaal om een master seed te kiezen die alleen door de gebruiker kan worden onthouden, maar die onmogelijk is voor een aanvaller om te achterhalen.
LISTHASH controlepunten
Om absolute privacy en het genereren van sterke, veilige wachtwoorden te bereiken, maakt LISTHASH gebruik van drie controlepunten in het afleidingsproces:
1. Seed: In eerste instantie wordt een seed gebruikt die niet alleen unieke en veilige gegevens levert, maar ook de tekenset definieert die door de manager wordt gebruikt om wachtwoorden te genereren. LISTHASH vereist dat het seed ten minste 62 verschillende tekens bevat om door de toepassing te worden geaccepteerd.
2. Lijst van accounts: Elke account die geregistreerd is in LISTHASH heeft een unieke identificatie en wordt vertegenwoordigd door de servicegegevens, de gebruiker en de lengte van het te genereren wachtwoord. Deze gegevens zijn standaard versleuteld zodat ze geëxporteerd kunnen worden buiten het apparaat waarop ze zijn opgeslagen.
3. Geheime codes: Tot slot voert de gebruiker geheime codes in die alleen hij kan onthouden. Deze codes voegen “zout” toe aan de uiteindelijke wachtwoordgeneratie, waardoor de onzekerheid van het resultaat van de hashfuncties wordt vergroot.
Belangrijk: Het ontbreken van specifieke informatie op een van de bovenstaande controlepunten maakt het onmogelijk om toegang te krijgen tot de juiste verificatiegegevens. Daarom kan een wachtwoord alleen worden hersteld als de specifieke gegevens op elk controlepunt volledig bekend zijn. Dit proces zorgt ervoor dat een inbreuk op maximaal twee controlepunten nutteloos is voor een aanvaller die probeert toegang te krijgen tot de authenticatiegegevens van de gebruiker.
Daarnaast geven conventionele wachtwoordmanagers een duidelijk signaal aan een aanvaller wanneer het hoofdwachtwoord is gekraakt, omdat alleen de ontcijfering een leesbaar resultaat oplevert dat toegang verschaft tot de authenticatiegegevens. Daarentegen leveren de LISTHASH controlegegevens altijd leesbare maar ongeldige authenticatiewaarden op, omdat alleen exacte en correcte gegevens op elk controlepunt overeenkomen met geldige authenticatiegegevens. Een brute-force aanval is onder deze omstandigheden nog inefficiënter, omdat hierbij alle mogelijke combinaties direct getest moeten worden op de dienst die gekoppeld is aan een account, en dit type aanval snel kan worden afgezwakt zodra de toegestane fouten van een dienst worden overschreden.
Met LISTHASH hoeft de gebruiker niet zijn privacy op te geven of de veiligheid van zijn gegevens toe te vertrouwen aan een cloudservice die kwetsbaar is voor hacken.