Google Authenticator

Google Authenticator
Típusú hitelesítő [d] ésmobilalkalmazás
Fejlesztő Google LLC
Operációs rendszer Android , iOS , Blackberry OS
Első kiadás 2010. szeptember 20. [1]
Hardver platform Mobil
legújabb verzió 5.10 (2020. május 12.)
Engedély Saját tulajdonú (a korábbi verziók Apache License 2.0 alatt jelentek meg )
Weboldal play.google.com/store/ap…

A Google Authenticator egy olyan alkalmazás, amely a Google LLC időalapú egyszeri jelszóalgoritmusát ( TOTP ) és HMAC-alapú egyszeri jelszóalgoritmusát (HOTP) használja  kétlépcsős hitelesítéshez . A szolgáltatás az RFC 6238 és RFC 4226 szabványban meghatározott algoritmusokat valósítja meg . [2]

A Hitelesítő egy 6 vagy 8 számjegyből álló, egyszeri numerikus jelszó, amelyet a felhasználónak a felhasználónév és a jelszó mellett meg kell adnia a Google-ba vagy más szolgáltatásokba való bejelentkezéshez. A Hitelesítő kódokat is generálhat harmadik féltől származó alkalmazásokhoz, például jelszókezelőkhöz vagy fájltárhely-szolgáltatásokhoz. A program korábbi verziói nyílt forráskódúak voltak a GitHubon , de a legújabb kiadások a Google tulajdonát képezik. [3]

Használati példa

Általában a felhasználóknak először telepíteniük kell az alkalmazást mobileszközükre. Az oldalra való belépéshez vagy a szolgáltatás szolgáltatásainak igénybevételéhez meg kell adnia a felhasználónevet és a jelszót, el kell indítania a Hitelesítő alkalmazást, és egy speciális mezőbe be kell írnia a generált egyszeri jelszót.

Ehhez a webhely biztosítja a megosztott titkos kulcsot a felhasználó számára, amelyet a Google Authenticator alkalmazásban kell tárolni. Ezt a titkos kulcsot használjuk a webhelyre való minden jövőbeni bejelentkezéshez.

A kétlépcsős hitelesítésnél a felhasználónév/jelszó pusztán ismerete nem elegendő a fiók feltöréséhez . A támadónak ismernie kell a titkos kulcsot, vagy fizikai hozzáféréssel kell rendelkeznie az eszközhöz a Google Hitelesítő segítségével. Egy másik lehetőség a MITM támadás: ha a felhasználó számítógépét megfertőzte egy trójai , akkor a felhasználónév, a jelszó és az egyszeri kód lefogható, hogy aztán saját bejelentkezési munkamenetet kezdeményezzen a webhelyen, vagy figyelje és módosítsa az információkat a felhasználó és az oldal.

Megvalósítások

A Google Authenticator elérhető Androidon , [4] BlackBerryn és iOS -en [5] . Számos harmadik féltől származó megvalósítás is elérhető:

Műszaki leírás

A szolgáltató minden felhasználó számára generál egy 80 bites titkos kulcsot (bár az RFC 4226 § 4 minimum 128 bitet ír elő, és 160 bitet ajánl). [36] A kulcs 16, 26, 32 számjegyű Base32 kódolású karakterláncként vagy QR-kódként érhető el . A titkos kulcs használatával az ügyfél létrehoz egy HMAC - SHA1 -et a következőkből:

A HMAC részt ezután kivonják és 6 számjegyű kóddá alakítják.

Pszeudokód időalapú OTP-hez

függvény GoogleAuthenticatorCode ( string secret ) // RFC 4226 kulcs alapján := base32decode ( secret ) // kulcs: uint8 üzenet tömbje := htobe64 ( jelenlegi Unix idő / 30 ) // üzenet: uint64, csináld big-endian hash : = HMAC - SHA1 ( kulcs , üzenet ) // hash: uint8 offset tömb := hash utolsó nibble // offset : = hash[hash.size() - 1] & 0x0F csonkaHash : = ( hash [ offset ] << 24 ) | ( hash [ offset + 1 ] << 16 ) // csonkoltHash: uint32 big-endian | ( hash [ offset + 2 ] << 8 ) | hash [ offset + 3 ] truncatedHash = truncatedHash & 0 x7FFFFFFF // MSB kód visszaállítása := csonkoltHash mod 1000000 pad kód 0 - val, amíg a kód hossza 6 visszatérési kód // kód: string

Esemény/számláló OTP pszeudokódja

függvény GoogleAuthenticatorCode ( karakterlánc titkos ) kulcs := base32dekódolás ( titkos ) üzenet := számláló 8 bájton kódolva hash : = HMAC - SHA1 ( kulcs , üzenet ) offset : = utolsó hash csonkításaHash : = hash [ offset .. offset + 3 ] //4 bájt az eltolástól kezdődően A truncatedHash első bitjének nullára állítása // a legjelentősebb bitkód eltávolítása : = truncatedHash mod 1000000 pad kód 0 - val , amíg a kód hossza 6 lesz .

Fiókok átvitele

A felhasználók kiválaszthatják, hogy mely fiókokat szeretnének exportálni, majd az eszköz PIN-kódjával vagy biometrikus hitelesítéssel történő ellenőrzést követően megjeleníthetnek egy QR-kódot, amelyet egy másik telefon is beolvashat a Hitelesítő segítségével importálás módban.


Jegyzetek

  1. A Google jelentősen biztonságosabbá teszi fiókját a kétlépcsős azonosítással – TechCrunch . TechCrunch (2010. szeptember 20.). Letöltve: 2016. március 12. Az eredetiből archiválva : 2016. március 12.
  2. GitHub – google/google-authenticator: A Google Hitelesítő nyílt forráskódú verziója (kivéve az Android-alkalmazást  ) . GitHub . Google. — "Ezek a megvalósítások támogatják az RFC 4226 - ban meghatározott HMAC-alapú egyszeri jelszó (HOTP) algoritmust és az RFC 6238 -ban meghatározott időalapú egyszeri jelszó (TOTP) algoritmust ." Letöltve: 2016. július 27. Az eredetiből archiválva : 2021. január 26.
  3. Willis, Nathan (2014. január 22.). " FreeOTP többtényezős hitelesítés archiválva 2020. október 31-én a Wayback Machine -nél ". LWN.net . Letöltve: 2015. augusztus 10.
  4. https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2 Archiválva : 2021. február 2. a Wayback Machine A -nál
  5. Google Hitelesítő . App Store . Letöltve: 2016. július 27. Az eredetiből archiválva : 2015. december 22.
  6. Authenticator (2013. április 4.). Letöltve: 2016. július 27. Az eredetiből archiválva : 2019. október 17.
  7. Virtuális TokenFactor (nem elérhető link) (2012. február 26.). Letöltve: 2016. július 27. Az eredetiből archiválva : 2013. szeptember 8.. 
  8. [APP Google Authenticator for Windows Mobile] . XDA fejlesztők . Letöltve: 2016. július 27. Az eredetiből archiválva : 2019. április 19.
  9. http://blog dot jamesdotcuff dot net (downlink) . Letöltve: 2016. július 27. Az eredetiből archiválva : 2014. augusztus 1.. 
  10. mclamp/JAuth . GitHub . Letöltve: 2016. július 27. Az eredetiből archiválva : 2015. augusztus 4..
  11. kamenitxan/FXAuth . GitHub . Letöltve: 2016. július 27. Az eredetiből archiválva : 2020. szeptember 5..
  12. gauthj2me – Google hitelesítés Java Mobile-ban, j2me – Google Project Hosting . Letöltve: 2016. július 27. Az eredetiből archiválva : 2016. január 6..
  13. lwuitgauthj2me – Google Authenticator J2ME telefonokhoz – Google Project Hosting . Letöltve: 2016. július 27. Az eredetiből archiválva : 2016. március 16.
  14. chunlinyao / mobile-otp - Bitbucket (lefelé irányuló kapcsolat) . Letöltve: 2016. július 27. Az eredetiből archiválva : 2017. október 15. 
  15. totp-me - TOTP Java ME-hez - Google hitelesítő . Letöltve: 2016. július 27. Az eredetiből archiválva : 2018. január 5..
  16. gauth.prc - gauthj2me - Google Authenticator for Palm OS (java-ból konvertálva) - Google hitelesítés Java Mobile-ban, j2me - Google Project Hosting . Letöltve: 2016. július 27. Az eredetiből archiválva : 2016. január 6..
  17. tadeck/onetimepass . GitHub . Letöltve: 2016. július 27. Az eredetiből archiválva : 2020. október 27.
  18. chregu/GoogleAuthenticator.php . GitHub . Letöltve: 2016. július 27. Az eredetiből archiválva : 2020. szeptember 29.
  19. rotp - RubyGems.org - a közösségi drágakő házigazdája . Letöltve: 2016. július 27. Az eredetiből archiválva : 2019. július 11.
  20. ukazap/twofu . GitHub . Letöltve: 2016. július 27. Az eredetiből archiválva : 2020. szeptember 12.
  21. heapsource/active_model_otp . GitHub . Letöltve: 2016. július 27. Az eredetiből archiválva : 2020. december 5..
  22. GAuth . Letöltve: 2016. július 27. Az eredetiből archiválva : 2020. október 20.
  23. gauth4win - Google Authenticator for Windows - Google Project Hosting . Letöltve: 2016. július 27. Az eredetiből archiválva : 2016. január 11..
  24. MOS Authenticator főoldal . Letöltve: 2016. július 27. Az eredetiből archiválva : 2020. február 17.
  25. winauth - Windows Authenticator a Battle.nethez / World of Warcraft / Guild Wars 2 / Glyph / WildStar / Google / Bitcoin - Google Project Hosting . Letöltve: 2016. július 27. Az eredetiből archiválva : 2015. május 17.
  26. glacasa/TwoStepsAuthenticator . GitHub . Letöltve: 2016. július 27. Az eredetiből archiválva : 2020. december 5..
  27. gbraad/html5-google-authenticator . GitHub . Letöltve: 2016. július 27. Az eredetiből archiválva : 2014. július 5..
  28. Techtransit. Nokia Áruház: Töltse le a GAuth-ot és sok más játékot, háttérképet, csengőhangokat és mobilalkalmazásokat Nokia telefonjára (a hivatkozás nem érhető el) . Letöltve: 2016. július 27. Az eredetiből archiválva : 2014. július 12.. 
  29. SGAuth . Letöltve: 2016. július 27. Az eredetiből archiválva : 2019. július 11.
  30. SailOTP . Letöltve: 2016. július 27. Az eredetiből archiválva : 2021. január 10.
  31. google-authenticator-apache-module - Apache modul a kéttényezős hitelesítéshez a Google Authenticator segítségével - Google Project Hosting . Letöltve: 2016. július 27. Az eredetiből archiválva : 2015. november 19..
  32. google-hitelesítő – Kétlépcsős ellenőrzés – Google Project Hosting . Letöltve: 2016. július 27. Az eredetiből archiválva : 2015. február 10.
  33. oauth-pam – PAM az OAuth-webhelyekkel való használatra – Google Project Hosting . Letöltve: 2016. július 27. Az eredetiből archiválva : 2016. augusztus 8..
  34. Hitelesítő . Letöltve: 2016. július 27. Az eredetiből archiválva : 2019. október 17.
  35. OTP Auth . App Store . Letöltve: 2016. július 27. Az eredetiből archiválva : 2019. április 12.
  36. RFC 4226 - HOTP: HMAC-alapú egyszeri jelszóalgoritmus . Letöltve: 2018. január 17. Az eredetiből archiválva : 2019. április 6..

Linkek