U2F vs H(ardware)OTP en T(ime)OTP tokons
De U2F(uniniversal two factor) is een redelijk nieuwe standaard voor twee factor authenticatie die better werkt dan de voorheen veel gebruikte HOTP en TOTP standaard.
Zowel de oude HOTP als de oude TOTP standaard maken beide gebruik van een gedeeld geheim tussen de inlog dienst en het apparaat bij HOTP of met software (en mogelijk ook hardware) bij TOTP.
De HOTP standaard is de een hardware apparaat dat op basic van het aantal keer dat het gebruikt(een teller) wordt steeds een nieuwe code geeft. Daarmee heeft HOTP een probleem dat als het HOTP apparaat ook voor andere dienst wordt gebruikt en die dienst veel gebruikt wordt en de andere dienst veel weinig. De teller dat het aantal keer dat het HOTP apparaat gebruikt wordt bijhoudt, dan tussen de diensten te veel afwijkt van de andere dienst waardoor die niet meer werkt. Het HOTP apparaat teller is dan verder door dan de dienst die niet veel gebruikt wordt verwacht. Bij TOTP kan dit probleem niet optreden doordat er niet gebruikt wordt gemaakt van een teller maar van de huidige datum en tijd. Maar daarmee heeft TOTP het probleem dat het vaak niet geschikt is voor op goedkope hardware om te gebruiken omdat dat een batterij en realtime klok vereist. TOTP wordt daarom vaak als software/app op een smartphone gebruikt. Als het besturingssysteem waarop de TOTP app draait echter een onjuiste datum en tijd geeft of de twee factor authenticatiede dienst een onjuiste datum of tijd dan kan ook niet ingelogd worden. Daarnaast is de TOTP code vanwege het gebruik van software i.v.p. hardware mogelijk kwetsbaarder doordat het gewijzigd kan worden. Een smart phone geeft niet vaak alle beveiligings-updates. Echter heeft TOTP wel het belangrijke voordeel dat het niet mogelijk is dezelfde code buiten het interval van 30 seconden waarop een nieuwe TOTP 6 cijferige code gegeneerd wordt opnieuw (her)gebruikt kan worden. U2F ken de grootste problemen die de TOTP en HOTP twee factor authenticatie hebben niet doordat het gebruik maakt van asymmetrische cryptografie i.p.v een gedeeld geheim. Hierdoor kan er bij een database lek de twee factor authenticatie bij U2F niet omzeilt worden doordat de database van de dienst alleen de publieke sleutel van het U2F apparaat bevat. De geheime sleutel van een U2F apparaat blijft daarmee altijd op het apparaat opgeslagen en mag het apparaat nooit verlaten.