Page 1 sur 1

[..] Comment Mémoriser un mot de passe sous AutoIt

Posté : ven. 12 avr. 2019 17:31
par Boulanza
Bonjour,
Je revins vers vous car j'un un petit souci pour mémoriser un mot de passe. (Save Password)
Je voudrais savoir comment enregistrer un Mot de Passe qui est écrit dans un champ d' une Input (histoire: Login et mot de passe) en confirmant l'enregistrement par clique sur un bouton "Enregistrer M.P" (Save Password)
Merci pour votre aide.
Cordialement.

Re: [..] Comment Mémoriser un mot de passe sous AutoIt

Posté : sam. 13 avr. 2019 20:16
par Boulanza
Bonsoir,
Je cherche sur le forum Autoit Français une meilleur solution que celle du lien : https://autoit.de/index.php?thread/1209 ... icher-ini/
Y a t'il une autre solution plus sécurisée/sûre ?
Cordialement.
#include <GUIConstants.au3>
#include <EditConstants.au3>
#Region ### START Koda GUI section ###
$Form2 = GUICreate("Login", 414, 133, 304, 173)
$Input1 = GUICtrlCreateInput(IniRead(@ScriptDir & "\Config.ini", "Logindaten", "User", ""), 16, 48, 297, 21)
$Input2 = GUICtrlCreateInput(IniRead(@ScriptDir & "\Config.ini", "Logindaten", "Password", ""), 16, 96, 297, 21, $ES_PASSWORD)
$Password = GUICtrlCreateLabel("Password", 16, 72, 66, 17)
$Nickname = GUICtrlCreateLabel("Nickname", 16, 24, 52, 17)
$Save = GUICtrlCreateButton("Save", 328, 16, 73, 25)
$Login = GUICtrlCreateButton("Login", 328, 83, 73, 38)
$Group1 = GUICtrlCreateGroup("Loginbox", 2, 5, 407, 122)
$Delete = GUICtrlCreateButton("Delete", 327, 48, 75, 31, 0)
$Input3 = GUICtrlCreateInput(IniRead(@ScriptDir & "\Config.ini", "Logindaten", "Webseite", ""), 174, 18, 136, 21)
$Webseite = GUICtrlCreateLabel("Webseite :", 120, 21, 52, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Save
IniWrite(@ScriptDir & "\Config.ini", "Logindaten", "User", GUICtrlRead($Input1))
IniWrite(@ScriptDir & "\Config.ini", "Logindaten", "Password", GUICtrlRead($Input2))
IniWrite(@ScriptDir & "\Config.ini", "Logindaten", "Webseite", GUICtrlRead($Input3))
Case $Delete
GUICtrlSetData ($Input1, "")
GUICtrlSetData ($Input2, "")
GUICtrlSetData ($Input3, "")
;~ Delete = $Input1 , $Input2 , $Input3 ;ihr Sollte eigendlich die Felder Löschen aber Geht nit
IniWrite(@ScriptDir & "\Config.ini", "Logindaten", "User", "")
IniWrite(@ScriptDir & "\Config.ini", "Logindaten", "Password", "")
IniWrite(@ScriptDir & "\Config.ini", "Logindaten", "Webseite", "")
Case $Login
; und Iher Firefox Starten oder IE aber Firefox Ware mir Lieber ware aber auch nett wenn es mir Jemmand Sagen Würde wie das mit IE Geht.
EndSwitch
WEnd

Re: [..] Comment Mémoriser un mot de passe sous AutoIt

Posté : mar. 16 avr. 2019 15:36
par Barthandelus
Hello,

Stocker des mots de passe n'est par définition pas sécurisé. Ta demande n'est donc pas réellement réalisable.

Voilà un bref résumé :
- Un mot de passe stocké permettra quoi qu'il arrive l'usurpation de ce dernier puisque justement il sera stocker. N'importe qui qui a l'accès à la souris et la clavier et avec un esprit logique pourra donc se connecter.
- Cependant, un mot de passe stocké et sécurisé permettra au moins de ne pas obtenir le "vrai" mot de passe.

Exemple :
- Mot de passe : toto
- Mot de passe sécurisé (et stocké) : f71dbe52628a3f83a77ab494817525c6

Mais il faut que ton receveur, qui fait l'authentification, fonctionne de la même façon. Ainsi, même si ton mot de passe est stocké, le "mot de passe réel" n'est pas connu et empêche donc la personne mal intentionnée de créer des effets de bords (ou plutôt, des dégâts collatéraux). Un utilisateur utilisant souvent le même mot de passe, une fois qu'il est connu quelque part, il est connu partout. Petit conseil de sécurité en passant : 1 mot de passe = 1 application.

La plus haute sécurité possible c'est l'authentification à double facteur, mais dans ton cas, tu ne pourras pas le mettre en place (pas aussi facilement et sans infrastructure, tout du moins).

Un petit conseil : Utilise SHA256 étant donné que MD5 n'est plus sécurisé.
- Un UDF pour permettre d'encoder une chaîne en SHA256 : https://www.autoitscript.com/forum/topi ... 8-sha-256/

Autre conseil : Valable uniquement si tu compiles ton application, tu peux aussi faire ton propre algorithme d'encodage en plus d'un encodage SHA256 ce qui rendra plus dur le boulot des pirates qui seront obligés de décompresser ton application pour pouvoir décrypter ton algorithme, puis de passer à la tentative désespérer de cracker le SHA256.

Dernier conseil : Tu peux ajouter un "salt" à ton mot de passe. Voir le Wikipédia qui l'explique très bien : https://fr.wikipedia.org/wiki/Salage_(cryptographie)

Tu as toutes les cartes en main pour réaliser ton projet. Parmi toutes ces étapes, seul le SHA256 est une étape obligatoire pour avoir le minima de sécurité.

Re: [..] Comment Mémoriser un mot de passe sous AutoIt

Posté : mer. 17 avr. 2019 11:32
par Boulanza
Cher Barthandelus, bonjour,
Je vous remercie pour la pertinence de votre réponse et suggestions. Je vous confirme que la méthode que vous avez décrite comme solution pour sécuriser un mot de passe, je l’ai réalisée exactement comme vous l’avez décrite il y a deux jours avant la réception de votre réponse, ceci prouve que AutoIt est fait pour tout âge (suite à mon expérience), AutoIt est désormais le moyen le plus simple pur initier les enfants et les non avertis à apprendre les abc du langage informatique. Bravo AutoIt et merci à tous ses membres: réponses rapides aux messages, propres et structurés, sans doute, vous êtes une référence grâce à votre forum d’aide pour la construction de scripts destinés aux systèmes Windows. Merci.
Cordialement.