Part II of Trusted Associates Bill Bosen’s three-part series: Can Your Computer Keep a Secret?


Part II: Software Solutions for Encrypting Data at Rest
By Bill Bosen

Nearly all computers have at least some sensitive data stored on their hard disk, and many have made securing this data a top priority. To help organizations in their quest to understand and find appropriate solutions for safeguarding data at rest, we have written a series of articles on this important subject. The first of these articles, called “Hard Drive Passwords Easily Defeated –the truth about data protection,” focused on the strengths and weaknesses of computer access control. That initial article addressed the lock on the front door so to speak, including the BIOS, the operating system, and hard disk access control systems which require users to authenticate themselves before gaining access to the system or hard disk.

In the second installment of this series, we will be focusing on the next layer of protection – the actual encryption of the data on the disk drive(s). To be more precise, this article covers software based encryption. Our next article, part III, will cover hardware based encryption solutions.

Importance of encryption

While access control mechanisms like the authentication screens presented by the operating system, BIOS or hard disk access control systems do offer basic protection, in most cases they are relatively easy to defeat. For example, all one needs to do is remove a disk drive and mount it in a system where the ID and password is known in order to defeat BIOS or operating system protection and gain access to data on the hard disk.

Encryption on the other hand, if implemented correctly, provides a great deal of protection. Since the actual data is encrypted, an attacker gains nothing by mounting a disk drive in another system because he will still be unable to read any of the actual data. So even if other access controls fail or are broken, the data on the hard disk remains protected.

Another compelling reason to encrypt data is to protect it when the storage device where it resides is no longer of use. When PCs and servers are eventually disposed of or repurposed for reuse, data that has been encrypted is protected and the expense of overwriting the data or physically destroying the device can be mitigated.

Finally and perhaps most important for many organizations, there are numerous laws and regulations that require sensitive data to be encrypted. The consequences of being out of compliance can be life threatening to an organization. The damage done by the theft of just one laptop or disk with sensitive data can easily be millions of dollars.

Overview of software based encryption solutions

Software encryption, the focus of this article, falls into two basic categories, device-oriented systems and file-oriented systems. Each has their advantages and disadvantages.

Device oriented systems are tied to a specific device like a disk drive or a USB drive. The encryption process is typically within the device driver. Once the user has proven their identity any and all data written to the device is automatically and transparently encrypted, and any data read from the device is automatically and transparently decrypted. Unless the user can provide a correct ID and password, the decryption will not function and the data remains encrypted and unintelligible. However, because the encryption is dependent on the device itself, data copied off of the device and stored on some other medium or system is not protected unless the target device or some other process re-encrypts the data.

Device oriented full disk encryption (FDE) products have been available in software since the early 90s. Recently, other types of device-oriented encryption products have begun to emerge. They are similar to hard disk encryption systems, but these new generation of device encryption products encrypt data on USB drives, CDs, DVDs, and other medium.

File-oriented encryption systems, on the other hand, operate at the application layer. One or more applications encrypt individual files within the applications themselves. When the file is saved on the hard disk or any other medium, it has already been encrypted. Because the encryption occurs in the application, it is not dependant on a device and therefore remains protected wherever it goes. A file encrypted in this manner can be stored anywhere, or sent across a network and remain secure.

File-oriented encryption systems take many forms. They can be manually invoked utilities that encrypt specifically selected files, or they can be tightly integrated within other applications. For example, they may execute as plug-ins within Microsoft® Office, and can be configured to automatically encrypt any files that contain specific words like “confidential” or have data that looks like credit card numbers, social security numbers, etc. As another option, they can encrypt any file being saved in a specific folder which has been specifically designated for secure files. Because of this latter feature, file oriented encryption systems are sometimes referred to as encrypted file and folder systems.

File oriented encryption systems have also been around a long time as individual utilities. However, enterprise versions capable of central administration and sharing secure files among multiple different groups are now emerging on the mass market.

Key solution attributes

When contemplating an encryption solution, there are a number of key attributes that must be considered. Not only must the solution meet your security needs, it must be as automatic, transparent, and as easy to install and use as possible or it won’t get used properly. Here’s a brief description of the more important attributes to look for when selecting an encryption solution for data-at-rest. Important key attributes include:

  • Depth of security coverage – Does the system encrypt all the data that could be sensitive in nature? Be careful in situations where encryption is done within applications (file oriented systems). If any data could potentially be generated outside of those systems, it will not be encrypted.
  • Is the security provable? If your organization has a disk drive stolen or otherwise breached, unless you can prove that the data has been properly encrypted you will have to treat the incident as potentially stolen data. That means you may have to notify the authorities and any potential victims. Make sure the system is provable, which generally means that the protection is not subject to human weaknesses such as forgetting to manually invoke encryption, or intentionally leaving sensitive data in the clear. It is also important that users cannot remove or disable the security without authorization.
  • Strength of security solution – Not all solutions are equally secure. In particular, the method used to protect the encryption key is vitally important.
  • Performance – Encryption involves very heavy and complex processing. Because software-based solutions use the CPU for this processing, there can be a significant impact on system performance, particularly when large files are being processed. Make certain that the solution you choose does not create a noticeable impact on performance or there will be strong resistance from users and the IT department.
  • Ease of Deployment – The effort required to install software based encryption can be quite substantial. In addition to the normal challenges of installing enterprise software on multiple systems, it can take several hours to encrypt the data on large disk drives. The better packages allow the user to continue working during the installation process, but full backups are always recommended and anytime one scrambles the data on their PC there is some amount of fear and trepidation.
  • Ease of Use – To be easy to use, an encryption system must be automatic, fully transparent, and not slow the user down in any way. Software-based Full Disk Encryption systems are automatic and transparent but may negatively impact performance, depending on the hardware configuration and other factors. File-oriented solutions may be automatic to a degree, but they tend to require a substantial amount of user involvement.
  • Ease of Maintenance & Management – The cost of ongoing maintenance can be substantial for some systems. Solutions that encrypt everything are easier than systems that require ongoing policy decisions as to what to encrypt. Of course stability of the product is also critical. An encryption system that is not 100 percent robust can be disastrous.
  • Ability to use encryption hardware – Some of the software encryption packages can take advantage of encryption hardware if it is present on the machine. This can make a dramatic difference in the performance and security of the overall system.

Why consider software encryption?

Encryption done in software has both advantages and disadvantages. As far as advantages, the primary benefit is that software-based encryption systems are not dependant on specific hardware. File-level encryption systems for enterprises are essentially limited to Windows environments, but basic stand-alone file-level encryption systems are available for virtually any platform. As for systems that encrypt everything on the disk, there are good software FDE systems available for any version of Microsoft Windows from Vista backwards for several years. Since there are very few hardware requirements, most organizations can use software encryption to protect their entire installed base of desktops and notebook PCs without purchasing new machines or any hardware at all.

Another advantage of software solutions is their maturity. Although enterprise versions of file-level encryption systems are still coming of age, software-based Full Disk Encryption solutions have been around for many years. They are stable and feature rich with support for things like central auditing and two factor or strong authentication devices including smart cards, cell phones, hand held tokens, USB tokens, and fingerprint authentication.

Software solutions also provide an essential management infrastructure. For example, most software-based Full Disk Encryption solutions come complete with an entire enterprise management system. This includes features such as:

  • Central help desk features to help users who forget their password or need help authenticating to the system.
  • Central key management systems to securely generate and store keys to allow supervisors to recover data when necessary.
  • Support for a variety of deployment scenarios such as tight integration with Microsoft Management Console, Active Directory, and software distribution systems.

This management infrastructure is also evolving to manage multiple types of encryption, all from one central administration system. The better systems are starting to include management support for both full disk-encryption and file-level encryption as well as encryption for other devices such as USB flash drives, CDs, DVDs, and other forms of removable media. A few systems such as those provided by Secude and Wave Systems can even take advantage of hardware on encrypting hard drives if it is present on the system. Other vendors are also adding this ability.

The downside of software encryption

Doing encryption in software also has a number of shortcomings. Software encryption tends to be an add-on. It is generally installed after a user purchases a notebook or PC, and unfortunately it can be a significant set-up process. Even in the best and smoothest of circumstances, deploying a large amount of add-on solutions to individual client PCs and laptops is a lot of work for the IT department. The better FDE vendors have done a marvelous job at making the installation process extremely reliable, and amazingly the users can continue working during the encryption process. However, it still takes a long time for each machine. Encrypting everything on a large disk can literally take hours, not counting the full back up that should be done prior to the install. As an additional challenge, although probably undeserved, user resistance can be strong. It’s a frightening thing to have everythingon your disk scrambled, no matter how many times you are told it will be OK.

Performance can be another problem for software-based encryption. Encryption is a very processing (CPU) intensive operation and will impact the unit’s performance for any operations that involve a large amount of data. While users may not notice performance degradation for small data operations with common applications like Microsoft Office and email, they will be impacted for any operations where large amounts of data are being read or written. In our tests of several software-based encryption products, we saw a significant increase in the time it takes to access a 2.2 GB encrypted file. Performance impact varied by vendor, but ranged from 40 percent to 117 percent longer than the time it took to access an unencrypted file.

While we know of no incidents where a quality FDE system has been broken, encryption done in software that utilizes the general CPU is more vulnerable to attack than encryption done within cryptographic hardware. The most important security consideration for any encryption system is how the encryption key is protected. If it can be stolen, the attacker can decrypt the data. The better software solutions don’t store the key on the system, or at least not the entire key. The complete key is usually generated from a secret value the user enters such as their password. This approach makes it quite difficult although not impossible for an attacker to break the system. However, once a valid user has authenticated themselves and the encryption key has been generated, a Trojan or other malicious process could conceivably intercept the encryption key and deliver it to the attacker. When encryption is done entirely within cryptographic hardware, no other process can access the key, so it is much less likely to be stolen. While software based encryption is strong enough for most uses, organizations that require the highest degree of security should opt for a hardware-based solution.

Approaches: Full Disk Encryption and File Oriented Encryption

When looking for a software-based encryption solution, there are a couple of different approaches. For simplicity and depth of coverage one may wish to use device encryption and encrypt everything on the disk. However file-level encryption is useful if files must be protected when they are copied or moved off of the disk. It’s important to note that you do not need to choose one approach over the other. Both device encryption such as FDE and file-oriented encryption compliment each other quite well and can coexist just fine. The common practice of defense-in-depth, where two protection mechanisms are in place simultaneously, also applies to encryption. An interesting analogy would be the locked safety deposit boxes within a secure bank vault. Both serve important needs. Here are some guidelines regarding the two approaches.

Device encryption such as FDE is easier to deploy than file-level encryption. With FDE the policy is quite simple: everything on the disk gets encrypted. With file-level encryption, one could potentially get bogged down trying to determine what files should be encrypted, and making sure they get encrypted. Unfortunately this process is never ending. While a file-level approach gives you more flexibility, it is also a lot more complicated.

Device encryption does a great job protecting data while it’s on the device, but the data is protected only while residing on the device. As soon as it leaves the device it is no longer protected unless some other process re-encrypts it. With file-level encryption, the file remains encrypted wherever it is sent or copied. A file can be sent as an attachment, backed up on tape, copied to a USB flash drive, CD or other removable media and it will remain encrypted. File-level encryption makes it possible to do group collaboration and securely share encrypted files across networks and various devices. Since FDE decrypts the data as it is read from the device, it does not offer this level of protection.

With device level encryption, once an authorized user has activated a device by authenticating themselves, all data on the device is automatically decrypted for any process that can access it. That makes it very simple for all processes to access the data without having to perform subsequent authentication or manually invoke decryption. However, that means that any malicious code running on the machine can also access the data on the device.

Because of the added complexity, file-level encryption solutions have not evolved as rapidly as FDE solutions. File-level encryption solutions are sill relatively new and immature in comparison. While FDE systems have been proven in large scale production environments for many years, enterprise file-level encryption is still really in its infancy.

Overall, while file-level encryption has important advantages and in the long run will become valuable and probably coexist with device-level encryption, today the file-level solutions are generally just too immature for most large organizations. They are however evolving rapidly, so stay tuned, but for now, we recommend FDE in most instances.

Summary conclusions

The risks to organizations of losing confidential data stored on hard drives in PCs and servers cannot be ignored, and while minimal levels of security can be obtained via access control mechanisms provided by the BIOS, operating system, or a hard disk password, most organizations require the added security of data encryption.

When looking for the best solution for encrypting stored data, it is usually more advantageous to do the actual encryption in hardware. However, hardware based encryption is not always feasible or possible. For example, software based encryption may be the best option for safeguarding an installed base of PCs and notebooks because it is less expensive than adding or upgrading the necessary cryptographic hardware.

As far as file-level encryption versus device encryption, although file-level software encryption offers persistent protection with encryption that is not dependant on a specific device, it can be complicated to deploy and manage. Device-oriented full disk encryption on the other hand is a very mature and proven solution and is much simpler to deploy and manage. It also has the added bonus of encrypting everything on the device. Bottom line:

  • Given the solutions currently available in the marketplace, for most organizations, the installed base is probably best protected with software-based full disk encryption.
  • As organizations replace their old PCs with new ones, whenever possible they should switch to hardware-based disk encryption by deploying PCs that come equipped with encrypting disk drives.
  • Ultimately, encryption management software will evolve to utilize hardware to perform multiple layers of encryption, including both file and device level approaches, all from one centrally managed system.

Watch for our next article, which focuses on these next generation encrypting hard disk drive devices.

Sample leading software encryption vendors:

GuardianEdge
http://www.guardianedge.com/

Checkpoint Pointsec
http://www.checkpoint.com/pointsec/

Microsoft Bitlocker
www.microsoft.com

PGP
http://www.pgp.com/

SafeBoot Mobile Data Security
http://www.safeboot.com/

Secude International AG
http://www.secude.com/

Wave Systems
http://www.wavesystems.com/

Utimaco
http://americas.utimaco.com/

Bill Bosen is a partner with Trusted Strategies research firm. Trusted Strategies is a research and advisory firm focused exclusively on IT security. We are information security market experts regarding industry trends, technologies, products, and vendors.

This e-mail address is being protected from spambots. You need JavaScript enabled to view it
ww.trustedstrategies.com

Also see:
Part 1: Hard Drive Passwords Easily Defeated
Part 3 (upcoming): Next-Generation Encrypting Hard Drives