Holder binding paaiškintas: kodėl nukopijuotas kredencialas yra bevertis
Pasirašytas kredencialas yra labai gera savo paties kopija. Kas jį gauna, turi dokumentą su galiojančiu išdavėjo parašu, o to parašo patikra mielai patvirtins, kad jis tikras. Holder binding užpildo šią spragą: jis susieja kredencialą su raktu, kurį gali naudoti tik vienas asmuo, todėl norint jį pateikti neužtenka jį turėti.
Šis puslapis yra paaiškinimas paprasta kalba. Jame aptariama, kas iš tikrųjų yra susiejimas, kada jis sukuriamas, kaip jį įgyvendina kiekvienas iš dviejų europinių kredencialų formatų, ir tai, ką dauguma paaiškinimų praleidžia: ko holder binding vis dar nepasako tikrintojui.
Kokią problemą tai sprendžia
Skaitmeniniai dokumentai kopijuojami tobulai. Paso nuotrauka yra prasta klastotė, nes popierius turi fizinių požymių, kurių fotokopija neperteikia, tačiau pasirašytas kredencialas tokių išduodančių ženklų neturi. Nukopijuokite failą, ir kopija bus patikrinta lygiai taip pat sėkmingai kaip originalas, nes išdavėjo parašas apima turinį, o turinys nepasikeitė.
Todėl tikrintojas, kuris tikrina tik išdavėjo parašą, atsako į ne tą klausimą. Jis sužinojo, kad teiginiai autentiški. Jis nieko nesužinojo apie tai, ar priešais jį esanti šalis turi teisę į juos, o būtent to paprastai ir reikėjo.
Teiginiai
Faktai, kuriuos teigia kredencialas: vardas, gimimo data, vairuotojo pažymėjimo kategorija, įmonės kodas. Tai dalis, kurią visi įsivaizduoja galvodami apie kredencialą.
Išdavėjo parašas
Įrodymas, kad tie faktai gauti iš išdavėjo ir nuo tada nebuvo pakeisti. Jis visiškai nieko nesako apie tai, kas juos turi dabar.
Turėtojo viešasis raktas
Dalis, kuri atlieka susiejimą. Išdavėjas įrašo turėtojo viešąjį raktą į pasirašytą kredencialą, todėl kredencialas dabar nurodo raktą, kuriam leidžiama jį pateikti.
Kada susiejimas sukuriamas ir kada naudojamas
Susiejimas sukuriamas vieną kartą, išdavimo metu, ir panaudojamas kiekvieną kartą, kai kredencialas pateikiamas. Turėtojas iš jo nemato nieko daugiau, tik atrakinimo užklausą, kurios jau tikisi.
1. Piniginė sukuria raktą
Prieš ko nors prašydama, piniginė sukuria naują raktų porą paties telefono saugioje aparatinėje įrangoje. Privačiosios dalies negalima nuskaityti, net pačiai piniginės programėlei.
2. Išdavėjas jį įrašo
Piniginė kartu su užklausa siunčia viešąją dalį ir įrodo, kad turi privačiąją. Išdavėjas įrašo tą viešąjį raktą į kredencialą prieš jį pasirašydamas.
3. Tikrintojas klausia
Užklausoje yra nauja atsitiktinė reikšmė ir nurodyta, kas klausia, todėl atsakymą galima panaudoti tik kartą ir tik tai šaliai, kuri jo paprašė.
4. Piniginė pasirašo
Piniginė pasirašo atsakymą privačiuoju raktu, paprastai po piršto atspaudo ar PIN kodo. Tikrintojas tikrina tą parašą pagal kredenciale esantį raktą.
Kur iš tikrųjų laikomas privatusis raktas
Susiejimas yra tik toks patikimas, kiek sunku panaudoti raktą be turėtojo. Todėl piniginės generuoja šiuos raktus specialioje aparatinėje įrangoje, saugiame elemente ar jo atitikmenyje, kuris saugo ir telefono mokėjimo duomenis, o ne laiko juos kaip failą, kurį operacinė sistema gali atiduoti bet kuriai paprašiusiai programėlei.
Tikrintojas iš paties pateikimo nieko iš to nemato. Parašas įrodo, kad raktas buvo panaudotas, o ne kad jis buvo gerai saugomas. Ar raktas tikrai yra sertifikuotoje aparatinėje įrangoje, yra atskiras užtikrinimas, kurį perteikia atestacijos, kurias piniginė pateikia išdavėjui prieš ką nors gaudama, ir pagal europines taisykles būtent tam skirtos piniginės ir rakto atestacijos.
Holder binding atsako
Ar šį atsakymą sukūrė raktas, kuriam buvo išduotas šis kredencialas, šiai užklausai, ką tik?
Rakto atestacija atsako
Ar tas raktas laikomas ten, iš kur užpuolikas negali jo išgauti? Kitas klausimas, kiti įrodymai, sprendžiama išdavimo metu.
Kaip tai daro du europiniai formatai
Abiejuose formatuose, ant kurių pastatyta europinė piniginė, idėja ta pati. Skiriasi mechanika, o tai svarbu tam, kas diegia tikrintoją, ir beveik niekam kitam.
SD-JWT VC
Išdavėjas įrašo turėtojo viešąjį raktą į patvirtinimo teiginį pasirašytame kredenciale. Pateikimo metu piniginė prideda nedidelį atskirą žetoną, pasirašytą privačiuoju raktu, kuris apima tikrintojo tapatybę ir atsitiktinę užklausos reikšmę. Tikrintojas, ignoruojantis tą žetoną, patikrino išdavėją ir nieko daugiau.
Skaityti apibrėžimąmdoc
Įrenginio raktas nurodytas pasirašytame objekte, saugančiame duomenų elementus, o telefonas pasirašo sesijos, kurioje dalyvauja, transkriptą. Kadangi tas transkriptas apima dviejų įrenginių tarpusavio mainus, vieno pateikimo įrašo negalima pakartoti kitame, ir būtent dėl to neprisijungus atliekama patikra pakelėje ar prie durų yra saugi.
Skaityti apibrėžimąEuropos ekosistemos piniginė paprastai turi tą patį kredencialą abiem formatais ir pateikia tą, kurį supranta kita pusė, todėl kredencialus priimanti organizacija turi mokėti patikrinti susiejimą abiejuose.
Ko holder binding neįrodo
Holder binding įrodo rakto valdymą. Jis neįrodo, kas laiko telefoną. Asmuo, kuriam buvo duotas įrenginys ir PIN kodas, sukuria lygiai tokį patį galiojantį atsakymą kaip teisėtas turėtojas, ir jokia kredenciale esanti kriptografija negali pastebėti skirtumo.
Jis taip pat nieko nesako apie tai, kaip kruopščiai išdavėjas patikrino tapatybę prieš išduodamas. Su raktu susietas kredencialas vis tiek yra tik toks patikimas kaip procesas, kuris jį sukūrė, ir būtent tai aprašo Level of Assurance. Labai stipriai susiejus silpnai išduotą kredencialą su raktu, jame esantys teiginiai netampa nė kiek teisingesni.
Žiūrint kartu, darbo pasidalijimas pakankamai aiškus. Holder binding sustabdo pakartojimą ir kopijavimą, piniginės atrakinimas susieja raktą su šalia esančiu žmogumi, Level of Assurance aprašo, kaip gerai tas žmogus buvo identifikuotas, o patikimų sąrašas nurodo, kuriuos išdavėjus apskritai priimate. Tikrintojui, norinčiam tikro atsakymo, reikia visų keturių, o ne tik to vieno, kuris kartu su kredencialu gaunamas nemokamai.
Ką tai reiškia jums
Išdavėjas
Jūsų kredencialai tampa nenaudingi kiekvienam, kas pavagia jų kopiją, ir tai pašalina visą sukčiavimo rūšį, kurią kitaip tektų aptikti post factum. Kaina ta, kad turite būti pasirengę išduoti iš naujo kaskart, kai turėtojas pakeičia įrenginį.
Tikrintojas
Tikrinkite susiejimą, ne tik išdavėjo parašą. Kiekvienoje užklausoje siųskite naują atsitiktinę reikšmę ir atmeskite atsakymą, kuris jos nepasirašo, antraip įrašytas pateikimas vėliau gali būti pakartotas prieš jus.
Piniginės turėtojas
Nieko nereikia tvarkyti, tik vieną dalyką žinoti: jūsų kredencialai susieti su šiuo įrenginiu, todėl naujas telefonas reiškia, kad juos reikės gauti iš naujo, o ne atkurti iš atsarginės kopijos.
Susiję terminai
Dažnai užduodami klausimai
Ar holder binding yra tas pats, kas key binding ar device binding?
Praktiškai taip, o skirtingi žodžiai kilę iš skirtingų specifikacijų, ne iš prasmės skirtumo. Holder binding yra savybė: šis kredencialas priklauso šiam turėtojui. Key binding yra mechanizmas, kuriuo tai vadinama SD-JWT VC pasaulyje, o ISO pusėje kalbama apie device binding arba device authentication, nes raktas yra konkrečiame telefone. Jei dokumente vartojamas vienas iš šių terminų, skaitykite jį kaip tą pačią idėją, matomą iš kito kampo.
Ar holder binding įrodo, kad kredencialą pateikiantis asmuo yra jo subjektas?
Ne, ir tai pati dažniausia klaidinga interpretacija. Jis įrodo, kad tas, kas sukūrė atsakymą, valdo raktą, kuriam buvo išduotas kredencialas. Ar telefoną liečiantis žmogus yra tas, kurį aprašo teiginiai, priklauso nuo to, kaip atrakinama piniginė, kaip kruopščiai išdavėjas iš pradžių patikrino tapatybę ir ar turėtojas neperdavė įrenginio ir PIN kodo kam nors kitam. Didelės vertės patikrai susiejimą derinkite su pinigine, reikalaujančia biometrinio patvirtinimo, ir su kredencialu, išduotu tokiu Level of Assurance, kuris atitinka riziką.
Kas nutinka susietam kredencialui, kai turėtojas įsigyja naują telefoną?
Jis neperkeliamas. Visa privačiojo rakto laikymo saugioje aparatinėje įrangoje esmė ta, kad jo negalima eksportuoti, todėl su senu telefonu susieto kredencialo negalima atkurti naujame ir tikėtis, kad jis veiks. Naujas įrenginys sugeneruoja savo raktą, ir kredencialas tam raktui išduodamas iš naujo. Planuokite pakartotinį išdavimą kaip įprastą, dažną įvykį, o ne išimtį, nes jūsų naudotojams tai tiesiog diena, kai jie pakeitė telefoną.
Ar yra kredencialų be holder binding?
Taip, ir jie turi savo vietą. Kredencialas be holder binding yra pateikėjo kredencialas (bearer credential): naudą gauna tas, kas jį pateikia, kaip su popieriniu bilietu. Tai protingas kompromisas kažkam mažos vertės ir trumpalaikio, kai pakartotinai panaudotos kopijos kaina nedidelė ir geriau neprašyti turėtojo nieko atrakinti. Tai netinkamas pasirinkimas tapatybei, teisėms ir viskam, ką sukčius laikytų verta panaudoti dar kartą.
Šaltiniai
- IETF SD-JWT-based Verifiable Digital Credentials (SD-JWT VC), vis dar juodraštis
- OpenID for Verifiable Credential Issuance, apie rakto valdymo įrodymą išdavimo metu
- OpenID for Verifiable Presentations, apie atsakymo susiejimą su viena užklausa
- ISO/IEC 18013-5, apie įrenginio autentifikavimą mobiliesiems dokumentams
Šis puslapis yra informacinio pobūdžio ir nėra teisinė konsultacija. Autoritetingos formuluotės ieškokite tiesiogiai specifikacijose.