All Projects → cossacklabs → pg_themis

cossacklabs / pg_themis

Licence: Apache-2.0 license
Postgres Themis plugin

Programming Languages

c
50402 projects - #5 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to pg themis

tornote
Self-destructing notes on Go with tiny secured client-side
Stars: ✭ 28 (-3.45%)
Mutual labels:  encrypted-data
cryptletter
Self-hosted micro-service for encrypted self-destructing messages
Stars: ✭ 21 (-27.59%)
Mutual labels:  encrypted-data
Fuzzy-keyword-search-over-encrypted-data-in-cloud-computing
Fuzzy keyword search over encrypted data in cloud computing | PHP project
Stars: ✭ 19 (-34.48%)
Mutual labels:  encrypted-data
rainstash
Resilio Sync hosted securely on Amazon Web Services
Stars: ✭ 27 (-6.9%)
Mutual labels:  encrypted-data
Preference-Rhythm
Android library makes using Shared Preference easier.
Stars: ✭ 16 (-44.83%)
Mutual labels:  encrypted-data
cryptorious
CLI Password Manager
Stars: ✭ 15 (-48.28%)
Mutual labels:  encrypted-data

PG_Themis

Postgres Themis plugin

=======

pg_themis is a PostgreSQL extension for encrypting/decrypting data using the Themis library. Requires PostgreSQL version 9.1 or later.

Building and installing PG_Themis

Requirements: to build and install PG_Themis themis must be installed to sysytem

To build and install PG_Themis:

make
make install

Once PG_Themis is installed, you can add it to a database:

CREATE EXTENSION pg_themis;

PG_Themis functions

The extension adds four functions pg_themis_scell_encrypt_seal, pg_themis_scell_decrypt_seal, pg_themis_smessage_encrypt, pg_themis_smessage_decrypt, which expose encryption decryption of Secure Cell in Seal mode and Secure Cell wrapped in Secure Message with random public key:

-- Encrypts data with key.
CREATE FUNCTION pg_themis_scell_encrypt_seal(data bytea, key bytea)
    RETURNS bytea
    AS 'pg_themis', 'pg_themis_scell_encrypt_seal' LANGUAGE c STRICT;

-- Decrypts data with key.
CREATE FUNCTION pg_themis_scell_decrypt_seal(encrypted_data bytea, key bytea)
    RETURNS bytea
    AS 'pg_themis', 'pg_themis_scell_decrypt_seal' LANGUAGE c STRICT;


-- Encrypts data with public key.
CREATE FUNCTION pg_themis_smessage_encrypt(plain_data bytea, public_key bytea)
    RETURNS bytea
    AS 'pg_themis', 'pg_themis_smessage_encrypt' LANGUAGE c STRICT;

-- Decrypts data with private_key.
CREATE FUNCTION pg_themis_smessage_decrypt(encrypted_data bytea, private_key bytea)
    RETURNS bytea
    AS 'pg_themis', 'pg_themis_smessage_decrypt' LANGUAGE c STRICT;
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].