To password-protect and encrypt only a part of your database, selected record fields, use the Edit > Encrypt/Decrypt Field Contents commands.
(If there are no fields to decrypt, the Decrypt command is inactive. If there are already encrypted fields in a given
table, the Encrypt command is inactive.)
In comparison with file encryption, there are several benefits of using such partial encryption, for example:
- you can publish your database for viewing and updating of the unencrypted (e.g. non-sensitive) parts of the database tables by others, and you can be sure that the encrypted table fields can't be changed, misplaced or deleted within the table in any way;
- for any file with partially encrypted data you can still open it without a password to verify the file version, and to see what the table and field names are, etc.
To encrypt the data, GS-Base uses the standard Twofish block cipher algorithm, which guarantees that it can't be broken and your data can't be accessed/read without knowing your password.
GS-Base displays in encrypted fields the actual encrypted data in the MIME64 encoding form.
For encrypted text fields, the displayed encrypted contents length is proportional to the length of the source text strings.
If you would like to protect this information as well, you can add trailing spaces to these source strings before encrypting.
For encrypted numeric fields, the displayed encrypted values have the same length.
For encrypted LongText/Code/Images/Files fields, the entire contents are encrypted and the "encrypted" label is displayed in table/form cells.
The encrypted part of a given database table can't be modified - GS-Base disables any editing actions for the encrypted fields. If you delete records with encrypted data or insert new records before/between records with encrypted data, GS-Base won't let you save such a modified file. Of course, you're free to edit/delete and save any unencrypted fields and append new records (leaving the encrypted fields empty).
If a given table contains calculated fields, after encrypting one or more of its fields the last calculation results become "frozen" until you decrypt these fields.
Field encryption can be applied independently to each table, so you can use a different password for each table.
Having some encrypted fields, you can still use file encryption.