Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

dm-crypt

From Wikipedia, the free encyclopedia
Disk encryption software

dm-crypt is a transparentblock device encryptionsubsystem inLinux kernel versions 2.6 and later and inDragonFly BSD. It is part of thedevice mapper (dm) infrastructure, and uses cryptographic routines from the kernel'sCrypto API. Unlike its predecessorcryptoloop, dm-crypt was designed to support advanced modes of operation, such asXTS,LRW andESSIV, in order to avoidwatermarking attacks.[1] In addition to that, dm-crypt addresses some reliability problems of cryptoloop.[2]

dm-crypt is implemented as a device mapper target and may be stacked on top of other device mapper transformations. It can thus encrypt whole disks (includingremovable media),partitions,software RAID volumes,logical volumes, as well asfiles. It appears as a block device, which can be used to backfile systems,swap or as anLVMphysical volume.

SomeLinux distributions support the use of dm-crypt on the root file system. These distributions useinitrd to prompt the user to enter a passphrase at the console, or insert asmart card prior to the normal boot process.[3]

Frontends

[edit]

The dm-crypt device mapper target resides entirely in kernel space, and is only concerned with encryption of theblock device – it does not interpret any data itself. It relies onuser spacefront-ends to create and activate encrypted volumes, and manage authentication. At least two frontends are currently available:cryptsetup andcryptmount.

cryptsetup

[edit]
cryptsetup
Original author(s)Jana Saout, Clemens Fruhwirth, Milan Broz[4]
Stable release
2.7.5[5] / 3 September 2024; 6 months ago (2024-09-03)[5]
Repositoryhttps://gitlab.com/cryptsetup/cryptsetup
Written inC
Operating systemUnix-like
Platformx86,x86-64,ARMv8,ARMv7,ppc64le,MIPS
Size7 MB
Available in16 languages[6]
List of languages
English, Portuguese, Chinese (Simplified), Czech, Danish, Dutch, Finnish, French, German, Italian, Japanese, Polish, Russian, Spanish, Swedish, Ukrainian
TypeDisk encryption software
LicenseGPLv2[7]
Sub-Libraries:
LGPLv2.1+[8]
Websitegitlab.com/cryptsetup/cryptsetup/wikis/DMCrypt Edit this on Wikidata

Thecryptsetup command-line interface, by default, does not write any headers to the encrypted volume, and hence only provides the bare essentials: encryption settings have to be provided every time the disk is mounted (although usually employed with automated scripts), and only onekey can be used per volume; thesymmetric encryption key is directly derived from the suppliedpassphrase.

Because it lacks a "salt", using cryptsetup is less secure in this mode than is the case withLinux Unified Key Setup (LUKS).[9] However, the simplicity of cryptsetup makes it useful when combined with third-party software, for example, withsmart card authentication.

cryptsetup also provides commands to deal with the LUKS on-disk format. This format provides additional features such askey management andkey stretching (usingPBKDF2), and remembers encrypted volume configuration across reboots.[3][10]

cryptmount

[edit]

Thecryptmount interface is an alternative to the "cryptsetup" tool that allows any user tomount and unmount a dm-crypt file system when needed, without needingsuperuser privileges after the device has been configured by a superuser.

Features

[edit]

The fact that disk encryption (volume encryption) software like dm-crypt only deals with transparent encryption of abstractblock devices gives it a lot of flexibility. This means that it can be used for encrypting any disk-backedfile systems supported by theoperating system, as well asswap space;write barriers implemented by file systems are preserved.[11][12] Encrypted volumes can be stored ondisk partitions,logical volumes, whole disks as well asfile-backeddisk images (through the use ofloop devices with the losetup utility). dm-crypt can also be configured to encryptRAID volumes andLVM physical volumes.

dm-crypt can also be configured to providepre-boot authentication through aninitrd, thus encrypting all the data on a computer – except the bootloader, the kernel and the initrd image itself.[3]

When using thecipher block chaining (CBC) mode of operation with predictableinitialization vectors as other disk encryption software, the disk is vulnerable towatermarking attacks. This means that an attacker is able to detect the presence of specially crafted data on the disk. To address this problem in its predecessors, dm-crypt included provisions for more elaborate, disk encryption-specific modes of operation.[1] Support forESSIV (encrypted salt-sector initialization vector) was introduced in Linux kernel version 2.6.10,LRW in 2.6.20 andXTS in 2.6.24. Awide-block disk encryption algorithm,Adiantum, was added in 5.0, and its AES-based cousin HCTR2 in 6.0.

The Linux Crypto API includes support for most popularblock ciphers andhash functions, which are all usable with dm-crypt.

Crypted FS support include LUKS (versions 1 and 2) volumes,loop-AES,TrueCrypt/VeraCrypt (since Linux kernel 3.13),[13][14][15] andBitLocker-encrypted NTFS (since cryptsetup 2.3.0).[16] TrueCrypt/VeraCrypt (TCRYPT) and BitLocker (BITLK) support require the kernel userspace crypto API.[17]

Compatibility

[edit]

dm-crypt and LUKS encrypted disks can be accessed and used under MS Windows using the now defunctFreeOTFE (formerly DoxBox, LibreCrypt), provided that the filesystem used is supported by Windows (e.g.FAT/FAT32/NTFS). Encryptedext2 andext3 filesystems are supported by usingExt2Fsd or so-called "Ext2 Installable File System for Windows";[18] FreeOTFE also supports them.

Cryptsetup/LUKS and the required infrastructure have also been implemented on the DragonFly BSD operating system.[19]

See also

[edit]

References

[edit]
  1. ^abFruhwirth, Clemens (18 July 2005)."New Methods in Hard Disk Encryption"(PDF).Vienna University of Technology. Retrieved22 August 2024.
  2. ^Peters, Mike."Encrypting partitions using dm-crypt and the 2.6 series kernel".Linux.com. Archived fromthe original on 11 July 2012. Retrieved22 August 2024.
  3. ^abcW. Michael Petullo (2007-01-18)."Disk encryption in Fedora: Past, present and future". Red Hat Magazine. Archived fromthe original on 2008-10-10. Retrieved2007-04-20.
  4. ^"AUTHORS".GitLab. Retrieved7 September 2019.
  5. ^ab"docs · master · cryptsetup / cryptsetup".GitLab. Retrieved10 October 2024.
  6. ^"The cryptsetup textual domain".Translation Project. Retrieved7 September 2019.
  7. ^"COPYING".GitLab. Retrieved7 September 2019.
  8. ^"COPYING.LGPL".GitLab. Retrieved7 September 2019.
  9. ^"cryptsetup FAQ".
  10. ^Clemens Fruhwirth (2004-07-15)."TKS1 – An anti-forensic, two level, and iterated key setup scheme"(PDF).Draft. Retrieved2006-12-12.
  11. ^Milan Broz (2012-04-24)."[dm-crypt] Does dm-crypt support journaling filesystem transactional guarantees?". saout.de. Retrieved2014-07-08.
  12. ^Mikulas Patocka (2009-06-22)."kernel/git/torvalds/linux.git".Linux kernel source tree. kernel.org. Retrieved2014-07-08.
  13. ^"dm-crypt: Linux kernel device-mapper crypto target – IV generators". cryptsetup. 2014-01-11. Retrieved2015-04-05.
  14. ^"dm-crypt: Linux kernel device-mapper crypto target". Retrieved2015-04-05.
  15. ^"[dm-devel] [PATCH 2/2] dm-crypt: Add TCW IV mode for old CBC TCRYPT containers". redhat.com. Retrieved2014-06-17.
  16. ^Trefny, Vojtech (25 Jan 2020).BitLocker disk encryption on Linux(PDF). DevConf CZ.
  17. ^cryptsetup(8) – Linux Programmer'sManual – Administration and Privileged Commands
  18. ^"Ext2 IFS For Windows".fs-driver.org. Retrieved15 February 2015.
  19. ^Alex Hornung (2010-07-23)."HEADS UP: dm, lvm, cryptsetup and initrd on master".

External links

[edit]
Organization
Kernel
Support
People
Technical
Debugging
Startup
ABIs
APIs
Kernel
System Call
Interface
In-kernel
Userspace
Daemons,
File systems
Wrapper
libraries
Components
Variants
Virtualization
Adoption
Range
of use
Adopters
Linux kernel
Controversies
Distributions
Organizations
Adoption
Media
Professional related certifications
General
Variants
Kernel
Architectures
Components
Process management
Concepts
Scheduling
algorithms
Memory management,
resource protection
Storage access,
file systems
Supporting concepts
Retrieved from "https://en.wikipedia.org/w/index.php?title=Dm-crypt&oldid=1261009941"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp