Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : svp votre aide [ Algorithme / Compression & Cryptage ] (lfakir)

lundi 7 mai 2007 à 17:04:34 | svp votre aide

lfakir

salut tous le monde j'ai un probleme et j'ai besoin de votre aide j'ai une application vb6 qui lit des parametre a partir d'un fichier .ini qui contient le login et le mot de passse et la base de donnes le probleme c'est de crypter la ligne du mot de passe dans le fichier.ini
afin que personne ne peut voir le mot de passe dans le fichier.ini j'espere que la question est clair merci d'avance


lundi 7 mai 2007 à 17:18:54 | Re : svp votre aide

jack

Administrateur CodeS-SourceS
Salut
Une solution qui permet de ne pas pouvoir lire ce genre d'infos est de la crypter.
En fait, je suppose qu'il suffit pour toi de le rendre non lisible quand on ouvre le fichier, la force du cryptage n'a pas d'intérêt.
Je te propose de transformer tes chaines de Login et Password en Base64, c'est à dire une autre chaine de caractères.
C'est la technique utilisée par les mails pour n'avoir qu'un jeu de caractères limité.
Cherche "Base64" parmi les codes de vbfrance.
Il te faudra le codage et bien sûr le décodage pour la relecture.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)

lundi 7 mai 2007 à 18:56:27 | Re : svp votre aide

lfakir

Merci pour ton Aide mais je n'ai pas bien compris la solution je presise que dans le fichier.ini que je veux crypter


lundi 7 mai 2007 à 19:27:44 | Re : svp votre aide

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Il te suffit de crypter ta chaîne AVANT de l'enregistrer dans le fichier ini.

Il existe de nombreux algorithme de cryptage que tu trouvera sur ce site, du plus simple (certainement cesar) au plus compliqué (AES il me semble), tu n'a que l'embarra du choix, encore faut-il faire l'effort de chercher un minimum.



mardi 8 mai 2007 à 12:25:39 | Re : svp votre aide

cavo789

Juste une suggestion : est-ce que le login / mot de passe pourraient changer dans le temps ?   Si pas, il me semble que tu devrais le stocker dans ton code source.  

Ne criez pas au loup ;-)

Si, au lieu de crypter le login et le mot de passe dans un fichier INI, ces derniers sont stockés dans le source même du programme, la sécurité est plus grande.    

Si je voudrais tenter de m'introduire dans un programme et que je vois que le fichier INI contient des cléfs comme Login= et Password= cela me donne déjà trop d'info me semble-t-il.  Par exemple, quid si je met un password fictif....  Plantâge ?

Si le mot de passe est statique (c'est parfois le cas pour des logins "système"), je crois qu'il est bon de le stocker crypter dans le source.   C'est juste un avis perso.

Christophe

mardi 8 mai 2007 à 14:42:46 | Re : svp votre aide

philippe laschweng 1

Bonjour,

J'ai fait exactement la même chose dans un de mes projets (je précise que le module ne vient pas de moi mais de VBFrance). Si cela peut t'aider, regarde les deux fonctions ci-dessous à copier dans un module. C'est certain que ce n'est pas du grand cryptage ! Si ce serait à refaire, j'irais stocker les mots de passe dans la base de registre WINDOWS à un endroit bien planqué !!!
A+

'==============================================
'Utilisé pour crypter et décrypter les mots de passe
'Valeurs cryptées dans le fichier CONFIG.ini
'==============================================

Public FileOpen As Variant            'Réserve une variable pour la fonction ouvrir
Public FileSave As Variant            'Réserve une variable pour la fonction enregistrer sous


Public Function Crypt(Mot As String)
Dim intCtr As Integer                                   'Variable pour le compteur de cryptage
Dim intCtr2 As Integer                                  'Variable pour le compteur d'écriture
Dim intTxt(5000)                                        'Tableau unidimensionnel pour le stockage des caractères

On Error GoTo erreur                                    'Etiquette de saut en cas d'erreur

For intCtr = 1 To 5000                                  'Première boucle, valeur à modifier pour des fichiers plus grands!

  If Mid(Mot, intCtr, 1) = "" Then GoTo suite           'si le curseur arrive au bout du texte soit "" alors saut vers suite

  intTxt(intCtr) = Mid(Mot, intCtr, 1)                  'Récupère 1 caractère, au niveau intctr : pour lire les caractères un par un
  intTxt(intCtr) = (Asc(intTxt(intCtr))) + 5            'transforme le caractère en entier et lui ajoute 5
  intTxt(intCtr) = Chr(intTxt(intCtr))                  'retransforme le nombre en caractère

Next intCtr                                             'Passe au prochain intctr

suite:                                                  'Etiquette suite
  Mot = ""                                              'Efface le texte
  For intCtr2 = 1 To intCtr                             'Le compteur d'écriture, de 1 à intctr (en fait la fin de la chaine de caractère cryptée
  Mot = Mot & intTxt(intCtr2)                           'inscrit les nouveaux caractères cryptés
  Next intCtr2                                          'passe au prochain intctr2
Crypt = Mot

erreur:                                                 'Etiquette erreur
End Function


Public Function Decrypt(Mot As String)
Dim intCtr, intCtr2 As Integer                                   'Le principe est le même que pour crypt!
Dim intTxt(5000)                                        'Mais à l'envers ;-)
On Error GoTo erreur

For intCtr = 1 To 5000

  If Mid(Mot, intCtr, 1) = "" Then GoTo suite

  intTxt(intCtr) = Mid(Mot, intCtr, 1)
  intTxt(intCtr) = (Asc(intTxt(intCtr))) - 5
  intTxt(intCtr) = Chr(intTxt(intCtr))

Next intCtr

suite:
  Mot = ""
  For intCtr2 = 1 To intCtr
  Mot = Mot & intTxt(intCtr2)
  Next intCtr2
Decrypt = Mot
 
erreur:
End Function

 




Cette discussion est classé dans : fichier, aide, ini, mot, probleme


Répondre à ce message

Sujets en rapport avec ce message

probleme avec fichier.ini [ par lfakir ] salut a tous le monde j'ai un probleme j'ai des informations du nom serveur et la base de donnes et le login et le mot de passe dans mon fichier.ini l Aide sur alignement du texte [ par DraaFil ] Bonjour a tous,   J'ai une question. J'ai un fichier texte que j'ai cree. Mon probleme c'est que j'ai 3 colonne differente et que la premier col enregistrer un mot de passe et le lire en fichier .ini [ par culie3 ] Bonjour, voila je voudrais savoir quel code je dois utiliser pour stocker un mot de passe (crypter) dans un fichier .ini et le lire pour valider le mo Aide sur fichier INI [ par SEB73460 ] Bonsoir,Je souhaiterai faire une appli multilangue ( francais,anglais ) en vb.netj'ai regarder sur le forum et j'ai vu que c'est realisable avec un fi fichier ini [ par zaka2005 ] salut a tous en fait je charge une application quelconque a partir de ma propre application(avec la fonction call shell execute)en vb6,et je voudrais Probleme Excel 97, a l'aide ! [ par djtrefle ] Bonjour, j'ai un souci avec Excel 97. Je sais, c'est vieux mais j'ai pas le choix c'est pour une entreprise. En fait a partir de VB6 j'ecris des donne fichier .ini et probleme de droit [ par Thanos_the_yopper ] voilà, j'ai une appli qui va lire/écrire dans un fichier .ini. Le probleme, c'est que si l'utilisateur n'a pas les droits sur sa machine (il n'est pas Fichier Ini probleme [ par got ] Bonjour,je cherche a stocker dasn un fichier ini grace a l'api writeprivteprofilsting et a recuperer grace a get.... Mon probleme ce situ au niveau de Aide concernant la gestion des fichiers ini [ par yoslo ] Bonjour à tous :)Bon voila j'ai besoin de vos lumières.J'ai fais un ptit prog qui récupére un fichier sur As400 qui le convertis en PDF et qui ensuite lire un fichier .ini [ par juju1965 ] bonjour, j'aimerais lire un fichier .ini  1) la ligne entière 2) mot par mot séparé par un espace sur une ligne auriez-vous un code pour faire ça. Me


Nos sponsors

Sondage...

CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,234 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.