๐ ๋์นญํค์ ๋น๋์นญํค
๋คํธ์ํฌ ๊ด๋ จ ์์ ์ ๋ฃ๊ฑฐ๋ DB ์ชฝ ์์ ์ ๋ฃ๊ฒ ๋๋ฉด ํ๋ฒ ์ฉ์ ๋ง์ฃผ์น๋ ๋ด์ฉ์ด๋ค. ์ํธํ๊ณผ ๊ด๋ จ๋ ๋ด์ฉ์ ์ ์ด๋ณผ ๊ฑฐ์ง๋ง, ์๊ธฐ ์ฝ๊ฒ ์ ๋ฆฌํด๋ณด์
์ฐ์ ๋ค์ด๊ฐ๊ธฐ์ ์์ ํค๊ฐ ๋ญ๊น?
์ํธํ์์ ๋งํ๋ ํค๋ ์๋ฌผ์ ๋ฅผ ์ฌ๋ ์ด์ ๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํ์ฌ ๋ฉ์ธ์ง๋ฅผ ์ํธํํ๋ฉด ์๋ฌด๋ ๋ชป ์ฝ์ ๊ฒ ์ด๋ค(์๋ง๋?)
๊ทผ๋ฐ ์ฐ๋ฆฌ๋ ๋ชป์ฝ์ผ๋ฉด ์๋์ง ์๋๊ฐ,,๊ทธ๋์ ํค๊ฐ ํ์ํ ๊ฒ์ด๋ค.
๋ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ด๋ผ๊ณ ํด์ ๊ทธ๋ฅ ๋ง ์์ด๋ฒ๋ฆด์๋ ์๋๋ฐ, ๊ทธ๊ฒ ์๋๋ค.
์ ํด์ง ๊ท์น(์ํ ๊ท์น)์ด ์กด์ฌํ๊ณ ๊ทธ๊ฑธ ์ด์ฉํด์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊พธ์ด์ผํ๋ ๊ฒ์ด๋ค.
๊ทธ๋ฆฌ๊ณ ๊ทธ ์๊ณ ๋ฆฌ์ฆ์ ๋ค์ด๊ฐ๋ ๋น๋ฐ ๊ฐ์ด โํคโ์ธ ์
์ด๋ค.
โ์ํธํ ์๊ณ ๋ฆฌ์ฆ = ์๋ฆฌ๋ฒ, ํค = ๋น๋ฐ ์ฌ๋ฃโ๋ผ๊ณ ์๊ฐํ๋ฉด ์ฝ๋ค.
์๋ฆฌ๋ฒ์ด ๊ฐ์๋ ๋น๋ฐ ์ฌ๋ฃ๊ฐ ๋ค๋ฅด๋ฉด ๊ฒฐ๊ณผ๋ ๋ฌ๋ผ์ง๋๊น.
๋์นญํค ์ํธํ (Symmetric Key)
์ํธํํ ๋ ์ฐ๋ ํค = ๋ณตํธํํ ๋ ์ฐ๋ ํค
์ํธํ๋ ์์๋ณผ ์ ์๊ฒ ๋ด์ฉ์ ๋ฐ๊พธ๋ ๊ฑฐ ์ผ๊ฑฐ๊ณ ,,๋ณตํธํ๋ ๋ ๋ญ์ผ ์ถ์๊ฑฐ๋ค.
๋ณตํธํ๋ ์ํธํ์ ๋ฐ๋ ๊ฐ๋
์ด๋ค. ์ํธํ์์ ๋ฐ๊พผ ๋ด์ฉ์ ๋ค์ ์์๋ณผ ์ ์๊ฒ ๋ฐ๊พธ๋ ๊ฑธ ๋ณตํธํ๋ผ๊ณ ํ๋ค.
๋์นญํค๋ฅผ ์ฝ๊ฒ ๋น์ ํ๋ฉด ๊ฐ์ ์ด์ ๋ก ์ ๊ทธ๊ณ ๊ฐ์ ์ด์ ๋ก ํธ๋ ๊ตฌ์กฐ๋ค.
๊ฐ์ ์ด์ ๋ง ์์ผ๋ฉด ๋๋๊น ์ฅ์ ์ ๋งค์ฐ ๋น ๋ฅผ๊ฒ์ด๊ณ ..์์ฐ์ค๋ฝ๊ฒ ๋์ฉ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ข์ ๊ฒ์ด๋ค. (๋น ๋ฅด๋๊น)
ํ์ง๋ง ๋จ์ ๋ ๋ช
ํํ๋ค. ํค๊ฐ ํ๋๋๊น ๊ทธ ํค๋ฅผ ์ด๋ป๊ฒ ์์ ํ๊ฒ ๊ณต์ ํ์ง? ๋บ๊ธฐ๋ฉด ์ด์ฉ์ง? ์ฆ ๋ณด์์ ๋๋ฌด ์ทจ์ฝํ๋ค.
๋์นญ ํค์ ๋ํ ์๊ณ ๋ฆฌ์ฆ์๋ AES, DES, 3DES๊ฐ ์๋ค. ์ด๊ฑด ๋ค์์ ์์ธํ ์ค๋ช
ํ๊ฒ ๋ค.
๋น๋์นญํค ์ํธํ (Asymmetric Key)
์ํธํํ ๋ ์ฐ๋ ํค โ ๋ณตํธํํ ๋ ์ฐ๋ ํค
์ํธํํ ๋์ ๋ณตํธํํ ๋์ ํค๊ฐ ๋ค๋ฅด๋๊น ํค๊ฐ 2๊ฐ์ธ ๊ฑฐ๋ค.
๊ณต๊ฐํค (Public Key)์ ๊ฐ์ธํค (Private Key)
์ฐ์ ๊ณต๊ฐํค๋ ๋ง ๊ทธ๋๋ก ๋๊ตฌ์๊ฒ๋ ๊ณต๊ฐ๋/๋๊ตฌ๋ ๊ฐ์ง ์ ์๋ ํค๋ค.
๋ฐ๋๋ก ๊ฐ์ธํค๋ ๋๋ง(๊ฐ ์ฌ์ฉ์๋ง)์ด ๊ฐ์ง ์ ์๋ ํค๋ค.

์๊น ๋์นญํค๋ ์ํธํ์ ๋ณตํธํ์ ๊ฐ์ ํค์์ง๋ง, ๋น๋์นญํค๋ ์ด์๋ ๋ค๋ฅด๊ฒ
์ํธํ์๋ ๊ณต๊ฐํค๋ฅผ, ๋ณตํธํ์๋ ๊ฐ์ธํค๋ฅผ ์ฌ์ฉํ๋ค.
์ฆ ๊ณต๊ฐํค๋ก ์ ๊ทธ๋ฉด ๋์๋๋ ๊ฐ์ธํค๋ก๋ง ํ ์ ์๋ค.
์ฝ๊ฒ ์ค๋ช
ํ๋ฉด ํฌํ๋ฅผ ํ ๋ ์ฐ๋ฆฌ๋ ๋๊ตฌ๋ ํฌํํจ์ ํฌํ์ง๋ฅผ ๋ฃ์ ์ ์๋ค. ์ด๊ฒ ๊ณต๊ฐํค๋ค.
ํ์ง๋ง ํฌํํจ์ ์ฌ๋๊ฒ์ ๋จ ํ๋์ ์ด์ ๋ฟ์ด๋ค. ์ด๊ฑธ ๊ฐ์ธํค๋ผ๊ณ ์๊ฐํ๋ฉด ์ฝ๋ค.
๊ทผ๋ฐ ๋ฐ๋์ ์ํฉ๋ ์๋ค. โ์ด ๋ฉ์์ง๊ฐ ์ง์ง ๋ํํ
์ ์จ ๊ฒโ์ ์ฆ๋ช
ํ๊ณ ์ถ์๋
์ด์ํฉ์์๋ ๋ด๊ฐ ๊ฐ์ธํค๋ก ๋จผ์ ์ํธํ(์๋ช
)์ ํ๊ณ ๋ค๋ฅธ ์ฌ๋์ด ๊ณต๊ฐํค๋ก ๋ณตํธํ(ํ์ธ)์ ํด์ผํ๋ค.
์ฆ ์ ์์ฆ๋ช
์ ํ ๋์๋ ์ ์ํฉ๊ณผ๋ ๋ค๋ฅด๊ฒ ์ํธํ์๋ ๊ฐ์ธํค๋ฅผ ๋ณตํธํ์๋ ๊ณต๊ฐํค๋ฅผ ์ฌ์ฉํ ์๋ ์๋ค๋ ๊ฒ์ด๋ค.
๋์นญํค์๋ ๋ฌ๋ฆฌ 2๊ฐ์ ํค๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋๊น ๋ณด์์ ์ผ๋ก๋ ์์ ํ๊ณ , ํค๋ฅผ ๋ฏธ๋ฆฌ ๊ณต์ ํ ํ์๊ฐ ์๋ค. ์ฆ ํค ๋ถ๋ฐฐ ๋ฐ ๊ด๋ฆฌ๊ฐ ์ฉ์ดํ ํธ์ด๋ค. ๋ํ ๊ธฐ๋ฐ์ฑ, ๋ฌด๊ฒฐ์ฑ, ๋ถ์ธ๋ฐฉ์ง์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. ์ฝ๊ฒ ์ดํดํด๋ณด์.
๊ธฐ๋ฐ์ฑ : ๋ด๊ฐ ๊ฐ์ธํค๋ฅผ ๊ฐ๊ณ ์์ผ๋๊น ๋จ์ด ๋ด์ฉ์ ๋ชป๋ณธ๋ค
๋ฌด๊ฒฐ์ฑ : ๋ด์ฉ์ด ์ค๊ฐ์ ๋ฐ๋์ง ์๋๋ค. (๋น๋์นญํค๋ ํด์๋ฅผ ์ฆ๋ช
)
๋ถ์ธ๋ฐฉ์ง : ๋ด๊ฐ ๊ฐ์ธํค๋ก ์๋ช
ํ๋ค๋ฉด ๊ณต๊ฐํค๋ก ๋๊ตฌ๋ ํ์ธํ ์ ์๋ค. ์ฆ ๋ด๊ฐ ๋ณด๋ธ๊ฒ ์๋๋ผ๊ณ ๊ฑฐ์ง๋ง ๋ชปํ๋ ์ํฉ์ธ๊ฑฐ๋ค. ์? ๋ด ๊ฐ์ธํค๋ก ์๋ช
ํ์ผ๋๊น (์๊น ๋งํ ์ ์์ฆ๋ช
์ ์์)
ํ์ง๋ง ๋น๋์นญํค๋ํ ๋จ์ ์ด ์กด์ฌํ๋ค. ๋์นญํค๋ ํ๋์ ํค์ธ ๋ฐ๋ฉด ์๋ 2๊ฐ์ ํค์ง ์๋๊ฐ? ์๋์ ์ผ๋ก ๋๋ฆด์ ๋ฐ์ ์๋ค ๋น๋์นญ์.
๋น๋์นญํค์ ๋ํ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์๋ RSA, ECC, DSA๊ฐ ์กด์ฌํ๋ค.
๋์นญํค ์๊ณ ๋ฆฌ์ฆ
DES (Data Encryption Standard)
์ฝ๊ฒ ์ค๋ช
ํ๋ฉด, 64๋นํธ์ฉ ์๋ผ์(๋ธ๋ก) 16๋ฒ ์์ด์ ์ํธํํ๋ ๋์นญํค ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
์ ๊ณ์ ์์๊น? ๊ท์น์์ด ์์ด์ผ์ง ํค ์์ด๋ ์์ธก์ด ์๋๊ธฐ ๋๋ฌธ์ด๋ค. DES์ ํ๋ฆ์ ๋ณด์.
1๏ธโฃ ๋ฐ์ดํฐ๋ฅผ 64๋นํธ(8๋ฐ์ดํธ)๋ก ์๋ฅธ๋ค.
DES๋ ํ ๋ฒ์ 8๋ฐ์ดํธ๋ง ์ฒ๋ฆฌํ๋ค. ๋ฌธ์ฅ์ด ๊ธธ๋ฉด 8๋ฐ์ดํธ์ฉ ๋๋ ์ ๊ฐ๊ฐ ์ํธํํ๋ค.
๋จ๋ ๋ถ๋ถ์ ํจ๋ฉ์ผ๋ก ์ฑ์ ๋ง์ถ๋ค.
์ฌ๊ธฐ๊น์ง๋ ์ค๋น ๋จ๊ณ๋ค.
2๏ธโฃ 64๋นํธ๋ฅผ ๋ฐ์ผ๋ก ๋๋๋ค
์ผ์ชฝ(L) : 32๋นํธ / ์ค๋ฅธ์ชฝ(R) : 32๋นํธ
3๏ธโฃ ์ค๋ฅธ์ชฝ(R)์ ๋ณต์กํ๊ฒ ๋ณํํ๋ค (F ํจ์)
๋จ์ํ ์๋ ๊ฒ ์๋๋ผ 32๋นํธ๋ฅผ 48๋นํธ๋ก ํ์ฅํ๊ณ
๊ฑฐ๊ธฐ์ ๋ผ์ด๋ ํค(๋ถ๋ถ ํค)๋ฅผ XOR๋ก ์๊ณ S-Box๋ผ๋ ํ๋ฅผ ํตํด ๊ฐ์ ์์ ํ ๋ค๋ฅธ ๊ฐ์ผ๋ก ์นํํ๊ณ ๋ค์ ์์๋ฅผ ์ฌ๋ฐฐ์ดํ๋ค.
์ด ๊ณผ์ ์ ํตํด์์ ๋ณํ๊ฐ ์์ ํ ๋ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ๋ง๋ค๋๋ก ์ค๊ณ๋์ด ์๋ค.
์ด๊ฑธ ๋น์ ํ์ฑ + ํ์ฐ์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค.
4๏ธโฃ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ผ์ชฝ(L)๊ณผ XOR๋ก ์๋๋ค
ํ์ชฝ์ ๋ณํ๊ฐ ๋ค๋ฅธ ์ชฝ์๋ ํผ์ง๊ฒ๋ ํ๋ ๊ฒ์ด๋ค.
5๏ธโฃ L๊ณผ R์ ๋ฐ๊พผ๋ค.
์ ๋ฐ๊พธ๋?
ํ์ชฝ๋ง ๊ณ์ ๋ณํํ๋ฉด ๋ถ๊ท ํํด์ง๊ธฐ ๋๋ฌธ์ด๋ค.
์ข์ฐ๋ฅผ ๋ฒ๊ฐ์๊ฐ๋ฉฐ ์์ผ๋ฉด ๋ฐ์ดํฐ ์ ์ฒด๊ฐ ๊ณ ๋ฅด๊ฒ ๋คํ๋ฆฐ๋ค.
6๏ธโฃ ์ด๊ฑธ 16๋ฒ ๋ฐ๋ณตํ๋ค
์ด๋ ๊ฒ๋ง ๋ณด๋ฉด ํ ์ก์ ๊ณณ ์๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ํ์ง๋ง ํค ๊ธธ์ด๊ฐ 56๋นํธ(64๋นํธ ์ฒ๋ผ ๋ณด์ด์ง๋ง ์ค์ ์ฌ์ฉ์ 56๋นํธ ๋จ์ 8๋นํธ๋ ์ค๋ฅ๊ฒ์ฌ์ฉ)๋ผ์ ์ง๊ธ ๊ธฐ์ค์ผ๋ก๋ ์งง๋ค. 56๋นํธ๋ฉด 2์ 56์ ๊ณฑ์ธ๋ฐ?? ํ์ง๋ง ํ๋ ์ปดํจํฐ๋ก๋ ๋ธ๋ฃจํธํฌ์ค ๊ณต๊ฒฉ์ด ๊ฐ๋ฅํด์ก๋ค. ๋ณ๊ฑฐ์๋๋ผ๋ ์๋ฆฌ๋ค..
๊ทธ๋์ ๋์จ๊ฒ 3DES๋ค. ๋ฐ๋ก ํ์ธํด๋ณด์
3DES
DES๋ฅผ 3๋ฒ ๋ฐ๋ณตํ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋ฐฉ๊ธ 56๋นํธ๊ฐ ๋๋ฌด ์งง๋ค ํ๋๋ฐ ๊ทธ๋ผ ์ฌ๋ฌ๋ฒ ๋๋ฆฌ๋ฉด ๋์ง์์๊น?ํด์ ๋์จ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
3DES๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ํธํ -> ๋ณตํธํ -> ์ํธํ ๊ณผ์ ์ ๊ฐ์ง๋ค.
์ ๋ณตํธํ ๊ณผ์ ์ ๊ฑฐ์น๋? ์ด๊ฑด ๋ ์ญ์ฌ์ ์ธ ์ด์ ๊ฐ ์กด์ฌํ๋ค.
1990๋
๋ ์ด๋ฐ์๋ ๋ชจ๋ DES ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ค. ๊ทผ๋ฐ ๊ฐ์๊ธฐ ๋ค๋ฅธ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ๋ฐ๊พผ๋ค? ์ด๊ฑด ๋๋ฌด ์ด๋ ค์ด ์ํฉ์ธ๊ฑฐ๋ค. ๊ทผ๋ฐ 56๋นํธ๋ก๋ ๋ถ์กฑํ๊ณ โฆ๊ทธ๋์ ์์ ํ ์๊ฑฐ๋ก ๋ฐ๊พธ์ง๋ง๊ณ ๊ธฐ์กด ์์คํ
์ ์ ์งํ๋ฉด์ ๋ณด์์ ๋์ด์! ์ด ๊ณ ๋ฏผ์์ ๋์จ๊ฒ 3DES์ธ ์
์ด๋ค.
๊ทธ๋์ ๋ณตํธํ๋ ์ ์ฐ๋๋ฐ? ์ ๋จผ์ ๋จ์ํ๊ฒ 3๋ฒ ์ํธํ๋ฅผ ํ๋ค๊ณ ์๊ฐํด๋ณด์.
์ํธํ(key1) -> ์ํธํ(key2) -> ์ํธํ(key3)
๊ทผ๋ฐ key1, 2, 3์ด ๋ชจ๋ ๊ฐ์ผ๋ฉด? ์ด๊ฑด DES๋ฅผ 3๋ฒ ์ํธํํ ๊ฑฐ๋ค. DES ํ๋ฒ๊ณผ ์ ๋ ๊ฐ์ง ์๋ค๋ ๊ฑฐ๋ค. ์๊น ์ฐ๋ฆฌ๋ ์๊ฑธ ๋ฐ๊พธ์ง๋ง๊ณ ๊ธฐ์กด ์์คํ
์ ์ ์งํ์ ํ๋๋ฐ ๊ฑฐ๊ธฐ์ ์ด๊ธ๋๋ค๋ ๊ฑฐ๋ค.
์ ์ด์ ๋ณตํธํ๋ฅผ ํฌํจํ๋ค๊ณ ์๊ฐํด๋ณด์
์ํธํ(key1) -> ๋ณตํธํ(key2) -> ์ํธํ(key3)
key1, 2, 3์ด ๋ชจ๋ ๊ฐ๋ค๊ณ ํด๋ณด์. ๊ทธ๋ผ ์ํธํ(key) -> ๋ณตํธํ(key) ๊ณผ์ ์ ์์๋ ๊ฒ์ด๋ค. ๊ทธ๋ผ ๋จ์๊ฑฐ๋ ์ํธํ(key) ํ๋ ๋ฟ. ์ด๊ฑฐ๋ DES์ ๋์ผํ๋ค. ์ด๋์ ์ค๊ฐ์ ๋ณตํธํ ๊ณผ์ ์ด ์๋ ๊ฒ์ด๋ค.
์ฆ key1, 2, 3์ด ๋ชจ๋ ๊ฐ์ ๋ 3DES๊ฐ ์ ํํ DES์ฒ๋ผ ๋์ํ๊ฒ ๋ง๋ค๊ธฐ ์ํด์๋ค.
๊ทธ๋ผ ์ด์ ์ง๋ฌธ
๊ทผ๋ฐ 3DES ์ฐ์ง ์ AES ์ฐ๋ ๊ฑฐ์ผ?
๋๋ฌด ๋๋ฆฌ๋ค..DES๋ฅผ 3๋ฒ์ด๋ ๋๋ฆฐ๊ฑฐ๋๊น ์ฐ์ฐ๋์ด 3๋ฐฐ์ธ๊ฑฐ๋ค. ๋ DES๋ 1970๋
๋ ๊ธฐ์ ์ด๋ค. ๊ตฌ์กฐ๊ฐ ๋๋ฌด ์ค๋๋ ๊ฒ์ด๋ค. ๋ํ DES์ 3DES๋ 64๋นํธ ๋ธ๋ก์ ์ฌ์ฉํ๋๋ฐ, ๋ฐ์ดํฐ๊ฐ ๋ง์ ์๋ก ํจํด์ด ๋ฐ๋ณต๋ ๊ฐ๋ฅ์ฑ์ด ์ปค์ง๋ค. ๊ทธ๋์ ๋ฑ์ฅํ ๊ฒ์ด ๋ฐ๋ก AES๋ค.
AES (Advanced Encryption Standard)
2001๋
์ DES๋ฅผ ๋์ฒดํ๊ธฐ ์ํด ์ ์ ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
ํจ์ฌ ๋น ๋ฅด๊ณ , ํค ๊ธธ์ด๋ ๊ธธ๊ณ , ๊ตฌ์กฐ ์์ฒด๊ฐ ํ๋์ ์ธ ๊ตฌ์กฐ๋ค.
์ฐ์ 64๋นํธ ๋ธ๋ก์ธ DES๊ณผ ๋ค๋ฅด๊ฒ AES๋ 128๋นํธ(๊ณ ์ )์ ๋ธ๋ก์ด๋ค.
๋ํ ํค ๊ธธ์ด๋ 128, 192, 256๋นํธ ์ค ์ ํ์ด ๊ฐ๋ฅํ๋ค. 128๋นํธ๋ง ํด๋ ์ถฉ๋ถํ๋ค. 2์ 128์ ๊ณฑ? ์ด๊ฑด ์ฐ์ฃผ ๋์ด๋ณด๋ค ๋ ์ค๋๊ฑธ๋ฆฌ๋ ์์ค์ด๋ค.
DES๋ ๋ฐ์ผ๋ก ๋๋๊ณ XORํ๊ณ 16๋ฒ ๋ฐ๋ณต์ด์๋๋ฐ AES๋ ์์ ํ ๋ค๋ฅด๋ค.
AES๋ ๋ฐ์ดํฐ๋ฅผ 4x4 ํ(ํ๋ ฌ)์ฒ๋ผ ๋๊ณ ์๋๋ค.
ํค์ ์ฌ์ด์ฆ์ ๋ฐ๋ผ ๋ผ์ด๋(๋ฐ๋ณต)์ ์๊ฐ ๋ฌ๋ผ์ง๋๋ฐ 128์ 10, 192๋ 12, 256์ 14๋ค. ํค๊ฐ ๊ธธ์๋ก ๋ ๋ง์ด ์๋๋ค๋ ๊ฑฐ๋ค.
๋๋ฌด ์ํ์ ์ ๋งํ๋ฉด ๋จธ๋ฆฌ ์ํ๋๊น ์ฝ๊ฒ ์ดํดํด๋ณด์.
๊ฐ ๋ผ์ด๋์์๋ 4๊ฐ์ง ์์
์ ํ๋ค.
1๏ธโฃ SubBytes (์นํ)
๊ฐ ๋ฐ์ดํธ(๊ฐ ์นธ์ ๊ฐ)๋ฅผ ๋ค๋ฅธ ๊ฐ์ผ๋ก ๋ฐ๊พผ๋ค.
๊ทธ๋ฅ ๋ฌด์์๋ ์๋๊ณ , ๋ฏธ๋ฆฌ ์ ํด์ง S-Box๋ผ๋ ํ๋ฅผ ์ฌ์ฉํ๋ค. ์์ธก ๋ถ๊ฐ๋ฅํ๊ฒ ๋ง๋๋ ๊ฒ์ด๋ค.
2๏ธโฃ ShiftRows (ํ ์ด๋)
ํ์ ์์ผ๋ก ๋ฐ์ด๋ฒ๋ฆฌ๋ ๊ฑฐ๋ค.
1ํ์ ๊ทธ๋๋ก, 2ํ์ 1์นธ ์ด๋, 3ํ์ 2์นธ ์ด๋, 4ํ์ 3์นธ ์ด๋
3๏ธโฃ MixColumns (์ด ์๊ธฐ)
์ด๋ฒ์๋ ์ด ๋จ์๋ก ์ํ์ ์ผ๋ก ์๋๋ค. ๋จ์ ์ด๋์ด ์๋๋ผ ์ํ ์ฐ์ฐ(GF(2^8))์ ์ด์ฉํ ํผํฉ์ด๋ค. ๊ทธ๋ฅ ๋ฐ์ดํฐ๊ฐ ์๋ก ๊ฐํ๊ฒ ์ฝํ๊ฒ ํ๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
4๏ธโฃ AddRoundKey (ํค ์๊ธฐ)
ํ์ฌ ๋ฐ์ดํฐ์ ๋ผ์ด๋ ํค๋ฅผ XOR๋ก ์๋๋ค. ์ฌ๊ธฐ์ ๋น๋ฐ๋ฒํธ๊ฐ ๊ฐ์ ํ๋ค.
์ด 4๋จ๊ณ๋ฅผ ์ฌ๋ฌ ๋ฒ ๋ฐ๋ณตํ๋ฉด ์๋ณธ ๋ฐ์ดํฐ๋ ์์ ํ ๋ค์์ธ๋ค.
์ด๋ ๋ฏ AES๋ ํค ๊ธธ์ด ๊ธธ๊ณ , ๋ธ๋ก ํฌ๊ธฐ๊ฐ ํฌ๋ค. ๋ ๊ตฌ์กฐ๊ฐ ํ๋์ ์ด๋ฉฐ, ํ๋์จ์ด ๊ฐ์ ๊ฐ๋ฅํ๋ค. ์ฆ ๋งค์ฐ ๋น ๋ฅด๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์ง๊ธ ์ ์ธ๊ณ ํ์ค์ด๋ค. HTTPS, Wi-Fi, VPN, ํ์ผ ์ํธํ ๊ฑฐ์ ๋ค AES๋ฅผ ์ด๋ค.
๋น๋์นญํค ์๊ณ ๋ฆฌ์ฆ
RSA
Rivest, Shamir, Adleman ์ด ์ธ์ฌ๋์ ์๊ธ์๋ฅผ ๋ด 1977๋
์ ๋ฑ์ฅํ ๋ํ์ ์ธ ๋น๋์นญํค ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
ํฐ ์์ ๋ ๊ฐ๋ฅผ ๊ณฑํ๋ ๊ฑฐ๋ ์ฝ์ง๋ง, ๋ค์ ๋๋๋ ๊ฒ์ ์ด๋ ต๋ค. ์๋ฅผ ๋ค์ด 17 x 23 = 391์ด๋ค. ์ด๊ฑด ์ฝ๋ค. ๊ทผ๋ฐ 391๋ง ๋ณด๊ณ 17๊ณผ 23์ ์๊ฐํ ์ ์์๊น? ์๊ฐ ๋ ์ปค์ง์๋ก ์ด๋ ค์ธ ๊ฒ์ด๋ค.
RSA๋ ์ด๋ฌํ(์์ธ์๋ถํด) ์๋ฆฌ๋ฅผ ์ด์ฉํ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
RSA๋ ์ด๋ป๊ฒ ํค๋ฅผ ๋ง๋ค๊น? RSA๋ ์๋์ ๊ฐ์ด ์์ํ๋ค.
1๏ธโฃ ๋งค์ฐ ํฐ ์์ ๋ ๊ฐ๋ฅผ ๊ณ ๋ฅธ๋ค (p, q)
2๏ธโฃ ๋์ ๊ณฑํด ํฐ ์ n์ ๋ง๋ ๋ค.
์ฌ๊ธฐ์ n์ด ๊ณต๊ฐํค์ ์ผ๋ถ๊ฐ ๋๋ค. ์ฌ๊ธฐ์ ์ค์ํ ์ ์ n์ ๊ณต๊ฐํ์ง๋ง, p์ q๋ ์ ๋ ๊ณต๊ฐ๋์ง ์๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด p์ q ๋ ์์๋ฅผ ์ด์ฉํ์ฌ ํน๋ณํ ์ํ์ ๊ด๊ณ๋ฅผ ๋ง์กฑํ๋ ์ซ์ ๋ ๊ฐ๋ฅผ ๋ง๋ ๋ค.
๊ณต๊ฐํค์ ์ฌ์ฉ๋๋ e, ๊ฐ์ธํค์ ์ฌ์ฉ๋๋ d
e๋ก ์ํธํํ ๊ฐ์ d๋ก๋ง ๋ค์ ์๋ ๊ฐ์ผ๋ก ๋์์จ๋ค.
RSA๋ 2๊ฐ์ง์ ์ฉ๋๋ก ์ฌ์ฉ๋๋ค.
๊ธฐ๋ฐ์ฑ (Confidentiality)๊ณผ ์ ์์๋ช
(Signature)
๊ธฐ๋ฐ์ฑ์ ์ํ RSA ์ฌ์ฉ ๋ฐฉ์์ ๋จผ์ ์ด์ผ๊ธฐ ํ์๋ฉด,
1๏ธโฃ ์๋์ ๊ณต๊ฐํค(e, n)๋ฅผ ๋ฐ๋๋ค.
2๏ธโฃ C = M^e mod n ์ด๋ฐ์์ผ๋ก ๋ฉ์ธ์ง๋ฅผ ๊ณ์ฐํ๋ค.
3๏ธโฃ ๊ทธ๋ฌ๋ฉด ์๋๋ ์์ ์ ๊ฐ์ธํค d๋ก M = C^d mod n ์ ๊ณ์ฐํ๋ฉด ์๋ ๋ฉ์ธ์ง๊ฐ ๋์จ๋ค.
๋ง์ด ๋๋ฌด ์ด๋ ค์ด๋ฐ ํต์ฌ์ n๋ง ์๊ณ ๋ d๋ฅผ ๊ตฌํ ์ ์๋ค๋ ๊ฑฐ๋ค. p์ q๋ฅผ ๋ชจ๋ฅด๋๊น. ๊ทธ๋์ ๊ณต๊ฐํค๋ก ์ํธํํ๋ฉด ๊ฐ์ธํค ์์ด๋ ๋ณตํธํ๊ฐ ๋ถ๊ฐ๋ฅํ๋ค.
RSA๋ ๋ฐ๋๋ก๋ ์ฌ์ฉํ ์ ์๋ค. ๊ธฐ๋ฐ์ฑ์ด ์๋ ์ ์์๋ช
์ฆ ์ ์ ์ฆ๋ช
์ด๋ค.
1๏ธโฃ ๋ฌธ์๋ฅผ ๋ง๋ ๋ค
2๏ธโฃ ๋ฌธ์๋ฅผ ํด์(Hash)ํ๋ค
3๏ธโฃ ๊ทธ ํด์๊ฐ์ ๊ฐ์ธํค d๋ก ์ํธํํ๋ค
์ด๊ฒ ์ ์ ์๋ช
์ด๋ค.
์๋๋ ๊ณต๊ฐํค e๋ก ๋ณตํธํํด ํด์๊ฐ์ ์ป๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฌธ์๋ฅผ ๋ค์ ํด์ํด์ ๋น๊ตํ๋ค. ๋น๊ต๊ฐ์ด ๊ฐ๋ค๋ฉด? ๋ด๊ฐ ๊ฐ์ธํค๋ฅผ ๊ฐ์ง ์ฌ๋์ด ๋ง๊ณ , ๋ฌธ์๊ฐ ์ค๊ฐ์ ๋ฐ๋์ง ์์๋ค๋ ๋ป์ด๋ค.
RSA๋ ๋น์ฐํ ํค๊ฐ 2๊ฐ์ด๊ธฐ์ ํค ๋ถ๋ฐฐ๊ฐ ์ฝ๋ค. ๋ํ ๊ณ์ฐ์ด ๋ณต์กํ๊ธฐ์ ๋ณด์ ๋ฅ๋ ฅ์ด ๋ฐ์ด๋๋ค.
ํ์ง๋ง ๋๋ฆฌ๋ค..
๊ทธ๋์ ์ค์ ๋ฐ์ดํฐ ์ํธํ๋ AES๊ฐ ๋ด๋นํ๊ณ , RSA๋ ํค ๊ตํ์ด๋ ์๋ช
์ ์ฌ์ฉ๋๋ค.