Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a server for which I want to protect the content. The server is located on a clients premises.

Is there a way to encrypt the content of a RAID DISK (at hardware level) ? What I need is that the server will not be able to start as long as the required password is not provided (the encryption key)

I will give the best answer to Miles, though the answer was not exactly to my question. But from all the comments, it seems that it cannot be done hardware or .. it cannot be done as I would like to.

share|improve this question
    
Isn't this kind of a silly question? The whole point of RAID is to make the whole setup appear as one block device, so when that happens you should be able to encrypt it just like any other hard disk. Software encryption would work fine as well, actually, the requirement for hardware encryption is a bit odd unless it's purely for performance. Also, if you find some hardware level encryption and its BIOS runs before your RAID, then it's the same idea for the other way around, you'd decrypt your X hard drives and then RAID them all on boot. – gparent Nov 17 '12 at 19:40
    
Software encryption requires the start of the machine. This is something I would like to avoid as long as I do not know who starts the machine. That is why I asked the question, as this is something I couldn't find googling. – Dumitrescu Bogdan Nov 17 '12 at 19:43
    
I don't understand what you mean. Hardware encryption also requires booting the machine if you ever want to see what's on the disk. – gparent Nov 17 '12 at 19:46
    
to further clarify gparents point: You only have to choices. 1) manually enter a password, regardless of HW or SW. 2) Enter a password in a script on an unencrypted part (which would not be safe, just security by obscurity). – Hennes Nov 17 '12 at 19:47
3  
You can't not have to enter a password and still have things secure by complete magic. Software or hardware will not change this. – gparent Nov 17 '12 at 19:51
up vote 5 down vote accepted

Yes. You can encrypt a RAID volume, using TrueCrypt or any other whole-disk encryption software. The contents of the volume will be unreadable without the encryption key, regardless of who powers up the machine.

The traditional "benefit" of hardware encryption is added performance, not added security. Because many of today's high-end processors include support for hardware-assisted AES encryption, you are likely to experience similar (or perhaps even better) performance using software encryption.

share|improve this answer
    
Yes, true. But this is not the point of the question. If the "intruder" somehow guesses a password of the OS, then all the settings on the machine are vulnerable to export. This is not a question on security, is more a hardware related question, as I did not find data on raids capable to do this – Dumitrescu Bogdan Nov 17 '12 at 19:51
3  
@DumitrescuBogdan How is guessing the keyphrase of the encryption in softwar any different to guessing the keyphrase of the encryption in hardware? Also, the OS password is a different thing altogether – Dan Nov 17 '12 at 19:53
    
One course in my university (a long time ago), stated that if you have physical access to data, then you can find any password. I do not know if that is still correct, but if it is so, if then an unprotected disk can reveal all the data that it contains. So an OS password can be bypassed. What I wanted is that the RAID cannot be formed as long as the correct encryption password was not present. – Dumitrescu Bogdan Nov 17 '12 at 19:58
2  
The information that you received in your course is obsolete. Today you need physical access to data and access to unlimited computing resources in order to crack something like a 30-character passphrase. The current conventional wisdom is that a strong TrueCrypt passphrase cannot be cracked by even a determined attacker, unless that attacker has access to supercomputers. – Skyhawk Nov 17 '12 at 20:00
3  
Well if everything can be bypassed, don't run a server at all. That can't be hacked. Obviously if you're using a password system, then the correct password will work, no matter how you acquired it. – gparent Nov 17 '12 at 20:00

Don't do this.

I'm in the process of trying to recover data from an encrypted RAID array that failed, and it's already cost my employer more than the data's worth. If you must encrypt, either encrypt individual disks, or create an encrypted partition for the important stuff.

share|improve this answer
1  
Encryption always complicates data recovery. However, if you are in the process of attempting to recover data from a failed RAID array, encrypted or not, your employer has bigger problems than the one immediately at hand. Why wasn't there a backup? Surely your employer knows that RAID is no substitute for backups. – Skyhawk Nov 17 '12 at 22:11
    
@MilesErickson Encryption on a RAID volume complicates things much more than on a normal disk, believe me. Not only do you have to worry about getting the data off without being able to read it while you're recovering it, you now have to worry about your stripe size and block size the encryption algorithm works on, disk order and whatever vendor-specific fun the RAID card's done as well. Without being able to read the data raw to see if you're on the right track. As to my employer, well... job security or something, sigh . – HopelessN00b Nov 19 '12 at 6:26

Already one great answer but I'll toss in my answer as well.

As with all security it always comes down to what is acceptable to you. How much security does your system actually need? Everything you are talking about could be fixed with better physical security, in example a much better door, a better lock, and a guard.

Once the system IS booted (I'm guessing it will actually be booted sometimes) the SYSTEM account on Windows and Root Account on Linux will generally have full access to the contents of the disk regardless of encryption, if someone actually hacks the system and gets one of these accounts they will have access to data. What you are really going to prevent is someone pulling a drive and physically taking it.

If after having as much security as you can possibly afford physically, your data requires (BY company policy, law, or contract) encryption then you again need to ask, how much?

  • Should I use Self Encrypted Hard drives? Password Protected?
  • Should I use a TPM to encrypt the data coming into the RAID controller?
  • Should I encrypt the whole disk using TrueCrypt or BitLocker?
  • Do I just need to encrypt a few files?
  • DO I need to turn off memory cache on the raid controller?

    If you encrypt both the logical disk (With TrueCrypt) and the RAID itself you prevent someone being able to just swap in a non-encrypted HDD & from being able to recover Keys from Windows/Linux repository on the software side. They would require both.

share|improve this answer

Why you did not use Raid with fiber channel difference backup mirror by hardware?

Yes, ii know it is not common see, but it has a lot of advantes... your raid is just raid 0 with 6 hdds (yes stripping), each hdd has built in hardware encription, so attaquer (in offline mode) would need to guess 6 passphares, to be true i preffer hdd with usb port for key... too expensive i know... power on hdd need the dongle (1GiB) connected, attaquer would need such 1GiB, hdd copy such gigabyte to internal ram (yes the hdd has a 2 gigas cache, one for key, one to do fast read/write cache, it also has a red/green diode, when green you can disconnect the usb from the hdd, key is now on hdd internal ram... with 6 of this you get hardware encryption very secure... attaquer would need to guess upto six gigabytes of keys, wow! Over that you use a 6 sata-iii raid controller, with fiber channel auto differential remote backup... you get the best!

How works? Easy: power on with six usb 1GiB dongles connected each one to one hdd directly (the hdd has a special port for that, no need for a weak passphrase of 64 chars, it use a whole one gigabyte passphrase), so there are 6 gigas of key in total, after all goes on green, remove the six usb pendrive and put them on a secured place (like banks cases but in your building), then tha raid 0 (striping) will see six drives and will make a very fast (near 4GiB/s) big disk where you can put your O.S., now i talk about secure data against fails, no need for backups, neither raid 6 (better than raid 5 but also worthless), that raid controller i talk has a fiber channel connect to a difference remote backup storage, so you will have such huge disk mirrored but with historic sector per sector backup, so you can have online the whole disk state at every second you need, dissaster came, well, just replace the hdd, and tell the fiber channel to see the state it had at a specific second of a specific time, it will put such state onto new disks.

Price is the worst part... controlles cost neare 10 thousand pounds, each disk cost near 2 thounsand, and backplane for store such difference will require a whole building sercive on another planet city... cost per month and gigabyte could be too much, but again it is not about price what i am talking, it is for securing.

Well to be true i only use a simple XOR cypher, one byte of data with its own one use byte of key, so attaquer would see a key lenght equal to lenght of data, no need for comples algoritmics, just a simple XOR is enough, to make it more difficoultto attaquer, position of key byte is calculated (not equal to data byte position) with a fast algorithmic.. in other words: Cyper[X]=Plain[X] XOR Key[MyAlgorith(X)], with Key length >= Plain length. This is mathematically demostrable to be 101% secure, if you do not known the key, demostration is as simple as this phrase: you can have as much different keys as possible data states. So if you ha a 8GiB pendrive you will have a 8GiB key, so that makes 2^8GiB different keys, and you have 2^8GiB possible different data states, each bit of data is cyphered with its own bit of key, each bit of key is used only for one bit of data, if you try a brute force, all possible keys are a set that is equal to the set of possible data states, so no way to know which one is the correct. The key is only used for such disk.

It is also possible to use a lees size key as that MyAlgorith will make the same bit of key be used on a way that attaquer would not be to know/guess, such algorith use part of the key to create an XtoY translation, for multiple X values will give same Y (beware not to use a simple mod operation, it must be more complex), so a simple 8GiB of key will generate the same set as a full hdd lenght key, complex to demostrate but i will try: given an X position of data, what byte of key will be used? DPosition on key data, dpends on key data an on such X, but in a way that X+1 is not Y+1 where X is position on plain data and Y is possition on key data, that will make brute force to need to test each byte of cyphered data be tested with each byte of a test key, so at end it will be a set with 2^hdd size possible states. Basic is: you do not havesuch 8GiB key, so you create a 2^8GiB key set,with each of that keys you must test the de-cypher, but since position of key used for each byte of data also depends on another shrot passphrase you need to chech each byte of data with 2^(8*64) possible positions on key (key lenght is 8GiB = 2^33) so in practice each byte of data would need to be tested with each byte of the key, if the key has all 0 to 255 byte possible vales along it, it will reduce the tes so each byte needs to be XOR with each 2^8 (256) possible vales, so 256 possible values for such byte are getted for each byte of data, hence it is mathematically impossible to know what is the good one and since this procces must be followed with each byte, you will get a brute force attach that gives a 2^(size of hdd) possible plain data, attaquer will not be able to guess any plain data byte.

The algorith works on byte basics, but such idea is also valid for 512 byte words (instead of 1 byte words), and also for any lenght.

Hence, to be secure the best is have a key huge in size and a good X to Y algorithm and use a simple XOR for cypher/decypher.

Note: The backup is done by hardware sending each sector write operation to a historic remote storage server, so you can get the state at a given milisencond ot datetime... such info sent to remote server is the real data that is writted on disk, so it is cyphered, not plain... it is like cloning hard disk plates info.

How that fiber channel works? easy: hdd when internally writes data to plates, send a copy by a fiberchannel to the raid controller, then raid controller re-send that data by its externall fiber to a remote big, verybbig storage system.

How rebuil works? Easy: controlles asks for a datetime state (exact milisencond), then remote server looks for each hdd sector table (uses the most near state for such sector, with datetime lower or equal) that sector is sent to the controller and controller send it back to hdd by fiber, then hdd write it to plates,... after rebuild all hdds will have the exact clone it had at that milisecond.

All this working with snapshot points on valid stable partition states, work all togetherto make a huge secure and safe storage system.

Week point as all up systems: attaquer atacts while system working, by a middle man attach, with usb debug devices that clone mainboard bus info, etc... while will be impossible to log keys used (unless admin that boots the server would be an idiot) it can get the clear data going in mainboard, but since that is not possible to be avoided (physical acces to mainboard requiered for the attaquer) the system is as secure as the other weak parts are (internet connection, etc)... laught, but this is true: an idiot admin boots the computer while seeing a huge amount of strabe cables and devices was addes to computer, how such silly person has booted it? If you see computer has been manipulated in offline, do not boot it till you have confirmed such manipulations are correct and secure.

Otal price of a working project (for testing suh config): 1 millon pounds per month, for a one year working test proyect.

P.D.: i am not authorised jey to reveal raid controller name, but can be founded some test (with censored parts) videos on google and youtube, i do not know if links are admit on this forum, and i do not want to be seen as a vendor.

share|improve this answer
    
At the moment, this answer reads like a snake-oil-encryption rant. If I were you, I would try to trim this down from two illegible pages to one or two informative paragraphs. – MadHatter Apr 16 at 10:18

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.