Approaches for optimizing Database Security Best practices of Database Security
Databases no longer necessarily have to pose a security and data protection risk. This is ensured by innovative technologies and approaches that help companies reduce risks and at the same time comply with all required compliance regulations.
Databases are the place where data is stored. That is why they are also the heart of a data protection concept.
Databases contain huge amounts of data, including some very sensitive information, which imposes extensive and profound security measures on the responsible companies that have to manage them. In the following, various approaches are outlined that help to make databases more secure.
Modern algorithms of encryption lock data with a key, so that they can be read only by someone who is in possession of the key. Many databases are encrypted using standards such as AES (Advanced Encryption Standard). However, symmetric encryption algorithms can only provide limited protection to running computers if an attacker can infiltrate.
Because the same key that allows the database to process legitimate operations could be found by a hacker. This problem can be solved with TDE (Transparent Data Encryption). The sensitive data is encrypted in a database in real time and a certificate is used to protect the keys that encrypt the data.
Approach: Differentiated Privacy
In addition to the possibility of relegating data to a digital vault, a carefully coordinated level of “noise” is added to the information in the case of “differentiated data protection”. For example, adding a few years to the age information of a record makes it difficult to assign records to specific people.
For this, a number of algorithms are available that are able to add “noise” in such a way that many of the aggregated statistics are not distorted. Microsoft and Google offer tools for integrating algorithms with data storage and machine learning algorithms. For example, Google’s Privacy-On-Beam integrates the mechanism for adding “noise” into Apache Beam pipeline processing.
Approach: Hash functions
Hash functions, sometimes called “message authentication code” or “one-way function”, reduce a large file to a smaller number, making it virtually impossible to reverse this process. These functions are an integral part of blockchains, which they apply to all changes of data in order to track and detect manipulations.
The Secure Hash Algorithms (SHA) of the National Institute of Standards and Technology (NIST) are a collection of standards that are widely used. Some of the earlier versions such as SHA-0 and SHA-1 had certain vulnerabilities that have been replaced by newer and more secure versions such as SHA-2 and SHA-3.
Approach: Digital Signature
Digital algorithms for signatures such as RSA or DSA are sophisticated approaches that combine the properties of hash functions for detecting manipulations with a specific person or institution.
SNARKs or zero-knowledge proofs (ZKP) are able to confirm complex personal information without disclosing the information themselves. Databases containing SNARKs and other similar proofs can protect the privacy of users and at the same time ensure that they comply with the necessary regulations. A very simple example would be a digital driver’s license, which certifies that a person is old enough to drive a car without revealing his date of birth.
Approach: Homomorphic encryption
A homomorphic encryption algorithm makes it possible to perform calculations with encrypted data without decrypting them. Simpler algorithms allow, for example, an addition of two encrypted numbers. On the other hand, more complex algorithms can perform any calculations, but often only at a very lower speed. The provider IBM, as one of the pioneers in this field, has developed a toolkit for the integration of its homomorphic encryption in applications for iOS and macOS.
Approach: Federal processes
Some users divide their data set into smaller parts and then distribute them to many independent computers. Since these locations can be encrypted, it is impossible to predict which computer contains which record. Such approaches are often based on software packages that speed up the work with so-called big data by executing the search or analysis algorithms in parallel.
Approach: Fully distributed databases
Splitting a record into several parts can protect privacy. But what would happen if you specifically chose a very high number of parts? This can be achieved by storing data directly where it is created and used. For example, if there is only a small need for central analysis and processing, it can also be faster and cheaper not to transfer the data to a server in the cloud.
For example, many browsers support local storage of complex data structures. The W3C standards provide for local storage for document-like models with keys and values, as well as an indexed version for relational models.
Approach: Intermediaries and proxies
There are tools available that limit data collection and pre-process the data before storage. Mozilla’s Rally, for example, tracks the surfing habits of users who want to investigate the flow of information on the Internet. It installs a special add-on for the duration of the investigation and removes it again at the end. The tool formalizes the relationship and enforces rules for collection and aggregation.
Approach: No data
Stateless data processing is a foundation for much of the Internet, and many efficiency efforts are successful if they redesign the work so that as little as possible needs to be recorded. In some extreme cases, where regulatory compliance makes this possible and users are willing to accept a less personalized service, deleting the database can do the most to protect privacy.