Types of Database Encryption Methods
Types of Database Encryption Methods
With businesses storing more data than ever (both on-premises and in the
cloud), effective database security has become increasingly important. For many
businesses, this security might not go much further than access controls, but as a
managed services provider (MSP), you likely know it’s not enough to protect data
with basic security measures alone. Without a comprehensive plan, a great deal of
sensitive business data could be at risk. Those that want more robust protection for
sensitive data are smart to turn to an additional safeguard that can protect against
both internal and external threats: database encryption.
Unfortunately, not all businesses make the effort to encrypt their databases,
as doing so is perceived as an “extra” security step that comes with added design
complexity and potential performance degradation. However, this excuse amounts
to a gross oversimplification of the problem, not least because database encryption
methods have improved markedly over time. There are a number of types of
database encryption, meaning businesses can easily find the right balance between
added complexity and stronger security. For many, choosing the right kind of
encryption can be an important step for both peace of mind and regulatory
compliance.
Encryption levels
When it comes to database encryption, it’s possible to protect data at a number
of particular levels, from columns to blocks of files. All cells within these units would
use the same password for access, so you can choose more specialized or
generalized protection depending on your requirements. Be warned, however, that
more granular encryption can dramatically reduce performance:
• Cell-Level: In this case, each individual cell of data has its own unique
password—a configuration that comes with a high level of performance
impact. Even so, this configuration may be appropriate in situations in which
you need a highly granular level of protection. Managing the many associated
keys requires careful organization.
• Column-Level: This is the most commonly known encryption level and is
typically included by database vendors. Simply put, it works by encrypting
columns within a database. This requires less processing than at cell-level,
but could still impact performance, depending on the number of columns
that are encrypted and actions like insertions, queries, and table scans.
Similarly, it’s possible to implement row-level encryption in which each row
of data is encrypted with its own key.
• Tablespace-Level: This method provides a different level of control over
encryption, allowing encryption across tables, even if accessed by multiple
columns. This method doesn’t have as much of an impact on performance
but can cause issues if improperly implemented.
• File-Level: This approach works not by encrypting rows or columns, but by
scrambling entire files. The files can be moved to reports, spreadsheets, or
emails and still retain their protection, meaning fewer transformations or
encryption mechanisms are required. This type of encryption holds the least
potential for performance degradation.