From: Jeff Lu <jeff_k_lu@yahoo.com>
To: Owen Jacobson <ojacobson@osl.com>
Cc: pgsql-sql@postgresql.org
Subject: Re: Fwd: How to encrypt a column
Date: Thu, 11 Aug 2005 14:55:20 -0700 (PDT)
Message-ID: <20050811215520.38623.qmail@web50609.mail.yahoo.com> (raw)
In-Reply-To: <000901c59eb6$5977b120$9b00015a@osl.com>
I do get a couple of warnings at compile time:
intrasend.c:496:37: warning: multi-character character constant
intrasend.c:496:44: warning: multi-character character constant
intrasend.c:517:84: warning: character constant too long for its type
Here's what is in the variable "data" = "0018`0018`64045`08112005`64045`1````Discount=0.00;``2``~"
printf("%s", encrypt(data, "foo", "bar"))
prints out (null)
Thank you
Owen Jacobson <ojacobson@osl.com> wrote:
Jeff Lu wrote:
> Hi,
>
> I'm interested in encrypting an column in table. Are there any
> example using "C" to create the encrypted column, inserting and
> retreiving data to/from it?
>
> the table is:
> CREATE TABLE mytable (
> id SERIAL PRIMARY KEY,
> crypted_content BYTEA
> );
>
> I'm getting (null) in the field with the following sql statement:
>
> strcpy(data, "data to be encrypted");
> sprintf(query_buff, "insert into mytable values('%s', '%s')", key,
Try printing out the contents of 'query_buff' here. You shouldn't be
getting NULLs in the table, but you may well be getting '' (the empty
string) if encrypt(data, 'foo', 'bar') returns "" or (char *) (0).
> encrypt(data, 'foo', 'bar'));
> PQexec(conn, query_string);
Even better, don't do it this way. This is potentially open to SQL
injection attacks and definitely open to problems with "interesting" values
of key.
Look up PQprepare/PQexecParams for separating the query string from the
values. I use ODBC indirectly, so I can't help you directly, but the docs
at
IN>
should help.
> Another question is can the encrypted column be of type "text" ?
Can't see any reason why not, so long as the encrypted data is represented
as text.
---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings
---------------------------------
Start your day with Yahoo! - make it your home page
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: jeff_k_lu@yahoo.com, ojacobson@osl.com
Subject: Re: Fwd: How to encrypt a column
In-Reply-To: <20050811215520.38623.qmail@web50609.mail.yahoo.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox