Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2501 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  appli web avec données cryptées en base

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

appli web avec données cryptées en base

n°1992979
phnatomass
Je m'empare de ton esprit !!
Posté le 14-05-2010 à 10:10:07  profilanswer
 

Bonjour,
Je souhaiterais développer une appli de gestion de budget/finance personnel, un peu comme Microsoft Money en simplifié.
Ce serait une appli Web pour pouvoir l'utiliser de partout. Par exemple en vacances ou au boulot.
Le PHP étant le plus simple pour l'hébergement.
Je souhaiterais rendre un peu confidentiel les informations stockées en bases.
Surtout les montants et les libellés des opérations , pour éviter qu'un admin chez l'hébergeur s'amuse via un simple "select" SQL, à récupérer tout l'historique des opérations bancaires de l'utilisateur.
En terme d'utilisateurs ce sera uniquement moi et éventuellement des personnes de mon entourage proche qui en aurait le besoin.
Je ne recherche pas une sécurité forte, donc pas de SSL. Je pense juste stocker certaines infos cryptées en bases
Je part sur une base MYSQL et je pense utiliser les fonctions AES_ENCRYPT et AES_DECRYPT pour les colonnes confidentielles.
La clef sera le mot de passe de l'utilisateur qui lui même sera stocké basiquement en MD5.
 
Cela vous semble t-il une bonne stratégie?
Les performances des requêtes SQL seront-elles très dégradés par l'usage des fonctions de cryptage AES ?  
Les colonnes cryptés ne seront ni indexées ni utilisées pour des jointure.
Je ne pense pas qu'un utilisateur dépassera les 5000 enregistrements pour la table.

mood
Publicité
Posté le 14-05-2010 à 10:10:07  profilanswer
 

n°1992981
olivthill
Posté le 14-05-2010 à 10:23:47  profilanswer
 

Oui, AES_ENCRYPT est très bien.
 
Comme indiqué, dans la doc, il faut avoir des champs de type BLOB au lieu de NUMBER ou VARCHAR.
 
Au niveau de la vitesse, je pense que ca devrait aller sans problème. D'une part, d'un point de vue théorique, le cryptage est une opération qui utilise principalement la CPU et la RAM, or c'est beaucoup plus rapide que les accès disque ou les accès réseaux qui sont les principales causes de ralentissement pour les applications de gestion. D'autre part, d'un point de vue pratique, j'ai fait ce genre de chose, et la baisse de vitesse n'a pas été sensible bien que le volume des données fut assez important.

n°1992996
phnatomass
Je m'empare de ton esprit !!
Posté le 14-05-2010 à 10:50:43  profilanswer
 

Merci pour ta réponse olivthill. Cela va dans le sens des résultats de mes recherche sur internet.
Maintenant je me penche sur un autre problème.
Ne pouvant utiliser de SSL, existe il un moyen simple d'éviter la soumission du mot de passe en clair de l'utilisateur entre le navigateur et le serveur ?


Message édité par phnatomass le 14-05-2010 à 10:50:53
n°1992999
olivthill
Posté le 14-05-2010 à 10:59:53  profilanswer
 

Le mot de passe s'affiche dans la l'URL s'il est envoyé dans une form utilisant la méthode GET.
 
Mais ce mot de passe est invisible s'il est envoyé dans une form utilisant la méthode POST.
Il n'est visible qu'avec des outils que n'ont pas les utilisateurs ordinaires.

n°1993026
phnatomass
Je m'empare de ton esprit !!
Posté le 14-05-2010 à 14:07:34  profilanswer
 

olivthill a écrit :

Le mot de passe s'affiche dans la l'URL s'il est envoyé dans une form utilisant la méthode GET.

 

Mais ce mot de passe est invisible s'il est envoyé dans une form utilisant la méthode POST.
Il n'est visible qu'avec des outils que n'ont pas les utilisateurs ordinaires.


Je le sais.
Je ne cherche pas à mettre en place une grosse sécurité car au final les informations sont juste personnelles mais pas critiques.
A défaut de pouvoir utiliser du SSL, je souhaiterais protéger le mot de passe pour éviter notamment lors de l'usage de l'appli hors de chez moi, que le mot de place circule en claire sur le réseau.


Message édité par phnatomass le 14-05-2010 à 14:07:44
n°1993034
olivthill
Posté le 14-05-2010 à 14:33:49  profilanswer
 

On peut le crypter dans un javascript.
On avoir des mots de passe différents en fonction de l'heure ou d'un code dans la page.

n°1993043
phnatomass
Je m'empare de ton esprit !!
Posté le 14-05-2010 à 14:46:55  profilanswer
 

Mon idée simple dans un 1er temps est que le serveur va envoyé une clef (random ou timestamp), qui sera utilisé coté client en javascript pour crypter le mot de passe.
Il y a bien sur une faille, mais les 2 avantages sont que le mot de passe ne passe pas en clair et que ce mot de passe crypté est valide uniquement le temps de la session utilisateur.
Voilà sur quoi je pense partir :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  appli web avec données cryptées en base

 

Sujets relatifs
Règles de base pour un admin + SQliteRequete ajax sur base sql
Pb d'enregistrement en base d'un tableau linéarisé"Capturer" des données dynamiques d'une page web ?
écriture base de registreDébutant need Help en C
Modifier le fichier de config d'une appli par phpMacro Excel : "scan" de colonne et données sur plusieurs fichiers
[Résolu][php]récupération de données d'un fichier .txtExport d'une base ACCESS en csv avec php
Plus de sujets relatifs à : appli web avec données cryptées en base


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR