Resisting the PGP Whole Disk Encryption Craze
alaederach writes "I run a lab in a non-profit academic life sciences research institute. Our IT recently decided it would be a good idea to use PGP whole disk encryption on all of our computers, laptops and servers and picked PGP's suite of software. The main reason is that a small subset of our researchers work with patient information which we obviously are mandated to keep confidential. My lab does a lot of high-performance computational work (on genes from Tetrahymena, no humans here) and I am concerned that the overhead of complying with our ITs new security policy will be quite detrimental to my research program. For example, dynamically reallocating a partition on a PGP encrypted disk is apparently not possible. Furthermore, there is some evidence that certain forms of compression are also incompatible with PGP whole disk encryption. Interestingly, it is hard to find any negative articles on PGP, probably because most of them are written by IT pros who are only focused on the security, and not usability. I therefore ask the Slashdot community, what are the disadvantages of PGP in terms of performance, Linux, and high-performance computational research?"
Truecrypt Whole Disk Encryption has less than 1% over head. I can't see the problem. Surely the patent and IP information security outweighs this minimal overhead.
Whole disk encryption is excellent for security, but it will bog you down in disk access times. Depends on a lot of things, but reading and writing files can slow down up to 50%, but usually the slow-down is much less. If you are doing something that involves a lot of disk access and it doesn't need to be encrypted, then create a special, non encrypted partition for that.
Write your own Choose Your Own Adventure. http://www.freegameengines.org/gamebook-engine/
Perhaps one answer for storing data securely, but allowing it to dynamic expand is to create a PGPDisk that is dynamically expanding. Then, the data in can be safe, but the file can be moved to bigger RAID arrays if need be.
An IT policy is a general rule which has to be interpreted and adopted. It's not supposed to be followed by the letter. Ask your IT department what they want to accomplish with the policy, and how you can help them accomplish that without having your work ruined.
Surely what is required is to isolate the sensitive information, so that it can be protected.
Blanket encryption may impress some people, but it hardly solves the problem.
Details of how to implement isolation and protection would depend on the data, and which subsets are used in the calculations.
Stephan
http://stephan.sugarmotor.org
You've got a good case for an exception from this policy. Just follow the exceptions process and have your management sign off on the risk. Case closed.
Do you have any numbers to back this up or are you just repeating common knowledge from decades ago?
TrueCrypt claim a 1% overhead. With multi-processor machines, I doubt that's even accurate anymore.
How we know is more important than what we know.
what are the disadvantages of PGP in terms of high-performance computational research?
O(1) ;)
Here's a brief experiment I ran: dd if=/dev/zero of=/home/jonas/zeroes bs=1048576 count=1024; that is, writing one gig of zeroes to a disk encrypted with ubuntu's disk encryption from the 8.04 alternative installer.
I saw a roughly constant ~30% CPU usage from kcryptd, going from 25% to 35%, on a 2.13GHz Pentium M (in a thinkpad t43p). So I have 1.5 GHz worth of cycles left.
Hard disk write speed was about 30 megs per second, but oscillating in big leaps. I did my observations with conky, sampling in one-second intervals, but conky is known to sometimes merge two samples. That's probably not the only factor, disk writes are most efficient when clumped together into one big (much preferably sequential) write, so I'd assume the kernel does this.
You haven't told us what your disk usage patterns are. But if you're doing one big read, one big computation, and then one big write, there's going to be zero impact (almost): there was lots of CPU capacity left.
Another low impact scenario is that you have a server that reads work units from disk, hand them to clients, gets results and writes the results back [I assume clients don't need any disk activity]. There you can read a bunch of work units in advance while the server is idle, then hand them out instantaneously when needed.
Aside: bugger, fault in my experiment: I didn't look at the CPU usage of kernel code that's not in the process table. Take what I say with a grain of salt.
But: do the measurement in your own world. My software, hardware and artificial measured usage pattern may differ from yours, subtly but enough that my conclusion doesn't transfer. Be scientific about it :)
It took 2 days to encrypt an entire 160gb ide hard disk with a K6-2 400mhz processor, and afterwards the computer could only server files at about 400k per second. With a 2ghz processor the performance difference is negligible, and could serve at full speed with only tiny cpu usage. So I think full disk encryption overheads is irrelevant on modern cpus.
As for not being able to resize a partition, well that's good because if your hard disk is to contain anything of importance then you would have to be inept to resize partitions and expect data to maintain it's integrity, no matter what the file system format or brochures on partitioning programs try to tell you.
in these type of departments all the computer are on all the time anyways and whole-disk encryption is 100% vulnerable to hard-boot attacks. It may be remotely useful on laptops but for desktops its entirely useless
if you want to actually protect your data you need to encrypt only whats sensitive and only mont it when neccicary. also PGP is closed source and what are you going to do if they stop supporting, use truecrypt or LVM, etc. Also dont neglect network protection where the real data is stolen
Furthermore, there is some evidence that certain forms of compression are also incompatible with PGP whole disk encryption.
What do you mean by "incompatible"? At first glance, you seem to mean that there are certain file formats, making use of compression, that cannot be stored on the encrypted drive. That certainly can't be true.
Swedish plasma phys. PhD student; MSc EE; knows maths, programming, electronics; finance interest; seeks opportunities
Sorry, they "claim" that.
But on my core 2 2.4 Ghz machine, windows boottime more than doubled after encoding the system partition.
Yeah, i can get 100Mbyte/s linear reads and writes.
But for some reason, random or semi random access get hosed quite a bit.
Maybe it messes with the comand queueing, or the internal prefetch alorithmns, i dont know. Never had a problem on data partitions, but the performance impact on the system drive was enourmous (up to the point that even with 6Gbyte RAM, it wasnt fun anymore)
Ah, and i forgot one thing: the 100Mbyte/s is nearly 100% cpu load on both cores. I dont know where you get 1% overhead from... Even the in-memory benchmark only gets about 150Mbyte under full load on two cores.
S
HI O WISE PRINCE. WHT TOOK U SO DAM LONG?
Do you have any numbers to back this up?
Here's some numbers: http://ask.slashdot.org/comments.pl?sid=1012285&cid=25566509
Make of them what you will :)
Their product doesn't seem to run on Linux.
There is better, cheaper F/OSS software to do the same thing though; Ubuntu and FC9 already include a whole disk encryption option at install. (It's better because it's much less likely to have an NSA back door, although obviously never completely certain).
As for performance, when I tried it (luks encryption) on a desktop machine, it wasn't noticeable; but I wasn't moving hundreds of gigs around.
The question now is what are they trying to protect. Encrypting laptops is sensible, and in fact, given how easy & cheap it now is, it's rather stupid not to do it. On desktop PCs, it's not that clear. Whole disk encryption will only protect you against someone with physical access to the machine turned off. It certainly won't protect you against trojans or browser based vulnerabilities. So the question is, do random strangers roam your offices?
And encrypting servers/clusters? That's just silly; unless you expect the men in black to storm in your building.
Positive:
- added security
Negative:
- worse performance
- you may forget the password (it has happened before.)
- has to be mounted manually (or at least type in password each time you need access to the data.)
- it's painful to backup
- it's painful to do a proper file systems check
- if the discs are somehow taken by the authorities you might have to give up your password (or be sentenced for whatever they think you have on the discs.)
- discs are only secure if they are not mounted.
There are a few negative sides, but usually they make up for the positive, i.e. if you really need the security then of course this is the way to go. Also remember to secure the other aspects of the machine, like physical access (including fire/theft), software protection (anti malware and virus) and network protection (firewalls, etc.)
we're selling a different solution, but some remarks from our real life experiences:
Sincerely yours, Martin
You cited an extremely brief review about a 1.0 product on Windows 95 as evidence that 'there might be problems resizing a partition'?
Whole disk encryption or an encrypted volume should be mandatory for your confidential data on a laptop. For windows, use PGP, it's fine, or use truecrypt, which is fine also.
For linux, use a dm-crypt volume or (again) truecrypt if you care about moving your data to windows - you'll be within the spirit of the security policy and won't notice the difference.
You're wasting your time, however, putting disk encryption on a server thats in a locked computer room or data centre - no one will be around to decrypt the volume after a reboot or crash, or you'll sticky tape the passphrase to the machine, so if it's stolen you are still hosed.
Don't leave servers in public areas though!
"Marketing is not a science even if its an Open Source project"
Run some tests on a drive. Run TrueCrypt, re-run the tests, look the difference in CPU load and performance and then try and work out where the 1% number comes from.
Personally I think its based on averaging time across when you aren't using the machine.
An Eye for an Eye will make the whole world blind - Gandhi
If you do encrypt why use PGP? It costs money and its proprietary. Use Truecrypt which is free and open source, does whole disk encryption which according to this can sometimes actually *boost* performance. I use Truecrypt daily and its awesome. http://en.wikipedia.org/wiki/Truecrypt#Performance http://www.truecrypt.org/
TrueCrypt claim a 1% overhead. With multi-processor machines, I doubt that's even accurate anymore.
Yeah - with version 6 of TrueCrypt, they introduced support for multiple cores, with almost double speed on a dual core system over a single cores system.
I use a TrueCrypt encrypted USB disk to store and run VMWare virtual machines and I see no difference in speed over using a non-encrypted USB disk (same model).
The numbers on my machine are about 20% slower read and 30% slower write. I'm using 256 bit LUKS with serpent-xts-essiv:sha256.
Might I also suggest hardware encryption? Seagate (and others I believe) make drives that do AES128 (good enouhg for this sort of thing I believe) in hardware. Zero performance hit. No software required. Set a drive password and go.
93rd rule of Slashdot: No matter how obvious my sarcasm is, my comment will be taken seriously by someone.
Current optimized kernel versions of AES manage about 50mb to 60 mb/s on a 3ghz cpu. This _maxes out_ the core on which the IO thread is running on. This is not a linux-specific quirk, but just plain mathematics. AES is fairly expensive, and neither blowfish nor twofish are faster by any meaningul value. If you're not blessed with a multicore CPU, full disk encryption will most certainly crawl your whole system down when you do anything disk-serious; and even with multicores, your system will be sluggish in the worst of times when you do heavy IO (think: the keyboard irq handler not caaaaaaaaattccchhhhing up.)
You can have yourselves one of those PCI encryption addon cards (Soekris sells some), but their bandwidth is very limited as well (155mbps, last time I checked).
Consider carefully if you want privacy, or easy throughput. You can't have both right now.
I've worked with people during various research projects who decided to encrypt, for some very good reasons. I've had one admin die, and one researcher have a stroke. In both cases they had information necessary for the project that nobody else could get to, even when their hard drives were retrieved. The results are that after several years, the stuff is still sitting somewhere unusable because the people who attempted to get to it were stymied. Enforcing PGP on an entire network could multiply this problem. I would think that enforcing PGP on users not needing it would be a royal pain for them.
What we've done and thought of since:
Have only those with sensitive information encrypt. Have them work on machines not connected to the net. If they need net access, have them connect only for the time necessary, and mandate pre-encryption back ups prior to connecting.
Preferred, but resisted, keep the sensitive machines off the net and have the researchers connect to the net via a different machine without the sensitive info on it. If they want to use it for transfers of such info, make them use sneakernet between the sensitive and connected machines. In this scenario, they only need PGP for what they're going to transfer to the connected machine and thus to outside. Both admins and researchers expect full connectivity throughout their net, but the best security is a nackered line.
I use the sneakernet method exclusively. What I transfer when necessary is hundreds of MB to tens of GB of data. It takes me 10 to 30 minutes to encrypt, burn the data to DVDs and carry it to the connected machine. Like most researchers, I'm busy and don't want to spend my time doing this, but I have assistants I can put the task on.
"I may be synthetic, but I'm not stupid." -- Bishop 341-B
There are several reasons why a policy of having all disks encrypted is bad:
1. Sensitive data should not be stored on a computer that can be carried away or easily accessed, with or without encryption.
2. Blanket security measures just means that the employees will find ways around them which usually means that you probably end up with bigger security problems.
3. Failing or failed disks goes from a serious problem to a critical problem for recovering data.
4. If you are running I/O "happy" software you are going to take a perfomance hit.
5. It's not a "green" solution since the encryption is done in software and the computer is going to use more power.
Oh, and let me re-iterate: Sensitive data should not be stored on a computer that can be carried away or easily accessed, with or without encryption. Just look on how MI5 left laptops all over the place.
The policy we use when working on sensitive data is that it's all stored centrally with rigorous security measures for accessing it and the only way to access the data is through a Sun Ray thin client. That way we minimize the risks for electronic information leakage, ie. someone mailing information etc.
--- Reality doesn't care about your opinions, it happens anyway and if you are in the way you'll get squished.
My concern with encrypting an entire disk would be fault tolerance. If a sector goes bad on a non-encrypted drive, you might lose a file. If it goes bad on an encrypted drive, do you risk losing more data or even the entire drive?
Of course, one could say that's why you make backups. But presumably the backups would also be using encryption. Therefore, they would be susceptible to the same effect. If there is a greater chance of total data loss on each device, the chance of multiple device failures leading to unrecoverable data also increases.
That is interesting - if the overhead was really 1%, then why even bother with optimizations for multi cores?
The other thing I cannot understand is why anyone would want to run whole-disk encryption on a compute server. Even the US DoD machines that are used for classified research do not do this!
I'm not sure that assuming that just because somethings done in hardware, that it happens in zero time (or even near zero time) is at all accurate. A review I read of a different encrypted drive, said it was 5-10% slower than it's non-encrypted equivalent. It wasn't the Seagate you're talking about, but I doubt that even hardware encryption can do it instantly, so I think your "zero" is an exaggeration.
The FBI has already demonstated that it is extremely easy to bypass the security on those drives. I would not use them.
Nothing in the world is more dangerous than sincere ignorance and conscientious stupidity.
Linux software RAID 5 uses 2% CPU under heavy load.
Given the fact that you can always recover your data with any Linux livecd gives it a definite edge over a hardware raid solution where you need a similar model to read the data.
Presumably, he meant that encryption done on the disk itself is transparent to the rest of the computer. What you see is a comparatively slow hard drive, not the existing resources (ie, CPU) being eaten up by the encryption job and low disk throughput. Same all other dedicated controllers: you're offloading processing to a dedicated chip, so, for the purpose of generic programs on the CPU, you can assume there's no performance hit.
It may incur overhead but it need not. Consider that you don't need "instant" encryption, you simply need a device inside the hard drive between the computer interface and the actual storage medium that is capable of encrypting and decrypting at or above the drive's maximum throughput speed. This need not be "instant", it merely need be fast enough block-by-block to pass the data along. Consider that hard disks store data in blocks, not streams.
93rd rule of Slashdot: No matter how obvious my sarcasm is, my comment will be taken seriously by someone.
My workplace recently mandated that all laptops/portable media be encrypted. The impact to the system cpu usage isn't that significant to be honest, except when attempting to access, say, USB drives.
What's more important is the reliability of the disk itself.
As everyone knows, drivers shipped with laptops tend to be the first casualties of boot-sector-loading programs, like disk encryption and certain virus scanners.
Guess what happens when your encrypted disk can't be booted? You can't boot under a windows/emergency restore disk, because your partition is not readable. You can't boot off anything other than the hard drive. Guess what happens if the corruption doesn't allow you to run the encryption app's boot loader? Only solution is to format the disk.
Some of us who have been hit by this already have gone through the trouble of ensuring that any data we want to keep is stored on a shared drive, and that all work is done in a VM, which is occasionally uploaded to the shared drive as well. Since any given windows or driver-affecting update could kill our machine at any minute and make it entirely unrestorable, that's what's required.
So in essence, we're switching back to storing the media on a non-encrypted device because the loss of the data is more important than the security of the data.
This reminds me of the policies surrounding passwords I've seen at many companies; limiting the set of choices by making password creation requirements, and forcing them to change so often that people end up writing them down and leaving them on their desk. Defeats much of the purpose of having them in the first place.
"those drives"? as if they're all the same?
Come come. Software encryption is trivially vulnerable to a coldboot attack.
In any case I'd want to see a link, you can't lump all "encrypting drives" together as if they use the same method (unless they do).
Of course, I wouldn't really be surprised if it were breakable, I'd simply like to see support. Me, I use hard and soft becaues I'm just tinfoil like that. Don't even have anything to hide either, just like my privacy.
93rd rule of Slashdot: No matter how obvious my sarcasm is, my comment will be taken seriously by someone.
In the time you spent writing this post to Slashdot, you could have written a friendly letter to your IT department stating that you want some machines to not use this encryption, because these machines need maximum performance and anyway do not store any kind of personal information.
Every expression is true, for a given value of 'true'
The only protection that Full Disk Encryption gives is if someone physically gets their hands on the machine that they can not boot the machine and read its contents. This make perfect sense for laptops but makes little sense for any pertinently fixed location workstations. A laptop will physically leave the premises so it leaves itself open to theft, but a workstation (assuming you have some decent form of physical security) is much less likely to need this protection. Once a workstation is booted and the disk drive unlocked digitally then any hacker that gets a foothold on the system would then have access to it, so all that overhead of full disk encryption does no good unless the encryption is done per-user-session. When you need assess to the data you authenticate and start decrypting then, and keep it encrypted across the network. Yes, that data that you speak of should be encrypted, but you must encrypt it at the correct level to actually increase its security rather than just slowing down the machine. Anything short of that level of control and you are just fooling yourself into thinking you have protected the data. Fool-Disk-Encryption is not always the answer.
I work with the DoD on a classified program. You're right, we don't use encryption on any of our desktops, but the only reason is because you go through 2 security gates with guards, then finally enter a closed room with a giant digital lock with a badge swipe and keypad on the door, not to mention a giant separately digitally controlled deadbolt in addition to the digital lock.
You better bet your ass that we use whole-disk encryption on any machine that would leave the building, though (such as laptops). And those are unclassified!
The submitter is in a research institute. Some labs in that institute have patient data, and therefore require significant security like disk encryption.
His lab works with a protozoa, and has massive computational requirements. There will never be any patient data near his lab, because the people who work with patients are in a different lab (think different department in business). They do not need disk encryption.
You say Truecrypt has "1% overhead", PGP presumably has some other "% overhead." The submitter is asking what the details of that overhead for PGP, truecrypt etc are. Whats the CPU usage, memory usage? Are disk performance penalties constant, or are they dependent on average file size, number of files, format of those files, etc etc etc. "1% overhead" may hide whopping huge performance penalties for specialist users.
I have serious doubt we even need hardware RAID anymore with current CPU speeds.
At some point in time I believed the same thing. I did a test a few years ago to see if it's still worth it to bother with hardware RAID and configured an system with linux and software RAID.
This was for a fileserver in a high performance cluster so speed mattered. I don't have the exact figures here right now, but from what I remember two years ago the software RAID solution was between 7 and 15% slower. Once you start hitting the performance limit your processes hit I/O wait and your performance goes down. When I added LVM to that back then performance got shot to hell.
Now, it's not as bad as it seems, you still get decent performance (especially considering that your setup suddenly costs a lot less and can be done on commodity hardware), and with a fair bit of tinkering with blockdev and your read-ahead buffer (provided you have enough RAM, and your usage fits that particular pattern) you can still get some very nice performance.
The reason that we went with hardware RAID in the end was because hardware RAID isn't all that expensive, and the performance gains were noticeable especially on systems that have to run 24/7 at maximum throughput.
Again, for consumer systems and services where performance isn't a primary concern software RAID is an attractive option, especially if you're on a budget.
As for overhead with encryption: it would make a nice experiment but I think 1% overhead is very optimistic especially on a busy system. The only way to be sure is to compare your performance now to the performance when you encrypt the entire disk. The only time I tested truecrypt I got a throughput of 80MByte/s, while unencrypted I got 120MByte/s, and it's been a while since I tested this. Those truecrypt tests weren't finetuned either, it was basicly a test to see if it was easy to implement.
Anything I mention here has to be taken with a grain of salt since a lot of time has passed and a lot has changed since those tests.
If policy dictates that you have to setup X, the best way to become an exception to this policy is to prove that that policy is detrimental to your project and might end up costing a lot of money. Policy doesn't care about performance, but it cares greatly about money and lost time. Do your tests, do the math, add a pricetag and talk with your manager.
I wasn't even talking about desktops though, I was talking about compute servers! I have used a few clusters at LANL, and yeah they have separate classified and unclassified machines (or sometimes, sections of machines) that are partitioned off for classified work, but even the classified part never (as far as I know) uses whole-disk encryption. The original question specifically said that they were intending to encrypt their servers as well.
I used to have my laptop hard disk encrypted (using LUKS) but the hardware is getting pretty old now and I was starting to have problems with timing-sensitive applications such as audio and video. I think it was more bad timing interaction between the crypto layer, LVM, ext3 and the memory cache than raw throughput issues. I had a lot of layers and they weren't quite talking to each other right. Most of the time this was fine but occasionally it would add a tiny bit of latency to a disk request and audio would skip or video would jitter. It drove me round the bend.
Now, with everything else the same but minus the crypto layer things are much better. My laptop isn't as secure but then again I don't move it around nearly as much any more and don't have that much of worth on here anyway. Whether or not to apply something like this depends entirely on the situation.
My windows work laptop went from a fast little Duo Core fairly recent Dell which was quick but felt pretty damn cheap to a complete slow dog.
Not sure if its the software my company used or if its the disk IO overhead or what.
I do know after encrypting my entire disk I now get the PGP login screen immediately after the CMOS screen and before the Windows loader. No Problem.
The real problem is after that. The minute Windows loads up the disk starts churning and barely ever stops.
It just churns and churns and that little hd light just keeps going and going.
And everything just slows right down after that. Oh yes I am not the only one saying this either. Almost everyone reporting the same sort of results.
I actually thought it was a good idea - considering the amount of travel many deployment personnel in my company commit to in a year.
But do your research.
Try out whatever solution with your heavy hitting power users.
Don't settle for security that hampers performance.
ACK
I don't understand people who think that if they encrypt something it automatically becomes secure. For that data to be of any use to someone it will need to be decrypted and relevant people given access, so that destroys the notion of defacto encryption for security right there.
Encryption assumes that bad people are going to get access to your data whatever happens, and if you are using whole disk encryption then you really need to be seriously asking yourself who has physical access to your disks and where your data is located. That needs to be sorted out first, and once it is with data held centrally, I doubt whether disk encryption will be needed. You will probably need some form of encryption between the data and the remote users though. Using full disk encryption gives you something else to go wrong, is a variable in performance impairment you probably can't account, is something else to support for and will almost certainly be unnecessary once you've taken other steps first.
If you're keeping confidential patient information where it would be a Bad Thing(tm) if it ever got mislaid (even if it is encrypted, you don't want a computer with stuff on it lost I assume), in the name of all that is holy, please centralise your data and vet access. Stop people from passing around Excel spreadsheets of data, regardless of when and how it is encrypted.
I really am aghast as to how stupid people are about how and where their data needs to be protected. PGP is the wrong solution here, if you can call it a solution.
actually there's not much disk hit. The CPU loss does exist but isn't awful. I don't do anything that computationally intensive on my laptop.
I ran quite a few tests on my solution; I don't really care if some other software costs you 50% overhead and makes it impossible to use compression software [impressive kernel hack?], for me I lose about 20% write speed 30% read speed, and that's only for sustained read/write.
Day to day use? Didn't slow down a bit. Just as responsive. Battery life? Lost about 10 mins. CPU? Still idles at 0.00.
The cost to me was $20 for the encrypting hdd (that's the differential) and a bit slower for copying massive amounts of data. The upshot? When my laptop with all my financial documents, years of personal email, credit cards, and login credentials for root on some servers I'm responsible for was stolen last year, I lost no data and no one else gained any. The Debian ssl bug hurt me more than that loss (the laptop was actually insured).
The benefit to my using encryption is marginal. So's the cost. The hdd was a toy to play with. The software was a checkbox during installation.
So no, I wouldn't do this to a work computer unless there were a good reason (like being a laptop). But for my personal machine it makes a lot of sense.
93rd rule of Slashdot: No matter how obvious my sarcasm is, my comment will be taken seriously by someone.
A coldboot attack is trivial on paper and in a controlled environment, but not in real world scenarios.
First you need to get hold of an unattended machine that works and the disks are mounted. You can minimize the probability of that by enforcing certain policies such as never leaving the machine unsupervised, closing access to the computer's case or even locking the case, etc.
Trust me, cold boot attacks are not the greatest concern.
The saddest poem
Read the FAQ; drives usually have larger block sizes than the block size used for encryption, so there is not much difference.
I suspect that what he's talking about is the "Cold-Boot" attack, where a running computer is switched off (or maybe using the HW-reset switch) a very short time and then rebooted from a USB stick which dumps all memory to disk where you can still read everything. The memory dump is then analyzed to find encryption keys.
The only disk encryption software I have experience of (Check Point Full Disk Encryption (previously Pointsec for PC)) includes protection against that attack. I expect truecrypt and PGP does too though.
If you've got enough money lying around, you could get a Blet--er.. probably shouldn't use the code name. You could get a MR10is "VAULT" RAID adapter from LSI and IBM (for SAS and sata drives). I got to QA test it, put it through its paces. It seems to be pretty decent (now) and lets you fully, transparently encrypt your hard drives.
They're over $1,000, but if performance and security are that important to you it may be worth it. The VAULT only supports internal drives, but I think a morg--er.. I don't even know what the non-code name for those cards are... I think an encrypted version of the MR10m, which is for external SAS/SATA hard drive enclosures, is in the works.
Skiffy is Spiffy, but Ort is tort.
The drive is encrypted by a symmetric block cipher, which means you have blocks of data (typically 128 bits). So, unless you can recover to that resolution, losing the data within that cipher block means you lose that size of chunk of data. Depending on the type of file, you may lose important header information and end up losing that file, but that's no different than in an unencrypted file system.
The only thing you need to be careful of is backup of the volume header. If that isn't backed up and somehow gets corrupted, or it can't be restored, then you'll lose your information. From a pure probability perspective, this is pretty remote.
I've never heard of any HPC computer using disk encryption. Though compute intensive work need not be I/O intensive, it might very well be. If there is a real need to keep your data secure in your HPC environment, other measures that encryption are just as effective.
Frankly, encrypting everything is just not the best solution. Especially since encryption doesn't prevent legitimate users of making copies on non-encrypted media and loosing those. I guess your IT staff just found a cool new toy, but well, I don't see any traces of procedures to help safeguard the data.
My word of advice: get a security-officer to define proper procedures for data classification and data handling, really, all you need is procedure and well then maybe, pgp whole disk will play part in implementing a proper data handling procedure for data classified as C=extremely high.
If they have clusters that are processing classified data then those clusters can only be accessed from classified terminals which are physically controlled. I don't believe it's possible to partition a "section" of an unclassified machine to do classified processing. If classified machines are talking across an unclassified network then they've got Type 1 encryption devices sitting in between them and the network. Protecting classified resources is completely different than protecting unclassified resources since there's already mandatory physical security around classified machines.
It depends a lot on what you're doing with the data. If you've got a single-threaded process that's consuming 50MB/s and you can read 100MB/s from the disk and run 100MB/s decodes on the other core, you won't notice the speed difference. If you're doing random access then you will have, say, a 9ms seek time to get the data and then a few more ms to decompress it. If your process is already I/O bound (many scientific computing tasks are) then a 9ms decode per block will halve the speed of your computation.
The correct solution for this lab seems to be to borrow a policy from most defence-related sites. Have a secure and an insecure network. The secure network is allowed to access confidential data, the insecure network isn't. Run encryption on the machines on the insecure network, don't bother with it on the insecure machines. If one of the insecure machines is compromised or stolen then nothing confidential is lost.
I am TheRaven on Soylent News
If there is one HUGE problem with whole disk encryption it is recovery from disk failure. I'm not talking about your average Windows crash, PGP whole disk crypto is OK with that. I'm talking about a more massive failure which makes a mess of the NTFS indexing (Windows can do that too).
Normally, you have three options:
- restart and pretend you don't have a problem. Rather hard if you're missing a lot of files :-).
- permit CHKDSK to clean up the disk. In my experience that is a sure way to guarantee you will never be able to access your files in a sensible state ever again. No idea why, but Microsoft doesn't appear to have focused on file recovery with CHKDSK, more on returning the disk to a consistent state. Or maybe I need to do some RTFM :-)
- use another tool to access the disk which doesn't need a 100% clean NTFS layout to still scrape the files off. This can be typically done with a Linux live CD as the read-only NTFS mount of Linux is substantially less picky about how consistent the file system is. I introduced this idea to a large consultancy when I worked there and they have saved a good amount of data this way over the years.
When you use full disk crypto, forget about booting up another OS to recover data. Installing full disk crypto without adding a good backup solution (encrypted, of course) is asking for trouble.
What I like about PGP is the ability to use additional keys which are split, so you need to involve multiple people before you can backdoor it. However, it always makes me wonder if there isn't an additional key of which we don't know anything..
Insert
The overhead for this technology is during retrieving and storing data to the hard disk.
Unless you're running a database server on your personal machine the overhead is negligible.
Unfortunately it's not the security panacea they might think it is. The only thing it protects
you from is public disclosure of data from lost or stolen machines. If the machines are in
a protected access environment and aren't removed is probably a waste of time. It might
make good "security theatre" though. (it will make some people feel better even if it's worthless)
-- Programming with boost is like building a house with lego. It's a cool but I wouldn't want to live in it
USE THE CRYPTO
and yes, I'm shouting. This has been resisted for too long -- its kind of like garbage collection in programming systems.
The slow part is the physical drive. The crypto can be done FASTER than the physical drive, which means, at worst, that an additional processor needs to be assigned.
Indeed, the ONLY time I recommend crypto not be used is when dealing with US border. There I use file crypto on specific projects, along with dd to overwrite freespace and swap (before crossing).
But, if everyone (looking at US citizens) starts USING crypto, a fully encrypted laptop would not raise suspicion.
Just another "Cubible(sic) Joe" 2 17 3061
Transcript:
http://www.grc.com/sn/sn-133.htm
"Trying is only the first step towards failure." - Homer
The submitter is in a research institute. Some labs in that institute have patient data, and therefore require significant security like disk encryption.
Repeat after me: "The first line of security is physical."
If the servers are locked in a room with limited access (like, oh, say, 95+% of servers in the corporate world), then the probably not.
Data security is about securing the data using reasonable compensating controls. If no one can get to the disks, and those who can comprise a limited list of, say, trusted sysadmins, then it doesn't matter whether they're encrypted or not.
Requirements, if properly written, never specify implementation details -- the means. They only specify what is needed. How that is achieved is irrelevant so long as it the requirement is achieved completely.
So other than for devices that are not in access-controlled environment (like laptops or, in some cases, workstations), the need for whole disk encryption at most places is nil.
My blog
"Performance" is only a valid topic after addressing reliability.
In my company, we gave up on PGP's whole disk encryption after it consistently locked up (but was ok after many multiple reboots) on both Panasonic Laptops and Lenovo Laptops.
For the last few months, we have been trying TrueCrypt on the above brand laptops and also and HP desktops with no issues (as of yet).
If you load RAM by opening a bunch of simultaneous Windows and then run some mathematical loops that represent the kind of calculations your environment demands, you can then determine whether the overhead of TrueCrypt (or whatever) is worth the security benefit.
Good luck.
No matter where you go . . . there you are. - Buckeroo Bonzai
Live Long and Prosper - Thanks Leonard. You are missed.
The other thing I cannot understand is why anyone would want to run whole-disk encryption on a compute server. Even the US DoD machines that are used for classified research do not do this!
The DoD has tanks, fighter-bombers and men with M-16s to keep their servers secure. Encryption isn't as necessary for them.
LK
"Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
What about the handle leak that will render your machine unusuable if you leave it on overnight? Still waiting for PGP to fix it.
Considering the type of data that the OP is working with and the choice of the product to use, it may be that they fall under the government mandate of using encryption and that it HAS to be FIPS 140-2 approved. In this case TrueCrypt (as much as I like it) is not a valid choice, as it is NOT FIPS 140-2 approved.
Especially when we're talking about security.
If your requirement is "I need my disks to be encrypted", for example, and your requirements go no further than that, then you may find your vendor of choice decides to encrypt your disk by XORing it with "TheSuperSecretPasskey". Technically encrypted, but not very useful.
Think that's unlikely? That's how some eBook DRM schemes work.
In the US and Canada, there's something called FIPS 140-2 which describes in painful detail exactly what constitutes a "secure system", including what crypto algorithms may be used (right down to the RNGs). The idea is to make it so your typical government employee can distinguish between something that is actually secure, and something which is snake-oil secure, without a doctorate in math.
Likely the requirements in this case are coming from something like HIPAA, which I'm less familiar with, but specifies exactly how patient information should be treated.
I'm a big fan of TrueCrypt, and have used it for about 3 years. In that same time, my company has rolled out PGP Full Disk encryption. Honestly, we've had nothing but positive feedback about how unintrusive the product is. This is easily the security tool with the highest positive employee feedback we've ever deployed, hands down.
One option to consider is seeing whether you can file for an exception. Your company may have an exception policy with respect to the implementation of controls like full disk encryption. If not, you may want to ask them to implement one as it's a fairly standard practice. The security folks may want you to explain to them (in writing) why you can't implement the control, why you don't believe there's risk, and what possible other mitigating controls exist to minimize or eliminate the risk of not using full disk encryption, but with that you might be able to file for an exception. Just a thought.
"There is nothing more unequal than the equal treatment of unequal people." - Thomas Jefferson
I don't want my data leaked, thank you very much!
Everyone compresses before they encrypt. Everyone. That's why I think the whole compression issue is bogus.
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
Comment removed based on user account deletion
alaederach wasn't looking for a sales pitch on Truecrypt. The decision has been made. He is looking to the slashdot community to empower him with a good argument to resist encryption. I hope that he chooses to embrace encryption, while recognizing that it is not applicable to every environment or computer. He can still make an informed argument against it in his case, provided he is correct in his assessment.
POLICY
alaederach, I believe the folks that posted advice about resolving this through the proper channels to get an exception to the policy is your best route. Dont start argumentatively. Explain your concerns and keep an open mind about them. Start with a member of the team that is deploying PGP and ask what the proper procedure is to get an exception to the policy. If there is a project manager assigned, that would be the person to start with. Project managers are usually more open to the needs of your area, and have the power to address issues that are raised during the implementation process. Kindly explain your concern, and ask if a high performance system can be benchmarked and tested prior to the roll out of PGP.
PERFORMANCE
As a proud tin foil hat wearing network administrator whom has rolled out PGP, I did not find a performance hit that was enough justification to make an exception in our environment. However, the identified risk of data loss and theft was a concern for the traveling laptops. The servers were less of a risk due to the physical security controls that were in place. PGP was only rolled out to laptops in my environment. I would recommend extensive testing prior to the roll out for high performance machines. Boot times were slower, but were measured in seconds vs minutes. In every case where performance was an issue, it was typical problems that one might find on a windows machine, and was unrelated to the encryption.
SECURITY
Every time I have worked as a member of a team deploying a security measure, the same argument is claimed by someone. "There is no reason to do X as it can be subverted." That goes for policy, physical access controls, software, and hardware. Encryption is no exception to this. Yes, warm and cold boot attacks are possible. Yes, highly motivated individuals, groups, and governments may have the ability to access your data. Security is best used with many layers. It can be highly effective at reducing risk, and keep higher percentages of the population from accessing or corrupting your data. alaederach, your best argument here is risk vs reward. This is where you kindly make your claim that risk is low due to the low impact of data loss in your environment. At the same time, if you have good physical security controls, you might want to include that in your argument. If the data that your work produces is valued higher by the decision makers than what you are sharing with us, then you may want request the performance testing and explain the risk of lower production due to performance. Geeks love performance testing, and if the highest risk is determined to be your computing performance, you just might find an exception to the policy.
MYTHS
A network adminstrator that gets hit by a bus, will cause your data to be lost. FALSE. The majority of organizations that have the funds to implement a project such as this, will also have determined off site storage of encryption keys as well as any othe data that would be backed up. Usually it is a different geographical location that utilizes high physical security controls. Yes there will be members of the staff that will have access. That is why there are Human Resource controls in place to vet the administrators. I.E. background checks.
An encrypted drive can not be accessed to retrieve data. FALSE. encrypted or unencrypted, proper data backup methods should be in place. With PGP specifically, I created a bartPE cd that allowed retrieval of data on a hard
Your IT people need to remember that whole-disk encryption only protects against some threats, not all. It's mainly going to protect against physical theft of the drives themselves, or the computer they're in. That means it's going to mainly benefit laptops that're out in the world where they can be easily stolen. Office desktops, if they're stolen that means someone had physical access to the building to take them. If the IT department can't name the last time a desktop was stolen from the building, theft is probably not an issue. Servers aren't likely to be stolen at all, they're locked up in a presumably secured data center and I just don't see an outsider being able to get in there let alone unrack a server and walk out with it under their arm. Again, if IT can't name the last time a server was stolen it's probably a non-issue.
And even in the case of a laptop, the encryption only protects the disk while the computer's powered off or in a state where the encryption software's discarded the key and won't decrypt the disk again without you re-entering the password. We found where I work that the standard suspend mode of the laptops does not trigger PGP to prompt for the password on resume, for instance. Since most of our people leave their laptop suspended while carrying it around rather than turning it completely off (to speed up start-up), the PGP encryption essentially isn't protecting the disk at all since the thief won't need the password to get the data decrypted. I don't count the normal screen lock, since if that were sufficient you'd just force password lock on the screen saver and not need encryption at all.
And of course whole-disk encryption won't protect you at all from viruses, trojans and other malware that gets onto the system and starts sending data back home. That stuff's running after you've helpfully given PGP the password and it's cheerfully decrypting data for you, and it's running as you so PGP thinks it's you accessing the data. Again, for office desktops and servers remote access by malware's probably a bigger concern than physical access to the machines and you need something other than whole-disk encryption to protect against those threats.
To be honest, I'm much more of a fan of removeable media. Put the patient data on a USB stick, then plug the stick in to access the data and remove it when you're done. If the sensitive data isn't on the computer then nobody can get it by stealing the computer. Just don't fall victim to those "encrypted" USB sticks, many of them either use algorithms that're trivial to break or they fail miserably at some point (eg. leaving the encryption key in unencrypted unprotected space where it can be extracted and used by a thief). It's much easier to lock some USB sticks or CD/DVDs up in a secure drawer than it is to protect a computer.
I run the IT Department for a company in the EDU industry.
We have about 80 laptops in the field, and about 2x that in desktops.
Since we deal with a lot of sensitive data (read: personally identifiable) I have been deploying PGP WDE for the past few months to all laptops (no desktops).
Speed:
Our users primarily use a web browser and Outlook. No one has complained about speed yet. Caveat: While it's encrypting, the laptops will slow to a crawl until it's done. We've had a lot of complaints, even after my helpdesk guys advise them.
Administration:
Couldn't be easier. Someone mentioned that you could essentially "lose the key." Not possible, and I've tested it. WDE creates a backup 1 time use token so that if someone forgets their password you're not up a creek. Also, the server side software allows for backups, so you're covered on that end.
Cost/etc:
Expensive as hell, in my opinion, but a hell of a lot cheaper than having to pay our lawyers. My impression is a very positive one. The only thing that leaves much to be desired is support. You have to submit a ticket online, and if you're lucky, you'll get a call back within the day.
Considering that much of your hard drive consists of non-private data, like the operating system, program install files, and spurious user junk, why bother encrypting the whole disk? Why does anyone bother? Just have an encrypted directory, partition, or even a second small hard drive and save all super-top-secret files in there.
First, the article that you link to is not about the current products.
The article is about "PGP Disk" which is now what we call "PGP Virtual Disk." That is a container-disk encryption system. It is still offered along with PGP WDE, as it's nice to have both. There have been many improvements to it since that article was written.
My guess is that article is over ten years old. There's no date on it, but based upon what he says -- he installed it on Windows 95 running an AMD K6 200-MHz computer with 9 GB of Ultra DMA EIDE drives and 64 MB of SDRAM memory -- my guess is that it dates from late 1997.
If you want to do a fair comparison, let's also test against the experimental Linux 1.2 kernel, too, which also dates from about that time. That article also talks about CAST (which is still an option in Virtual Disk, but WDE uses AES). I can go on, but you're not asking about that, you're asking about WDE. My point is that if you research our present products and reference an article about a different product from last century, it's not going to tell you what you want.
I want to talk about the three main issues I see here: partitioning, compression, and performance.
When it comes to partitioning, PGP WDE operates below the partitions. We think that this is a huge benefit. We do not presently support dynamic repartitioning. It's a goal, as our long-term plan is to support Windows, Mac OS X, and Linux on the same disk with multiple partitions. We're not there yet. My personal opinion is that partitioning made sense when disks had megabytes. It doesn't make sense when they have terabytes, except for some obvious exceptions, like that you want to have a triple-boot disk. Your situation seems to be different, and I'd love to hear your views and needs for dynamic partitioning.
There are no issues with compression with WDE or Virtual Disk. I don't even understand what the issue could be. An encrypting driver writes blocks of ones and zeros. It's below the file system as well as below the partitioning system. It all just works. I'm using WDE on all my computers, and it just works.
The last issue, which you didn't bring up, but is important, is performance. When you measure *any* WDE system, not just ours, there is obviously a performance loss -- because you're adding the encryption. This is even true with hardware encryption.
Nearly any number between "essentially zero" and 100% are true, given what you measure. On a steady-state running system doing normal tasks, the WDE overhead is essentially zero. Users won't notice it at all.
At the other end of the scale, we've done some performance measurement, and compared the real WDE driver against one that no-oped the encryption. The result is that the encryption takes about 1/2 the time of the total driver throughput. You can call this 50% or 100% depending on how you like to count.
In a real-world situation, the real factor is how much time you are spending in the disk driver. If you have a heavily IO-bound system that's spending 30% of its time in the driver, then WDE is costing you 15% of your CPU. But if you're compute-bound, then WDE is costing you literally nothing.
However, if you get a hardware encrypting disk, you don't improve the situation. We've benchmarked some of the new encrypting spindles against their non-encrypting versions. The performance overhead is much worse for those than for our WDE. It adds zero to your CPU, but it's a huge latency issue, up to nearly a one-quarter drop. This shouldn't be a surprise -- we're doing the encryption on a 64-bit Intel or AMD processor, and they're doing it on an embedded CPU on the controller. Which one do you think is going to be faster?
There are a set of advantages and disadvantages to doing encryption on the CPU or on the disk, but speed goes to doing it in software. The speed advantage of software is only to shift even more to t
I have successfully created a bootable PE cd that can mount PGP Partitions/Drives. This allows for recovery WITHOUT decrypting. A bad block on an encrypted drive is no different. If NTFS becomes corrupted or, heaven forbid, the master file table takes a dump, normally you WOULD have to decrypt first to fix, but not so with a bootable PE cd that can mount the partition. It is business as usual. There is MOST DEFINITIVELY a performance hit when running PGP, but mainly on the CPU. Disk performance itself is not very noticiable (i.e. somewhere between around a -7% in my own experience), but when there is high I/O, whach your system process take off. The filter driver for PGP runs under this process, and there is no doubt about it.