Popular Searches

download information for Search Optimization  Search Optimization
download information for Search Engine  Search Engine
download information for Adsense  Adsense
download information for RSS  RSS
download information for Blog  Blog
download information for Compression  Compression
download information for Audio  Audio
download information for Video  Video
download information for XML  XML
download information for Screensaver  Screensaver
download information for CSS  CSS
download information for Backup  Backup
download information for Software  Software
download information for Spyware  Spyware



Tags

encryption special protection storage sector device article presents aspects problem discussion different software packages hardware devices devoted definition encrypted theory



Web Matches

Disk encryption theory - Wikipedia, the free encycloped..
Disk encryption theory. From Wikipedia, the free encyclopedia. Jump to: navigation, search. Disk encryption is a special case of data at rest protection when the ...

Disk encryption - Wikipedia, the free encycloped..
Disk encryption theory provides cryptographic definition of the problem and ... Comparison of disk encryption software compares products in the market. ...

Vinvin's projects
Hard disk encryption using softraid crypto target in OpenBSD ... took birth while looking for disk encryption theory for my previous article on linux's loop-aes. ...

Disk encryption easily cracked? Nonsense!
So, in theory the keys for disk encryption tools are still in memory for a while, ... Tag(s): security disk encryption cooling of ram truecrypt ...

Block Cipher Modes Of Operation
... in the article devoted to disk encryption theory. ... ( See disk encryption theory) Block ciphers can also be used in other cryptographic protocols. ...

Universall..
for transparent hard disk encryption are built on principles ... theory, but is of course hopeless in practice. We now propose an encryption algorithm that is ...



A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z

Search Articles e.g. mp4
 

Disk encryption theory

Disk encryption is a special case of data at rest protection when the storage media is a sector-addressable device (e.g., a hard disk). This article presents cryptographic aspects of the problem. For discussion of different software packages and hardware devices devoted to this problem see disk encryption software and disk encryption hardware.

Problem definition

Implementation of encrypted data storage on a sector-level–random-access device faces several constraints:

implementation shall efficiently encrypt and decrypt data in any sector,

implementation shall use only constant amount of extra storage for a device of arbitrary size.

The strongest definition of security is as follows: An implementation is secure if an adversary, who can observe the raw device, provide plaintexts to be stored, and modify some ciphertexts, can't deduce any information about the plaintext of each sector, except the information that sector i at time t0 was the same as the same sector i at time t1 (in order to update only a single encrypted sector for each plain sector update this information can't be hidden).

The above definition addresses only the confidentiality requirements, the integrity requirement is that any unauthorized modifications of the raw device shall be noticed before the modified data is used. Unfortunately, it is very hard to implement this requirement in its totality because an adversary can rollback the device to one of its previous states. Ignoring the rollback attack of separate sectors, this requirement is straightforward to implement by storing and verifying a MAC tag for each sector: where i is the number of the sector and di is the data stored in the sector. In real life this scheme is almost never implemented, arguably, due to the fact that advanced disk encryption methods (such as XEX, LRW, or CMC / EME) support pseudo-integrity: an adversary can replace some block (for XEX or LRW) or sector (for CMC / EME) with some of its previous values, but if he uses some other data (e.g., some previous value of some other block or sector) then the decryption will be some random data which adversary can't predict. Note that preventing inconsistent rollbacks (an attack where some sectors are replaced with the data they used to contain whereas some other sectors are not changed) requires the use of a hash tree with MAC of the root.

Simple approaches

Any implementation can be “secure” depending on the threat model. For example, if we want to “protect” a PC disk partition from a “kid sister” it is enough to change the type of the partition (see MBR) using any low-level disk editor to make the partition unreadable by standard tools. Of course, any computer-savvy attacker will easily break such a “protection,” but if the attacker does not know what is MBR or how to edit it, he will not be able to read any information from the “hidden” partition. On the other extreme, an implementation may be designed to prevent traitor tracing, that is to protect against an adversary who only wants to confirm that some specific file (crafted by the adversary) is actually stored somewhere on user's computer.

The minimal addressable part of a disk is called a sector. On many systems each sector has 512 bytes, although there are some exceptions, for example, AS/400 uses 520-byte sectors. A block cipher operates on a single block (commonly, 8 or 16 bytes), andthereforeencrypting all k blocks in the sector requires some mode of operation (k = 64 or k = 32 in a 512-byte sector). Since the ECB mode always encrypts the same plaintext block into the same ciphertext, it reveals data patterns and isthereforevulnerable to watermarking attacks. Other simple modes of operation (CBC, CFB, OFB and CTR) require an IV (Initialization Vector - an auxiliary random input) for each chunk of blocks which are to be encrypted independently.

Despite the fact that it is possible in practice to use the counter (CTR) mode with a single IV per volume, such uses are insecure if an adversary is able to gather several encrypted versions of the same sector (e.g., snapshots taken at different times). Since, in this specific mode of operation, the ciphertext of each fixed sector is a plaintext XORed with a fixed value () it follows that given several ciphertexts the adversary knows that andtherefore(if enough information is known about possible values of the plaintexts, e.g., that they are from a file with English text) cryptanalysis will be straightforward. It is not always easy to tell if such a threat model is applicable. For example, it can be used to protect the hard disk of a laptop so that, if stolen (only once!), no data can be recovered. However even this is not foolproof for modern hard disks that can often anticipate the failure of a sector, map it to a new one and stop using the damaged sector. On the other hand, if the encrypted volume is stored as a file it is possible that, due to inner working of journaling file systems, several versions of (some sectors of) the encrypted volume will be available to an adversary.

CBC-based approaches

Despite its deficiencies (described below) the CBC (Cipher Block Chaining) mode is still the most frequently used for disk encryption. Since auxiliary information isn't stored for the IV of each sector, it isthereforederived from the sector number, its content, and some static information. Several such methods were proposed and used.

The simplest method is to encrypt each sector in CBC mode () using the (padded) sector number as the initialization vector (IV): . Here the IV is not secret andthereforethis scheme is vulnerable to a watermarking attack: if, for example, the sector number 6 has and the next sector has then . So, for example, if the user stores a specially crafted file (sent to him by an adversary) then an adversary has a proof that the file is indeed stored.

In order to prevent this attack the ESSIV was introduced: . Unfortunately, since Ci does not depend on Ci + 1 it follows that if only a block in the end of a sector is changed then all the preceding blocks stay the same, andthereforean adversary who sees the same sector before and after such a change knows that only part of it was changed.

It is possible to prevent this attack by deriving the IV from the data stored in the sector. One approach is to use a hash of all the blocks starting from the second one (counting from zero it has number 1): . Since in order to decrypt P1 one only needs C0 and C1, one can decrypt , calculate C − 1 and then decrypt P0. With this method, a change of any plaintext block inside a sector can change all the ciphertexts. Unfortunately, this method is about twice as slow as the previous one: each block (except the first one) has to be processed twice. And still there is an attack against it (and all the CBC-based approaches): suppose that an attacker is allowed to read some files on the device (but not all of them) and he can change the ciphertext. Using these capabilities he can read of any sector: he replaces the ciphertext of his sector and asks the system to decrypt his sector. If C − 1 depends on n then the first block is garbage, but all the other blocks depend only on the ciphertext andthereforehe receives the original plaintext.

LRW

In order to prevent such elaborate attacks, different modes of operation were introduced: tweakable narrow-block encryption (LRW and XEX) and wide-block encryption (CMC and EME).

Whereas a purpose of a usual block cipher EK is to mimic a random permutation for any secret key K, the purpose of tweakable encryption is to mimic a random permutation for any secret key K and any known tweak T. The tweakable narrow-block encryption (LRW) is an instantiation of the mode of operations introduced by Liskov, Rivest, and Wagner (see Theorem 2). This mode uses two keys: K is the key for the block cipher and F is an extra key of the same size as block. For example, for AES with a 256-bit key, K is a 256-bit number and F is a 128-bit number. Encrypting block P with logical index (tweak) I uses the following formula: where Here multiplication and addition are performed in the finite field (GF(2128) for AES). With some precomputation, only a single multiplication per sector is required (note that addition in a binary finite field is a simple bitwise addition, also known as xor): , where are precomputed for all possible values of δ. This mode of operation needs only a single encryption per block and protects against all the above attacks except a minor leak: if the user changes a single plaintext block in a sector then only a single ciphertext block changes. (Note that this is not the same leak the ECB mode has: with LRW mode equal plaintexts in different positions are encrypted to random ciphertexts.)

Some security concerns exist with LRW, and this mode of operation has now been replaced by XTS

LRW is employed by the FreeOTFE, Truecrypt, Bestcrypt and LUKS disk encryption systems.

XEX

A further tweakable encryption mode XEX (Xor-Encrypt-Xor), was designed by Rogaway to allow very efficient processing of consecutive blocks. The key K is divided into two parts of equal size: . The tweak is represented as a combination of the sector address and index of the block inside the sector (the original XEX mode proposed by Rogaway allows to have several indexes). To encrypt block j in sector I, the following formula is used where and α is the primitive element of GF(2128) defined by polynomial x (0x2 in hexadecimal).

The basic blocks of the LRW mode (AES cipher and Galois field multiplication) are the same as the ones used in the Galois/Counter Mode (GCM)thereforepermitting a compact implementation of the universal LRW/XEX/GCM hardware.

XTS

XTS is XEX-based Tweaked CodeBook mode (TCB) with CipherText Stealing (CTS). Although XEX-TCB-CTS should be abbreviated as XTC, “C” was replaced with “S” (for “stealing”) to avoid perplexity with ecstasy, a well-known drug that is illegal in most countries. Ciphertext stealing provides support for sectors with size not divisible by block size, for example, 520-byte sectors and 16-byte blocks. XTS-AES is currently considered by SISWG for the IEEE P1619 draft Standard for Cryptographic Protection of Data on Block-Oriented Storage Devices.

As of February 2008, XTS is supported by dm-crypt, FreeOTFE and TrueCrypt disk encryption software.

CMC and EME

CMC and EME protect even against the minor leak mentioned above. Unfortunately, the price is a twofold degradation of performance: each block must be encrypted twice; many consider this to be too high a cost, since the same leak on a sector level is unavoidable anyway.

CMC, introduced by Halevi and Rogaway, stands for CBC-mask-CBC: the whole sector encrypted in CBC mode (with C − 1 = EA(I)), the ciphertext is masked by xoring with and decrypted in CBC mode starting from the last block. When the underlying block cipher is a strong pseudorandom permutation (PRP) then on the sector level the scheme is a tweakable PRP. One problem is that in order to decrypt P0 one must sequentially pass over all the data twice.

In order to solve this problem, Halevi and Rogaway introduced a parallelizable variant called EME (ECB-mask-ECB). It works in the following way:

the plaintexts are xored with L = EK(0), shifted by different amount to the left, and are encrypted:

the mask is calculated: where and MC = EK(MP);

intermediate ciphertexts are masked: for and

the final ciphertexts are calculated: for

Note that unlike LRW and CMC there is only a single key K.

CMC and EME were considered for standardization by SISWG. CMC was rejected for technical considerations. EME is patented, and so is not favored to be a primary supported mode.

ESSIV

Encrypted Salt-Sector Initialization Vector (ESSIV) is a process for generating initialization vectors for block encryption to use in disk encryption.

The usual methods for generating IVs are predictable sequences of numbers based on for example time stamp or sector number and permits certain attacks such as a Watermarking attack.

ESSIV prevents such attacks by generating IVs from a combination of the sector number with the hash of the key. It is the combination with the key in form of a hash that makes the IV unpredictable.

ESSIV was designed by Clemens Fruhwirth and has been integrated into the Linux kernel since version 2.6.10. It is employed by the dm-crypt and FreeOTFE disk encryption systems to increase security.



Related Ads





Add to Google Add to Yahoo Add to Furl  Add to del.icio.us  Add to DIGG

Resource: Part or all of the information provided in this section is brought to you via wikipedia and other similar sites. Please repsect their licenses and for more information visit the homepages of these sites.

Links
Freeware Downloads Download Information
RGB Hex Converter Web Colors
Home  Link to Us
Copyright © iFreeware Downloads 2005-2008
All rights reserved