full disk encryption software development
First excuse me for my English, It is not my mother tale so if something is unclear in the following lines, please tell me!
I'm interested in full disk encryption for professional and personal reasons. I Tried a bunch of software but none of them ever meet all of my criteria witch are:
-very strong encryption (AES 256 is enough of course)
-Transparency, no need of a fancy interface. I just want to enter my key before booting my OS's...
-simple and effective: I really don't need features like key changing or keylog protection
-Multi-Boot compatible witch is the most important thing for me and Multi-drive compatible
Based on my new experience in that area after trying Diskcrypt plus pack, truecrypt, PGP encryption, Diskcryptor and a few other, I came with an idea: Since I know exactly what i'm looking for, why can't I program it myself? Of course I'm talking about a very tiny piece of software but I'm not particularly an expert in that matter so I'd like to ask some advices but first let me explain what I had in mind...
What I want is some sort of pre-boot authentication by password, the perfect thing for me would be that the password needed to gain access to the computer is actually the encryption key. I have a very good memory and memorize a 256 sequence of random characters is nothing I'm afraid of. When the user has eventually succeeded the pre-boot authentication, my special program will then chain boot on a bootloader like GRUB for instance, and therefor everything will look at the user's eyes like the system is absolutely not encrypted.
So, what I concretely need is a small program that can encrypt my hard drives, block access of the whole system at boot-level, require an encryption key and then use that key to decrypt my hard drives in real time (independently of the OS running ideally, although I don't know if it is possible on a software basis) and then chainboot on a bootloader like GRUB.
The problem is I don't really know how to start... Do I need to make a bootable partition on my system drive to force the computer to boot on it and run my program that way (that seems quite complicated) or could a small software stored on the MBR like GRUB actually do all this?
I would also like to add a few things:
This is a most serious project. Even if I'm not an expert, I'm ready to learn and/or study hard :D
If all this eventually tends to become usable and functional, I'm clearly willing to publish it as an open-source project or a freeware.
Thank you all in advance for your help.