OraPGP – OpenPGP in PL/SQL

PGP cryptography directly from your PL/SQL code

  public_key VARCHAR2(500);
  message  BLOB;
    encrypted_message := ORA_PGP.ENCRYPT_BLOB( MESSAGE => message, 
	                                       PUBLIC_KEY => public_key, 
                                               ASCII_ARMOR => ascii_armor_output);
    v_Return := ORA_PGP.DECRYPT_BLOB( MESSAGE => encrypted_message,
      PRIVATE_KEY => private_key,
      PRIVATE_KEY_PASSWORD => private_key_password

DidiSoft OraPGP is a PL/SQL package (ORA_PGP) providing OpenPGP encryption functionality as defined in the OpenPGP standard (RFC 4880 and RFC 6637) for the Oracle© Database platform version 11 and above.

Current version
Build date 17 March 2022

DidiSoft OraPGPSupported Oracle Database platforms:
Enterprise Edition (version 11+)
Standard Edition (version 11+)
Standard One (version 11+)

Functionality in brief
The package provides PL/SQL functions for OpenPGP encrypting/decrypting, signing/verifying, one pass sign and encrypt, and  analytical functions over VARCHAR2 and BLOB data.

Keys can be used by specifying server file paths or by loading them from VARCHAR2 fields or created at runtime.

The package provides similar functionality as the one available in the PostgreSQL database pgcrypto module.

The product is licensed per server or for a whole Enterprise (unlimited number of servers)

Trial version limitations
30 days evaluation copy

Online examples

Online tutorial with detailed PL/SQL examples can be found here

Additional documentation