A když se prozradí to vaše šifrovací heslo, tak jste stejně v pytli.
Centralizovaný správce identit se patrně může přihlásit jako vy, ale k tomu by měla sloužit smlouva mezi vámi a správcem identit, že to neudělá (pod pokutou, která převyšuje vaše případné ztráty) a samozřejmě smlouva mezi správcem identit a poskytovatelem služby.
Kdybych se tak chtěl hlásit do banky, tak bych jako banka vybral dostatečně důvěryhodného správce identit - třeba někoho na úrovni důvěryhodné certifikační autority.
> prozrazení jednoho hesla nic neznamená
Když provozovatel služby XYZ zneužije/prozradí moje heslo, o nic nejde, protože prozradil jen heslo k té své službě a jen tam jde zneužít (s tím se z principu nedá nic dělat, protože když někdo tu službu provozuje, přirozeně se k ní může přihlásit jako bych to byl já), ale jelikož stejné heslo nepoužívám nikde jinde, nelze ho ani nikde jinde zneužít a nevzniká žádná další škoda.
Ale když dojde ke zneužití na straně nějakého centralizovaného správce identit (MojeID, Facebook, atd.), je to opravdu velký problém, protože on se může jako já přihlásit k mnoha jiným službám, které neprovozuje.
> hesla synchronizuji se serverem, kde jsou zašifrovaná
Asi jsem to měl napsat srozumitelněji: hesla se zašifrují ještě na mém počítači a pak se odešlou na nějaký server (který slouží k té synchronizaci, není to server, jako ty ostatní, ke kterým se pomocí těch hesel přihlašuji) a z něj si (zašifrovaná) hesla můžu stáhnout jiným klientem (třeba v mobilu, notebooku atd.) a používat je pro přihlašování.
Ad „A když se prozradí to vaše šifrovací heslo, tak jste stejně v pytli.“
Jednak je potřeba nejen prozradit heslo, ale i ukrást zašifrovaná data z toho synchronizačního serveru. A jednak to prozrazení/neprozrazení hesla je plně v mé moci a můžu si na něj dohlídnout (ne jako když ho spravuje někdo třetí), záleží prostě jen na mně.
Ad „pod pokutou, která převyšuje vaše případné ztráty“
U bezplatné služby se ti k nějakým pokutám žádný provozovatel nezaváže ;-) Nebude riskovat, že třeba omylem ztratí data, nebo že se mu někdo nabourá na servery a on bude muset platit všem uživatelům vysoké odškodné. Tyhle služby prostě fungují na principu: „uživatel má nějaké povinnosti a poskytovatel žádné a za nic neručí“.
A placenou službu tohoto typu by zase využívalo minimum lidí.
Ad „Kdybych se tak chtěl hlásit do banky…“
Příklad s bankou je dost zcestný, protože banka se při ověřování uživatelů nebude spoléhat na nějaký jiný subjekt a bude si je ověřovat hezky sama. Protože potenciální škody žádná smluvní pokuta nepokryje (a kdyby ano, tak ten, kdo by se k ní zavázal, je sebevrah).
Ad „…důvěryhodné certifikační autority.“
Které CA jsou dnes důvěryhodné? :-)
1) Nejde jen o nějaké „dodatečně si mezi sebou vyřešit“, ale o to, že se ten incident vůbec stal (a tady je ten rozdíl: v jednom případě si za to můžu sám a v druhém nemám situaci pod kontrolou)
2) Jak moc odpovědnosti na sebe vezmou SP a IdP a kolik jí hodí na uživatele je otázka – v případě, že SP spolupracuje s více IdP (nebo s obecně jakýmkoli IdP), může SP říct: „to je ale vaše chyba, že jste si vybrali nedůvěryhodného IdP :-P“ – oni za něj skutečně ručit nemůžou a je to volba uživatele*, komu svěřil svoje data a správu své identity.
3) MojeID nevybírá od uživatelů peníze a od poskytovatelů služeb vybírá buď nic nebo tisícovku – z toho sotva našetří na nějaké záruky a potenciální smluvní pokuty. Je to prostě potřeba brát jako bezplatnou službu bez záruky. (Např. CA se pohybují v řádově jiných relacích, mají za sebou větší kapitál, mají pojištění – a tak si někdy můžou dovolit zavázat se ke smluvním pokutám a poskytnout nějaké záruky pro případ zneužití)
*) stejně jako když si vybere třeba uhodnutelné heslo – SP není povinen kontrolovat jeho složitost a i když to dělat bude, heslo může být formálně složité, ale přesto snadno uhodnutelné (nebo ho uživatel někde prozradí či si ho napíše na papírek a nalepí na monitor)
Soud vam takovou argumentaci vpohode prijme - pokud ukazete cloveka, ktery dostal rekneme na stejne urade OP na cizi jmeno, a budete tvrdit, ze OP na vase jmeno byla taktez vydana nekomu cizimu a zaroven nebude existovat zadny jiny dukaz nez pouziti vasi OP tak mu ani nic jineho nezbude.
Já mám všude jiné heslo, hesla si pamatuje prohlížeč a já si pamatuji jen ta důležitá a hlavní heslo, které chrání ta ostatní. Hesla nesvěřuji žádnému subjektu*, prozrazení jednoho hesla nic neznamená a nepotřebuji aby tu existoval nějaké MojeID.
A pro přístup z více počítačů si hesla synchronizuji se serverem (třeba i vlastním), kde jsou zašifrovaná, takže správce toho serveru se k nim nedostane.
Funguje to dobře, je to pohodlné, bezpečné, decentralizované (odolné proti výpadkům) a není tu žádný nadřazený subjekt, který by měl přístup k obrovské databázi uživatelských účtů a měl nad nimi moc.
*) resp. každému jen to konkrétní heslo pro něj
Zaplati mi NIC v pripade kompromitace 100G? Ne? Aha, oni mi neda nic, protoze me odkaze na podminky ve kterych je ze nikdo za nic neruci ... no to bych musel bejt magor.
A ano, mam nekolik smluv ohledne ruznych garanci vseho mozneho uzavrenych a vice co? Jsou prevazne khovnu, protoze pripadne kompenzace ani zdaleka nepokryji zpusobene skody.
Maly priklad ano? SLA s providerem, mate? kdyz vam net nepojede, tak vam v nejlepsim pripade vrati mesicni platbu (nebo ji nebude pozadovat), ale skody (ktere muzou byt klidne ve stamilionech) vam neuhradi => stejne se musite zaridit sam a tudiz vam je jakakoli garance stejne knicemu.
To je naopak naprosto nepodstatne, nemluve o tom, ze duveryhodnost CA lze velmi casto velmi snadno napadnout. (v principu by stacil jediny pripad, kdy CA vyda certifikat nekomu jinemu, a klidne se na tom u soudu oroci kazdy pravnik, ze mohla uplne vpohode stejne vydat certifikat na vase jmeno komukoli.)
Když se používá klasické přihlašování jménem a heslem, tak SP přístup k heslu má. Psal jsem to proto, že některé věci (volba IdP, volba kvality hesla) jsou věcí uživatele a on za ně nese odpovědnost. SP např. umožní přihlášení pomocí OpenID, ale že jsem si vybral nedůvěryhodného OpenID poskytovatele, je už moje blbost – SP za to nemůže. Stejně tak, když mi SP nezabrání v tom, že si zvolím hloupé heslo nebo ho prozradím – opět je to moje blbost – odpovědnost uživatele.
Jak jsem psal už výše – SP může „spolupracovat“ obecně s jakýmkoli IdP (podporujícím daný protokol) a tudíž si je nijak nevybírá a neručí za ně – IdP si vybírá uživatel a ten by si to měl rozmyslet.
Taky je možné, že SP bude podporovat jen některé IdP, ale ani to není zárukou nějaké důvěryhodnosti. A i v takovém případě SP myslí na svoje zájmy (vybere si např. IdP, který mu tam nebude posílat spammery), ale důvěryhodnost IdP si musí zase pohlídat uživatel.
Nejak mi unika, k cemu by to melo byt, kdyz pominu, ze to hranici s phishingem. Proc by mela mit "treti" strana na starost prihlasovani k nejake sluzbe. A jaky duvod ma provozovatel nejake sluzby si "toto" k sobe pustit, to mi nejde do hlavy. Nehlede na to, ze tim pada zakladni bezpecnostni poucka nepouzivat stejne heslo k vice sluzbam.