Google Authenticator

Google Authenticator
Typ autentizátor [d] amobilní aplikace
Vývojář Google LLC
Operační systém Android , iOS , Blackberry OS
První vydání 20. září 2010 [1]
Hardwarová platforma mobilní, pohybliví
Nejnovější verze 5.10 (12. května 2020)
Licence Proprietární (minulé verze byly vydány pod licencí Apache 2.0)
webová stránka play.google.com/store/ap…

Google Authenticator  je aplikace pro dvoufázové ověření pomocí algoritmu TOTP ( Time-based One-time Password Algorithm ) a HMAC ( HOTP ) od společnosti Google LLC . Služba implementuje algoritmy specifikované v RFC 6238 a RFC 4226 . [2]

Authenticator představuje 6- nebo 8místné jednorázové číselné heslo, které musí uživatel zadat vedle uživatelského jména a hesla, aby se mohl přihlásit ke Google nebo jiným službám. Authenticator může také generovat kódy pro aplikace třetích stran, jako jsou správci hesel nebo služby hostování souborů. Předchozí verze programu byly k dispozici jako open source na GitHubu , ale nejnovější verze jsou majetkem společnosti Google. [3]

Příklad použití

Uživatelé si obvykle musí nejprve nainstalovat aplikaci do svého mobilního zařízení. Abyste mohli vstoupit na stránky nebo využívat služeb služby, musíte zadat uživatelské jméno a heslo, spustit aplikaci Authenticator a do speciálního pole zadat vygenerované jednorázové heslo.

Za tímto účelem web poskytne uživateli sdílený tajný klíč, který musí být uložen v aplikaci Google Authenticator. Tento tajný klíč bude použit pro všechna budoucí přihlášení k webu.

U dvoufázového ověření nestačí k prolomení účtu pouhá znalost uživatelského jména/hesla . Útočník musí také znát tajný klíč nebo mít fyzický přístup k zařízení pomocí aplikace Google Authenticator. Alternativní cestou je útok MITM : pokud je počítač uživatele infikován trojským koněm , lze zachytit uživatelské jméno, heslo a jednorázový kód, aby bylo možné zahájit vlastní přihlašovací relaci na webu nebo sledovat a upravovat informace mezi uživatele a web.

Implementace

Google Authenticator je k dispozici pro Android , [4] BlackBerry a iOS [5] . K dispozici je také několik implementací třetích stran:

Technický popis

Poskytovatel služeb generuje 80bitový tajný klíč pro každého uživatele (ačkoli RFC 4226 § 4 vyžaduje minimálně 128 bitů a doporučuje 160 bitů). [36] Klíč je poskytován jako 16-, 26-, 32místný řetězec kódovaný Base32 nebo jako QR kód . Pomocí tajného klíče klient vygeneruje HMAC - SHA1 z:

Část HMAC je poté extrahována a převedena na 6místný kód.

Pseudokód pro OTP založené na čase

function GoogleAuthenticatorCode ( string secret ) // založené na klíči RFC 4226 := base32decode ( secret ) // key: array of uint8 message := htobe64 ( aktuální Unix time / 30 ) // message: uint64, make it big-endian hash : = HMAC - SHA1 ( klíč , zpráva ) // hash: pole ofsetu uint8 := poslední kousíček hashe // offset := hash[hash.size() - 1] & 0x0F truncatedHash : = ( hash [ offset ] << 24 ) | ( hash [ offset + 1 ] << 16 ) // truncatedHash: uint32 big-endian | ( hash [ offset + 2 ] << 8 ) | hash [ offset + 3 ] truncatedHash = truncatedHash & 0 x7FFFFFFFF // reset MSB kódu := truncatedHash mod 1000000 kód bloku s 0 , dokud délka kódu není 6 návratový kód // kód : řetězec

Pseudokód pro OTP události/počítadla

function GoogleAuthenticatorCode ( tajný řetězec ) klíč := base32decode ( tajná ) zpráva := čítač zakódovaný na 8 bajtech hash := HMAC - SHA1 ( klíč , zpráva ) offset := poslední nibble of hash truncatedHash := hash [ offset .. offset + 3 ] //4 bajty počínaje offsetem Nastavit první bit truncatedHash na nulu // odstranit nejvýznamnější bitový kód : = truncatedHash mod 1000000 kód pad s 0 , dokud nebude délka kódu 6 návratový kód

Převod účtů

Uživatelé si mohou vybrat, které účty exportovat, a poté po ověření pomocí PIN zařízení nebo biometrického ověření zobrazit QR kód, který lze naskenovat jiným telefonem pomocí Authenticatoru v režimu importu.


Poznámky

  1. Google výrazně zvyšuje bezpečnost vašeho účtu díky dvoufázovému ověřování – TechCrunch . TechCrunch (20. září 2010). Získáno 12. března 2016. Archivováno z originálu 12. března 2016.
  2. GitHub – google/google-authenticator: Open source verze Google Authenticator (kromě aplikace pro Android  ) . GitHub . Google. — "Tyto implementace podporují algoritmus jednorázového hesla na základě HMAC (HOTP) specifikovaný v RFC 4226 a algoritmus jednorázového hesla na základě času (TOTP) specifikovaný v RFC 6238. " Získáno 27. července 2016. Archivováno z originálu dne 26. ledna 2021.
  3. Willis, Nathan (22. ledna 2014). " FreeOTP vícefaktorová autentizace archivována 31. října 2020 na Wayback Machine ". LWN.net . Staženo 10. srpna 2015.
  4. https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2 Archivováno 2. února 2021 na Wayback Machine A
  5. Google Authenticator . App Store . Získáno 27. července 2016. Archivováno z originálu 22. prosince 2015.
  6. Authenticator (4. dubna 2013). Získáno 27. července 2016. Archivováno z originálu 17. října 2019.
  7. Virtual TokenFactor (nedostupný odkaz) (26. února 2012). Získáno 27. července 2016. Archivováno z originálu 8. září 2013. 
  8. [APP Google Authenticator pro Windows Mobile] . Vývojáři XDA . Získáno 27. července 2016. Archivováno z originálu 19. dubna 2019.
  9. http://blog tečka jamesdotcuff tečka net (downlink) . Získáno 27. července 2016. Archivováno z originálu 1. srpna 2014. 
  10. mclamp/JAuth . GitHub . Získáno 27. července 2016. Archivováno z originálu 4. srpna 2015.
  11. kamenitxan/FXAuth . GitHub . Získáno 27. července 2016. Archivováno z originálu 5. září 2020.
  12. gauthj2me – Google Authentification v Java Mobile, j2me – Google Project Hosting . Získáno 27. července 2016. Archivováno z originálu 6. ledna 2016.
  13. lwuitgauthj2me – Google Authenticator pro J2ME telefony – Google Project Hosting . Získáno 27. července 2016. Archivováno z originálu 16. března 2016.
  14. chunlinyao / mobile-otp - Bitbucket (downlink) . Získáno 27. července 2016. Archivováno z originálu 15. října 2017. 
  15. totp-me - TOTP pro Java ME - Google authenticator . Získáno 27. července 2016. Archivováno z originálu 5. ledna 2018.
  16. gauth.prc - gauthj2me - Google Authenticator pro Palm OS (převedeno z java) - Google Authentification v Java Mobile, j2me - Google Project Hosting . Získáno 27. července 2016. Archivováno z originálu 6. ledna 2016.
  17. tadeck/onetimepass . GitHub . Získáno 27. července 2016. Archivováno z originálu dne 27. října 2020.
  18. chregu/GoogleAuthenticator.php . GitHub . Získáno 27. července 2016. Archivováno z originálu dne 29. září 2020.
  19. rotp - RubyGems.org - váš komunitní hostitel . Získáno 27. července 2016. Archivováno z originálu 11. července 2019.
  20. ukazap/twofu . GitHub . Získáno 27. července 2016. Archivováno z originálu 12. září 2020.
  21. heapsource/active_model_otp . GitHub . Získáno 27. července 2016. Archivováno z originálu 5. prosince 2020.
  22. GAuth . Získáno 27. července 2016. Archivováno z originálu dne 20. října 2020.
  23. gauth4win – Google Authenticator pro Windows – Google Project Hosting . Získáno 27. července 2016. Archivováno z originálu 11. ledna 2016.
  24. Domovská stránka aplikace MOS Authenticator . Získáno 27. července 2016. Archivováno z originálu 17. února 2020.
  25. winauth - Windows Authenticator pro Battle.net / World of Warcraft / Guild Wars 2 / Glyph / WildStar / Google / Bitcoin - Hosting projektu Google . Získáno 27. července 2016. Archivováno z originálu 17. května 2015.
  26. glacasa/TwoStepsAuthenticator . GitHub . Získáno 27. července 2016. Archivováno z originálu 5. prosince 2020.
  27. gbraad/html5-google-authenticator . GitHub . Získáno 27. července 2016. Archivováno z originálu 5. července 2014.
  28. Techtransit. Nokia Store: Stáhněte si GAuth a mnoho dalších her, tapet, vyzváněcích tónů a mobilních aplikací do svého telefonu Nokia (odkaz není k dispozici) . Získáno 27. července 2016. Archivováno z originálu 12. července 2014. 
  29. SGAuth . Získáno 27. července 2016. Archivováno z originálu 11. července 2019.
  30. SailOTP . Získáno 27. července 2016. Archivováno z originálu 10. ledna 2021.
  31. google-authenticator-apache-module – Modul Apache pro dvoufaktorovou autentizaci přes Google Authenticator – Google Project Hosting . Získáno 27. července 2016. Archivováno z originálu 19. listopadu 2015.
  32. google-authenticator – Dvoufázové ověření – Google Project Hosting . Získáno 27. července 2016. Archivováno z originálu 10. února 2015.
  33. oauth-pam - PAM pro použití s ​​webovými stránkami OAuth - Google Project Hosting . Získáno 27. července 2016. Archivováno z originálu 8. srpna 2016.
  34. Authenticator . Získáno 27. července 2016. Archivováno z originálu 17. října 2019.
  35. OTP Auth . App Store . Získáno 27. července 2016. Archivováno z originálu 12. dubna 2019.
  36. RFC 4226 – HOTP: Algoritmus jednorázového hesla založený na HMAC . Získáno 17. ledna 2018. Archivováno z originálu 6. dubna 2019.

Odkazy