• QRSA OTP Authentication 1
  • QRSA OTP Authentication 2

QRSA OTP Authentication

Ceci est une application pour authentifier les utilisateurs via leur téléphone cellulaire, en déchiffrant un mot de passe unique chiffré par le serveur en utilisant une clé publique. L'application est utilisable pour tout service Web qui implémente cette méthode d'authentification.
(Voir le tracker github pour plus d'informations sur la façon de mettre en œuvre cette authentification côté serveur)
L'application peut être utilisé avec un nombre illimité de parties utilisatrices, comme la même clé publique est utilisée avec toutes les parties. Une fois que l'application est inscrit, l'application génère une paire de clés spécifiques à l'appareil qui est présent pendant toute la durée de vie de l'application (jusqu'à sa désinstallé). Mise à jour de l'application ne sera pas effacer la clé cependant.

Github Tracker: https://github.com/sebastiannielsen/QRSA

Pré-requis pour l'exécution de l'application:
1. Le téléphone doit prendre en charge le stockage basé sur le matériel. Ceci est une mémoire qui utilise une "puce de sécurité» à l'intérieur du téléphone, ce qui rend impossible la copie de la clé hors tension du téléphone.
2. Le magasin doit être initialisé. Parfois, il est possible d'initialiser le magasin par la mise en place d'un écran de verrouillage de code PIN, et puis juste générer une clé. Retrait de l'écran de verrouillage sera généralement garder la clé, à moins que les propriétés clés a été configuré pour exiger l'écran de verrouillage.
3. Dans certains cas, un écran de verrouillage sécurisé DOIT être utilisée. Cela dépend du modèle de téléphone.
4. La puce sécurisée à l'intérieur de téléphone, doit prendre en charge les opérations sur la base de 2048 bits RSA / BCE / PKCS1.5
5. Dans certains cas, un téléphone enracinée peut désactiver définitivement la puce de sécurité pour des raisons de sécurité.

Pour vous inscrire, vous devez lancer l'URL qrsa: // e à partir d'un navigateur ou similaire. Vous pouvez également vous inscrire via une URL de rappel, en utilisant qrsa: // u. Pour utiliser la fonction u, vous devez d'abord ajouter un "s" si vous voulez utiliser HTTPS, ou toute autre chose pour HTTP. Ensuite, l'ensemble de l'URL à appeler, SANS le système, au format URLSafe Base64. La clé publique sera ajouté à la fin de l'URL. Si l'appareil est incompatible, il retournera INCOMPATIBLE_DEVICE et son de votre responsabilité de retourner un message d'erreur significatif pour l'utilisateur.

Pour vous authentifier, vous lancez le qrsa url: // s ou qrsa: // c suivi par URLSafe Base64 données codées de la clé publique RSA texte chiffré dans le format REMBOURRAGE :: OTP :: MESSAGE :: HASH :: REMBOURRAGE. Le "s" l'action est conçu pour les événements numérisés et montrera sous forme de texte à l'écran OTP. Le "c" l'action est conçu pour les événements de clic. La différence est que les événements de clic provoquera le code OTP à mettre dans le presse-papiers de l'utilisateur à la place, de sorte que l'utilisateur peut immédiatement procéder à coller le code dans le champ OTP.
HASH est construit en créant un md5 sur OTP + MESSAGE + OTP, où + désigne la concaténation de chaîne. Cette HASH protège contre certaines formes rugueuses des attaques de malléabilité sur le texte chiffré. La construction en sandwich empêche un attaquant de déplacer le séparateur entre OTP et MESSAGE.

Notez que les captures d'écran de l'application a été volontairement censuré pour éviter les marques et / ou droit d'auteur des infractions (UI d'applications Android et d'autres sont protégés par copyright), comme l'interaction dans l'application est assurée par une boîte de dialogue qui apparaît au-dessus de l'appel app qui a causé l'authentification se produise.

S'il y a des questions sur l'application, vous pouvez trouver des exemples de code et plus d'instructions sur la page GitHub public, cette application est Open Source.
En outre, vous pouvez créer des problèmes dans le tracker github public.

Catégorie : Outils

Recherches associées