There's a place within the boot image (actually within the 16 bit setup code - 2nd stage boot) where the OS keeps default regional settings (so the OS can be used without the regional database if you like english), the boot menu state and a few other things. This area already contains the cluster name, so I'll probably add the cluster password and security level to it. The cluster name, cluster password and security level would be combined to form the cluster key.Candy wrote:You might use the simple&awkward method of shrinking the actual filesystem on the USB stick by X kbytes and stealing that part for your random bits. Then, abuse those bits for checking it's the same stick .
Alternatively, you can store the bootup code on it, effectively making the computer unusable.... or for fun, store the password hash stuff on it. Does make the user vulnerable for losing the key though...
Sure - it prevents curious teenagers from opening a boot image and reading the password with a text editor .Candy wrote:Can you explain to me how this gives an advantage to security?Brendan wrote: For the medium and high settings I'll go the additional step of gathering/combining a collection of values from the hardware and using that as part of encrypting the key - I know it won't prevent anyone determined, but it can't hurt (it doesn't matter if the cluster's password needs to be re-entered if the hardware changes).
The encrypted information in the boot image (cluster name, cluster password and security level) is used by the OS to form a "cluster key". The cluster key is used to decrypt the native file systems (and probably for encrypting/decrypting networking data between nodes), but has nothing to do with each user and doesn't lock the user to a specific computer. Every computer in the cluster has it's own copy of the data used to create the cluster key (so the cluster key is identical for each node, but never transferred via. networking).Candy wrote:It effectively locks the user to this one computer. You just said something about being able to move the computer elsewhere in the cluster without problem, what if the computer itself dies, in a small part (say, the NIC) which is then replaced? Will the OS no longer boot?
Given that all computers within the cluster use the same cluster key, the configuration of the network can be completely changed (for e.g. a laptop can be plugged into a LAN in America or into a LAN in China without any difference), and storage devices containing native file systems can be relocated anywhere within the cluster (e.g. a hard drive can be plugged into a computer in the cluster).
If hardware is changed, a device dies or a new computer is added to the cluster then a user will need to re-enter the cluster's password. Storing this password on the computer would (usually) prevent the need for users to enter the password, such that most users will not need to know this password. Imagine a computer room at a University where computers are booted twice a day by students, or an office where a temporary secretary is filling in for someone else for a few weeks.
[continued]