๋„คํŠธ์›Œํฌ ๊ด€๋ จ ์ˆ˜์—…์„ ๋“ฃ๊ฑฐ๋‚˜ DB ์ชฝ ์ˆ˜์—…์„ ๋“ฃ๊ฒŒ ๋˜๋ฉด ํ•œ๋ฒˆ ์”ฉ์€ ๋งˆ์ฃผ์น˜๋Š” ๋‚ด์šฉ์ด๋‹ค. ์•”ํ˜ธํ•™๊ณผ ๊ด€๋ จ๋œ ๋‚ด์šฉ์„ ์ ์–ด๋ณผ ๊ฑฐ์ง€๋งŒ, ์•Œ๊ธฐ ์‰ฝ๊ฒŒ ์ •๋ฆฌํ•ด๋ณด์ž



์šฐ์„  ๋“ค์–ด๊ฐ€๊ธฐ์— ์•ž์„œ ํ‚ค๊ฐ€ ๋ญ˜๊นŒ?



์•”ํ˜ธํ•™์—์„œ ๋งํ•˜๋Š” ํ‚ค๋Š” ์ž๋ฌผ์‡ ๋ฅผ ์—ฌ๋Š” ์—ด์‡ ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.
์šฐ๋ฆฌ๊ฐ€ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•˜์—ฌ ๋ฉ”์„ธ์ง€๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋ฉด ์•„๋ฌด๋„ ๋ชป ์ฝ์„ ๊ฒƒ ์ด๋‹ค(์•„๋งˆ๋„?) ๊ทผ๋ฐ ์šฐ๋ฆฌ๋„ ๋ชป์ฝ์œผ๋ฉด ์•ˆ๋˜์ง€ ์•Š๋Š”๊ฐ€,,๊ทธ๋ž˜์„œ ํ‚ค๊ฐ€ ํ•„์š”ํ•œ ๊ฒƒ์ด๋‹ค.

๋˜ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ผ๊ณ  ํ•ด์„œ ๊ทธ๋ƒฅ ๋ง‰ ์„ž์–ด๋ฒ„๋ฆด์ˆ˜๋„ ์žˆ๋Š”๋ฐ, ๊ทธ๊ฒŒ ์•„๋‹ˆ๋‹ค. ์ •ํ•ด์ง„ ๊ทœ์น™(์ˆ˜ํ•™ ๊ทœ์น™)์ด ์กด์žฌํ•˜๊ณ  ๊ทธ๊ฑธ ์ด์šฉํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”๊พธ์–ด์•ผํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋“ค์–ด๊ฐ€๋Š” ๋น„๋ฐ€ ๊ฐ’์ด โ€œํ‚คโ€์ธ ์…ˆ์ด๋‹ค.

โ€œ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜ = ์š”๋ฆฌ๋ฒ•, ํ‚ค = ๋น„๋ฐ€ ์žฌ๋ฃŒโ€๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์‰ฝ๋‹ค.
์š”๋ฆฌ๋ฒ•์ด ๊ฐ™์•„๋„ ๋น„๋ฐ€ ์žฌ๋ฃŒ๊ฐ€ ๋‹ค๋ฅด๋ฉด ๊ฒฐ๊ณผ๋„ ๋‹ฌ๋ผ์ง€๋‹ˆ๊นŒ.


๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” (Symmetric Key)

์•”ํ˜ธํ™”ํ•  ๋•Œ ์“ฐ๋Š” ํ‚ค = ๋ณตํ˜ธํ™”ํ•  ๋•Œ ์“ฐ๋Š” ํ‚ค

์•”ํ˜ธํ™”๋Š” ์•Œ์•„๋ณผ ์ˆ˜ ์—†๊ฒŒ ๋‚ด์šฉ์„ ๋ฐ”๊พธ๋Š” ๊ฑฐ ์ผ๊ฑฐ๊ณ ,,๋ณตํ˜ธํ™”๋Š” ๋˜ ๋ญ์•ผ ์‹ถ์„๊ฑฐ๋‹ค. ๋ณตํ˜ธํ™”๋Š” ์•”ํ˜ธํ™”์™€ ๋ฐ˜๋Œ€ ๊ฐœ๋…์ด๋‹ค. ์•”ํ˜ธํ™”์—์„œ ๋ฐ”๊พผ ๋‚ด์šฉ์„ ๋‹ค์‹œ ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋ฐ”๊พธ๋Š” ๊ฑธ ๋ณตํ˜ธํ™”๋ผ๊ณ  ํ•œ๋‹ค.

๋Œ€์นญํ‚ค๋ฅผ ์‰ฝ๊ฒŒ ๋น„์œ ํ•˜๋ฉด ๊ฐ™์€ ์—ด์‡ ๋กœ ์ž ๊ทธ๊ณ  ๊ฐ™์€ ์—ด์‡ ๋กœ ํ‘ธ๋Š” ๊ตฌ์กฐ๋‹ค.

๊ฐ™์€ ์—ด์‡ ๋งŒ ์žˆ์œผ๋ฉด ๋˜๋‹ˆ๊นŒ ์žฅ์ ์€ ๋งค์šฐ ๋น ๋ฅผ๊ฒƒ์ด๊ณ ..์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์— ์ข‹์„ ๊ฒƒ์ด๋‹ค. (๋น ๋ฅด๋‹ˆ๊นŒ)
ํ•˜์ง€๋งŒ ๋‹จ์ ๋„ ๋ช…ํ™•ํ•˜๋‹ค. ํ‚ค๊ฐ€ ํ•˜๋‚˜๋‹ˆ๊นŒ ๊ทธ ํ‚ค๋ฅผ ์–ด๋–ป๊ฒŒ ์•ˆ์ „ํ•˜๊ฒŒ ๊ณต์œ ํ•˜์ง€? ๋บ๊ธฐ๋ฉด ์–ด์ฉŒ์ง€? ์ฆ‰ ๋ณด์™„์— ๋„ˆ๋ฌด ์ทจ์•ฝํ•˜๋‹ค.

๋Œ€์นญ ํ‚ค์˜ ๋Œ€ํ‘œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์—๋Š” AES, DES, 3DES๊ฐ€ ์žˆ๋‹ค. ์ด๊ฑด ๋’ค์—์„œ ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค.


๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” (Asymmetric Key)

์•”ํ˜ธํ™”ํ•  ๋•Œ ์“ฐ๋Š” ํ‚ค โ‰  ๋ณตํ˜ธํ™”ํ•  ๋•Œ ์“ฐ๋Š” ํ‚ค

์•”ํ˜ธํ™”ํ•  ๋•Œ์™€ ๋ณตํ˜ธํ™”ํ•  ๋•Œ์˜ ํ‚ค๊ฐ€ ๋‹ค๋ฅด๋‹ˆ๊นŒ ํ‚ค๊ฐ€ 2๊ฐœ์ธ ๊ฑฐ๋‹ค.

๊ณต๊ฐœํ‚ค (Public Key)์™€ ๊ฐœ์ธํ‚ค (Private Key)



์šฐ์„  ๊ณต๊ฐœํ‚ค๋Š” ๋ง ๊ทธ๋Œ€๋กœ ๋ˆ„๊ตฌ์—๊ฒŒ๋‚˜ ๊ณต๊ฐœ๋œ/๋ˆ„๊ตฌ๋‚˜ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ํ‚ค๋‹ค. ๋ฐ˜๋Œ€๋กœ ๊ฐœ์ธํ‚ค๋Š” ๋‚˜๋งŒ(๊ฐ ์‚ฌ์šฉ์ž๋งŒ)์ด ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ํ‚ค๋‹ค.

image


์•„๊นŒ ๋Œ€์นญํ‚ค๋Š” ์•”ํ˜ธํ™”์™€ ๋ณตํ˜ธํ™”์— ๊ฐ™์€ ํ‚ค์˜€์ง€๋งŒ, ๋น„๋Œ€์นญํ‚ค๋Š” ์ด์™€๋Š” ๋‹ค๋ฅด๊ฒŒ ์•”ํ˜ธํ™”์—๋Š” ๊ณต๊ฐœํ‚ค๋ฅผ, ๋ณตํ˜ธํ™”์—๋Š” ๊ฐœ์ธํ‚ค๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
์ฆ‰ ๊ณต๊ฐœํ‚ค๋กœ ์ž ๊ทธ๋ฉด ๋Œ€์‘๋˜๋Š” ๊ฐœ์ธํ‚ค๋กœ๋งŒ ํ’€ ์ˆ˜ ์žˆ๋‹ค.
์‰ฝ๊ฒŒ ์„ค๋ช…ํ•˜๋ฉด ํˆฌํ‘œ๋ฅผ ํ• ๋•Œ ์šฐ๋ฆฌ๋Š” ๋ˆ„๊ตฌ๋‚˜ ํˆฌํ‘œํ•จ์— ํˆฌํ‘œ์ง€๋ฅผ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒŒ ๊ณต๊ฐœํ‚ค๋‹ค. ํ•˜์ง€๋งŒ ํˆฌํ‘œํ•จ์„ ์—ฌ๋Š”๊ฒƒ์€ ๋‹จ ํ•˜๋‚˜์˜ ์—ด์‡ ๋ฟ์ด๋‹ค. ์ด๊ฑธ ๊ฐœ์ธํ‚ค๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์‰ฝ๋‹ค.

๊ทผ๋ฐ ๋ฐ˜๋Œ€์˜ ์ƒํ™ฉ๋„ ์žˆ๋‹ค. โ€œ์ด ๋ฉ”์‹œ์ง€๊ฐ€ ์ง„์งœ ๋‚˜ํ•œํ…Œ์„œ ์˜จ ๊ฒƒโ€์„ ์ฆ๋ช…ํ•˜๊ณ  ์‹ถ์„๋•Œ
์ด์ƒํ™ฉ์—์„œ๋Š” ๋‚ด๊ฐ€ ๊ฐœ์ธํ‚ค๋กœ ๋จผ์ € ์•”ํ˜ธํ™”(์„œ๋ช…)์„ ํ•˜๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ๊ณต๊ฐœํ‚ค๋กœ ๋ณตํ˜ธํ™”(ํ™•์ธ)์„ ํ•ด์•ผํ•œ๋‹ค.
์ฆ‰ ์‹ ์›์ฆ๋ช…์„ ํ• ๋•Œ์—๋Š” ์œ„ ์ƒํ™ฉ๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ์•”ํ˜ธํ™”์—๋Š” ๊ฐœ์ธํ‚ค๋ฅผ ๋ณตํ˜ธํ™”์—๋Š” ๊ณต๊ฐœํ‚ค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

๋Œ€์นญํ‚ค์™€๋Š” ๋‹ฌ๋ฆฌ 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๋Š” ํ‚ค ๊ตํ™˜์ด๋‚˜ ์„œ๋ช…์— ์‚ฌ์šฉ๋œ๋‹ค.

ํƒœ๊ทธ:

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ: