MeldID: бір аккаунттан цифрлық қол жеткізуді басқару жүйесіне
Мен алғаш рет MeldID-мен танысқанда оны ең алдымен бірізді цифрлық идентификация қызметі ретінде қабылдадым. Енді жоба офлайн-аутентификатор TOTP, құрылғылар арасында автоматты деректер қалпына келтіру және қосылған сервистерге кірудің растауын біріктіретін iPhone және Android қосымшаларын шығарды.
Мен алғаш рет MeldID-мен танысқанда оны ең алдымен бірізді цифрлық идентификация инфрақұрылымы ретінде қабылдадым. Пайдаланушы бір аккаунт құрып, басқарылатын профилін толтырады, содан кейін оны әртүрлі қосымшаларда пайдалана алады — кіру және рұқсат етілген деректерді қайталамай, формаларды қайта-қайта толтырудың қажеті болмайды.
Мен жобаның әрі қарай дамуы ықтимал түрде профильдер мен қосылған сервистер бойынша болады деп ойладым. Алайда жоба тезірек күнделікті қолданылатын қолжетімділік басқару құралына айнала бастады.
Келесі қадам — iPhone және Android үшін қолданбалар болды. Мұнда ең қызығы мобильдік клиенттің өзі емес, оның қандай тапсырмаларды біріктіре алғанында болды.
Қарапайым TOTP — басқа міндетпен
Қолданбада бір реттік кодтарды генерациялайтын TOTP тудырғышы бар — екіфакторлық растауда қолданылатын цифрлардың өзгеретін жиынтығы.
Стандарт өздігінен ашып көрсетілмейді. Пайдаланушы есептік жазбаны қосады және қосымшада немесе сыртқы сервисте қолдануға болатын код алады.
Көптеген аутентификаторлар «Қалай алты цифрды код көрсету керек?» деген сұраққа жауап береді. Мұнда кеңірек міндет қойылады: TOTP құпиясөздерінің өмірлік циклін — қосу, сақтау, басқа құрылғыларда қалпына келтіру және жоюды қауіпсіз түрде басқару.
Офлайн режим толық жұмыс істейді
Бір қарағанда, ең басты артықшылығы — кодтарды жергілікті генерациялау. Бірақ MeldID-де офлайн режимі одан да көп мүмкіндіктер береді.
Бекітілген жазбалар интернетсіз де жұмыс істейді. Кодтар тікелей телефонда құрылады, сондықтан уақытша байланыс болмаса да екіфакторлық тексеруден өту қиын болмайды.
Жаңа TOTP жазбасын да офлайн қосуға болады. Ол локалде сақталады және кодтарды генерациялау үшін бірден пайдаланылады. Интернет қосылғанда, ол автоматты түрде қауіпсіз сақтау орнына жіберіліп, басқа құрылғылармен синхрондалады.
Бұл жазбаларды редакциялау және жою үшін серверге қосылу қажет. Бұл бірдей әзірлеуге мүмкіндік береді және әртүрлі телефондарда бірдей деректер қорының әртүрлі нұсқаларын алудан сақтайды.
Нәтижесінде, негізгі әрекеттер желісіз қолжетімді, ал барлық құрылғыларға бірдей әсер етуі тиіс өзгерістер онлайн болғанда жүзеге асады.
Телефонды ауыстырғанда кодтар жиынтығы өзгермейді
Кез келген аутентификатордың ең жағымсыз мәселесі — телефон жоғалса, сынса немесе ауыстырылса туындайды. Көбінесе резервтік кодтарды іздеу, жазбаларды қолмен көшіру немесе әр сервисте негізгі қосымшаны қайта тіркеу керек болады.
Мұнда деректерді сақтау құрылғыға емес, MeldID аккаунтына байланысты. Жаңа телефонға кіргеннен кейін және қауіпсіз сақтау орнын іске қосқаннан кейін, жазбалар автоматты түрде қалпына келтіріледі.
- Алдыңғы құрылғы Android болғанымен, жаңа iPhone болса да, маңызды емес. Екі платформада да бірдей деректерді көшіруге болады — әрбір құрылғы үшін бөлек көшіру процесін жүргізбей.
Егер смартфон бір күнде апатқа ұшыраса, пайдаланушы жеке сервистерден қайта қол жеткізу орнына MeldID-ге кіріп, сақтау орнын орнатады. Нәтижесінде, оның TOTP жазбалары қайта қосылады.
Бір телефонда бірнеше MeldID аккаунтын қолдануға болады. Олардың деректері бөлек сақталады, бір аккаунттың деректері басқа аккаунтпен араласпайды және ешқашан авторизацияланбайынша құрылғыда пайда болмайды.
Серверде не сақталады
Автоматты қалпына келтіру деректердің қайда сақталатынын көрсетеді. Бірақ TOTP құпиялары ашық түрде сақталмайды.
Жазба мазмұны шифрланған контейнерге орналастырылған. Қазіргі архитектурада әдеттегідей AES-256-GCM аутентификацияланған шифрлау пайдаланылады, ал қауіпсіз сақтау құпиясы база деректерінен бөлек қамтылған.
Осыдан бір база ұсталған жағдайда, автоматты генерация үшін ашық TOTP құпияларының тізімі пайда болмайды. Қылмыскер шифрланған блоктарды алады, ашық TOTP деректерін емес.
Мұнда шын мәнінде уәде бермеу керек. Дәл айтсақ, ашық TOTP құпиялары деректер қорында сақталмайды, ал бір дерекқордың көшірмесі жеткіліксіз оны қолдану үшін.
Kіруді растау MeldID арқылы
Қосымшаның екінші маңызды функциясы — Login Approval, яғни авторизацияны арнайы растау функциясы.
Егер сайт немесе қосымша MeldID-мен үйлессе, пайдаланушы бір әрекетпен кіре алады. Белгілі қорғау қосылғанда, сәтті аутентификация жеткіліксіз — авторизация тек сенімді мобильдік құрылғыда растағанда ғана аяқталады.
Оңай растау сұрауы қолданушы өзі бастағанын растай алады немесе күтпеген жағдайға байланысты оны теріске шығарады.
Жай push-потверждение сияқты емес, Login Approval MeldID архитектурасына тікелей енген және осы жүйеге қосылған барлық сервистерде қолданылуы мүмкін.
Push — жаңа операция туралы хабарлама ғана. Оның ішінде пароль, TOTP коды, токен немесе басқа авторизацияға қолданылатын деректер жоқ.
TOTP және Login Approval бір-бірін толықтырады
TOTP әлі де әмбебап стандарт болып қала береді және MeldID-ны білмейтін сервистерде жұмыс істей береді. Жазбаны жүктеген соң, кодтар жергілікті генерацияланады.
Login Approval — MeldID арқылы өтетін авторизацияда қажет. Ол кіріс кезінде пайдаланушының саналы әрекетін қосады және сессияны құрып жатып байқау мүмкіндігін береді.
Сондықтан қолданба сыртқы сайт үшін дәстүрлі аутентификатор болуы мүмкін және бір мезгілде қосылған жүйеге кіруді растау құралы да бола алады.
MeldID-нің өзі өзгерген неге
Бірінші кезде жоба негізгі идеясы — бір аккаунтты басқару және портативті профиль құру еді. Қазір байқалғаны — MeldID біртіндеп цифрлық қол жеткізуді басқару орталығына айналуда.
Міне, мұнда можно:
интернетсіз TOTP кодтарын алу;
жаңа жазбаларды офлайн қосу;
жаңа құрылғыда автоматты қалпына келтіру;
бірнеше телефон қолдану;
бір құрылғыда бірнеше аккаунтты бөлу;
жаңа кірулерді растау немесе керісінше — теріске шығару.
Қосымшаның мәні тек алты цифрлы код көрсетуді ғана емес. Ол мақсаты — құрылғы ауысқанда қол жеткізуді сақтау, желісіз деректер жоғалмауын қамтамасыз ету және пайдаланушыға жаңа сессия алдында соңғы саналы таңдау жасауға мүмкіндік беру.
Қауіпсіздік бір ғана механизмге емес, бірнеше шешімі бірігіп жұмыс істеуге негізделген: TOTP құпиялары ашық түрде сақталмайды, қол жеткізу бір телефонмен шектелмеген, әрбір аккаунт бөлек оқшауланған және қолдау көрсетілетін сервистерге кіру тек сенімді құрылғы арқылы растаудан кейін ғана орындалады.