Objectif : Sécuriser et Crypter mot de passe
Toujours dans le cadre de notre projet G.Stock , on va ajouter de la sécurité et surtout pour les mots de passes , donc on va développer une petite fonction qui nous permet de crypté et sécuriser le mot de passe de chaque utilisateur.
L'objectif de cette pratique est d’empêcher le gestionnaire de la base de données à connaitre les réales mots de passes des utilisateurs , vous connaissez bien sûr que le mot de passe est information privé propre à chaque utilisateur.
La fonction "Crypter" que nous allons créer reçoit en paramètre le mot de passe et une clé de cryptage, faire des traitements un peu compliqués puis elle retourne le nouveau mot de passe crypté. comme ça l'utilisateur retient son vrai mot de passe , mais le mot crypté sera enregistré sur la base données "Table Users".
Lorsqu'un utilisateur va se connecter à l'application , il va saisir login et mot de passe , la fonction Crypter crypte à nouveau le mot de passe saisi par l’utilisateur et le compare avec le mot de passe enregistré dans la base de données, comme on va y donner accès ou non.
👉 par exemple : P@ssw@ord --- > Crypter --- > 82908D5E9591915E6E ,
La fonction "Crypter" que nous allons créer reçoit en paramètre le mot de passe et une clé de cryptage, faire des traitements un peu compliqués puis elle retourne le nouveau mot de passe crypté. comme ça l'utilisateur retient son vrai mot de passe , mais le mot crypté sera enregistré sur la base données "Table Users".
Lorsqu'un utilisateur va se connecter à l'application , il va saisir login et mot de passe , la fonction Crypter crypte à nouveau le mot de passe saisi par l’utilisateur et le compare avec le mot de passe enregistré dans la base de données, comme on va y donner accès ou non.
👉 par exemple : P@ssw@ord --- > Crypter --- > 82908D5E9591915E6E ,
par la suite on va ajouter un Module nommé "Cryptage" (Insertion = > Module) dedans ajoutons la fonction crypté ainsi :
Code VBA de la Fonction Crypter
Public Const cle As String = 1234
Public Function Crypter(passe As String) As String
Dim str As String
str = ""
For i = Len(passe) To 1 Step -1
str = str & Hex(Asc(Mid(passe, i, 1)) + Int((cle / 40)))
Next i
Crypter = str
End Function
La fonction prend chaque caractère du mot de passe (fonction : MID) , retourne le code ASCII de cette caractère (fonction : ASC) puis ajoute la clé de cryptage divisée sur 40 , enfin convertir le numéro obtenu en Hexadécimale (le fiction : HEX)
Donc pour tester et exécuter cette fonction avant de l'intégrer dans notre projet , et sans passer par un formulaire et événement , on va se servir Affichage => Fenêtre Exécution (raccourci clavier : CRTL + G ), puis on saisie le nom de la fonction précédé par ? .
Pour exécuter la fonction via la fenêtre exécution
?Crypter("P@ssw@ord")
82908D5E9591915E6E
La Fonction ASC: Renvoie une donnée de type entier qui représente le code ASCII du caractère . Exp : asc("A") = 65 , asc("a") = 97
La fonction MID : mid(chaîne , début, longueur) , Renvoie une donnée de type Variante (Chaîne) contenant un nombre défini de caractères d’une chaîne. Exp : str="Mohamed", mid(str,1,1) = "M" , mid(str,5,3) = "med"
La fonction Hex : Renvoie une donnée de type Chaîne qui représente la valeur hexadécimale d’un nombre.
👉 Pour plus de détail, Regarder la Vidéo de ce Cours
🔗 Télécharger le Code Source G.Stock V1.29
***********************
***********************
Aucun commentaire:
Enregistrer un commentaire