7. ALGORITHME TOTP
K est la clef secrète (clef partagée)
TC est le compteur de temps
Étape 1 : Générer un HMAC-SHA1 de 20 bits
Étape 2 : Déterminer un "offset" à l'intérieur à partir du
HMAC calculé à l’ étape 1
Étape 3 : À partir de cet offset, choisir les 4 bits
Étape 4 : Tranformer ces 4 bits en entier
Étape 5 : Diviser l'entier par 1 000 000
Étape 6 : Le reste de la division et le code TOTP à 6 chiffre
9. AVANTAGES ?
Renforce l'authentification des applications (2FA)
Mot de passe unique pour une période donnée
Grande flexibilité : application, SMS
Réduit le type d'attaque : "man in the middle"
10. FAIBLESSES ET VULNÉRABILITÉS ?
TOTP non protégé par "hashing"
Codes générés sont souvent disponibles pour une durée
plus élevée que celle qui est spécifiée
Codes visibles par n'importe qui sur l'écran du client
RSA compris de plus en plus par les pirates (grosse attaque
en 2011)
12. LINOTP
Développé par "Leading Security Experts"
Solution "open source" supportant plusieurs
authenficatificateur TOTP et HOTP
13. POURQUOI LINOTP ?
Base de données : MySQL, Postgresql, SQLite, Oracle et
IBM DB2
Mot de passe utilisateur stocké en "hashing" (SHA256 ou
SHA512)
APIs : gérer, valider, authentifier ...
Open source
18. DÉMO
Installation de LinOTP sur Ubuntu
Installer et configurer MySQL
Installer et configurer LinOTP
Démarrer LinOTP :
useridresolver, realm, token, policies, selfserfice
19. FIN
Merci à tous
Envoyez-moi vos courriers électroniques à :
taphdiouf@gmail.com
Afin d'avoir accès à la documentation complète