What Does Data Integrity Mean?
After data has been generated, it’s commonly stored on computers or transmitted over networks. In both of these scenarios, there is the potential for that data to be changed, either by random errors or an intentional actor.
Data integrity measures the trustworthiness of data or the confidence that it hasn’t been modified since it was created. Various methods exist for protecting data integrity, including checksums, hash functions, and digital signatures.
Data Integrity and the CIA Triad
Data integrity is one of the parts of the CIA triad, which encapsulates the core goals of a cybersecurity program. The CIA triad includes:
- Confidentiality: Ensuring that data or systems can’t be accessed by unauthorized personnel.
- Integrity: Protecting data against modification by unauthorized users.
- Availability: Ensuring that data and systems are available to legitimate users.
Why is Data Integrity Important?
Data is the modern business’s most valuable asset. Customer lists, intellectual property, marketing plans, and other key elements of an organization’s success and ability to compete in the marketplace are all types of data.
Data integrity helps to ensure that this data is accurate and reliable for an organization. Even a simple, natural error can negatively impact the organization. For example, errors introduced into a client’s email address or phone number could render them unreachable or set the organization up for potential social engineering attacks.
Intentional data errors introduced by an attacker can have even greater impacts. For example, an attacker could modify a program downloaded by an employee to include malicious code. Alternatively, invoices or other valuable data could be modified to send funds to the attacker or take other malicious actions.
Data integrity helps to protect against these and similar threats. By providing the organization with a means of determining if data has been tampered with, it enables the organization to accurately assess the level of trust that it should place in the data.
Methods for Ensuring Data Integrity
Numerous methods exist for ensuring data integrity against both accidental and intentional data errors. Some of the most common include:
- Checksums: Checksums are a value stored alongside data that can help to detect accidental modifications. Combining the data and the checksum should have a known result (summing to 0, etc.). However, checksums can be easily recalculated by an attacker, making them a poor choice to protect against intentional modifications to data.
- File Hashes: Hash functions are designed to be one-way, collision-resistant functions, which means that it’s infeasible to calculate the input of a hash from the output or to find two inputs with the same hash. This makes them a good fit for data integrity checks because modifications to data change the hash, which would be apparent when comparing a user-calculated hash of data with a stored, trusted hash.
- Digital Signatures: Digital signatures combine hash functions and public key cryptography to offer integrity and authenticity protections. A digital signature involves hashing data and then encrypting it with a user’s private key, creating a signature that can be validated using the corresponding public key. Since a valid signature can only be created with the correct private key, an attacker can’t modify the data and generate a new, valid signature.
- Access Controls: Access controls prevent unauthorized users from accessing data. This can help to protect against unauthorized modifications by preventing an attacker from accessing the data in the first place.
Data integrity protections are essential for cybersecurity because they prove that data has not been modified and can be trusted. Hashes, digital signatures, and access controls are all solutions that can protect against intentional, malicious changes to data.