I am giving a presentation about cryptography. My teacher told me to include the advantages and disadvantages of TDE encryption and especially why you should use them instead of encrypting with C# for example. I couldn't find the real advantages of database encryption instead of encryption in a program.
CodePudding user response:
Oracle Transparent Data Encryption specifically protects data at rest, when written into a datafile. It would not stop a database user with select privileges from seeing the data using SQL, and it allows the data to be used in all types of SQL constructs like joins and indexes.
Encrypting data in the application rather than the DB would prevent adhoc SQL queries outside of the app from decrypting the data, and would make it impossible to use SQL (in the database or in the app) to search the data, make table joins, indexes, or do anything at all with the encrypted data outside of the hard-coded application. Application-level encryption cause could also interfere with data compression algorithms in the database or the storage media.