Vor ungefähr drei Monaten hatte ich mir schon mal Gedanken zu den Schwierigkeiten der MicroID-Verifizierung gemacht:
Eine URL kann man auf zu viele verschieden Weisen schreiben, als dass sie eine valide ID abgeben könnte.
Schwierigkeiten bereiten die Seiten, die unterschiedliche URLs zulassen…
http://example.com
http://www.example.com
http://example.com/
…da sie zusammen mit der E-Mail – Adresse drei unterschiedliche Hash-Werte ergeben.
Ein möglicher Lösungsansatz wäre eine URI-Normalisierung, wie sie z.B. OpenID vorschlägt, einzusetzen.
Eine viel einfachere und fehlerunanfälligere Lösung ist das dynamische zusammenbauen der MicroID über die direkt aufgerufenen URI als Identifier:
http://example.com
->19358536d8c443614bc7d861f4b050ee34a549b9
http://www.example.com
->05c732700bfa89cd234bb7fc08cb673f7c0d88b8
http://example.com/
->9275b4dcd7cc2c997b2a5249420b422e937d36e0
(Benutzte E-Mail – Adresse: mustermann@example.com
)
Beim verifizieren bräuchte man sich also nur noch auf die E-Mail – Adresse konzentrieren anstatt alle in Frage kommenden URI/E-Mail – Kombinationen durchspielen zu müssen.