From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Merlin Moncure" <mmoncure(at)gmail(dot)com> |
Cc: | "Andrew Dunstan" <andrew(at)dunslane(dot)net>, Decibel! <decibel(at)decibel(dot)org>, "Zdenek Kotala" <Zdenek(dot)Kotala(at)sun(dot)com>, "Hans-Juergen Schoenig" <postgres(at)cybertec(dot)at>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: crypting prosrc in pg_proc |
Date: | 2007-08-09 18:06:36 |
Message-ID: | 18232.1186682796@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
"Merlin Moncure" <mmoncure(at)gmail(dot)com> writes:
> ... IIRC the general
> conclusion was that if you want to truly encrypt the sources for your
> functions, the basic idea is to create a new stored procedure language
> that wraps pl/pgsql and handles encryption there.
> This would be relatively easy to support as an external module, I think.
Yeah, I was about to make that same suggestion: it's not clear to me
that you need any support whatsoever from the core project for this.
Make a loadable PL "plpgsqlsec" or something like that that's just
a thin wrapper around the plpgsql call handler, and all it does is
decrypt the source text.
It's not clear exactly where the *en*cryption should happen, but
one possibility is to have the new PL have a validator function that
does an immediate UPDATE on the pg_proc row if the text isn't already
encrypted.
The encrypted representation would need to work like MD5 passwords:
it's ASCII so that dumps will work, and it's possible to tell whether a
given string is encrypted or not.
Given the very limited use-case for what's being suggested here,
I don't feel a need to put it in core.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Hans-Juergen Schoenig | 2007-08-09 18:25:10 | Re: crypting prosrc in pg_proc |
Previous Message | tomas | 2007-08-09 18:04:18 | Re: default_text_search_config and expression indexes |