TechKnowSurge
CompTIA Security+ 1.4 ISC2 CISSP 3.6 NIST 800-53 SC-13 EC-Council CEH 9.1 NIST CSF PR.DS-01 NIST CSF PR.DS-02 NIST CSF PR.DS-10 CompTIA Security+ 3.3
VideoSecurityFree

Encrypting Data

Encryption protects data confidentiality by transforming plaintext into unreadable ciphertext that can only be decoded with the appropriate key. This coverage spans encryption at rest, in transit, and in use, along with the performance trade-offs involved in choosing the right level of encryption granularity.

Complete this video to capture a CTF flag worth 1 point.

About this video

Encryption protects data confidentiality by encoding information into an unrecognizable form, called ciphertext, that can only be restored to its original plaintext state through a corresponding key or decryption process. It is one of the most widely applied security controls across modern IT environments, but it comes with a performance cost: encoding and decoding data consumes processing resources, which means organizations must carefully weigh how comprehensively they apply encryption against the operational overhead it introduces. Hardware-based encryption can offset some of that overhead, but the balance between security and performance remains a central design consideration. For data at rest, encryption can be applied at varying levels of granularity, from full disk encryption down to individual database fields. A database server might host multiple databases, each containing multiple tables with multiple columns, and the decision of whether to encrypt at the database, table, or column level depends on the sensitivity of the data and the acceptable performance impact. The same principle applies to storage, where encryption can target an entire disk, a specific partition or volume, individual files, or data blocks. Choosing the appropriate level requires understanding both the threat model and the system's capacity to handle the added processing demands. Beyond data at rest, encryption must also address data in transit and data in use. Encrypting data in transit ensures that information moving between systems or across networks cannot be intercepted and read, such as when credentials or form submissions are transmitted over a connection. Encrypting data in use is more complex and involves keeping data encrypted until the precise moment it is processed, then immediately re-encrypting it afterward. This approach is especially relevant in multi-tenant cloud environments, where shared hardware creates a potential risk of one customer's workload being exposed to another through memory or processor vulnerabilities. A complete encryption strategy accounts for all three data states and integrates encryption decisions into the broader architecture of how applications are built and how data flows through a system.

What you'll learn

What's covered

Encryption & Data Confidentiality

Aligned to

CompTIA Security+
1.4 Explain the importance of using appropriate cryptographic solutions.
3.3 Compare and contrast concepts and strategies to protect data.
ISC2 CISSP
3.6 Select and determine cryptographic solutions
NIST 800-53
SC-13 Cryptographic Protection
EC-Council CEH
9.1 Cryptography
NIST CSF
PR.DS-01 The confidentiality, integrity, and availability of data-at-rest are protected.
PR.DS-02 The confidentiality, integrity, and availability of data-in-transit are protected.
PR.DS-10 The confidentiality, integrity, and availability of data-in-use are protected.

Key terms

Encryption
The process of converting readable data into an unreadable format using an algorithm and key to prevent unauthorized access.
Confidentiality
The principle that information is accessible only to those authorized to access it.
Plaintext
The original, readable message before it has been converted into a hidden or encrypted format.
Ciphertext
The scrambled, unreadable output produced after plaintext has been encrypted using a cipher.
Cipher
An algorithm used to encrypt and decrypt data.
Data at Rest
Data that is stored on a device or medium and not actively moving through a network, which can be encrypted at the disk, partition, volume, file, or database level.
Data in Transit
Data that is actively moving across a network or communication channel between two endpoints, as opposed to data sitting on a storage device. Protocols such as TLS are commonly used to encrypt data in transit so it cannot be read if intercepted.
Data in Use
Data actively being processed or accessed, such as data moving through a processor or physically reviewed, which must be secured against unauthorized exposure.
Decryption
The process of converting ciphertext back into readable plaintext using a cipher and key.

Topics

Cryptography Data Encryption Plaintext Ciphertext Data At Rest Data In Transit Data In Use Encryption Keys

Transcript

A big part in how we keep data confidential is by the use of encryption. Encryption is used heavily nowadays. We use it in a lot of different scenarios.

Encryption is when we take something and encode it. We turn it into something else, something that's unrecognizable, and the only way that you can turn it back into its original form is by having a key or some sort of process that you go through to decode that. So in this case right here, we have the plain text secret and we're going to turn it into a cipher text, and that cipher text is then going to be unrecognizable by people unless they know how to decode it.

Now encryption has a cost as well, and the main cost of it is just performance, that it takes a while to encode things and then if you want to use it you have to decode it. So there's a performance issue if you're constantly encoding everything, or if you're encrypting everything. So we have to balance out the difference between performance and security.

At What Level Do We Encrypt?

Performance is one consideration when it comes to where we encrypt things, at what level do we encrypt things. We can encrypt things on a large scale or on a very minor scale. And if we encrypt things on a large scale, it could mean that we're going to have a performance hindrance with it. Or maybe it's all done with hardware, and all the encryption and decrypting is done on the hardware, and we might actually have some performance gains in that scenario.

So we could encrypt the whole disk. A disk is made up of partitions, or we can partition out a disk and have many partitions or volumes on a disk, so we could do it at the partition or volume level. Or we could do it on the file level, or on the block level. So we get to choose at what level we want to do this encryption on.

It's the same thing with databases. A database server could have many databases on it, and within those databases there could be many tables, and each one of those tables is going to have many different fields in them. And so the choice is going to be, do we want to do it on a database level and have a specific database that's encrypted, or do we want to do it on a table level and encrypt the whole table, or maybe we are just encrypting a column. So this would be a field in there, and there would be a certain type of data in there, maybe it's like an address, and do we want to just encrypt that one field that is right there for all of our users, or whatever data is being encrypted. So we could do it here again on a very large scale or a very small scale, depending on how granular we want to get with that and how secure we want to be and the performance hit.

The States of Data

So those are all examples of encrypting data at rest, but we also know we want to encrypt data in transit and in use as well. These are the different states of data, and we need to look at encryption in all of these scenarios right here.

A good example of encrypting data might be when we're doing some sort of authentication. When you are sending data from one device to another and you want it to be secure, we need to encrypt that data. So in this case right here, we have maybe some sort of form that we're filling out, and then we are going to encrypt that form and send the data across so no one can see what that form has involved in that. So that's an example of encrypting in transit.

There are times we may want to encrypt data that's also in use or in process. Essentially what's going to happen is this data is going to stay encrypted up until the point in time where it's actually being used. It will be decrypted, processed, and then encrypted again.

An example of where we might use something like this is on shared resources. There are times when you are using services like up in the cloud, where multiple tenants, multiple clients, multiple customers are all using the same piece of equipment. And for the most part you can't see each other's data, but there are times when that data can be leveraged if there's some sort of vulnerability in the system, that one client could see another client's processing and what's happening on the processor, or what's happening inside the memory. And so to guard against that, what we could do is we could decrypt things at the last second and then encrypt them when we're done with it. So what would happen is the encrypted information would get put onto the memory and then be sent to the CPU. The CPU would decrypt it, do the processing, encrypt it, and then put it back on the memory before it gets sent out to wherever it is going.

So essentially what we want to do is we want to look at the whole process of where data lives and where data is at. Data is at rest, and it goes into in transit, and then in use, and then maybe it goes in transit again and then in use again. Where do we encrypt this traffic and where do we decrypt it? It's going to have to be part of how we engineer our applications and how things are processed and wherever our data lives.

About TechKnowSurge

TechKnowSurge builds IT and cybersecurity professionals through hands-on, concept-first training built around real understanding — not memorization. Free interactive tools, structured programs, and 25+ years of real-world experience, all in one place.

Explore free tools and programs →