Latest newsSlovenščina
Back to feedTehnologijeNewsMeld Editorial

MeldID: od enega samega računa do sistema za upravljanje digitalnim dostopom

Ko sem se prvič spoznal z MeldID, sem ga v začetku dojemal predvsem kot storitev enotne digitalne identifikacije. Zdaj imajo projekt aplikacije za iPhone in Android, ki združujejo offline avtentikator TOTP, samodejno obnovo podatkov med napravami in potrditev prijave v povezanih storitvah.

Ko sem se prvič spoznaval z MeldID, sem ga v začetku dojemal predvsem kot infrastrukturo enotne digitalne identifikacije. Uporabnik ustvari en sam račun, izpolni upravljan profil in ga nato lahko uporablja v različnih aplikacijah — za prijavo in posredovanje dovoljenih podatkov brez stalnega polnjenja istih obrazcev.

Pričakoval sem, da bo nadaljnji razvoj šel predvsem v smeri profilov in povezanih storitev. A projekt se je hitro začel spreminjati iz skoraj neopazne strežniške infrastrukture v vsakodnevno orodje za upravljanje dostopa.

Naslednji korak so bile aplikacije za iPhone in Android. Pri tem ni najbolj zanimivo samo pojav mobilnega odjemalca, temveč tudi, katere naloge je uspelo združiti vanj.

Običajen TOTP — z drugo nalogo

V aplikaciji je generator enkratnih kod TOTP — tistih menjajočih se številk, ki se uporabljajo za dvostopenjsko overjanje.

Sam standard si ne prizadeva za lastno iznajdbo. Uporabnik doda račun in dobi kodo, ki jo lahko uporabi na tretjem spletnem mestu ali storitvi.

Večina avtentikatorjev odgovarja na vprašanje: «Kako prikazati šestmestno kodo?» Tukaj pa gre za širšo nalogo: kako varno upravljati življenjski cikel TOTP skrivnosti — od dodajanja in shranjevanja do obnove na drugi napravi in odstranitve vnosa.

Delovanje v načinu brez povezave je popolno

Na prvi pogled se zdi, da je glavno prednost lokalna generacija kod. A v MeldID način brez povezave vključuje več.

Že shranjene vnose lahko še naprej uporabljamo brez interneta. Kode se ustvarjajo neposredno na telefonu, zato začasni izpad povezave ne ovira prehoda dvostopenjskega preverjanja.

Novo TOTP vnos je mogoče dodati tudi v načinu brez povezave. Shranjuje se lokalno in se takoj uporablja za generiranje kod. Ko bo na voljo internet, se vnos samodejno pošlje v zaščiteno shrambo in sinhronizira z drugimi napravami.

Urejanje in brisanje že sinhroniziranih vnosov zahtevata povezavo s strežnikom. To omogoča, da ne dobimo različnih različic istega shrambe na različnih telefonih.

Na ta način je dosežen ravnovesje: osnovne operacije so dostopne brez omrežja, spremembe, ki morajo biti enako uporabljene na vseh napravah, pa se izvedejo po vrnitvi v online stanje.

Nov telefon ne pomeni novega niza kod

Najtežji problem vsakega avtentikatorja nastopi po izgubi, okvari ali zamenjavi telefona. V običajnih okoliščinah je treba iskati rezervne kode, ročno prenesti vnose ali znova povezati aplikacijo z vsako storitvijo.

Tukaj je shranjevanje povezano ne z eno samo napravo, temveč z računom MeldID. Po prijavi na nov telefon in inicializaciji zaščitene shrambe se vnosi samodejno obnovijo.

Nije pomembno, ali je bil predhodni telefon Android, novi pa iPhone, ali obratno. Lahko povežete še drugi, tretji in nadaljnji telefon, brez ustvarjanja ločenega postopka prenosa za vsako platformo.

Predstavljajmo si, da je telefon nenadoma okvarjen med potovanjem. Namesto obnove dostopa posebej v vsaki storitvi uporabnik vstopi v MeldID na novi napravi in zaključi nastavitev shrambe. Po tem se njegovi TOTP vnosi vrnejo v aplikacijo.

Na enem telefonu je mogoče uporabljati tudi več različnih računov MeldID. Njihove shrambe ostajajo ločene: vnosi enega računa se ne mešajo z drugimi podatki in se ne pojavijo na napravi brez ustrezne avtentikacije.

Kaj je shranjeno na strežniku

Samodejno obnovo pomeni, da morajo biti podatki nekje shranjeni. Toda TOTP skrivnosti se ne zapisujejo v bazo v odprti obliki.

Vsebina vnosa je shranjena v šifriranem vsebniku. Trenutna arhitektura uporablja avtentificirano šifriranje AES-256-GCM, ključ zaščitene shrambe pa je ločen od same baze podatkov.

Zato uhajanje ene baze ne vodi v pripravljeno listo skrivnosti za generiranje kod. Napadalec prejme šifrirane bloke, ne odkritih TOTP podatkov.

Pomembno je, da ne dajemo absolutnih zagotovil. Natančneje rečeno: odprte TOTP skrivnosti v bazi niso shranjene, ena sama kopija baze pa ni zadostna za njihovo uporabo.

Potrditev prijave preko MeldID

Druga pomembna funkcija aplikacije je Login Approval, torej ločeno potrjevanje avtentikacije.

Če spletna stran ali aplikacija podpira MeldID, lahko uporabnik enostavno začne prijavo z enim samim dejanjem. Ko je zaščita omogočena, uspešna avtentikacija ni več dovolj: dostop je dokončen samo po potrditvi na zaupanja vredni mobilni napravi.

Zahtevek je mogoče odobriti, če je prijava resnično začel uporabnik sam, ali zavrniti, če se zdi nenavadna.

Za razliko od običajnega push-odobritve je Login Approval integriran neposredno v arhitekturo MeldID in ga lahko uporablja vse storitve povezanih z identifikacijskim sistemom.

Push služi le kot obvestilo o novi operaciji. V njem ni gesla, TOTP kode, žetona ali drugih podatkov, ki bi omogočili avtentikacijo.

TOTP in Login Approval dopolnjujeta drug drugega

TOTP ostaja univerzalni standard in deluje tudi v storitvah, ki ničesar ne vedo o MeldID. Po nalaganju vnosa se kode generirajo lokalno.

Login Approval je potreben tam, kjer je sama avtentikacija izvedena preko MeldID. Dodaja zavestno dejanje uporabnika k prijavi in omogoča ustavitev poskusa do vzpostavitve seje.

Zato lahko aplikacija hkrati deluje kot običajen avtentikator za zunanjo spletno stran in kot sredstvo za potrjevanje prijave v povezano sistemsko okolje.

Kaj se je spremenilo v samem MeldID

Ko sem se prvič spoznaval z projektom, se je osrednja ideja zdela upravljanje enega samega računa in prenosljivega profila. Zdaj je jasno, da se MeldID postopoma spreminja v osebni center za upravljanje digitalnega dostopa.

Tukaj je mogoče:

  • prejemati TOTP kode brez interneta;

  • dodajanje novih vnosov v načinu brez povezave;

  • samodejno obnoviti na novi napravi;

  • uporabljati več telefonov;

  • ločiti več računov na eni napravi;

  • potrditi ali zavrniti nove prijave.

Vsebina aplikacije torej ni v tem, da zna prikazati še eno šestmestno kodo. Njena naloga je širša — ohraniti dostop pri menjavi naprave, ne izgubiti podatkov brez omrežja in uporabniku dati zadnjo zavestno izbiro pred ustvarjanjem nove seje.

Z varnostjo ni zaupati zgolj enemu mehanizmu, temveč celotni zbirki rešitev: TOTP skrivnosti niso shranjene v odprti obliki; dostop ni trajno vezan na eno samo napravo; različni računi ostajajo ločeni drug od drugega; in dostop do podprtih storitev se zaključi šele po potrditvi zaupanja vredne naprave.