Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

For the best experience please use the latest Chrome, Safari or Firefox browser.

Zweifaktor-Authentisierung


Cornelius Kölbel
corny@cornelinux.de
LUKi-Treffen 2013, Kassel, 20.10.2013
Zwei Faktoren
  • Besitz und Wissen
  • Einführung eines zweiten Faktors in Form von Hardware
  • ssh-key
Besitz
  • RSA-Token (1986)
  • Smartcards
  • Bio :-/
  • Hardware mit symmetrischem Key für OTP
Smartcards
  • "Smarter Chip" mit Betriebsystem mit Crypto-Funktionen
  • Assymmetrische Crypto
  • PKI &rarrow; x509
  • Treiber, Leser
  • eToken
OTP
motp
  • Für Mobiltelefone
  • seit 2003
  • Applets für alte Feature Phones und Smartphones
  • md5(time/10sec + User-PIN + secret)
HOTP
  • RFC 4226 (2005)
  • Ereignisbasiert
  • HMAC.Digest(Secret + Counter, SHA1)
TOTP
  • Zeitbasiert
  • RFC 6238 (2011)
  • HMAC.Digest(Secret + epochtime/30, SHA1)
OCRA
  • OATH Challenge Response
  • RFC 6287 (2011)
  • HMAC.Digest(Datainput, Hashalgo)
  • Datainput (Challenge, Zähler, Zeit, PIN...)
  • Hashalgo (SHA1, SHA256, SHA512)
Yubikey
  • Secret ist hier der AES-Key
  • AES_ECB(Uid + Timestamp + Usage-Counter + Session-Counter + Random + CRC, AES-Key)
Validierung?
Benutzer Server
counteralt
secret
counteralt
secret
counterneu = counteralt + n?
OTP = HASH(secret, counterneu ) OTP →
HASH(secret, counteralt + X) =? OTP
OTP Zusammenfassung
  • OTP verwendet ein Secret (Symmetrisch)
  • OTP verwendet immer "moving factor"
Google Authenticator
  • Login mittels PAM
  • Konfigurieren pro User!
Yubikey
  • Standalone pro Benutzer
  • per Tastendrucker oder
  • Challenge/Response
Verwaltete Lösungen
  • für mehrere Benutzer
  • kommerziell oder frei:
  • motp-as
  • reine HOTP/TOTP-Lösungen
  • LinOTP
LinOTP
  • python, pylons
  • sqlalchemy
  • Installation mittels pypi, deb-Pakete