ํค์ด ํ๋ธ๋ฅด.
๋๋ ๋น์ ์๊ฒ ์์ ํ๋ก์ ํธ๋ฅผ ์๊ฐํ๊ณ ์ถ์ต๋๋ค.
ํ์ผ ์์คํ
์ ์จ๊ฒจ์ง ์ ๋ณด ์ ์ฅ์ ๋ํ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์์ต๋๋ค. ะคะก).
์ด๋ ๊ต์ก ๋ชฉ์ ์ผ๋ก ๊ธฐ๋ฐ ์ ๋ณด๋ฅผ ํ์น๋ ๋ฐ ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
์์ฃผ ์ค๋๋ Linux FS๊ฐ ํ๋กํ ํ์
์ผ๋ก ์ ํ๋์์ต๋๋ค.
ะ ะตะฐะปะธะทะฐัะธั
๊ตฌํ ๊ณ ๋ ค ์ฌํญ
ext2 ํ์ค์ "ํด๋ช
"ํ๋ ๊ฒ์ด ์ข๋ค๋ฉด FS์์ ์ด๋ฅผ ๋์ฒดํ ์ ์์ต๋๋ค.
์ํธํํ์ง ์๊ณ ์จ๊ฒจ์ง ์ ๋ณด๋ฅผ ์ ์ฅํ๋ฉด FS์ ๋ชจํธํจ์๋ ๋ถ๊ตฌํ๊ณ ํนํ ํ๋ก๊ทธ๋๋จธ๊ฐ ๋ฌด์์ ์ฐพ์์ผ ํ ์ง ์๊ณ ์๋ ๊ฒฝ์ฐ์๋ ์ฌ์ ํ ๋๋ฌด ๋์ ๋๋๋ค. ๋ฐ๋ผ์ ์์ค ํ์ผ์ ๋ชจ๋ ๋ธ๋ก์ ์ํธํํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ ๋ ๋ธ๋ก์ํธ๋ฅผ ์ ํํ์ด์
์ฝ์ ๋ ํ์ํ ๋ธ๋ก์ ๋ค๋ฅธ ๋ชจ๋ ๋ธ๋ก๊ณผ ๋ถ๋ฆฌํ๊ธฐ ์ํด ๋ธ๋ก ์์ ๋ถ๋ถ์ ๊ฐ ๋ธ๋ก์ ํน์ ๋ง์ปค๋ฅผ ์ถ๊ฐํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ด ํ ํฐ์ ์์ค ํ์ผ์ ๋ธ๋ก ๋ฒํธ์ ๋ฐ๋ผ ์ํธํ๋์์ต๋๋ค. ์ด ํธ๋ฆญ์ ์ฌ์ฉํ๋ฉด ํ์ํ ๋ธ๋ก์ ์ฐพ์ ์ ์์ ๋ฟ๋ง ์๋๋ผ ์ฌ๋ฐ๋ฅธ ์์๋ฅผ ์ธ์ํ๋ ๊ฒ๋ ์ฆ์ ๊ฐ๋ฅํด์ก์ต๋๋ค.
์์คํ ์ ์ผ๋ฐ์ ์ธ ์๋ ์๋ฆฌ.
๋ น์ ์๊ณ ๋ฆฌ์ฆ
ํฌ์ธํธ :
- ๋จผ์ ์์ค ํ์ผ ์์คํ ์ ์ผ๋ถ ์ ๋ณด๋ฅผ ์๋๋ค.
- ์ด ์ ๋ณด๋ฅผ ์ญ์ ํ์ญ์์ค(๋ชจ๋๋ ์๋ ์๋ ์์).
- ์จ๊ธธ ํ์ผ์ ๋์ผํ ๊ธธ์ด์ ๋ธ๋ก์ผ๋ก ๋๋์ด ๋ง์ปค๋ฅผ ์ถ๊ฐํฉ๋๋ค.
- ์ด ๋ธ๋ก์ ์ํธํํ์ญ์์ค.
- ๋น FS ๋ธ๋ก์ ์ํธํ๋ ๋ธ๋ก์ ๋ฐฐ์นํฉ๋๋ค.
๋ธ๋ก ๋ค์ด์ด๊ทธ๋จ ์ ํธ๊ฐ๋ฅผ ์ํ
์๋๋ ๋
น์ ์๊ณ ๋ฆฌ์ฆ์ ๋ธ๋ก ๋ค์ด์ด๊ทธ๋จ์
๋๋ค. ์๊ณ ๋ฆฌ์ฆ์ XNUMX๊ฐ์ ํ์ผ์ ์
๋ ฅ์ผ๋ก ๋ฐ์ต๋๋ค.
-์์ ๊ฐ๋ฅํ ํ์ผ ์์คํ
์ด๋ฏธ์ง
- ์คํ
๊ฐ๋
ธ๊ทธ๋ํผ์ ๋์์ด ๋๋ ํ์ผ
-AES์ฉ ์ํธํ ํค๊ฐ ํฌํจ๋ ํ์ผ
-๋ง์ปค๊ฐ ์๋ ํ์ผ.
์ด ์๊ณ ๋ฆฌ์ฆ์๋ ํ ๊ฐ์ง ๋จ์ ์ด ์๋ค๋ ์ ์ ๋ฐ๋ก ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ํ์ผ์ FS์ ์ด ํ, ์ด๋ฌ์ง๋ง ์๋ก์ด ์ ๋ณด๋ ์์ถ ํ์ผ์ ํ ๋นํ ๋ธ๋ก์ ๋ค์ด๊ฐ ์ ์๊ธฐ ๋๋ฌธ์ FS์ ์๋ก์ด ๋ด์ฉ์ ๊ธฐ๋กํฉ๋๋ค. ํ์ง๋ง ์ด๋ ๊ฒ ํ๋ฉด "ํธ๋์ ๋น ๋ฅด๊ฒ ๋ฎ์" ๊ฐ๋ฅ์ฑ๋ ์ด๋ฆฝ๋๋ค.
๊ทธ๋ฌ๋ ์ด ๋ฌธ์ ๋ฅผ ์ด๋ป๊ฒ ํด๊ฒฐํ ์ ์๋์ง๋ ๋งค์ฐ ๋ถ๋ช
ํฉ๋๋ค. FS์ ๋ธ๋ก์ ์ฐ๊ธฐ ์ํ ์๊ณ ๋ฆฌ์ฆ์ ๋ค์ ์์ฑํด์ผ ํฉ๋๋ค. ์ด๋ ์ดํดํ ์ ์์ง๋ง ์์ฒญ๋๊ฒ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฌ๋ ์์
์
๋๋ค.
๊ฐ๋
์ฆ๋ช
์ ์ํด ๋๋ ์ด๊ฒ์ ๊ตฌํํ์ง ์์์ต๋๋ค.
๊ฒฐ๊ณผ์ ์ผ๋ก FS์๋ ๋ค์๊ณผ ๊ฐ์ ๋ณ๊ฒฝ ์ฌํญ์ด ์ ์ฉ๋ฉ๋๋ค. ์ด๋ ์คํ
๊ฐ๋
ธ๊ทธ๋ํผ(์ค๋์ค ํ์ผ์ด ์ด์ ์ ๋
น์๋จ) ์ด์ ์ FS์ ๋ชจ์ต์
๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ์ด๋ฏธ ์์ถ๋ ์ ๋ณด๋ฅผ ๊ฐ์ถ FS์ ๋ชจ์ต์
๋๋ค.
์ฝ๊ธฐ ์๊ณ ๋ฆฌ์ฆ
ํฌ์ธํธ :
- ํค์ ๋ง์ปค ๊ตฌ์ฑ ๋ฐฉ๋ฒ์ ๋ํ ์ง์์ ๋ฐํ์ผ๋ก N์ ํ์ผ ์์คํ ๋ธ๋ก์ ๊ธธ์ด๋ฅผ ๊ณฑํ ๊ฐ์ด ์์ถ ํ์ผ์ ๊ธธ์ด๋ณด๋ค ํฌ๋ค๋ ๊ฒ์ ๋ณด์ฅํ๋ฉด์ ์ฒซ ๋ฒ์งธ N๊ฐ์ ๋ง์ปค๋ฅผ ๊ตฌ์ฑํฉ๋๋ค.
- ๋ง์ปค๋ก ์์ํ๋ FS์ ๋ธ๋ก์ ๊ฒ์ํฉ๋๋ค.
- ์์ ๋ ๋ธ๋ก์ ํด๋ ํ๊ณ ๋ง์ปค๋ฅผ ๋ถ๋ฆฌํฉ๋๋ค.
- ๊ฒฐ๊ณผ ๋ธ๋ก์ ์ฌ๋ฐ๋ฅธ ์์๋ก ์์งํ๊ณ ์์ค ํ์ผ์ ๊ฐ์ ธ์ต๋๋ค.
๋ธ๋ก ๋ค์ด์ด๊ทธ๋จ ์ ํธ๊ฐ๋ฅผ ์ํ
์๋๋ ๋
น์ ์๊ณ ๋ฆฌ์ฆ์ ๋ธ๋ก ๋ค์ด์ด๊ทธ๋จ์
๋๋ค. ์๊ณ ๋ฆฌ์ฆ์ ์ธ ๊ฐ์ ํ์ผ์ ์
๋ ฅ์ผ๋ก ๋ฐ์ต๋๋ค.
-ํ์ผ ์์คํ
์ด๋ฏธ์ง;
-AES์ฉ ์ํธํ ํค๊ฐ ํฌํจ๋ ํ์ผ
-๋ง์ปค๊ฐ ์๋ ํ์ผ.
ํ๋ก๊ทธ๋จ์ด ์คํ๋ ํ ์คํ
๊ฐ๋
ธ๊ทธ๋ํ ํ์ผ ์์คํ
์์ ์ถ์ถ๋ ํ์ผ์ธ ์ฝ๊ธฐ ํ์ผ์ด ๋ํ๋ฉ๋๋ค. ํค๋ ๋ง์ปค๊ฐ ์๋ชป ์ง์ ๋ ๊ฒฝ์ฐ ์ฝ๊ธฐ ํ์ผ์ ๋น์ด ์๊ฒ ๋ฉ๋๋ค.
(๋ฏธ์ฉ์ ์ข์ํ๋ ๊ฒฝ์ฐ ํ์ผ๋ฟ๋ง ์๋๋ผ ๋ฉํ ์ ๋ณด(ํ์ผ ์ด๋ฆ, ๊ถํ, ๋ง์ง๋ง ์์ ์๊ฐ ๋ฑ)๊ฐ ํฌํจ๋ "ํค๋"๋ ์ฝ์
ํ ์ ์์ต๋๋ค.)
์๋ ์๋ํ
ํธ์๋ฅผ ์ํด Linux์์ ์คํ์ ์๋ํํ๋๋ก bash ์คํฌ๋ฆฝํธ๊ฐ ์์ฑ๋์์ต๋๋ค(Ubuntu 16.04.3 LTS์์ ํ
์คํธ๋จ).
์ถ์ ๋จ๊ณ๋ฅผ ๋จ๊ณ๋ณ๋ก ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๊ธฐ๋ก :
- sudo Copy_Flash.sh โDEVICEโ - DEVICE(ํ๋์)์์ FS ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์ต๋๋ค.
- ./Write.sh โFILEโ โKEYโ โMARKERโ โ ๊ฐ์ ํ๊ฒฝ์ ์์ฑํ๊ณ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ค์ด๋ก๋ํ ํ ์ฐ๊ธฐ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํฉ๋๋ค.
- sudo ./Write_Flash.sh โDEVICEโ โ ๋ณ๊ฒฝ๋ FS๋ฅผ DEVICE์ ๋ค์ ์๋๋ค.
๋ ์:
- sudo Copy_Flash.sh โDEVICEโ - DEVICE(ํ๋์)์์ FS ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์ต๋๋ค.
- ./Read.sh "KEY" 'MARKER" - ๊ฐ์ ํ๊ฒฝ์ ์์ฑํ๊ณ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ค์ด๋ก๋ํ ํ ์ฝ๊ธฐ์ฉ ์คํต์ ์คํํฉ๋๋ค.
- ํ์ฌ ๋๋ ํฐ๋ฆฌ์์ ์ฝ๊ธฐ ํ์ผ์ ์ฝ๋๋ค. ์ด๋ ์์ถ๋ ์ ๋ณด์ ๋๋ค.
๊ฒฐ๋ก
์ด ์คํ
๊ฐ๋
ธ๊ทธ๋ํผ ๋ฐฉ๋ฒ์ ์๋ง๋ ๋ค์๊ณผ ๊ฐ์ ๋ณด๋ค ๋๋ฆฌ ์ฌ์ฉ๋๋ ํ์ผ ์์คํ
์ ๋ํ ๊ฐ์ , ์ถ๊ฐ ํ
์คํธ ๋ฐ ํ์ฅ์ด ํ์ํ ๊ฒ์
๋๋ค.
ํ์ง๋ง ์ด ์์
์ ๋ชฉ์ ์ ํ์ผ ์์คํ
์ ์จ๊ฒจ์ง ์ ๋ณด ์ ์ฅ์ด ๊ฐ๋ฅํ ์๋ฆฌ๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ฒ์ด์์ต๋๋ค.
์ด๋ฌํ ์๊ณ ๋ฆฌ์ฆ์ ๋์์ผ๋ก ์ ๋ณด๋ฅผ ๋๋ ค์ ์์ด ์ ์ฅํ ์ ์์ผ๋ฉฐ, ํค๋ฅผ ์๊ณ ์๋ค๋ฉด ๋ฌด์ฐจ๋ณ ๋์
์ด ์๋(๊ทธ๋ฌ๋ ๋งค์ฐ ๊ธด ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ) ํด๋น ์์คํ
์ ํดํนํ ์ ์๋ค๋ฉด ํค๋ฅผ ๋ชจ๋ฅด๊ณ ๋ ์ด ์์คํ
์ ํดํนํ ์ ์์ต๋๋ค. ์ ๊ฐ ๋ณด๊ธฐ์๋ ์์คํ
์ด ์ ๋์ ์ผ๋ก ์์ ์ ์ธ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๊ฒ์ด ๋ณ๋์ ๊ธฐ์ฌ๋ฅผ ์์ฑํ๋ ์ด์ ๊ฐ ๋ ์ ์์ต๋๋ค.
๋ชจ๋ ์ฝ๋๋ Python ๋ฒ์ 3.5.2์์ ๊ตฌํ๋ฉ๋๋ค.
(์, ์, ํ๋ก๋์
๋ฒ์ ์ ๊ฒฝ์ฐ C์ ๊ฐ์ด "๋น ๋ฅธ" ํญ๋ชฉ์ ์์ฑํด์ผ ํ๋ค๋ ๊ฒ์ ์๊ณ ์์ต๋๋ค ๐)
์ด ๊ตฌํ์์ ์คํ
๊ฐ๋
ธ๊ทธ๋ํผ์ ์
๋ ฅ ํ์ผ ํฌ๊ธฐ๋ 1000kB๋ฅผ ์ด๊ณผํด์๋ ์ ๋ฉ๋๋ค.
์ฌ์ฉ์์๊ฒ ๊ฐ์ฌ์ ๋ง์์ ์ ํ๊ณ ์ถ์ต๋๋ค.
์ถ์ฒ : habr.com