ํ์ด๋ธ๋ฆฌ๋ ์ํธ ์์คํ ์์ ๋ฉ์์ง๋ฅผ ์/๋ณตํธํ ํ ๋ ๋์นญํค ์ํธ๊ฐ ๋ง์ด ์ฌ์ฉ๋๋ค. ๋์นญ ํค ์ํธ ๋ฐฉ์์ผ๋ก๋ ๋ธ๋ก ์ํธ์ ์คํธ๋ฆผ ์ํธ๊ฐ ์กด์ฌํ๋ค. ํ๋์๋ ๋ธ๋ก ์ํธ๊ฐ ๋ง์ด ์ฌ์ฉ๋๊ณ ์์ผ๋ฉฐ ๊ธด ๋นํธ์ ๋ฉ์์ง๋ฅผ ์ํธํ ์ฒ๋ฆฌ ํ๊ธฐ ์ํด์ ๋ธ๋ก์ํธ ๋ชจ๋ ๋ฐฉ์์ด ํ์ํ๋ค.
๋ธ๋ก ์ํธ๋ ๋ธ๋ก ๋จ์๋ฅผ ์ํธํ ํ๋ ์ํธ๊ธฐ์ ๋ก์ ํน์ ๋นํธ ์์ ๋ธ๋ก ์งํฉ์ ํ๊บผ๋ฒ์ ์ฒ๋ฆฌํ๋ค. ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ๋ฐ๋ผ ์ฒ๋ฆฌํ๋ ๋ธ๋ก bit ๋จ์๊ฐ ๋ค๋ฅผ ์ ์๋ค.
๋์นญํค ์ํธ์ ๋๋ค๋ฅธ ๊ธฐ์ ์ธ ์คํธ๋ฆผ ์ํธ๋ ์กด์ฌํ๋ค. ๋ณดํต ํค์คํธ๋ฆผ๊ณผ ํ๋ฌธ์ xor ์ฐ์ฐํ์ฌ ์ํธํ๊ฐ ์งํ๋๋ค.
๋ธ๋ก ์ํธ์ ์ฃผ์ ๋ชจ๋์ ๋ํด์ ์ดํด๋ณด์. ์ผ๋ฐ์ ์ธ ์ํฉ์ ์๊ฐํด๋ณด์! AES-128์ ๊ฐ๊ณ ์ํธํ๋ฅผ ํ ๋ 16๋ฐ์ดํธ๋ฅผ ์ํธํ๋ฅผ ํ๋๋ฐ, ๋ฐ์ดํฐ ํ๋ฌธ์ ์ํธํ ํ๊ฒ ๋๋ค๋ฉด 16๋ฐ์ดํธ ์ด์์ ์๋ฃ์ ๋ํด์ ์ํธํ๋ฅผ ์ํํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ ๊ฒ์ด๋ค. ๊ธด ํ๋ฌธ์ ์ํธํ ํ ๋ ๋ธ๋ก ์ํธ ๋ชจ๋๊ฐ ์ฌ์ฉ๋๋ค.
์์์ ์ธ๊ธ๋ ECB, CBC, CFB, OFB, CTR ๋ธ๋ก ์ํธ ๋ชจ๋๋ ๊ตญ์ ISOIC ๋ธ๋ก์ํธ ํ์ค ๋ชจ๋๋ก ์ ์ ๋์ด์๋ค.
ECB ๋ชจ๋๋ ํ๋ฌธ์ ๋ธ๋ก ๋จ์๋ก ๋๋ ์ ๋ธ๋ก ์ํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ๋ก ์ํธํ ํ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ณดํต ๋ธ๋ก ์ํธ๋ฅผ ์ฌ์ฉํ ๋ padding ๋ฐฉ์์ด ํ์ํ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฉฐ ๋นํธ๋ฅผ ๋ง๋ถ์ผ ๋ ์ฌ์ฉํ๋ค.
์๋ฅผ ๋ค์ด AES์ ๋ธ๋ก์ํธ๋ฅผ ๊ฒฐํฉํ์ฌ ์ฌ์ฉํ์ ๋ ๊ฐ ๋ธ๋ก์ 128๋นํธ๋จ์๋ก ์ฒ๋ฆฌ๋์ด์ผ ํ๋ค. ๋ง์ฝ ๋ฉ์์ง๋ฅผ 128๋นํธ ๋จ์์ ๋ธ๋ก์ผ๋ก ๋๋ด๋๋ฐ 128๋นํธ ๋ณด๋ค ๋ชจ์๋ ๊ฒฝ์ฐ๊ฐ ์๋ค๋ฉด padding ์ ํตํด ์ถ๊ฐ์ ์ธ ๋นํธ๋ฅผ ๋๋ถ์ฌ์ ์ํธํ๋ฅผ ์งํํ๋ค.
์์๋ฅผ ์ดํด๋ณด์!
๋ธ๋ก ์ํธ๊ฐ AES๋ผ๊ณ ๊ฐ์ ํ์ ๋ ํ๋ฌธ ๋ธ๋ก ๋จ์๊ฐ ์ ๋ถ 128 ๋นํธ๊ฐ ๋์ด์ผ ํ๋ค. ํ๋ฌธ ๋ธ๋ก๊ณผ ๋น๋ฐํค๋ฅผ AES์ ์ ๋ ฅ์ผ๋ก ๋ฃ์ด์ ์ํธ๋ฌธ ๋ธ๋ก์ ์์ฑํ๋ค. ๋ชจ๋ ๋ธ๋ก์ ๋ํด์ ์ํธ๋ฌธ ๋ธ๋ก์ด ์์ฑ๋๋ฉด ์ ์ฒด ๋ธ๋ก์ด ์ํธํ๊ฐ ๋๋ ๊ฒ์ด๋ค. ์ํธํ ๊ณผ์ ์ ๋ฐ๋๊ฐ ๋ณตํธํ ๊ณผ์ ์ด๋ค.
ECB ๋ชจ๋๋ ๋ถ์์ ํ ๋ชจ๋์ด๋ค. ๊ณต๊ฒฉ์ด ๊ฐ๋จํ๊ธฐ ๋๋ฌธ์ด๋ค. ์๋ฅผ ๋ค์ด ์ด๋ ์ํ์ ์ก๊ธ ์๋ขฐ ๋ฐ์ดํฐ๊ฐ ๋ค์๊ณผ ๊ฐ์ 3๊ฐ์ ๋ธ๋ก์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค๊ณ ๊ฐ์ ํด๋ณด์!
- ๋ธ๋ก 1: ์ก๊ธ์์ ์ํ ๊ณ์ข๋ฒํธ
- ๋ธ๋ก 2: ์ก๊ธ์ฒ์ ์ํ ๊ณ์ข๋ฒํธ
- ๋ธ๋ก 3: ์ก๊ธ์ก
A-5374์ ๊ณ์ข๋ก ๋ถํฐ B-6671์ ๊ณ์ข๋ก 1์ต์์ ์ก๊ธํ๋ผ๋ ์ก๊ธ ์๋ขฐ ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค์ด๋ณด์!
์ฐ์ธก์ ๋ฐ์ดํฐ๋ ์์คํค ์ฝ๋์ด๊ธฐ ๋๋ฌธ์ ์ข์ธก๊ณผ ๊ฐ์ด ํํ๋ ์ ์๋ค. ์๋ณธ ๋ฐ์ดํฐ๋ฅผ ECB ๋ชจ๋๋ฅผ ํตํด ์ํธํ๋ฅผ ์งํํ์์ ๋ ์ํธ๋ฌธ ๋ธ๋ก 1, 2, 3์ผ๋ก ๋ณํ๋์ด์ ์ ์ ์๋ 2์ง ์์ด๋ก ์ํธ๋ฌธ์ด ์์ฑ๋๋ค.
์ํธ๋ฌธ์ ์ 3์๋ ํจํท ์บก์ฒ๋ฅผ ํตํด ์ํธ๋ฌธ ๋ธ๋ก์ ๋ณผ ์ ์์ผ๋ฉฐ ์ฌ์ง์ด ์ํธ๋ฌธ ๋ธ๋ก์ ๋ฐ๊ฟ์น๊ธฐ ํ ์๋ ์๋ค.
๋ธ๋ก์ ๋ฐ๊ฟ์น๊ธฐ ํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์์ ์๋ ์ ํ ๋ค๋ฅธ ๋ด์ฉ์ ๋ณด๊ฒ ๋์๋ค. ๋ธ๋ก์ ๋ฐ๊ฟ์ผ๋ก์จ ๋ด์ฉ๋ฌผ์ ํฐ ๋ณํ๋ฅผ ์ค ์ ์๋ ECB ๋ชจ๋์ ์ทจ์ฝ์ ์ด ์กด์ฌํ๋ค๋ ์ ๊ธฐ์ตํด๋์.
CBC ๋ชจ๋๋ Cipher Block Chaining ๋ชจ๋์ ์ฝ์๋ก์จ ์ํธ๋ฌธ ๋ธ๋ก์ด ๋ง์น ์ฒด์ธ์ฒ๋ผ ์ฐ๊ฒฐ๋์ด์๋ค. CTR ๋ชจ๋์ ๊ฐ์ด ๋ง์ด ์ฌ์ฉ๋์๋ ๋ฐฉ์์ด์์ผ๋ ํ๋์๋ ๋ง์ด ์ฌ์ฉ๋์ง ์๋๋ค.
CBC๋ก ์์ฑ๋ ์ํธ๋ฌธ ๋ธ๋ก์ด ์์ฑ๋ ๋ ํ์ฌ ํ๋ฌธ ๋ธ๋ก ๋ฟ๋ง ์๋๋ผ ๊ทธ ์ด์ ์ ํ๋ฌธ ๋ธ๋ก ๋ค์ ์ํฅ๋ ๋ฐ๋๋ค. ์ด๊ธฐ ๋ฒกํฐ๊ฐ ํ์ํ๋ค. ์ด๊ธฐ ๋ฒกํฐ๋ ๋ณดํต ๋์๋ฅผ ์ฌ์ฉํ๋ฉฐ ๋น๋ฐ์ ์ ์งํ ํ์๋ ์๋ค.
ํ๋ฌธ ๋ธ๋ก์ด ๋ง๋ค์ด ์ก๋ค๊ณ ๊ฐ์ ํด๋ณด์! ํ๋ฌธ ๋ธ๋ก 1,2,3,4๋ฅผ ๋ธ๋ก์ํธ CBC๋ชจ๋์ ๋ฃ์ด์ ์ํธ๋ฌธ์ ์์ฑํ๋ค. ์ด ๋ ์ด๊ธฐ๋ฒกํฐ IV๊ฐ์ ํ๋ฌธ ๋ธ๋ก 1๊ณผ XOR ์ฐ์ฐํ์ฌ ์ํธ๋ฌธ์ ๋ง๋ค์ด๋ธ๋ค. ์ํธ๋ฌธ ๋ธ๋ก 2์ ๋ฒกํฐ ๊ฐ์ผ๋ก ์ํธ๋ฌธ ๋ธ๋ก 1๊ฐ์ ์ฒด์ด๋ ํ์ฌ ์์ฑํ๋ค.
- ์ ๋ฆฌํด ๋ณด์๋ฉด, ์ํธ๋ฌธ ๋ธ๋ก 4๋ ํ๋ฌธ ๋ธ๋ก 4์ ์ํธ๋ฌธ ๋ธ๋ก 3์ XOR ์ทจํด์ ์์ฑํ๊ณ
- ์ํธ๋ฌธ ๋ธ๋ก 3์ ํ๋ฌธ ๋ธ๋ก 3๊ณผ ์ํธ๋ฌธ ๋ธ๋ก 2์ XOR ์ทจํด์ ์์ฑํ๋ฉฐ
- ์ํธ๋ฌธ ๋ธ๋ก 2๋ ํ๋ฌธ ๋ธ๋ก 2์ ์ํธ๋ฌธ ๋ธ๋ก 1์ XOR ์ทจํด์ ์์ฑํ๊ณ
- ์ํธ๋ฌธ ๋ธ๋ก 1์ ํ๋ฌธ ๋ธ๋ก 1๊ณผ ์ด๊ธฐ๋ฒกํฐ๋ฅผ XOR ์ฐ์ฐํ์ฌ ์์ฑ๋๋ค.
๋ณตํธํ๋ ์์ ๊ฐ์ ๋ฐฉ์์ ๊ฑฐ๊พธ๋ก ์ด์ฉํ๋ฉด ๋๋ค.
- ์ํธ๋ฌธ ๋ธ๋ก 1์ ๋ณตํธํ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ ค์ ๋์จ ์ถ๋ ฅ๊ฐ๊ณผ ์ด๊ธฐ๋ฒกํฐ๋ฅผ XOR ์ฐ์ฐํ์ฌ ํ๋ฌธ ๋ธ๋ก 1์ด ๋๋ค.
- ์ํธ๋ฌธ ๋ธ๋ก 2, ์ํธ๋ฌธ ๋ธ๋ก 3๋ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋์ํ๋ค.
CFB ๋ชจ๋๋ Cipher text feedback mode์ ์ถ์ฝ์ด๋ก์จ ์คํธ๋ฆผ ์ํธ ํ์์ ๋ชจ๋์ด๋ฉฐ 1๋จ๊ณ ์์ ์ํธ๋ฌธ ๋ธ๋ก์ ์ํธ ์๊ณ ๋ฆฌ์ฆ์ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉํ๋ ๋ชจ๋์ด๋ค.
ํ๋จ๊ณ ์์ ์ํธ๋ฌธ ๋ธ๋ก์ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉํ๋ค. CFB ๋ชจ๋์์ ๋ณตํธํ๋ฅผ ์ํํ ๊ฒฝ์ฐ ๋ธ๋ก ์ํธ ์๊ณ ๋ฆฌ์ฆ ์์ฒด๋ ์ํธํ๋ฅผ ์ํํ๊ณ ์๋ค๋ ์ ์ด ECB๋ CFB๋ชจ๋์๋ ๋ค๋ฅธ์ ์ด๋ค. ์ด๊ธฐ ๋ฒกํฐ๊ฐ ํ์ํ๋ฉฐ ํค์คํธ๋ฆผ ์ํธ์ด๋ค. ํค์คํธ๋ฆผ๊ณผ ํ๋ฌธ ๋ธ๋ก์ XOR ํ์ฌ ์ํธํ๋ฅผ ์งํํ๋ค.
ํ๋ฌธ ๋ธ๋ก์ด ์์ฑ๋ ๋ ์ด๊ธฐ ๋ฒกํฐ๊ฐ ์ํธํ๋์ด ๋์จ ๊ฒฐ๊ณผ๊ฐ์ ํ๋ฌธ ๋ธ๋ก๊ณผ XOR์ฐ์ฐํ์ฌ ์ํธ๋ฌธ ๋ธ๋ก 1์ ์์ฑํ๋ค. ์ด๊ธฐ๋ฒกํฐ์ ์ํธํ ๊ฒฐ๊ณผ์ธ ์์ํ์ด ํค์คํธ๋ฆผ์ฒ๋ผ ์ฌ์ฉ๋๋ ๊ฒ์ด๋ค.
CFB ๋ณตํธํ๋ ์ด์๊ฐ ๋ซํ์๋ ๋ชจ์ต์ ๋ณด๋ฉด ์ ์ ์๋์ ๋ธ๋ก์ํธ์์๋ ์ํธํ ๊ณผ์ ์ ๊ฑฐ์น๋ค. ์ ์ด๋ฏธ์ง์์ ์ํธ๋ฌธ ๋ธ๋ก์ด ๋ค์ ๋ฒกํฐ ๊ฐ์ผ๋ก ๋ค์ด๊ฐ ๋ ์ํธํ ๋ ๋ ์์๊ฐ ์๋ชป ํ๊ธฐ ๋์ด์๊ธฐ ๋๋ฌธ์ ๋นจ๊ฐ์ ์ ์ ๊ธฐ์ค์ผ๋ก ๋ณด๋ ๊ฒ์ด ์ ํํ๋ค.
OFB ๋ชจ๋๋ Output Feedback ๋ชจ๋์ด๋ค. ์คํธ๋ฆผ ์ํธ ๋ฐฉ์์ด๊ณ ์ด๊ธฐ ๋ฒกํฐ๋ฅผ ์ฌ์ฉํ๋ค.
OFB ๋ชจ๋์ ์ํธํ ๊ณผ์ ์ ์ดํด๋ณด์!
์ด๊ธฐ ๋ฒกํฐ๊ฐ ๋ค์ด์ค๋ฉด ์ํธํ๊ฐ ์งํ๋ ํ์ ํ๋ฌธ ๋ธ๋ก๊ณผ XOR ์ฐ์ฐ์ด ์งํ๋์ด ์ํธ๋ฌธ ๋ธ๋ก 1์ ์์ฑํ๋ค. ์ฌ๊ธฐ์ ์ฃผ๋ชฉํ ์ ์ ์ด๊ธฐ๋ฒกํฐ์ ์ํธํ ๊ฐ์ ์ ๋ ฅ์ผ๋ก ๋ฐ์์ ๋ค์ ์ํธํ๋ฅผ ์งํํ ํ์ ํ๋ฌธ ๋ธ๋ก 2์ XOR ์ฐ์ฐ์ ์งํํ๋ค๋ ์ ์ด๋ฉฐ ๊ฐ์ ๊ณผ์ ์ ๊ฑฐ์ณ ๋๋จธ์ง ์ํธ๋ฌธ ๋ธ๋ก์ด ์์ฑ๋๋ค.
CFB์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ธ๋ญ ์ํธ์ ์ํธํ ๊ณผ์ ์ผ๋ก ๊ตฌํ๋์ด ์๋ค. ์ด๊ธฐ ๋ฒกํฐ๊ฐ ์ํธํ ํด์ ์ํธ๋ฌธ ๋ธ๋ก๊ณผ XOR ์ฐ์ฐํ๋ฉด ํ๋ฌธ ๋ธ๋ก์ด ์์ฑ๋๋ฉฐ ๋๋จธ์ง ๋ธ๋ก ๋ํ ๋์ผํ ๋ฐฉ๋ฒ์ผ๋ก ๋ณตํธํ๊ฐ ์งํ๋๋ค.
CTR ๋ชจ๋๋ ํ์ฌ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๊ณ ์๋ค. Counter ๋ชจ๋๋ก ๋ถ๋ฆฌ๋ฉฐ 1์ฉ ์ฆ๊ฐํด๊ฐ๋ ์นด์ดํฐ๋ฅผ ์ํธํ ํ์ฌ ํค์คํธ๋ฆผ์ ๋ง๋ ๋ค์์ ํ๋ฌธ๊ณผ XOR ์ฐ์ฐํ๋ค.
์นด์ดํฐ์ ์ด๊ธฐ๊ฐ์ ๋์๋ฅผ ์ฌ์ฉํ๋ฉฐ 1์ฉ ์ฆ๊ฐํด๊ฐ๋ ํน์ง์ ๋ณด์ธ๋ค.
์นด์ดํฐ ๊ฐ์ด ๋ธ๋ก ์ํธ์ ์ ๋ ฅ๊ฐ์ผ๋ก ๋ค์ด์จ๋ค. ์ํธํ๋ ์นด์ดํฐ ๊ฐ๊ณผ ํ๋ฌธ ๋ธ๋ก์ XOR ์ฐ์ฐ์ ์ํํ์ฌ ์ํธ๋ฌธ ๋ธ๋ก์ ์์ฑํ๋ค. ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋๋จธ์ง ๋ธ๋ก์๋ ์ํํ์ฌ ์ํธํ ๋ธ๋ก์ ์์ฑํ๋ค.
CTR ๋ชจ๋์ ๊ฐ์ฅ ํฐ ์ฅ์ ์ ๋ณ๋ ฌ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ค๋ ์ ์ด๋ค. ๊ฐ ์ํธ๋ฌธ ๋ธ๋ก์ ์์ฑํ ๋ ๋ณ๋ค๋ฅธ ์ข ์๊ด๊ณ๊ฐ ์๊ธฐ ๋๋ฌธ์ ๊ณ ์ ๊ตฌํ์ด ๊ฐ๋ฅํ๋ค. ๋ธ๋ก ์ํธ์ ๋ค์ด๊ฐ๋ Input ๋ํ ๋ชจ๋ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ธ๋ก ์ํธ์ ์ถ๋ ฅ๊ฐ์ ์์ธกํ๊ธฐ ์ด๋ ต๋ค. ๋ฐ๋ผ์ ์์ ํ๊ณ ํจ์จ์ ์ธ ๋ชจ๋์ด๋ฉฐ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ค.
'๐ฅ Computer Science > Computer Security' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ณด์ ํ๋กํ ์ฝ] Triple-DES, AES ์๊ฐ - Part 1 (0) | 2021.09.20 |
---|---|
[๋ณด์ ํ๋กํ ์ฝ] ํ์ด๋ธ๋ฆฌ๋ ์ํธ ์์คํ - Part 1 (0) | 2021.09.14 |
[๋ณด์ ํ๋กํ ์ฝ] 2์ฃผ์ฐจ - 2๊ฐ (0) | 2021.09.08 |
[๋ณด์ํ๋กํ ์ฝ] 2์ฃผ์ฐจ - 1๊ฐ (0) | 2021.09.07 |
[๋ณด์ํ๋กํ ์ฝ] 1์ฃผ์ฐจ - 2๊ฐ (0) | 2021.09.03 |