How to securely store values in the database

Posted by cverbiest on 23-Dec-2014 10:49

I'm looking for a  secure way to store authentication keys in the database.

There are 2 accounts that need access to the information

1. The interactive user that stores the info, each user of the system only has access to her/his keys

2. A system user (batch process) needs to be able to access that data for all users.

Posted by Michael Jacobs on 24-Dec-2014 05:14

The ABL does not provide native asymmetric encryption.

Your method appears to allow any user with the batch user's public key ( i.e. everyone) to overwrite any other user's key.   It also prevents the user from recovering their own key value (because they do not have access to the batch user's private key).   Perhaps I'm just missing the details.

All Replies

Posted by Frank Meulblok on 24-Dec-2014 02:58

I'd suggest storing them in encrypted format, using ENCRYPT/DECRYPT function.

You'll   probably want to do the encryption as last step of the key generation. If/when/how you'll decrypt them depends on the rest of your application.

Posted by Michael Jacobs on 24-Dec-2014 04:33

Of course, then you have the problem of encrypting and storing the keys used to encrypt the values in the database.

Mike J.

[collapse]
From: Frank Meulblok <bounce-fmeulblo@community.progress.com>
Reply-To: "TU.OE.Development@community.progress.com" <TU.OE.Development@community.progress.com>
Date: Wednesday, December 24, 2014 at 3:58 AM
To: "TU.OE.Development@community.progress.com" <TU.OE.Development@community.progress.com>
Subject: RE: [Technical Users - OE Development] How to securely store values in the database

Reply by Frank Meulblok

I'd suggest storing them in encrypted format, using ENCRYPT/DECRYPT function.

You'll   probably want to do the encryption as last step of the key generation. If/when/how you'll decrypt them depends on the rest of your application.

Stop receiving emails on this subject.

Flag this post as spam/abuse.

[/collapse]

Posted by cverbiest on 24-Dec-2014 04:52

Hi Frank,

Thanks for the reply,  I should have been clearer in my question.  

I'm looking for a strategy to share the encryption key between a user and the batch process.

I think I could use asymmetric encryption. Is that available in the ABL ?

Using asymmetric encryption a user could encrypt his encryption-key using the public key of the batch user.

The batch user would then decrypt the user's encryption key with his private key.

Posted by Michael Jacobs on 24-Dec-2014 05:14

The ABL does not provide native asymmetric encryption.

Your method appears to allow any user with the batch user's public key ( i.e. everyone) to overwrite any other user's key.   It also prevents the user from recovering their own key value (because they do not have access to the batch user's private key).   Perhaps I'm just missing the details.

This thread is closed