dm-crypt ๋ชจ๋์ ์ฌ์ฉํ์ฌ Linux์์ ๋์คํฌ ํํฐ์ ์ ์ํธํ๋ฅผ ๊ตฌ์ฑํ๊ธฐ ์ํ Cryptsetup 2.7 ์ ํธ๋ฆฌํฐ ์ธํธ๊ฐ ๊ฒ์๋์์ต๋๋ค. dm-crypt, LUKS, LUKS2, BITLK, loop-AES ๋ฐ TrueCrypt/VeraCrypt ํํฐ์ ์์ ์ด ์ง์๋ฉ๋๋ค. ๋ํ dm-verity ๋ฐ dm-integrity ๋ชจ๋์ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ ์ ์ด๋ฅผ ๊ตฌ์ฑํ๋ veritysetup ๋ฐ integritysetup ์ ํธ๋ฆฌํฐ๋ ํฌํจ๋์ด ์์ต๋๋ค.
์ฃผ์ ๊ฐ์ ์ฌํญ:
- ํ๋์จ์ด ์ํธํ ์ฅ์น๊ฐ ์ปจํธ๋กค๋ฌ์ ์ง์ ๋ด์ฅ๋์ด ์๋ OPAL2 TCG ์ธํฐํ์ด์ค๊ฐ ์๋ SED(์์ฒด ์ํธํ ๋๋ผ์ด๋ธ) SATA ๋ฐ NVMe ๋๋ผ์ด๋ธ์์ ์ง์๋๋ OPAL ํ๋์จ์ด ๋์คํฌ ์ํธํ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ํํธ์ผ๋ก OPAL ์ํธํ๋ ๋
์ ํ๋์จ์ด์ ์ฐ๊ฒฐ๋์ด ๊ณต๊ฐ ๊ฐ์ฌ์ ์ฌ์ฉํ ์ ์์ง๋ง, ๋ค๋ฅธ ํํธ์ผ๋ก๋ ์ํํธ์จ์ด ์ํธํ์ ๋ํ ์ถ๊ฐ ๋ณดํธ ์์ค์ผ๋ก ์ฌ์ฉ๋ ์ ์์ด ์ฑ๋ฅ ์ ํ๋ก ์ด์ด์ง์ง ์์ต๋๋ค. CPU์ ๋ถํ๋ฅผ ์์ฑํ์ง ์์ต๋๋ค.
LUKS2์์ OPAL์ ์ฌ์ฉํ๋ ค๋ฉด CONFIG_BLK_SED_OPAL ์ต์ ์ ์ฌ์ฉํ์ฌ Linux ์ปค๋์ ๋น๋ํ๊ณ Cryptsetup์์ ํ์ฑํํด์ผ ํฉ๋๋ค(OPAL ์ง์์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋นํ์ฑํ๋์ด ์์ต๋๋ค). LUKS2 OPAL ์ค์ ์ ์ํํธ์จ์ด ์ํธํ์ ์ ์ฌํ ๋ฐฉ์์ผ๋ก ์ํ๋ฉ๋๋ค. ๋ฉํ๋ฐ์ดํฐ๋ LUKS2 ํค๋์ ์ ์ฅ๋ฉ๋๋ค. ํค๋ ์ํํธ์จ์ด ์ํธํ(dm-crypt)์ฉ ํํฐ์ ํค์ OPAL์ฉ ์ ๊ธ ํด์ ํค๋ก ๋ถํ ๋ฉ๋๋ค. OPAL์ ์ํํธ์จ์ด ์ํธํ(cryptsetup luksFormat --hw-opal)์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค. ) ๋ฐ ๋ณ๋๋ก(cryptsetup luksFormat โhw-opal-only ). OPAL์ LUKS2 ์ฅ์น์ ๋์ผํ ๋ฐฉ์(์ด๊ธฐ, ๋ซ๊ธฐ, luksSuspend, luksResume)์ผ๋ก ํ์ฑํ ๋ฐ ๋นํ์ฑํ๋ฉ๋๋ค.
- ๋ง์คํฐํค์ ํค๋๊ฐ ๋์คํฌ์ ์ ์ฅ๋์ง ์๋ ์ผ๋ฐ ๋ชจ๋์์๋ ๊ธฐ๋ณธ ์ํธ๋ aes-xts-plain64์ด๊ณ ํด์ฑ ์๊ณ ๋ฆฌ์ฆ์ sha256(์ฑ๋ฅ์ ๋ฌธ์ ๊ฐ ์๋ CBC ๋ชจ๋ ๋์ XTS๋ฅผ ์ฌ์ฉํ๊ณ , sha160์ ์ฌ์ฉ) ์ค๋๋ripmd256 ํด์ ๋์ ).
- open ๋ฐ luksResume ๋ช ๋ น์ ์ฌ์ฉํ๋ฉด ํํฐ์ ํค๋ฅผ ์ฌ์ฉ์๊ฐ ์ ํํ ์ปค๋ ํค๋ง(ํค๋ง)์ ์ ์ฅํ ์ ์์ต๋๋ค. ํค๋ง์ ์ก์ธ์คํ๊ธฐ ์ํด "--volume-key-keyring" ์ต์ ์ด ๋ง์ cryptsetup ๋ช ๋ น์ ์ถ๊ฐ๋์์ต๋๋ค(์: 'cryptsetup open --link-vk-to-keyring "@s::%user:testkey" tst').
- ์ค์ ํํฐ์ ์ด ์๋ ์์คํ ์์ PBKDF Argon2์ ๋ํ ํฌ๋งท์ ์ํํ๊ฑฐ๋ ํค ์ฌ๋กฏ์ ์์ฑํ๋ฉด ์ด์ ์ฌ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ๋ฐ๋ง ์ฌ์ฉ๋๋ฏ๋ก RAM ์ฉ๋์ด ์ ์ ์์คํ ์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ถ์กฑํด์ง๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋ฉ๋๋ค.
- ์ธ๋ถ LUKS2 ํ ํฐ ์ฒ๋ฆฌ๊ธฐ(ํ๋ฌ๊ทธ์ธ)์ ๋ํ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ง์ ํ๋ "--external-tokens-path" ์ต์ ์ด ์ถ๊ฐ๋์์ต๋๋ค.
- tcrypt๋ VeraCrypt์ ๋ํ Blake2 ํด์ฑ ์๊ณ ๋ฆฌ์ฆ์ ๋ํ ์ง์์ ์ถ๊ฐํ์ต๋๋ค.
- Aria ๋ธ๋ก ์ํธ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- OpenSSL 2 ๋ฐ libgcrypt ๊ตฌํ์ Argon3.2์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์ด libargon์ด ํ์ํ์ง ์์ต๋๋ค.
์ถ์ฒ : opennet.ru