Thread: Documentation for pgp_pub_decrypt
The following documentation comment has been logged on the website: Page: https://www.postgresql.org/docs/9.5/static/pgcrypto.html Description: I believe the first argument should be of type 'text'. Especially considering the paragraph that follows discusses how passing in bytea is disallowed.
On Sun, Sep 25, 2016 at 4:55 AM, <joe@snikeris.com> wrote: > I believe the first argument [apparently of pg_sym_decrypt() and > pg_pub_decrypt()] should be of type 'text'. Especially > considering the paragraph that follows discusses how passing in > bytea is disallowed. The *encrypted* form is bytea; those functions *return* text and are thus not a good way to get back to unencrypted bytea data; an additional transformation would still be required to get to the byte format from text, and the bytes representing those character strings would depend on the character encoding. -- Kevin Grittner EDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
joe@snikeris.com writes: > The following documentation comment has been logged on the website: > Page: https://www.postgresql.org/docs/9.5/static/pgcrypto.html > Description: > I believe the first argument should be of type 'text'. Especially > considering the paragraph that follows discusses how passing in bytea is > disallowed. No, that's how the function is declared. Maybe the following para isn't clear enough. What it's talking about is that the encrypted message has to contain a marker saying it was originally text. regards, tom lane
Thank you. Your response helped me figure out why pgp_pub_decrypt wasn't working for data that was encrypted outside of pgcrypto. The marker you mention must be added by pgp_pub_encrypt? Perhaps it's worth mentioning in the documentation that pgp_pub_decrypt is only intended be used on data encrypted with pgp_pub_encrypt since it's unlikely that a user is going to add that marker themselves.
On Sep 26, 2016 3:44 PM, "Tom Lane" <tgl@sss.pgh.pa.us> wrote:
joe@snikeris.com writes:
> The following documentation comment has been logged on the website:
> Page: https://www.postgresql.org/docs/9.5/static/pgcrypto.html
> Description:
> I believe the first argument should be of type 'text'. Especially
> considering the paragraph that follows discusses how passing in bytea is
> disallowed.
No, that's how the function is declared. Maybe the following para isn't
clear enough. What it's talking about is that the encrypted message has
to contain a marker saying it was originally text.
regards, tom lane