A hash-ek közelebbről: Funkciók, algoritmusok és alkalmazások
Mi az a derivatív jelszókezelő?
A mai digitális világban a jelszavak biztonsága fontosabb, mint valaha. Mivel a kiberbűnözők folyamatosan új módszereket keresnek arra, hogy hozzáférjenek fiókjainkhoz és ellopják az adatainkat, az egyik legjobb módja a védelemnek, ha erős, egyedi jelszavakat használunk minden fiókunkhoz.
Az erős és egyedi jelszavak megjegyzése azonban minden fiókunkhoz nehéz lehet. Ezért egyre népszerűbb megoldás a jelszómenedzserek használata. Általában a hagyományos jelszókezelőkben a hitelesítési adatok a felhasználót és a jelszót is egyetlen adathalmazba foglalják, amelyet egy fő jelszóval titkosítanak. A főjelszó ismerete feltárja a hagyományos menedzser által védett hitelesítési adatok összességét, ezért egy olyan támadás, amely egyetlen kritikus adat meghatározására irányul, katasztrofális biztonsági rést eredményezhet.
A LISTHASH a jelszókezelés új formáját valósítja meg, amely több ellenőrzési pontot tartalmaz, és lehetővé teszi a felhasználói hitelesítési adatok teljes körű védelmét. A hash-függvények alkalmazásával biztosítja a szükséges mechanizmusokat a jelszógenerálás során a felhasználó által megadott adatokból származó erős és biztonságos jelszavak létrehozásához. A LISTHASH-t tehát származtatott jelszókezelőnek nevezzük, mivel az új adatok egy alapadatból kaotikus, de determinisztikus módon kerülnek származtatásra, amelyek kellően összetettek ahhoz, hogy jelszóként használhatók legyenek.
Mi a jelszó származtatása egy fő magból?
A jelszólevezetés egy fő magból egy olyan módszer, amellyel biztonságos és egyedi jelszavakat lehet generálni egy titkos adatból, az úgynevezett fő magból. A fő mag lehet egy mondat, egy szöveg vagy egy adatsor, amelynek egyetlen feltétele, hogy elég hosszú és összetett legyen ahhoz, hogy egy támadó nehezen találja ki, ugyanakkor a digitális biztonságot alaposan ismerő felhasználó számára könnyen megjegyezhető maradjon.
Ha megvan a fő mag, akkor egy hash-funkcióval egyedi jelszavakat generálhat minden fiókhoz. Amint már említettük, a hash-függvény egy olyan matematikai függvény, amely egy bemenetet (ebben az esetben a fő magot) vesz, és azt egy kimenetté (ebben az esetben a jelszóvá) alakítja. A hash-függvény kimenete mindig ugyanaz a bemenethez, de a függvényt nem lehet megfordítani, hogy a bemenetből a kimenetre jussunk.
Hogyan működnek a hash-ek jelszavak létrehozására?
A hash-ek használata jelszavak létrehozására a hitelesítési adatok védelmének egyszerű, de hatékony módszere. Egy megjegyezhető, de statisztikailag összetett kifejezés, kulcs vagy adatelem-a fő mag-és egy biztonságos hash-függvény kombinálásával egyedi, nehezen kitalálható jelszavakat hozhat létre, amelyek megvédik adatait a kiberbűnözőktől. Az alapvető folyamat a következő:
1. Válasszon egy olyan mondatot, kulcsot vagy adatelemet, amely összetett és biztonságos információt képvisel, de könnyen megjegyezhető, és nem kapcsolható könnyen a felhasználóhoz-például egy könyvrészlet, egy konkrét kép vagy egy olyan adatelem, amely szabad szemmel látható, de egy támadó számára meghatározhatatlan.
2. Használjon egy hash-függvényt, például SHA-256-ot, hogy a magot egyedi hash-értékké alakítsa, amely a hitelesítési adatok lekérdezéséhez alapvető köztes értékként szolgál.
3. Só hozzáadása, vagy „sózás” a biztonság növelése érdekében. Ebben az esetben a só egy titkos érték-például egy főjelszó-,amelyet a maggal kombinálnak, mielőtt a hash-függvényt másodszor is alkalmazzák, így még nehezebbé téve a támadó számára a végső jelszó visszafejtését.
4. A végső hash-függvény alkalmazásának eredményét a magból származó alfanumerikus karakterlánccá alakítja, amely jelszóként használható.
Van-e kockázata a jelszó levezetésének egy fő magból?
A mester magból történő jelszólevezetés használatának fő kockázata az, hogy ha elveszíti a mester magot, vagy nem emlékszik rá, vagy elfelejti a mag sózásához használt adatokat, akkor lehetetlen lesz hozzáférni a fiókjaihoz. Ezért fontos, hogy olyan mester magot válasszon, amelyre csak a felhasználó emlékszik, de amelyet egy támadó nem tud meghatározni.
LISTHASH ellenőrzési pontok
Az abszolút adatvédelem és az erős, biztonságos jelszavak generálása érdekében a LISTHASH három ellenőrzési pontot hoz létre a származtatási folyamat során:
1. Mag: Kezdetben egy magot használunk, amely nemcsak egyedi és biztonságos adatot szolgáltat, hanem meghatározza a jelszavak generálásához a kezelő által használt karakterkészletet is. A LISTHASH megköveteli, hogy a mag legalább 62 különböző karaktert tartalmazzon ahhoz, hogy az alkalmazás elfogadja.
2. Fiókok listája: A LISTHASH-ben regisztrált minden egyes fiók egyedi azonosítóval rendelkezik, és a hozzá tartozó szolgáltatási adatokkal, a felhasználóval valamint a generálandó jelszó hosszával van reprezentálva. Ezek az adatok alapértelmezés szerint titkosítva vannak, így azokat a tároló eszközön kívülre is exportálni lehet.
3. Titkos kódok: Végül a jelszó generálásához a felhasználó olyan titkos kódokat ad meg, amelyekre csak ő emlékezhet. Ezek a kódok „sót” adnak a végső jelszógeneráláshoz, növelve a hash-függvények eredményének bizonytalanságát.
Fontos: Ha a fenti ellenőrzési pontok bármelyikénél nincs a megfelelő, konkrét információ, akkor a hitelesítési adatokhoz való hozzáférés lehetetlenné válik. Ezért csak az egyes ellenőrzési pontok pontos, teljes körű ismerete teszi lehetővé a jelszó visszaállítását, biztosítva, hogy akár két ellenőrzési pont megsértése is haszontalan legyen a támadó számára a felhasználó hitelesítési adatainak megszerzésére tett kísérletében.
Továbbá a hagyományos jelszókezelők egyértelműen jelzik a támadónak, ha sikerül kompromittálni a főjelszót, mivel a visszafejtés olvasható eredményt generál, amely lehetővé teszi a hitelesítési adatokhoz való hozzáférést. Ezzel szemben a LISTHASH ellenőrzési pontok adatai mindig olvashatóak, de érvénytelen hitelesítési értékekké alakulnak, mert csak az egyes ellenőrzési pontokon pontos és helyes adatok felelnek meg az érvényes hitelesítési adatoknak. A brute force, azaz a nyers erővel végrehajtott támadás ilyen feltételek mellett még kevésbé hatékony, mivel minden lehetséges kombinációt közvetlenül a fiókhoz kapcsolódó szolgáltatáson kell tesztelni-és ez a fajta támadás gyorsan enyhíthető, amint a szolgáltatás megengedett hibahatárai túllépésre kerülnek.
A LISTHASH segítségével a menedzser felhasználója nem kényszerül arra, hogy feladja a magánéletét, vagy hogy adatai biztonságát egy feltörhető felhőszolgáltatásra bízza.