In this lesson, we're going to cover Integrity.
Now, Integrity is the cornerstone
in the realm of information security,
because it helps to ensure that information
and data remains accurate and unchanged
from its original state,
unless intentionally modified by an authorized individual.
In essence, Integrity verifies the accuracy
and trustworthiness of the data over its entire lifecycle.
Now, let's imagine that you just finished
an important final exam in school,
and you handed it over to your instructor to be graded.
You'll probably have the expectation
that nobody else is going to tamper
with your answers or make unauthorized changes,
between the time you handed it into your instructor,
and the time that you got your grade back for that exam.
Now, if nothing was modified or changed,
we would say that your exam integrity was maintained.
Similarly, in the world of cybersecurity,
we expect that our data is going to be reliable
and unaltered as it's processed, transferred,
and stored by our systems and networks.
So why is integrity so critical?
Well, integrity is important for three main reasons.
We want to ensure data accuracy,
we want to maintain trust,
and we want to ensure system operability.
First, we want to ensure data accuracy is occurring.
Ensuring data accuracy is probably one
of the most important reasons for worrying
about the integrity of your organization's data.
Just as you wouldn't want somebody
to alter your written words without your consent,
similarly, inside of our digital landscape,
whether it's a financial transaction or a medical record,
the accuracy of that data will be critically important.
Now, if our data integrity is maintained,
this helps to ensure the decisions that are being made
is being made based on correct information
and the outcomes are what we expect them to be.
Second, we want to maintain trust,
both with our users and with our systems and networks.
If users can't trust the data
or information they're receiving,
they simply won't trust your systems or networks.
For example, if you logged into your bank account today,
and saw that it's been compromised,
and now your bank account says $1052.43,
instead of the $10,524.30 you thought you had,
because the attacker altered your transaction history
and removed a zero,
you would no longer trust your bank with your money.
After all, all they did was simply remove
that one trailing zero from the account balance
and now you've lost $9,471.87, right?
I know if this happened to my bank account,
my trust in that bank would be immediately shattered
and I would be looking for a new bank
to take my business to.
Third, we have system operability.
After all, if the data is corrupted,
then our systems are going to malfunction,
and this can lead to unexpected behaviors
or system down-times that are going to affect
our business's operations.
So a breach of integrity could cause our systems to crash
or become unresponsive if the data format is altered
without authorization or consent.
Now, in order to help us maintain the integrity of our data,
our systems, and our networks,
we're going to utilize five methods.
These are Hashing, Digital Signatures, Checksums,
Access Controls, and Regular Audits.
First, we have Hashing.
Hashing is the process of converting data
into a fixed-size value.
This way, even if a small part of the original data changes,
the hash value will change dramatically,
and this will indicate that there was some kind
of tampering that occurred to the data.
This unpredictability and sensitivity to data changes
makes Hashing an invaluable tool
in verifying data integrity.
Because any minor alteration will result
in a vastly different Hash.
Essentially, the results of this Hashing function
is called a Hash Digest,
and this Hash Digest will almost serve
like a Digital Fingerprint
for any given piece of data to prove its integrity.
Second, we have Digital Signatures.
Now, Digital Signatures use encryption to ensure
both integrity and authenticity.
To digitally sign a file,
that file is first going to be Hashed
and then that resulting Hash Digest will be encrypted,
using the user's Private Key.
Now, this data is now digitally signed and any alterations
to the file will drastically change the file's Hash,
which in turn, would invalidate that Digital Signature.
This immediately lets us know that the data or file
has been changed from its original format and therefore,
integrity has been compromised.
Third, we have Checksums.
Now, Checksums are a method to verify
the integrity of data being sent through a transmission.
By comparing the sender's Checksum of that transmitted data
with the receiver's calculated Checksum
for the received data,
we can determine if any unintended changes
in the data have been created.
Basically, when data is sent from one location to another,
the Checksum is also going to be sent along with it.
Upon receipt, the recipient can compute a new Checksum
for the received data and compare it
to the provided Checksum that was sent over the network.
If those two values match,
this indicates the data has not been tampered with
during the transmission and therefore,
integrity has been maintained.
However, if those values are different,
this suggests some kind of alteration or corruption
has happened to that data and integrity has been breached.
Fourth, we have Access Controls.
Now, Access Controls ensure
that only authorized individuals can modify data,
and this reduces the risk
of unintentional or malicious alterations.
By setting up stringent permissions,
organizations can ensure that only authorized individuals
have the capability to modify their data.
This not only prevents outsiders
from tampering with the information,
but also restricts internal users to their respective roles
and therefore, significantly reduces the risk
of both unintentional mistakes and malicious alterations.
Now, fifth and finally, we have Regular Audits.
Regular Audits involve systematically reviewing
your logs and operations to ensure
that only authorized changes are being made,
and any discrepancies are immediately addressed.
By performing regular audits, we can detect if any changes
to the system or its configurations have been occurring
that might affect our data or system's integrity.
So remember, Integrity ensures our data remains consistent,
accurate and trustworthy throughout its lifecycle.
Methods like Hashing, Digital Signatures,
Checksums, Access Control and Regular Audits,
are really your go-to tools for ensuring
that the information maintains its integrity,
by remaining unaltered from its original format.
It's also important to associate
the terms Integrity and Hashing together,
because Hashing is probably the number one way
that you're going to see the maintenance of Integrity
for all of our data, our software, our systems,
and our networks out in the real world.
In an era where data drives
so many of our business decisions,
maintaining data integrity is not just a good practice,
it's necessary for maintaining trust
and smooth operations within your organization.