o Spelling, punctuation and markup fixes.

o Correctly use the "No chain is stronger than its weakest link" adage.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
This commit is contained in:
Chris Costello 2002-10-20 19:38:28 +00:00
parent aa77750747
commit bba43ee522

View File

@ -41,18 +41,23 @@
.Nm gbde
.Nd Geom Based Disk Encryption.
.Sh SYNOPSIS
options GEOM_BDE
.Cd options GEOM_BDE
.Sh DESCRIPTION
.Pp
The objective of this facility is to provide a high degree of
denial of access to the contents of a "cold" storage device.
denial of access to the contents of a
.Dq cold
storage device.
.Pp
Be aware that if the computer is compromised while up and running
AND the storage device is actively attached and opened with a valid
.Em and
the storage device is actively attached and opened with a valid
pass-phrase, this facility offers no protection or denial of access
to the contents of the storage device.
.Pp
If on the other hand, the device is "cold" it should present an formidable
If on the other hand, the device is
.Dq cold
it should present an formidable
challege for an attacker to gain access to the contents in the absense of
a valid pass-phrase.
.Pp
@ -60,12 +65,14 @@ Four cryptographic barriers must be passed to gain access to the data,
and only a valid pass-phrase will allow yield this access.
.Pp
When the pass-phrase is entered, it is used to seed an ARC4 based
byte oriented PNRG which is used to produce what we call the "key-material".
byte oriented PNRG which is used to produce what we call the
.Dq key-material .
This is a way to producing cryptographic usable keys from a typically
all-ASCII pass-phrase of an unpredictable user-selected length.
.Ss First barrier: the location of the "master-lock" sector.
.Ss First barrier: the location of the \&"master-lock" sector.
During initialization, up to four indepenent but mutually aware
"master-key" sectors are written to the device in randomly chosen
.Dq master-key
sectors are written to the device in randomly chosen
locations.
These master-keys contain a 2048 random bit key and a number of parameters
of the layout geometry (more on this later).
@ -73,9 +80,10 @@ Since the entire device will contain isotropic data, there is no way
short of trying, to determine which sequence of bytes contain
the encrypted master-key.
.Pp
To find one of these sectors, a small piece of data called the "lockdata"
To find one of these sectors, a small piece of data called the
.Dq lockdata
and the key-material must be available.
The keymaterial decrypts the
The key-material decrypts the
lockdata, which contains the byte offset on the device where the
master-key is located.
If the lockdata is lost or unavailable but the key-material is at
@ -97,15 +105,18 @@ locate the corresponding encrypted sectors on the device, gaining access
to the plaintext context of other sectors is a daunting task:
First he will have to derive from the encrypted sector and the known plain
text the sector key(s) used.
(At the time of writing, it is speculcated that it could maybe be possible
(At the time of writing, it is speculated that it could maybe be possible
to do so in only 2^80 operations which is still a staggering number).
.Pp
Armed with one or more sector keys, our patient attacker will then go
through essentially the same exercise, using the sector key and the
encrypted sector key to find the key used to encrypt the sectorkey.
.Pp
Armed with one or more of these "key-keys" our attacker has to derive
as much information about the 2048 bit master-key. To do so, he
Armed with one or more of these
.Dq key-keys ,
our attacker has to derive
as much information about the 2048 bit master-key.
To do so, he
first has to reverse an MD5 hash, and then the PRNG-like algorithm
which derives the MD5 input from the master-key.
.Pp
@ -120,7 +131,7 @@ applied to an individual to divulge the pass-phrase.
.Pp
A "Blackening" feature, given a moment of opportunity, provides a way
for the user to destroy the master-key in such a way that the pass-phrase
will still be acknowleded as good but access to the data will still be
will still be acknowlegded as good but access to the data will still be
denied.
.Ss A practical analogy
For persons who think cryptography is only slightly more interesting than
@ -170,7 +181,7 @@ the vault.
The final point to make here is that it is perfectly possible to
make a detached copy of any one of these keys, including the master
key, and deposit or hide it as one sees fit.
.Ss steganography support
.Ss Steganography support
When the device is initialized, it is possible to restrict the encrypted
data to a single contiguous area of the device.
If configured with care, this area could masquerade as some sort of
@ -188,7 +199,8 @@ some kind of structure or identifying byte sequences.
Certain file formats like ELF contain multiple distinct sections, and it
would be possible to locate things just right in such a way that a device
contains a partition with a filesystem with a large executable,
("a backup copy of my kernel") where a non-loaded ELF section is laid out
.Dq ( "a backup copy of my kernel" )
where a non-loaded ELF section is laid out
consecutively on the device and thereby could be used to contain a
.Nm
encrypted device.
@ -216,7 +228,8 @@ strength of
.Nm .
.Pp
The payload is encrypted with AES in CBC mode using a 128 bit random
single-use key ("the skey").
single-use key
.Dq ( "the skey" ) .
AES is well documented.
.Pp
The random key is produced with
@ -226,7 +239,7 @@ which is belived to do a respectable job at producing unpredictable bytes.
The skey is stored on the device in a location which can be derived from
the location of the encrypted payload data.
The stored copy is encrypted with AES in CBC mode using a 128 bit key
("the kkey")
.Dq ( "the kkey" )
derived
from the master key using a purpose built PRNG like algorithm seeded
with the sector address of the data in question.
@ -258,7 +271,7 @@ Each additional byte of pass-phrase after the first 255 adds significantly
less entropy to the initial state of the ARC4 sbox due to aliasing in
the ARC4 seeding algorithm.
.Pp
No weak is stronger than the weakest link which usually is poor pass-phrases.
No chain is stronger than its weakest link, which usually is poor pass-phrases.
.Sh SEE ALSO
.Xr gbde 8 .
.Rs