EasyTable: Single-File Embedded Database,
a BDE replacement for Delphi and C++Builder
EasyTable provides an extended feature of table encryption. So you can protect your data from unauthorized access. Your tables could not be viewed on disk by means a disk editor.
EasyTable uses the best symmetric crypto algorithm, Rijndael, the AES (Advanced Encryption Standard) winner (http://csrc.nist.gov/encryption/aes/). AES (Rijndael) is the successor of DES.
Table encryption is controlled by the following properties of EasyTable:
Encrypted (boolean) Indicates whether the current database table is encrypted.
Password (String) Indicates the password to encrypt the database table.
Setting encryption in a new table
To create an encrypted table you must perform the following steps:
|1 Specify table structure (FieldDefs, IndexDefs)
|2 Set Password property (it is used to encrypt the table)
|3 Set Encrypted property value to True (False is default)
|4 Call CreateTable method
Changing encryption in existing table
To set encryption in existing (not encrypted) table you must Restructure the table
To switch encryption off in existing (encrypted) table you must perform the following steps:
|1 Set Password property (it is used to decrypt the table)
Step 2 may take a long time if you work with large table. You can set OnProgress event handler to provide feedback to the user about the progress of the slow process.
Opening encrypted table
The only thing you must do before opening an encrypted table is to set Password property to the value you used while encrypting the table.
If you don't set Password property value properly an exception will be raised.
Please, remember, that if you forget your password you won't be able to access the data in encrypted table.