69 lines
1.5 KiB
Plaintext
69 lines
1.5 KiB
Plaintext
|
--
|
||
|
-- PGP Public Key Encryption
|
||
|
--
|
||
|
-- successful encrypt/decrypt
|
||
|
select pgp_pub_decrypt(
|
||
|
pgp_pub_encrypt('Secret msg', dearmor(pubkey)),
|
||
|
dearmor(seckey))
|
||
|
from keytbl where keytbl.id=1;
|
||
|
pgp_pub_decrypt
|
||
|
-----------------
|
||
|
Secret msg
|
||
|
(1 row)
|
||
|
|
||
|
select pgp_pub_decrypt(
|
||
|
pgp_pub_encrypt('Secret msg', dearmor(pubkey)),
|
||
|
dearmor(seckey))
|
||
|
from keytbl where keytbl.id=2;
|
||
|
pgp_pub_decrypt
|
||
|
-----------------
|
||
|
Secret msg
|
||
|
(1 row)
|
||
|
|
||
|
select pgp_pub_decrypt(
|
||
|
pgp_pub_encrypt('Secret msg', dearmor(pubkey)),
|
||
|
dearmor(seckey))
|
||
|
from keytbl where keytbl.id=3;
|
||
|
pgp_pub_decrypt
|
||
|
-----------------
|
||
|
Secret msg
|
||
|
(1 row)
|
||
|
|
||
|
select pgp_pub_decrypt(
|
||
|
pgp_pub_encrypt('Secret msg', dearmor(pubkey)),
|
||
|
dearmor(seckey))
|
||
|
from keytbl where keytbl.id=6;
|
||
|
pgp_pub_decrypt
|
||
|
-----------------
|
||
|
Secret msg
|
||
|
(1 row)
|
||
|
|
||
|
-- try with rsa-sign only
|
||
|
select pgp_pub_decrypt(
|
||
|
pgp_pub_encrypt('Secret msg', dearmor(pubkey)),
|
||
|
dearmor(seckey))
|
||
|
from keytbl where keytbl.id=4;
|
||
|
ERROR: No encryption key found
|
||
|
-- try with secret key
|
||
|
select pgp_pub_decrypt(
|
||
|
pgp_pub_encrypt('Secret msg', dearmor(seckey)),
|
||
|
dearmor(seckey))
|
||
|
from keytbl where keytbl.id=1;
|
||
|
ERROR: Refusing to encrypt with secret key
|
||
|
-- does text-to-bytea works
|
||
|
select encode(pgp_pub_decrypt_bytea(
|
||
|
pgp_pub_encrypt('Secret msg', dearmor(pubkey)),
|
||
|
dearmor(seckey)), 'escape')
|
||
|
from keytbl where keytbl.id=1;
|
||
|
encode
|
||
|
------------
|
||
|
Secret msg
|
||
|
(1 row)
|
||
|
|
||
|
-- and bytea-to-text?
|
||
|
select pgp_pub_decrypt(
|
||
|
pgp_pub_encrypt_bytea('Secret msg', dearmor(pubkey)),
|
||
|
dearmor(seckey))
|
||
|
from keytbl where keytbl.id=1;
|
||
|
ERROR: Not text data
|