Password Access fiable?? Sinon Cryptage?

Résolu
cs_benumiit82 Messages postés 32 Date d'inscription mardi 23 mars 2004 Statut Membre Dernière intervention 11 avril 2006 - 8 mai 2005 à 21:03
cs_benumiit82 Messages postés 32 Date d'inscription mardi 23 mars 2004 Statut Membre Dernière intervention 11 avril 2006 - 11 mai 2005 à 09:45
Bonjour,



Voici mon problème... je lance une petite application travaillant avec une base de données Access.



Ne voulant pas que ma base de données soit lisible sous windows(cad en
dehors de l'application) j'ai mis un password à la bdd! Mais bon... je
ne sais pas si c'est très fiable le password de Access.



A votre avis, les crackeurs en viennent facilement à bout ??



Alors donc, en considérant que ca n'est pas fiable, je me suis mis en
tête de crypter ma base de donnée... J'ai trouvé pas mal de truc sur ce
forum, et a présent je sais la crypté ( secure a mon gout)...



A présent, ce que je voudrais savoir, c'est si je peux avoir accès à ma
base de donnée mdb tout en la laissant cryptée ! Selon moi faut la
decrypté lors du lancement de l'application et la recryptée en fin
d'utilisation... mais pendant cette interval de temps où la base sera
en mode decryptée, elle pourra etre consultée et copiée! Ce que, donc,
je ne veux pas !!



Pouvez vous donc m'aider... Il doit surement exister des solutions à ce problème. Toute idée est bien sur la bienvenue...



Je vous remercie de votre aide...

4 réponses

moldov Messages postés 165 Date d'inscription mercredi 8 octobre 2003 Statut Membre Dernière intervention 10 novembre 2008
10 mai 2005 à 22:57
Alors en ce qui concerne le ralentissement de
l'application, je pense que ca va pas avoir d'influence, car le temps
d'executer une requete est supérieur a l'appel d'une fonction de
cryptage (enfin je pense) meme si les deux actions sont exécutées dans
des temps tres court.



Tu peux faire le test d'inserer 50 ligne dans une table et de faire la meme opération avec un cryptage et tu sera vite fixé.



Ensuite en ce qui concerne le boulot de fou, je pense pas non plus, car
tu a juste à developper tes deux fonctions (Cryptage et Decryptage)



Et tu les appelles directement dans tes requetes.

ex :


ADOQuery.add('Insert into TABLE '''+
crypt(edit1.text)
+'''....) cela t'evite de passer par une variable temporaire.



et une petite astuce pour éviter de te perdre dans les '''''' des
requetes, utilise le QuotedStr qui remplace les doubles guillements
autour d'une string

ex :


ADOQuery.add('Insert into TABLE '+
QuotedStr(crypt(edit1.text))
+'....').



Voila tien moi au courant

Bonne Prog
3
moldov Messages postés 165 Date d'inscription mercredi 8 octobre 2003 Statut Membre Dernière intervention 10 novembre 2008
10 mai 2005 à 13:46
Salut benumiit82



Alors moi pour une de mes applications il fallait que je crypte des
informations. Donc ce que j'ai fait c'est que les infos de ma base sont
tous le temps crypter et le cryptage et le decryptage se fait dans mon
prog delphi, c'est a dire que la base contient toujours des infos
crypter.



Petit Exemple :



en realité :

login : moldov

password : moldov



info de la base :

login : moldov

password : 12458793 (moldov en crypter)



coté application :

l'utilisateur rentre son login et son mot de passe , ensuite je crypte le mot de passe,

je fias une requette pour recupérer le mot d epasse pour l'utilisateur
(il est crypter car c'est celui de la base) ensuite je compare les deux
mot de passe crypter. et de cet manière les infos de la base sont tous
le temps crypter.



Si je veux ajouter une info dans la base, je la recupère, je la crypte
et je l'insère dans la base, et si je veux la relire, je récupère
l'info crypter dans la base, ensuite je la décrypte dans mon prog et je
l'affiche décrypter.



Voila je sais pas si c'est tres clair, tien moi au courant si tu veux des explications en plus.



Bonne Prog
0
cs_benumiit82 Messages postés 32 Date d'inscription mardi 23 mars 2004 Statut Membre Dernière intervention 11 avril 2006
10 mai 2005 à 15:01
Ah oui, c'est bien çà ! J'y ai pas pensé ! C'est surtout plus facile.



Mais alors à chaque fois que je veux afficher un jeu de données, il va devoir le decrypter...

A chaque fois....



Ca ralentirais pas l'application? Et puis alors je dois faire un boulot de fou dans mon code non?



Si je rajoute edit1.text dans ma base ce n'est plus



Adoquery.add('Insert into TABLE '''+edit1.text+'''....)



mais alors là je devrais faire

var tmpedit1 : string;



tmp1edit1 := crypt(edit1.text); // crypt fonction de cryptage
Adoquery.add('Insert into TABLE '''+tmpedit1+'''....)





Non? ya plus simple? parce que sinon je dois crypter tout avant de l'insérer dans la base...



En ttout cas merci de la réponse, c'est une idée à réflechir.
0
cs_benumiit82 Messages postés 32 Date d'inscription mardi 23 mars 2004 Statut Membre Dernière intervention 11 avril 2006
11 mai 2005 à 09:45
Je te remercie beaucoup ! C'est vrai que ce ne sera pas un boulot immense !

Et je connaissais pas QuotedStr...



Sinon la solution me plait bien, je vais m'y mettre.



Merci de ton aide
0
Rejoignez-nous