IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Crypter les donnees


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut Crypter les donnees
    Bonjour,

    J'ai une BDD qui existe depuis au moins 10 ans avec un site web attaché. Une nouvelle contrainte vient de m'etre donnée et de taille. Il faut que toutes les donnees soit cryptées. Pour les moteurs de recherche de mon site cela risque de poser probleme avec les wild card (*), les likes.... Comment gerer tout cela afin de garder un maximum de fonctionnalité vis a vis de mon site.

    Avez vous deja eu ce cas la ?

    Merci

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 448
    Par défaut
    C'est du grand n'importe quoi.

    Encore une idée à la con tout droite sortie du chef d'un ignare qui s'improvise génie de l'informatique.

    Le cryptage ne doit pas se faire au niveau de la DB.

    Essayez de convaincre quelqu'un d'influent que ce n'est pas une chose à faire.
    Sinon, comme vous vous en rendez compte, vous pouvez soit faire une croix sur les LIKE avec un cryptage pertinent soit continuer à faire du LIKe avec un cryptage ridicule (genre chaque lettre devient lettre + 1) XD

  3. #3
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Ca dépend ce qu'on entend par "cryptage des données"... SQL Server propose un mécanisme appelé TDE (pour Transparent Data Encryption) qui permet de crypter la base, et donc les données.

    Tu trouveras une foule d'information ici : SQL Server Encryption, et quelques scripts ici : SQL SERVER – Introduction to SQL Server Encryption and Symmetric Key Encryption Tutorial with Script.

    Cependant je comprends la réaction de Sergejack, j'avais compris la même chose en lisant ton post et si effectivement l'idée c'est juste de crypter les données et de les décrypter à la volée, c'est assez débile comme idée et ça va coûter cher en resources

    [EDIT] : En complément, voir ce lien : SQL Server Encryption Options où sont exposées les différentes alternatives concernant l'encryption. Cependant ce lien ne précise pas les différences de coût entre les différentes solutions donc attention à bien tester avant de faire un choix définitif...
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par topolino Voir le message
    Bonjour,

    J'ai une BDD qui existe depuis au moins 10 ans avec un site web attaché. Une nouvelle contrainte vient de m'etre donnée et de taille. Il faut que toutes les donnees soit cryptées. Pour les moteurs de recherche de mon site cela risque de poser probleme avec les wild card (*), les likes.... Comment gerer tout cela afin de garder un maximum de fonctionnalité vis a vis de mon site.

    Avez vous deja eu ce cas la ?

    Merci
    Effectivement, le cryptage de toutes les données revient au niveau peerformance à utiliser des fichiers COBOL sur un antique IBM 370 avec 16 Ko de RAM !
    Toutes les requêtes nécessite un scan et un décryptage colonne par colonne avent de pourvoir retrouver la moindre info.
    Même les jointures ne peuvent plus se faire. En effet le cryptage de données claires identiques ne donne pas le même résultat.

    Démonstration :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT database_id, ENCRYPTBYPASSPHRASE('Mon mot de passe', CAST(database_id AS VARCHAR(16))) 
    FROM   sys.master_files;
    je dirais la même chose que Sergejack, ton chef est con !

    mais effectivement la solution est certainement le TDE qui pompe finalement très peu de ressources....
    Je l'associerait en outre au cryptage en SSL de la connexion

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Membre expérimenté
    Avatar de SQL_EVAN
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2011
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2011
    Messages : 161
    Par défaut
    Je suis tout à fait d'accord. Crypter une colonne de mots de passe est une pratique courante et logique puisqu'on peut développer l'outil de faire le cryptage des textes en entrée afin de comparer le même type de données.

    Cependant, crypter toute une base de données n'est pas logique.

    Par contre, vous pourriez envisager de travailler qu'en données encryptées avec un mot de passe. Comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    declare @val varbinary(max) = (select EncryptedData = EncryptByPassPhrase('MotDePasse', 'TotoTest' ))
    select convert(varchar(100),DecryptByPassPhrase('MotDePasse',@val))
    Cependant, les impactes vont surement être diverses et variées.

    Un exemple d'impacte que j'envisage tout de suite : imaginez un calcul mathématique simple: des données encryptées par EncryptByPassPhrase sont stockées en format VARBINARY. Additionner des données en VARBINARY n'est pas du tout la même chose qu'additionner des données de type INTEGER.

    Vous pouvez peut-être y arriver avec des cast/convert partout mais vous auriez un sacré sac à nouilles à administrer par la suite.

Discussions similaires

  1. [JTable] recuperer les donnees
    Par clemouf dans le forum Composants
    Réponses: 3
    Dernier message: 08/02/2019, 15h44
  2. [JTable] centrer les donnees dans les cellules
    Par cmoa59 dans le forum Composants
    Réponses: 5
    Dernier message: 20/05/2005, 11h35
  3. [Applets] Recuperer les donnees
    Par calypso dans le forum Applets
    Réponses: 11
    Dernier message: 05/04/2005, 16h18
  4. Réponses: 1
    Dernier message: 30/01/2005, 11h00
  5. transferer les donnees d'une BD paradox vers access
    Par denza1 dans le forum Bases de données
    Réponses: 5
    Dernier message: 31/10/2004, 14h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo