hi, i'm trying to store data files encryptypted in postgres 8.1 database but i can`t make it works.
this is what i'm doing.
$link = pg_connect("host=$dbhost user=$dbuser password=$dbpwd dbname=$dbname") or die(pg_last_error($link));
$fp = fopen($tmp_name, "rb");
$file= fread($fp, filesize($tmp_name));
fclose($fp);
$file=pg_escape_bytea($file);
$sql = "INSERT INTO SOME_TABLE (bytea_file) VALUES (pgp_sym_decrypt_bytea($file,somepass,cipher-algo=aes256))";
pg_query($link, $sql) or die(pg_last_error($link));
this error appear...
ERROR: column "content_of_bytea_file" does not exist ( "content_of_bytea_file" is $file)
it seems that whant to the $file be a column ... but thats not what the documentation says...
pgp_sym_decrypt(msg bytea, psw text [, options text ]) returns text pgp_sym_decrypt_bytea(msg bytea, psw text [, options text ]) returns bytea
Decrypt a symmetric-key-encrypted PGP message.
Decrypting bytea data with pgp_sym_decrypt
is disallowed. This is to avoid outputting invalid character data. Decrypting originally textual data with pgp_sym_decrypt_bytea
is fine.
The options parameter can contain option settings, as described below.
Options are named to be similar to GnuPG. An option's value should be given after an equal sign; separate options from each other with commas. For example:
pgp_sym_encrypt(data, psw, 'compress-algo=1, cipher-algo=aes256')
All of the options except convert-crlf apply only to encrypt functions. Decrypt functions get the parameters from the PGP data.
The most interesting options are probably compress-algo and unicode-mode. The rest should have reasonable defaults.
thanks