[ORACLE] Cherche solution pour crypter champ

Fermé
Nico - 24 juin 2005 à 15:40
DROE Messages postés 148 Date d'inscription mardi 5 mai 2009 Statut Membre Dernière intervention 26 juillet 2012 - 4 sept. 2010 à 15:18
Bonjour à tous,

Je suis à la recherche d'une solution pour crypter et décrypter un champ dans une table Oracle.
Pouvez vous me conseiller les méthodes disponibles sous Oracle (outils, création d'un plsql.....)
Le but final étant de masquer ce champ si un client (sqlplus ou application quelconque) fait un simple select dessus.

Merci d'avance pour votre aide.
A voir également:

7 réponses

nico7382 Messages postés 279 Date d'inscription lundi 6 juin 2005 Statut Membre Dernière intervention 22 décembre 2010 50
24 juin 2005 à 15:49
Tu connais le criptage de Jules Cesar??

Il ajoutait un nombre n a chaque caracteres
ex si n=3
A=>D
B=>E
...
Y=>B
Z=>C

Voici un cryptage rapide et facilement decrypter pour celui qui connait la clé: -3 ;)
3
Mais qu'est-ce qu'il ne faut pas entendre... Déjà, il serait conseillé d'apprendre la différence entre cryptage et chiffrement, ce serait déjà un bon début. L'algorithme de César et un algorithme de chiffrement, le cryptage, c'est un angliscisme...

Ensuite, c'est aberrant de proposer une solution pareille (chiffre de césar). Premièrement, il n'est de loin pas efficace (très facile à cracker). De 2, analyser chaque caractère pour le décaler selon la clé prendra un temps considérable.
Il existe, depuis Oracle 10, un package PL/SQL DBMS_CRYPTO qui permet de chiffrer facilement un élément selon l'algorithme voulu (MD5, SH1, ...). Pour les anciennes versions (dès 8i), il existe le package DBMS_OBFUSCATION_TOOLKIT qui est désormais obsolète.
2
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
25 nov. 2008 à 11:06
Mais qu'est-ce qu'il ne faut pas voir écrit !

qui permet de chiffrer facilement un élément selon l'algorithme voulu (MD5, SH1, ...)
Ces algorithmes ne sont pas des algos de cryptage mais des algo de calcul d'empreinte (hash en anglais), car ce sont des fonctions non bijectives. Il est en effet impossible de remonter à la donnée d'origine à partir de l'empreinte générée.

La question initiale était de savoir comment protéger une donnée en la 'cryptant' afin de pouvoir la retrouver ensuite. C'est possible avec un cryptage type césar ou vigenère, impossible avec md5, sha et consorts...
0
Tuxian > blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024
5 déc. 2008 à 18:18
D'accord, mea culpa, j'ai lu en diagonale et je n'avais pas relevé qu'il souhaitait récupérer les informations APRÈS chiffrement (cryptage étant un angliscisme).

Mais par contre, l'algorithme de César est aussi fiable que s'il ne faisait que traduire son texte dans une langue étrangère... N'importe qui peut trouver la clé en quelques secondes d'analyse ! Les packages dont j'ai parlé proposent eux des algorithmes de chiffrement nettement plus élaborés que l'algo de César, qui n'est plus bon aujourd'hui qu'à expliquer le lien chiffrement - clé... Proposer ça comme solution revient à proposer une roue de brouette pour changer son pneu en cas de crevaison !
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289 > Tuxian
5 déc. 2008 à 22:43
Les packages dont j'ai parlé proposent eux des algorithmes de chiffrement nettement plus élaborés que l'algo de César
Désolé d'insister, mais MD5, SHA-1 ne sont PAS des algos de chiffrement, mais des algos de calcul d'empreinte.

Pour le chiffrement, on s'oriente vers DES, RSA et autres...
0
Co > blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024
8 déc. 2008 à 18:35
Le package DBMS_CRYPTO contiente bien des algos de chiffrement. Voir http://psoug.org/reference/dbms_crypto.html
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289 > Co
8 déc. 2008 à 19:50
erreur 404...
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
24 juin 2005 à 15:53
Même pour celui qui ne connait pas la clé !
Avec une analyse statistique...
1
pas tres pro ces propositions...
N'existe t-il pas des fonctions plsql aui pourrait crypter et decrypter ? n'y a t'il pas des outils Oracle pour crypter certains champs dans la base ?
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le chiffre César ne vaut que des clous
1
DROE Messages postés 148 Date d'inscription mardi 5 mai 2009 Statut Membre Dernière intervention 26 juillet 2012 48
4 sept. 2010 à 15:18
Utilise le Package PL/SQL DBMS_CRYPTO (10G), tu trouveras sur mon site une procédure complète pour le mettre en oeuvre.

http://www.dba-ora.fr/article-encrypter-vos-donnees-avec-dbms_crypto-42771236.html
1
nico7382 Messages postés 279 Date d'inscription lundi 6 juin 2005 Statut Membre Dernière intervention 22 décembre 2010 50
24 juin 2005 à 16:01
dans ces cas la il faut empecher le select et c'est plus simple,
car meme les clé de 32bits sont cassables.

Mais ma solution est pratique, et rapide a mettre en place.
Il faut pas que les données soit vitale c tout (code d'acces, mdp,etc..)
0