[Ex] BeCool's Passwords

Partagez vos scripts, et vos applications AutoIt.
Règles du forum
.
Répondre
BeCool
Niveau 5
Niveau 5
Messages : 173
Enregistré le : jeu. 30 oct. 2008 08:48
Status : Hors ligne

[Ex] BeCool's Passwords

#1

Message par BeCool »

Qui n'a jamais oublié ses mots de passes ou bien même ses noms de comptes pour accéder a un site ou jeu ou autre sur lequel vous n'êtes pas aller depuis bien longtemps ?
Tous ceci est terminé grâce a BeCool's Password !
En effet, ce programme sert a pouvoir enregistrer les mots de passe, nom de sessions ainsi que les noms ou adresses de site sur lesquels vous êtes passer, et ne jamais oublier vos mots de passe ni nom de compte !
Et le tout sécurisé grâce a un système de cryptage des mots de passe.

Sans plus attendre, voici le code source de mon script !
► Afficher le texte
Si vous avez des idées pour une amélioration, faites le moi savoir.
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [Ex] BeCool's Passwords

#2

Message par timmalos »

Pas trop regardé le programme, ca a l'air d'une bonne base, mais niveau Crypto, c'est 0 de chez 0. Faudrait d'une, passer par un AES avec Mdp plus long que le password, mdp qui change en fonction de l'Adresse MAC pour etre unique à chaque utilisateur, pour l'AES il y a un UDF sur le forum que j'ai posté, ou un simple XOR serait deja plus potable.

En gros, m'a l'air d'avoir un gros effort sur la Gui, se qui est un gros point fort de ton exemple, mais le niveau Protection est nul, en effet, il suffise que je recupère le /.mdp d'un autre ordinateur et je mettrai 1 secondes à le decrypter.


Avec un AES, il suffirait de decompiler le .EXE, mais en Associant AES avec un mdp unique à chaque machine ca devient beaucoup plus interessant.


Pour ma part, j'utilise l'Adresse Mac Couplé avec L'adresse IP Interne Couplé avec une fonction que j'ai fait personnelement en fonction de la Date et de L'Heure de la première utilisation, couplé d'un mot en Binaire dans le script. C'est pas parfait, mais reste moyen pour un gestionnaire de Mots de Passes.
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [Ex] BeCool's Passwords

#3

Message par Iste »

heuuu, mise a part que tel quel, je n'arrive pas a le faire fonctioner (^^')
La fonction _mdp contenant une boucle infini s'appel elle meme ?
Ca fini pas par faire des boucle dans d'autre boucle ?

Je sais pas trop, mais ca me parait bizarre :/

De plus, moi j'ai pas de partition C: :p donc utiliser de préférence les macro @AppDataCommonDir / @ProgramFilesDir

Edit :
Il manque un DirCreate() avant l'iniwrite, ce qui empeche la création du .ini et donc, ben... marche pas

Pis pis, le "ElseIf Not FileExists("C:\Program Files\Mots de passes\mdp.ini") Then" peut etre remplacé par un simpe Else
Signez ici
BeCool
Niveau 5
Niveau 5
Messages : 173
Enregistré le : jeu. 30 oct. 2008 08:48
Status : Hors ligne

Re: [Ex] BeCool's Passwords

#4

Message par BeCool »

Bon, moi qui pensais que mon script était bien, vous avez tout ruiné ! Merci :mrgreen:

Pour ce qui est du mot de passe, je comprend le fait que la protection ne soit pas au top, car je m'étais poser la même question quand j'ai développé de petit programme, a savoir que si on prenais le /mdp d'un autre PC, on pourrait le décrypté. Donc de toutes façon je comptais amélioré ce niveau là en prenant le 1ier mdp entré et s'en servir de clé de cryptage. Ça pourrait le faire non ?

Pour ce qui est de l'AES, je ne sais pas du tout ce que c'est, je me renseignerais là dessus.
Et votre système de cryptage m'a l'air bien complexe, mais astucieux :)

Pour Iste, je ne comprend pas trop. Tout marche chez moi même s'il est vrai que ce n'est pas optimiser a 100%.
Iste a écrit :heuuu, mise a part que tel quel, je n'arrive pas a le faire fonctioner (^^')
La fonction _mdp contenant une boucle infini s'appel elle meme ?
Ca fini pas par faire des boucle dans d'autre boucle ?

Je sais pas trop, mais ca me parait bizarre :/
Non ça ne fait pas de boucles dans d'autres boucles. Ça sert juste a pouvoir retourné sur la GUI principale.
Iste a écrit :De plus, moi j'ai pas de partition C: :p donc utiliser de préférence les macro @AppDataCommonDir / @ProgramFilesDir
Je sais, faudra que je le face, j'avais la flemme de le faire :P
Iste a écrit : Il manque un DirCreate() avant l'iniwrite, ce qui empeche la création du .ini et donc, ben... marche pas

Pis pis, le "ElseIf Not FileExists("C:\Program Files\Mots de passes\mdp.ini") Then" peut etre remplacé par un simpe Else
Pour ce qui est du DirCreate(), chez moi sa marche sans car si il ne trouve pas le dossier dans lequel écrire le .ini, il va le créer tout seul.

Et pour finir, pour ce qui est du Else, c'est changé :p
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [Ex] BeCool's Passwords

#5

Message par ani »

AES = Advanced Encryption System (Système avancé de cryptage)

Blowfish/Cypher/Gost/MD2/MD4/MD5/Rijndael/Sha1/Sha2/twofish/ ect. algorithme.

AES = fonctionne par blocs de 128 bits, les clés comportant 128/192 & 256 bits.
Rijndael fonctionne de la meme manière par blocs de 128 bits et d'une clé egale (128bits), chaque bloc subbit une séquence de 5 transformations répétées 10 fois :o
y a une clé secrete, divers calcul (xor), décallage des lignes (colonnes (tableau 4x4)) répartition des 128bits par 16 blocs de 8 bits (8bits=1octet)),brouillage des colonnes et pour finir on additionne les clé par tour (chaque tour génére une clé)

Pour l'encryptage t'a solution n'est pas mauvaise, on peut passer par un tableau récuperant le nom de lutilisateur (premiére clé) suivit de 4 ou 5 clé généré (15dzzz,6d1zab,pkdzs4,lpoede,#dezs7) et delà faire une boucle sur le tableau avec encrypt ;)

Edit: n'ayant pas trouvé le lien sur le fofo anglais, j'ai juste retrouvé le lien de timmalos :) _Encrypto
Edit2: j'ai retrouvé SuiteCrypto

Tu verra DES (Data Encryption Standard) , c'est en faite le précurseur de AES (il me semble!!) là il fonctionne en 64bits (0&1) en réalité seul 56 bits servent pour la clé.
Il doit y avoir 4 phase de transformation .
Permutation, découpe en 2 blocs, calcul xor, on reconstruit le blocs et on permute encore lol

Vais pas trop embrouillé. Le DES est bien aussi (72 millions de milliard de combinaison possible) lol

Exemple simplifié
Y a aussi ceux-ci Crypt/Decrypt

Ou ceux-ci ALgo
BeCool
Niveau 5
Niveau 5
Messages : 173
Enregistré le : jeu. 30 oct. 2008 08:48
Status : Hors ligne

Re: [Ex] BeCool's Passwords

#6

Message par BeCool »

ani a écrit :Vais pas trop embrouillé.
Trop tard ! :lol:
Je suis en train d'écrire une nouvelle méthode de cryptage pour mon programme, mais j'suis complètement perdu >_< Je m'embrouille tout seule. lol
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [Ex] BeCool's Passwords

#7

Message par Tlem »

Juste pour info :
La fonction _StringEncrypt utilise l'algorithme RC4 (utilisé par exemple pour WEP, WPA et TLS).

Donc si le mot de passe est suffisamment long, les chances de décryptage sont plutôt maigre. ;)
Une idée comme un autre serait de mettre deux InputBox de manière à crypter avec deux mots de passe par exemple.

Je ne dit pas que c'est inviolable, mais le temps nécessaire au décryptage est sans doute suffisant comme protection.
Il est possible aussi de rajouter des astuces pour détourner l'attention.
Comme par exemple mettre dans le même répertoire que le programme un fichier bidon qui contiendrait des chaînes aléatoires cryptées et qui porterais un nom bien évocateur, et à coté de ça, vous stockez votre fichier de mots de passe dans un autre fichier bien moins évident (un fichier dll, ou MP3, ou AVI, etc ...).
L'essentiel est de détourné l'attention de manière à rendre les choses moins évidentes.
N'oublions pas qu'il est aussi possible d'obfusqué le script et donc de rajouter quelques traitement divers tel que le retournement de la chaîne, la transformation en hexadécimal, etc ...

Edit : Vous pouvez aussi consulter ce sujet sur le forum Anglais : Is autoit _StringEncrypt hacker safe?, In other words:can I use it to store my passwords on server?
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Répondre