Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/11/2006, 13h26   #1
Membre habitué
 
Inscription : mai 2002
Messages : 635
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 635
Points : 109
Points : 109
Par défaut cryptage dans postgresql

Bonjour,

Quelqu'un a-t-il déjà utilisé les fonctions de cryptage de postgresql ? Car je recherche des informations sur ce sujet.

Jane voudrais pouvoir crypter et decrypter certaines colonnes.

Merci à tous
viny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2006, 11h26   #2
Expert Confirmé
 
Homme
Inscription : septembre 2006
Messages : 2 291
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : septembre 2006
Messages : 2 291
Points : 2 738
Points : 2 738
Citation:
Envoyé par viny
Bonjour,

Quelqu'un a-t-il déjà utilisé les fonctions de cryptage de postgresql ? Car je recherche des informations sur ce sujet.

Jane voudrais pouvoir crypter et decrypter certaines colonnes.

Merci à tous
encrypt(text2bytea(TABLE_FIELD), text2bytea(mkpasswd(PASSWORD)), 'bf');

decrypt( ENCRYPTED_TABLE_FIELD, text2bytea(mkpasswd(PASSWORD)), 'bf')

armor(pgp_pub_encrypt( TABLE_FIELD, dearmor('-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.3 (GNU/Linux)

YOUR_PUBLIC_KEY_INFO_HERE

-----END PGP PUBLIC KEY BLOCK-----
'))) ;

pgp_pub_decrypt( dearmor(PG_ENCRYPTED_TABLE_FIELD), dearmor('----BEGIN PGP PRIVATE KEY BLOCK-----
Version: GnuPG v1.4.3 (GNU/Linux)

YOUR_PRIVATE_KEY_INFO_HERE

-----END PGP PRIVATE KEY BLOCK-----
'));
JeitEmgie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2006, 11h35   #3
Membre habitué
 
Inscription : mai 2002
Messages : 635
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 635
Points : 109
Points : 109
c pas vraiment ce que je désirai c de la doc que je veux...me balancer cela comme ça ne me sera pas d'une grande utilité...
viny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2006, 13h32   #4
Expert Confirmé
 
Homme
Inscription : septembre 2006
Messages : 2 291
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : septembre 2006
Messages : 2 291
Points : 2 738
Points : 2 738
Citation:
Envoyé par viny
c pas vraiment ce que je désirai c de la doc que je veux...me balancer cela comme ça ne me sera pas d'une grande utilité...

la doc est dans le dossier contrib/pgcrypto des sources de PostgreSQL…
JeitEmgie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2006, 15h37   #5
Membre habitué
 
Inscription : mai 2002
Messages : 635
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 635
Points : 109
Points : 109
Peux-tu m'aider à crypter et décrypter des colonnes car je ne comprends rien à la doc.

Je fais les dev sous windows est-ce que cela peut poser problème ?

Ensuite l'appli sera sous linux.

merci pour ton aide
viny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2006, 19h57   #6
Expert Confirmé
 
Homme
Inscription : septembre 2006
Messages : 2 291
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : septembre 2006
Messages : 2 291
Points : 2 738
Points : 2 738
Citation:
Envoyé par viny
Peux-tu m'aider à crypter et décrypter des colonnes car je ne comprends rien à la doc.

Je fais les dev sous windows est-ce que cela peut poser problème ?

Ensuite l'appli sera sous linux.

merci pour ton aide
faudrait savoir ce que vous voulez :

les exemples sont 4 posts plus haut…
JeitEmgie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2006, 20h00   #7
Membre habitué
 
Inscription : mai 2002
Messages : 635
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 635
Points : 109
Points : 109
OK merci !

Si je veux utiliser ces deux fonctions :

Citation:
encrypt(text2bytea(TABLE_FIELD), text2bytea(mkpasswd(PASSWORD)), 'bf');

decrypt( ENCRYPTED_TABLE_FIELD, text2bytea(mkpasswd(PASSWORD)), 'bf')
pour crypter un mot de passe.

je fais donc ceci :

encrypt('mot_de_passe', 'ma_cle','bf') et pour décrypter je fais
decrypt('mot_de_passe', 'ma_cle','bf') si j'ai bien compris.

Question ou stocker de préférence 'ma_cle' ?
viny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2006, 09h22   #8
Membre habitué
 
Inscription : mai 2002
Messages : 635
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 635
Points : 109
Points : 109
J'ai ce message d'erreur :
Code :
FUNCTION text2bytea(text) does NOT exist
viny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2006, 09h35   #9
Membre habitué
 
Inscription : mai 2002
Messages : 635
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 635
Points : 109
Points : 109
OK j'ai trouvé comment utiliser les fonctions...

merci c cool !
viny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2006, 16h57   #10
Membre habitué
 
Inscription : mai 2002
Messages : 635
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 635
Points : 109
Points : 109
J'ai un problème quan dje veux décrypter un email j'ai ce message d'erreur :

Code :
ERROR: Corrupt ascii-armor CONTEXT: SQL FUNCTION

Voici la fonction

Code :
1
2
3
4
5
6
7
8
CREATE OR REPLACE FUNCTION "public"."fonc_obtenir_pseudo_mdp_inscrit" (inscrit_email_arg varchar, key_arg text) RETURNS "public"."type_obtenir_pseudo_mdp_inscrit" AS
$body$
SELECT inscrit_pseudo,
       pgp_sym_decrypt(dearmor(inscrit_mdp),$2)
FROM inscrit
WHERE pgp_sym_decrypt(dearmor(inscrit_email),$2) = $1
$body$
LANGUAGE 'sql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
Merci
viny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2006, 11h25   #11
Expert Confirmé
 
Homme
Inscription : septembre 2006
Messages : 2 291
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : septembre 2006
Messages : 2 291
Points : 2 738
Points : 2 738
Citation:
Envoyé par viny
J'ai un problème quan dje veux décrypter un email j'ai ce message d'erreur :

Code :
ERROR: Corrupt ascii-armor CONTEXT: SQL FUNCTION

Voici la fonction

Code :
1
2
3
4
5
6
7
8
CREATE OR REPLACE FUNCTION "public"."fonc_obtenir_pseudo_mdp_inscrit" (inscrit_email_arg varchar, key_arg text) RETURNS "public"."type_obtenir_pseudo_mdp_inscrit" AS
$body$
SELECT inscrit_pseudo,
       pgp_sym_decrypt(dearmor(inscrit_mdp),$2)
FROM inscrit
WHERE pgp_sym_decrypt(dearmor(inscrit_email),$2) = $1
$body$
LANGUAGE 'sql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
Merci
remonter à la source : quel est le contenu de inscrit_mdp et de inscrit_email ?
le contenu est-il le résultat d'un armor() ?
le contenu est-il NOT NULL ?
JeitEmgie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2006, 11h38   #12
Membre habitué
 
Inscription : mai 2002
Messages : 635
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 635
Points : 109
Points : 109
C'est OK maintenant...

Une des adresses e-mail dans la colonne n'était pas au bon format...

merci
viny est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h52.


 
 
 
 
Partenaires

Hébergement Web