Avant de commencer avec l’authentification Web tendance basée sur Web3.0, il est important de comprendre pourquoi elle a été implémentée par rapport à d’autres mécanismes d’authentification.
Face ID sur iOS, basé sur les empreintes digitales (Biométrie) l’authentification est bien plus chic et plus cool ? n’est-ce pas ? Pourquoi les développeurs, les informaticiens doivent-ils travailler sur un système d’authentification plus avancé ? ? Plongeons dans l’histoire des systèmes d’authentification pour avoir une vue d’ensemble sur la façon dont le mécanisme d’authentification a démarré et est le mieux adapté à votre système. ?
À l’époque, le MIT était l’une de ces écoles où ils disposaient de gros ordinateurs lents et partagés accessibles par plusieurs terminaux. Compatible Time-Sharing System (CTSS) a permis aux étudiants, enseignants et chercheurs de partager le même ordinateur central. Un étudiant, Fernando J. Corbató, a remarqué que tout utilisateur du CTSS pouvait accéder aux fichiers de n’importe quel utilisateur. Un système d’authentification forte a donc été introduit, mais un mécanisme d’authentification où le texte normal était utilisé comme mot de passe dans les années 60.
Alors que les informaticiens commençaient à se concentrer davantage sur la confidentialité et la sécurité des données, ils ont conclu que fonction de dérivation de clé, qui calcule un mot de passe et dérive une valeur secrète(n’est pas un texte normal — quelque chose comme la valeur hachée d’un mot de passe) qui est facile à calculer dans une direction mais extrêmement difficile à craquer dans la direction opposée(Fonction de hachage unidirectionnelle).
Le début des années 1970 : la cryptographie asymétrique (également connu sous le nom de cryptographie à clé publique) qui est toujours le moyen éprouvé de sécurisation des applications. Couramment utilisé dans les applications Blockchain où la clé publique est utilisée pour signer les transactions, mais seule la clé privée peut valider les transactions, les demandes. Mais il nécessite une lourde charge de ressources de calcul et n’est donc pas applicable si les ressources disponibles ont d’autres tâches importantes à accomplir.
Les utilisateurs se sentent à l’aise de réutiliser les mêmes mots de passe à plusieurs endroits, car les ordinateurs ont été construits avec plus de puissance de calcul, les programmes pourraient forcer brutalement les mots de passe devinés. Pour lutter contre cela, les informaticiens ont proposé des mots de passe dynamiques. Ces mots de passe varient en fonction de variables, telles que l’emplacement, l’heure ou une mise à jour physique du mot de passe (avez-vous déjà utilisé Google Authenticator ? C’est quelque chose comme ça).
Puis finalement Single Sign-on (SSO) – simplement les médias sociaux ont commencé à valider l’authentification sans exiger la saisie des mots de passe. J’adore le SSO, je me suis vérifié une fois sur Google et j’utilise la vérification SSO pour SaaS, IaaS, PaaS sans avoir besoin de mémoriser les mots de passe et je peux facilement utiliser le service.
Je me vérifie une fois sur GitHub et j’utilise SSO et boom j’ai accès à tous les services de développement sauf si c’est premium et que j’ai besoin d’acheter un service. Mais c’est aussi assez peu sûr si quelqu’un a accès à mon Google ou GitHub de quelque manière que ce soit, il aura également accès à d’autres services. (Mais, il est inutile d’essayer car j’utilise personnellement MFA là où d’autres plates-formes ont également besoin d’OTP à partir de mon téléphone et de l’authentificateur ?).
La technologie infrarouge de balayage du visage est un changeur de jeu qui utilise la cryptographie lors du stockage du motif du visage de l’utilisateur, c’est-à-dire généré à partir des nuances, de la zone en surbrillance, de la rondeur du visage, de la distance entre deux yeux, etc. Eh bien, le Web prend en charge la biométrie sans aucun doute, mais pourrait affecter sur une UX.
Il existe des startups dans la Silicon Valley qui utilisent le rythme cardiaque, la démarche ou même le comportement pour l’authentification et seront disponibles dans un proche avenir. Certaines entreprises utilisent également des méthodes d’authentification sans mot de passe moins brillantes, mais peut-être plus pratiques, comme des liens magiques ou des codes par e-mail et SMS.
Nous avons appris le « Modèle à sept couches » mais, le Web n’implémente que 5 couches – modèle OSI : application (pour l’application réelle et HTTP), transport (pour TCP), réseau (pour IP), liaison de données (ethernet, sans fil) et physique.
FEnfin, parlons de l’authentification web3.0. Tout d’abord, un utilisateur dispose à la fois d’une clé publique et privée générée à partir d’une sorte de cryptographie qui est unique au monde entier.
Considérez qu’une application a web3.js, ethers.js, tronweb ou tout autre package installé pour interagir avec la blockchain. Il y a une fonction pour vérifier dans chaque paquet vérifier si l’application est connectée au portefeuille respecté ou non et si elle n’est pas connectée, la fonction ouvre automatiquement le portefeuille et vous demande de vous connecter au réseau de la chaîne respective.
Le fait est que l’utilisateur n’a pas besoin de saisir son adresse e-mail, son mot de passe, mais il suffit d’ouvrir l’application qui prend en charge l’authentification du portefeuille. Si vous utilisez Uniswap ou toute autre plate-forme utilisant l’authentification Web3.0, vous serez plus clair à ce sujet. Maintenant, comment est-ce sécurisé ?
Tout d’abord, l’utilisateur a besoin d’une clé publique comme identification qui est une grande chaîne hexadécimale et ressemble à 0x5b3d932F2a8a46a520754DC6E2f3C198c2BCcE8A mais Ethereum Name Service (ENS) a fait un excellent travail et maintenant vous pouvez enregistrer votre nom comme theboringschool.eth qui représenterait cette chaîne hexadécimale.
Deuxièmement, le portefeuille a une clé privée stockée dans le navigateur (*ne partagez avec personne) qui est utilisé pour signer, interagir, modifier la blockchain, donc chaque fois que le navigateur demande à l’utilisateur de se connecter à l’application, il prend d’abord la clé Pub que tout le monde peut avoir, mais enfin il a également besoin d’une clé privée pour signer et seul le portefeuille de l’utilisateur a accès à lui personne d’autre et ne peut pas non plus être brutalisé.
Désormais, il existe de nombreux packages de registre npm qui réduisent votre ligne de code et facilitent la détection des portefeuilles. Voici le dernier fournisseur d’authentification Web3.0 qui fait tout le code et fournit le SDK, SaSS pour que vous n’ayez pas à travailler plus dur https://web3auth.io/.
Les références:
Rejoignez Coinmonks Telegram Channel et Youtube Channel pour en savoir plus sur le trading et l’investissement cryptographiques