Latest newsMagyar
Back to feedTechnológiaNewsMeld Editorial

MeldID: a felhasználói fiókból a digitális hozzáférés kezelésének rendszerébe

Amikor először megismerkedtem a MeldID-vel, elsősorban egy egységes digitális azonosítási szolgáltatásként értékeltem. Most azonban a projekthez megjelentek iPhone és Android alkalmazások, amelyek ötvözik offline TOTP azonosítót, az adatok automatikus helyreállítását az eszközök között és a belépések megerősítését kapcsolt szolgáltatásokban.

Amikor először megértettem a MeldID-t, elsősorban egy egységes digitális azonosítási infrastruktúraként értékeltem. A felhasználó egyetlen fiókot hoz létre, kitölti a kezelhető profilját, majd ezt különböző alkalmazásokban használhatja — a bejelentkezéshez és engedélyezett adatok átadásához anélkül, hogy kitöltené ugyanazokat a űrlapokat folyamatosan.

Arra számítottam, hogy a további fejlődés a profilok és a csatlakoztatott szolgáltatások irányába halad. Ám a projekt gyorsan azzá vált, ami szinte észrevehetetlen szerver infrastruktúrából mindennapi hozzáférés-kezelő eszközzé kezdett formálódni.

A következő lépés az iPhone és Android alkalmazások bevezetése volt. Itt azonban különösen érdekes nem maga a mobil kliens megjelenése, hanem az, hogy milyen feladatokat sikerült egyesíteni benne.

Egyszerű TOTP – más feladattal

A alkalmazásban van egyszer használatos TOTP-kód generátor — az a változó számokat tartalmazó, kétfaktoros hitelesítéshez használt változó kódokat generáló eszköz.

A szabvány nem saját találmányként van bemutatva. A felhasználó hozzáad egy fiókot, és megkapja a kódot, amelyet külső szolgáltatásnál vagy weboldalon használhat.

A legtöbb hitelesítő azzal foglalkozik, hogy: „Hogyan mutassunk hatjegyű kódot?” Itt azonban egy szélesebb problémát oldanak meg: hogyan kezeljük biztonságosan a TOTP-s secrets életciklusát — a hozzáadást, tárolást, helyreállítást más eszközön és a törlést.

Az offline mód teljes értékűen működik

Első pillantásra fő előnyének a helyi kód-generálást tartják. Ám a MeldID-ben az offline üzemmód többet jelent.

A korábban mentett rekordok internet nélkül is működnek. A kódok közvetlenül a telefonon generálódnak, így ideiglenes kapcsolat hiányában sem akadály a kétfaktoros ellenőrzés átadása.

Az új TOTP rekordot is offline lehet hozzáadni. Az adatok helyben tárolódnak, és azonnal felhasználhatók a kódok generálására. Amikor az internet újra elérhető lesz, a hozzáadás automatikusan a védett tárolóba kerül és szinkronizálódik más eszközökkel.

A már szinkronizált rekordok szerkesztése és törlése szerverkapcsolatot igényel. Ez megakadályozza, hogy ugyanaz a tárolás különböző telefonokon eltérjen.

Így elérhető az egyensúly: a fő műveletek hálózat nélkül is elérhetők, míg a változtatások, amelyek mindenképp minden eszközön meg kell, hogy jelenjenek, online állapotban kerülnek végrehajtásra.

Új telefon nem jelent új kódcsomagot

A legkényelmetlenebb problémát bármilyen hitelesítő esetében, ha elveszik, sérül vagy cserélik az eszközt. Általában meg kell találni a mentett kódokat, manuálisan átvinni a rekordokat vagy újra összekapcsolni az alkalmazást minden szolgáltatással.

Itt azonban a tároló nem eszközhöz kötött, hanem a MeldID fiókhoz. Teljesen automatikusan helyreállnak a rekordok, amikor bejelentkezik az új eszközön és beállítja a védett tárolót.

Nem számít, hogy előzőleg Android okostelefonja volt, az új viszont iPhone vagy fordítva. Második, harmadik vagy több telefon hozzáadása is könnyen lehetséges, anélkül hogy külön migrációs folyamatot kellene végrehajtani platformonként.

Például, ha váratlanul elromlik az okostelefon egy utazás közben, ahelyett, hogy mindegyik szolgáltatónál külön-külön visszaállítaná a hozzáférést, a felhasználó a MeldID-be történő bejelentkezéssel és a védett tároló beállításával folytathatja. Ezt követően a TOTP rekordok automatikusan visszatérnek az alkalmazásba.

Lehetséges több különböző MeldID fiókot is használni egy telefonon. Ezek tárolói különválnak: egymás adatai nem keverednek, és nem jelennek meg az eszközön az engedély nélküli felhasználás esetén.

Mit tárol a szerveren

Az automatikus helyreállítás azt jelenti, hogy az adatoknak valahol tárolódniuk kell. Azonban a TOTP secrets nem kerülnek nyilvánosan a adatbázisba.

A rekord tartalma titkosított konténerben van. A jelenlegi architektúrában hitelesített AES-256-GCM titkosítási módszert használnak, és a védett tároló kulcsa külön van a adatbázistól.

Ezért egy adatbázis szivárgása nem eredményez kész lista a generálható kódokhoz szükséges titkokból. A támadó csak titkosított blokkokat kap, nem pedig nyilvános TOTP adatokat.

Fontos itt megjegyezni, hogy nem szabad abszolút ígéreteket tenni. Pontosabban így fogalmazva: nyilvános TOTP secrets nem kerülnek tárolásra az adatbázisban, és egy példány sem elég a kódok előállításához.

A belépés megerősítése a MeldID-vel

A második fontos funkció a Login Approval, azaz a külön hitelesítési jóváhagyás.

Ha egy webhely vagy alkalmazás támogatja a MeldID-t, a felhasználó egy kattintással indíthatja a bejelentkezést a fiókján keresztül. Az aktivált védelmi funkció mellett azonban az egyszerű bejelentkezés nem elég: a hitelesítés csak akkor tekinthető sikeresnek, ha a megerősítés megtörténik egy megbízható mobil eszközön.

A kérés jóváhagyását akkor adhatjuk, ha a belépést valóban a felhasználó kezdeményezte, vagy elutasíthatjuk, ha a művelet váratlanul történik.

A hagyományos push megerősítéstől eltérően a Login Approval beépített a MeldID architektúrájába, és minden, ehhez a rendszerhez csatlakozó szolgáltatással használható.

A push itt csak értesítésként szolgál az új műveletről, nem tartalmaz jelszót, TOTP-kódot, tokent vagy más, hitelesítésre alkalmas adatot.

A TOTP és a Login Approval egymást kiegészítik

A TOTP továbbra is univerzális szabvány, még azoknál a szolgáltatásoknál is működik, amelyek nem ismerték meg a MeldID-t. A rekord betöltése után a kódok helyben generálódnak.

A Login Approval pedig ott szükséges, ahol maga a hitelesítés a MeldID-n keresztül történik. Ez felhasználói tudatosságot ad a belépéshez és lehetővé teszi elakadás vagy gyanús művelet esetén a bejelentkezés megszakítását, mielőtt a munkamenet létrejön.

Így az alkalmazás lehet egy egyszerű hitelesítő egy külső webhelyhez, ugyanakkor egyben a csatlakoztatott rendszerhez való belépést jóváhagyó eszköz is.

Mi változott magában a MeldID-ben?

Amikor elsőként találkoztam a projekttel, fő elképzelése a közös fiókkezelés és a hordozható profil volt. Most azonban nyilvánvaló, hogy a MeldID fokozatosan a személyes digitális hozzáférés kezelő központtá válik.

Ebben például lehet:

  • TOTP-kódokat offline is generálni;

  • új rekordokat offline hozzáadni;

  • automatikusan helyreállítani azokat új eszközön;

  • több telefon használata;

  • több fiók megkülönböztetése egy eszközön;

  • új bejelentkezések jóváhagyása vagy elutasítása.

A program értékessége nem abban rejlik, hogy egy újabb hatjegyű kódot jelenít meg. Sokkal inkább az a feladata, hogy a készülékváltáskor megőrizze a hozzáférést, elkerülje az adatvesztést hálózat nélkül, és utolsó tudatos döntést adjon a felhasználónak egy új munkamenet indítása előtt.

A biztonság nem egyetlen mechanizmán múlik, hanem több megoldás összességén: a TOTP secrets nem nyilvános formában kerülnek tárolásra, a hozzáférés nem kötött végleg egy telefonhoz, a különböző fiókok izoláltak egymástól, és a belépés támogatott szolgáltatásoknál csak a megbízható eszköz megerősítése után történik meg.