๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Computer Science

[CS] SSL/TLS ์ธ์ฆ์„œ๋Š” ์–ด๋–ป๊ฒŒ ๋“ฑ์žฅํ–ˆ์„๊นŒ?

๋ฐ˜์‘ํ˜•

๐Ÿ”Š ํ•ด๋‹น ํฌ์ŠคํŒ…์€ ์ธํ”„๋Ÿฐ ๊ฐ•์˜ ๋„๋„ํ•œ๊ฐœ๋ฐœ์ž๋‹˜์˜ ์™ธ์›Œ์„œ ๋๋‚ด๋Š” SSL๊ณผ ์ตœ์†Œํ•œ์˜ ์•”ํ˜ธ๊ธฐ์ˆ  ๋‚ด์šฉ์„ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ๋ฐฐ์šด ๋‚ด์šฉ์„ ์ €๋งŒ์˜ ๋ฐฉ์‹์œผ๋กœ ์žฌ์ •๋ฆฌํ•˜๊ณ ์ž ํ•˜๋Š” ๋ชฉ์  ํ•˜์— ์ž‘์„ฑ๋˜๋Š” ํฌ์ŠคํŒ…์ž…๋‹ˆ๋‹ค. ์•„๋ž˜ ํฌ์ŠคํŒ…์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ชจ๋“  ์ž๋ฃŒ๋Š” ์ œ๊ฐ€ ์ง์ ‘ ์žฌ๊ตฌ์„ฑํ–ˆ์Œ์„ ์•Œ๋ฆฝ๋‹ˆ๋‹ค.

 

SSL/TLS ์ธ์ฆ์„œ๋Š” ์–ด๋–ป๊ฒŒ ๋“ฑ์žฅํ–ˆ์„๊นŒ?


์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์ปดํ“จํ„ฐ ๊ณตํ•™์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ์ดˆ์ ์ธ ์•”ํ˜ธ๊ธฐ์ˆ ๊ณผ ๊ด€๋ จํ•ด์„œ ์†Œ๊ฐœํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ํ˜„์žฌ ์›น ํ†ต์‹ ์—์„œ ๊ฐ€์žฅ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” SSL/TLS ์ธ์ฆ์„œ๊ฐ€ ๋“ฑ์žฅํ•˜๊ธฐ ์ด์ „์˜ ์ „ํ†ต์ ์ธ ์•”ํ˜ธ๊ธฐ์ˆ ์€ ์–ด๋–ค ๋ฐฉ์‹์„ ์ฑ„ํƒํ–ˆ๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ์–ด๋–ค ๋ฌธ์ œ์ ์ด ์žˆ์–ด ์ง€๊ธˆ์˜ SSL/TLS ์ธ์ฆ์„œ๊นŒ์ง€ ์˜ค๊ฒŒ ๋˜์—ˆ๋Š”์ง€ ์‹œ๊ฐ„์˜ ํ๋ฆ„ ์ˆœ์œผ๋กœ ์‚ดํŽด๋ณด๋„๋ก ํ•˜์ž. ๊ทธ์— ์•ž์„œ์„œ ๊ธฐ์ดˆ์ ์ธ ์•”ํ˜ธ๊ธฐ์ˆ  ๊ด€๋ จ๋œ ๋ช‡ ๊ฐ€์ง€ ๊ฐœ๋…๋“ค์— ๋Œ€ํ•ด์„œ ๋ฐฐ์›Œ๋ณด๋„๋ก ํ•˜์ž.

1. Checksum๊ณผ Hash

์ฒดํฌ์„ฌ(Checksum)๊ณผ ํ•ด์‹œ(Hash)์— ๋Œ€ํ•œ ๊ฐœ๋…์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž. ๋จผ์ € ์ฒดํฌ์„ฌ์€ ํ•œ๊ตญ์–ด๋กœ ํ•ด์„ํ•˜๋ฉด '๊ฒ€์‚ฌํ•ฉ'์ด๋‹ค. ์ด๋ฆ„์—์„œ๋„ ์œ ์ถ”ํ•  ์ˆ˜ ์žˆ๋‹ค์‹œํ”ผ ์ฒดํฌ์„ฌ์€ ๋ฐ์ดํ„ฐ ์›๋ณธ์„ ์–ด๋”˜๊ฐ€์— ๋ณต์‚ฌํ–ˆ์„ ๋•Œ ๋ณต์‚ฌ๋ณธ๊ณผ ์›๋ณธ ๊ฐ„์˜ ๋ฐ์ดํ„ฐ ์ฐจ์ด๊ฐ€ ์—†๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋œ๋‹ค. ์ฒดํฌ์„ฌ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์ •ํ•œ ๋‹จ์œ„๋กœ ์ชผ๊ฐ  ๋’ค, ์ชผ๊ฐ  ๋‹จ์œ„๋ฅผ ๊ณ„์† ํ•ฉ(sum)์„ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์›๋ณธ์˜ ์ฒดํฌ์„ฌ๊ณผ ๋ณต์‚ฌ๋ณธ์˜ ์ฒดํฌ์„ฌ์„ ๋น„๊ตํ•ด์„œ ๋™์ผํ•˜๋‹ค๋ฉด ์›๋ณธ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณต์‚ฌ๋ณธ ๋ฐ์ดํ„ฐ๋Š” ์ผ์น˜ํ•จ์„ ์˜๋ฏธํ•œ๋‹ค. 

 

ํ•˜์ง€๋งŒ ์ฒดํฌ์„ฌ์—์„œ ์ฃผ์˜ํ•  ์ ์€ ์ฒดํฌ์„ฌ์ด ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜์ง€๋Š” ๋ชปํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์—ฌ๊ธฐ์„œ ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์ด๋ผ ํ•จ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์œ„์กฐ๋‚˜ ๋ณ€์กฐํ•  ์ˆ˜ ์—†๋Š” ํŠน์„ฑ์„ ์˜๋ฏธํ•œ๋‹ค. ์ฒดํฌ์„ฌ์€ ์™œ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜์ง€ ๋ชปํ• ๊นŒ? ๋ฐฉ๊ธˆ ์ฒดํฌ์„ฌ์ด๋ผ๋Š” ๊ฒƒ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์ •ํ•œ ๋‹จ์œ„๋กœ ์ชผ๊ฐ  ๋’ค, ์ชผ๊ฐ  ๋‹จ์œ„๋“ค์„ ๊ณ„์† ํ•ฉํ•ด๋‚˜๊ฐ€๋Š” ๊ฒƒ์ด๋ผ๊ณ  ํ–ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋งŒ์•ฝ์— ์ด ์ชผ๊ฐœ์ง„ ๋‹จ์œ„์˜ ์ผ๋ถ€๋ฅผ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋ณ€์กฐํ•ด๋†“๋Š”๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ? ์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ๋ง์ด๋‹ค.

 

์ค‘๊ฐ„์— ํ•ด์ปค๊ฐ€ ๋ฐ์ดํ„ฐ ์ผ๋ถ€๋ฅผ ๋ณ€์กฐํ•œ๋‹ค๋ฉด?

 

์›๋ณธ ๋ฐ์ดํ„ฐ๊ฐ€ ์กด์žฌํ•˜๋Š”๋ฐ, ์ค‘๊ฐ„์— ํ•ด์ปค๊ฐ€ ์ผ๋ถ€ ๋‹จ์œ„์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ๋ณ€์กฐ๋ฅผ ์ˆ˜ํ–‰ํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ฒดํฌ์„ฌ์€ ์ด๋Ÿฌํ•œ ๋ณ€์กฐ๋ฅผ ์ˆ˜ํ–‰ํ–ˆ๋‹ค๊ณ  ํ•ด์„œ ์ฒดํฌ์„ฌ์˜ ๊ฐ’์ด ๋ณ€์กฐ ์ด์ „๊ณผ ๋‹ฌ๋ผ์ง€์ง€๋Š” ์•Š๋Š”๋‹ค. ๋”ฐ๋ผ์„œ ๋ณต์‚ฌ๋ณธ์˜ ์ฒดํฌ์„ฌ์ด ์›๋ณธ์˜ ์ฒดํฌ์„ฌ๊ณผ ๋™์ผํ•˜๋‹ค๊ณ  ํ•˜๋”๋ผ๋„ ๊ทธ ๋ฐ์ดํ„ฐ ๋‚ด๋ถ€์˜ ์ผ๋ถ€๋Š” ์—ฌ์ „ํžˆ ๋ณ€์กฐ๋œ ์ƒํƒœ์ผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

 

์ด๋Ÿฌํ•œ ์ฒดํฌ์„ฌ์˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ•ด์‹œ๊ฐ€ ๋“ฑ์žฅํ•œ๋‹ค. ์šฐ์„  ํ•ด์‹œ๋ž€ ๋ฌด์—‡์ผ๊นŒ? ์šฐ๋ฆฌ๊ฐ€ ํ•œ ๋ฒˆ์ด๋ผ๋„ ๋“ค์–ด๋ณด์•˜์„ ๋ฒ•ํ•œ 'ํ•ด์‹œํ•จ์ˆ˜'์˜ ํ•ด์‹œ๊ฐ€ ๊ทธ๊ฒƒ์ด๋‹ค. ๋งŒ์•ฝ ์–ด๋–ค ๋ฐ•์Šค์— ๋ฌด์—‡์„ ๋„ฃ์—ˆ์„ ๋•Œ, ๊ฒฐ๊ณผ๋ฅผ ๋‚ด๋ฑ‰๋Š”๋‹ค๋ผ๊ณ  ํ•œ๋‹ค๋ฉด '๋ฐ•์Šค๊ฐ€' ๋ฐ”๋กœ ํ•ด์‹œ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

๊ทธ๋Ÿฐ๋ฐ ํ•ด์‹œ๋Š” ๋‹จ๋ฐฉํ–ฅ์˜ ํŠน์„ฑ์„ ๊ฐ–๋Š”๋‹ค. ์ฆ‰, ์œ„ ๊ทธ๋ฆผ์—์„œ ํ•ด์‹œ๋Š” ์ถœ๋ ฅ์„ ๋ณด๊ณ  ์ž…๋ ฅ์„ ์—ญ์ถ”๋ก ํ•  ์ˆ˜๋Š” ์—†๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ•ด์‹œ๋Š” ์ž…๋ ฅ ๊ฐ’์˜ ํฌ๊ธฐ๊ฐ€ ๋‹ฌ๋ผ์ ธ๋„ ๊ฒฐ๊ณผ๊ฐ’์˜ ๊ธธ์ด๋Š” ์ผ์ •ํ•˜๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์œ„ ๊ทธ๋ฆผ์—์„œ ์ž…๋ ฅ์— x๋ฅผ ๋„ฃ๋˜, xy๋ฅผ ๋„ฃ๋˜, 1234567890์„ ๋„ฃ๋˜ ์ถœ๋ ฅ์€ ๊ณ ์ •๋œ ๊ธธ์ด์˜ ์ž„์˜์˜ ๊ฐ’์œผ๋กœ ์ถœ๋ ฅ๋œ๋‹ค๋Š” ํŠน์ง•์„ ๊ฐ–๋Š”๋‹ค. ๊ทธ๋ž˜์„œ ํ•ด์‹œ๋Š” ์ด๋Ÿฐ ํŠน์„ฑ์œผ๋กœ ์ธํ•ด ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ํ™•๋ณด๋ฅผ ์œ„ํ•ด ๋Œ€๋ถ€๋ถ„ ์‚ฌ์šฉ๋œ๋‹ค.

 

๋Œ€ํ‘œ์ ์ธ ํ•ด์‹œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์ข…๋ฅ˜๋กœ๋Š” MD-5, SHA-1, SHA-128, SHA-256, SHA-384, SHA-512 ๋“ฑ์ด ์žˆ๋‹ค. ์—ฌ๊ธฐ์„œ ์šฐ๋ฆฌ๋Š” MD-5 ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํŠน์ง•์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด๋„๋ก ํ•˜์ž. MD-5๋Š” ๋‹ค๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๋‹ฌ๋ฆฌ ์ƒ๋Œ€์ ์œผ๋กœ ๋ณตํ˜ธํ™”ํ•˜๊ธฐ ์‰ฌ์šด ๋‚œ์ด๋„์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ์†ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ MD-5 ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํŒจ์Šค์›Œ๋“œ ๋‹จ๋ฐฉํ–ฅ ์•”ํ˜ธํ™”์— ์‚ฌ์šฉ์„ ํ•˜์ง€ ์•Š๋„๋ก ๊ฐ•๋ ฅํžˆ ๊ถŒ๊ณ ํ•˜๊ณ  ์žˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด MD-5 ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํ•ด์‰ฌ ๊ฒฐ๊ณผ๊ฐ’์„ ๋ณตํ˜ธํ™”ํ•  ์ˆ˜๋Š” ์—†์ง€๋งŒ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ ํ˜„๋Œ€ ์ปดํ“จํ„ฐ์˜ ์„ฑ๋Šฅ์œผ๋กœ ์ปค๋ฒ„ํ•  ์ˆ˜ ์žˆ๋Š” ์ •๋„๋ผ๋ฉด ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜์— ๋Œ€ํ•œ ๋ฌธ์ž์—ด์„ ์ง‘์–ด๋„ฃ์€ ๋’ค, ๊ทธ ์ค‘ ํ•˜๋‚˜๊ฐ€ ํ•ด์‰ฌ ๊ฒฐ๊ณผ๊ฐ’๊ณผ ๋™์ผํ•œ ๊ฒƒ์„ ์ฐพ๋Š” ๋ธŒ๋ฃจํŠธ ํฌ์Šค ๋ฐฉ์‹์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋ž˜์„œ ๋ณดํ†ต MD-5 ์•Œ๊ณ ๋ฆฌ์ฆ˜์— SALT๋ผ๋Š” ์ž„์˜์˜ ๊ฐ’์„ ์›๋ณธ์— ์ฒจ๊ฐ€ํ•œ ๋’ค ํ•ด์‹œ๋ฅผ ์ ์šฉํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ํ•ด์‹œ ๊ฒฐ๊ณผ๊ฐ’์˜ ๊ธธ์ด๊ฐ€ ๋” ๋Š˜์–ด๋‚˜๊ธฐ ๋•Œ๋ฌธ์— ์ด์ „๋ณด๋‹ค ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ฐพ๊ธฐ๊ฐ€ ๋งค์šฐ ํž˜๋“ค์–ด์ง„๋‹ค. ๋ฌผ๋ก  ์ด SALT ๊ฐ’์€ ํ•ด๋‹น SALT ๊ฐ’์„ ์ถ”๊ฐ€ํ•œ ์‚ฌ๋žŒ๋“ค ๊ฐ„์— ๊ณต์œ ๋˜๋Š” ๊ฐ’์ด๋‹ค. ์–ด์จŒ๊ฑฐ๋‚˜ ์š”์ฆ˜์—๋Š” MD-5 ๋ณด๋‹ค๋Š” SHA ๊ณ„์—ด์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค๋Š” ์ ์„ ์•Œ์•„๋‘์ž.

 

ํ•ด์‹œ์˜ ํ™œ์šฉ ์˜ˆ์‹œ๋กœ๋Š” ์ธ์ฆ์„œ ๊ฒ€์ฆ, ๋””์ง€ํ„ธ ํฌ๋ Œ์‹, ๋””์ง€ํ„ธ ์„œ๋ช…, ๋ฐฉ๊ธˆ ์•Œ์•„๋ณธ ํŒจ์Šค์›Œ๋“œ ๋‹จ๋ฐฉํ–ฅ ์•”ํ˜ธํ™”, ๋ธ”๋ก์ฒด์ธ ๋“ฑ์— ์‚ฌ์šฉ๋œ๋‹ค.

2. ๋Œ€์นญํ‚ค๋งŒ ์‚ฌ์šฉ! ์•„๋‹ˆ๋ฉด ๋น„๋Œ€์นญ ํ‚ค๋งŒ ์‚ฌ์šฉ!

๋‹ค์Œ์€ ํ‚ค๋ฅผ ์•”ํ˜ธํ™”ํ•˜๊ณ  ๋ณตํ˜ธํ™”ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋Œ€ํ‘œ์ ์ธ ๋ฐฉ์‹๋“ค์ธ ๋Œ€์นญํ‚ค์™€ ๋น„๋Œ€์นญ ํ‚ค์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. ๋จผ์ € ๋Œ€์นญํ‚ค์ด๋‹ค.

๋Œ€์นญํ‚ค๋Š” 1๊ฐœ์˜ ํ‚ค๋กœ ์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™”๋ฅผ ๋ชจ๋‘ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. ๋ฐ‘์—์„œ ์•Œ์•„๋ณผ ๋น„๋Œ€์นญ ํ‚ค๋ฐฉ์‹์— ๋น„ํ•ด ์••๋„์ ์œผ๋กœ ํšจ์œจ์ ์ด๋‹ค. ์ด 'ํšจ์œจ์ '์ด๋ผ๋Š” ๊ตฌ์ฒด์ ์ธ ์˜๋ฏธ๋Š” ๋น„๋Œ€์นญ ํ‚ค ๋ฐฉ์‹์— ๋Œ€ํ•ด ์„ค๋ช…ํ•  ๋•Œ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž. 

 

๋Œ€์นญํ‚ค ๋ฐฉ์‹์„ ๋งค์šฐ ๊ฐ„๋‹จํžˆ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” XOR ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์„ ์ดํ•ดํ•˜๋ฉด ๋œ๋‹ค. XOR ์—ฐ์‚ฐ์€ ๋‘ ์ˆซ์ž๊ฐ€ ๋ชจ๋‘ ๋™์ผํ•  ๋•Œ 0์„ ๋‚ด๋ฑ‰๊ณ , ์„œ๋กœ ์ˆซ์ž๊ฐ€ ๋‹ค๋ฅผ ๊ฒฝ์šฐ 1์„ ๋‚ด๋ฑ‰๋Š” ์—ฐ์‚ฐ์ด๋‹ค. ๊ทธ๋ฆผ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

 

XOR ๋…ผ๋ฆฌ์—ฐ์‚ฐ

 

๊ทธ๋Ÿฐ๋ฐ ์ด XOR ์—ฐ์‚ฐ์„ ๊ฐ€์ง€๊ณ  ๋Œ€์นญํ‚ค๋ฅผ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค๋‹ˆ? ์ดํ•ด๋ฅผ ์œ„ํ•ด ์•„๋ž˜์ฒ˜๋Ÿผ 8๋น„ํŠธ ๋ฒ”์œ„๋ฅผ ๊ฐ–๋Š” ๋‘ ๊ฐœ์˜ ์ˆซ์ž๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•ด๋ณด์ž. ๊ทธ๋ฆฌ๊ณ  ์ด 2๊ฐœ์˜ ์ˆซ์ž๋ฅผ XOR ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ–ˆ๋‹ค.

 

 

๊ทธ๋Ÿฌ๋ฉด ์ด์ œ ๋ฐ˜๋Œ€๋กœ ์œ„ ๊ทธ๋ฆผ์—์„œ ๋…ธ๋ž€์ƒ‰๊ณผ ์ดˆ๋ก์ƒ‰ ๊ฐ„์— XOR ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•ด๋ณด์ž. 

 

 

์œ„ ๊ทธ๋ฆผ์—์„œ ์ดˆ๋ก์ƒ‰๊ณผ ๋…ธ๋ž€์ƒ‰์˜ XOR ์—ฐ์‚ฐ ๊ฒฐ๊ณผ์ธ ๋นจ๊ฐ„์ƒ‰์˜ ์ด์ง„์ˆ˜๊ฐ€ ์ง์ „ ๊ทธ๋ฆผ์—์„œ ๋ณด์•˜๋˜ ํšŒ์ƒ‰์˜ ์ด์ง„์ˆ˜๋ž‘ ๋™์ผํ•œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒŒ ๊ณผ์—ฐ ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š” ๊ฑธ๊นŒ? ์ฆ‰, ์ฒซ๋ฒˆ์งธ ๊ทธ๋ฆผ์ด ์•”ํ˜ธํ™”๋ฅผ, ๋‘๋ฒˆ์งธ ๊ทธ๋ฆผ์ด ๋ณตํ˜ธํ™”๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์œ„ ๊ทธ๋ฆผ์˜ ๋…ธ๋ž€์ƒ‰ ์ด์ง„์ˆ˜๊ฐ€ ๋ฐ”๋กœ '๋Œ€์นญ ํ‚ค'๊ฐ€ ๋œ๋‹ค. ๊ฒฐ๊ตญ ๋Œ€์นญํ‚ค์— ํ•ด๋‹นํ•˜๋Š” ๋…ธ๋ž€์ƒ‰ ์ด์ง„์ˆ˜๋กœ ์ฒซ๋ฒˆ์งธ ๊ทธ๋ฆผ์—์„œ๋Š” ์•”ํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ–ˆ๊ณ , ๋‘๋ฒˆ์งธ ๊ทธ๋ฆผ์—์„œ ๋ณตํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์•”ํ˜ธํ™”์— ์ˆ˜ํ–‰ํ•œ ๋™์ผํ•œ ํ‚ค๋ฅผ ๊ฐ€์ ธ๋‹ค ์“ด๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

 

์ด๊ฒƒ์ด ๋ฐ”๋กœ ๋Œ€์นญํ‚ค ๋ฐฉ์‹์ด๋‹ค. ๋Œ€์นญํ‚ค์˜ ๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ๋Š” DES, 3DES, SEED-128, ARIA, AES-128, AES-256 ๋“ฑ์ด ์žˆ๋‹ค.

 

๋Œ€์นญํ‚ค๋ฅผ ์ธํ„ฐ๋„ท ํ™˜๊ฒฝ์—์„œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์— Secured ํ†ต์‹ ํ•  ๋•Œ ์ด์šฉํ•œ๋‹ค๊ณ  ํ•˜๋ฉด ์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ๋œ๋‹ค.

 

๋Œ€์นญํ‚ค๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์˜ ๋‘ ์„œ๋ฒ„ ๊ฐ„์˜ ํ†ต์‹  ๋ฐฉ๋ฒ•

 

ํ•˜์ง€๋งŒ ๋Œ€์นญํ‚ค ๋ฐฉ์‹์€ ๋ฌธ์ œ๊ฐ€ ๊ทธ๋ฆผ์˜ 3๋ฒˆ ๋‹จ๊ณ„์— ์žˆ๋‹ค. ํ•œ ์ชฝ ์„œ๋ฒ„์—์„œ ์ƒ์„ฑํ•œ ๋Œ€์นญํ‚ค๋ฅผ ์›๊ฒฉ์˜ ์„œ๋ฒ„๋กœ ์–ด๋–ป๊ฒŒ ์ด๋™์‹œํ‚ค๋ƒ๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ƒฅ ๋‹จ์ˆœํžˆ ์ธํ„ฐ๋„ท์„ ํ†ตํ•ด ์ „๋‹ฌํ•œ๋‹ค๋ฉด ๋ณด์•ˆ์— ๋งค์šฐ ์ทจ์•ฝํ•˜๊ฒŒ ๋œ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ธํ„ฐ๋„ท์ด๋ผ๋Š” ๊ณต๊ฐ„์€ ๋ชจ๋‘์—๊ฒŒ ๊ฐœ๋ฐฉ๋˜์–ด ์žˆ๋Š” Public ๊ณต๊ฐ„์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ํ•ด์ปค๊ฐ€ ์ธํ„ฐ๋„ท์ด๋ผ๋Š” ๊ณต๊ฐ„์—์„œ ๋Œ€์นญํ‚ค๋ฅผ ํƒˆ์ทจํ•˜๊ฒŒ ๋˜๋ฉด ๊ทธ ๋ฐ์ดํ„ฐ๋Š” ๋ฐ”๋กœ ํ•ด์ปค๊ฐ€ ๋ณตํ˜ธํ™”ํ•˜์—ฌ ๋“ค์—ฌ๋‹ค๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

 

๋˜ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” ๋Œ€์นญํ‚ค๋ฅผ USB์™€ ๊ฐ™์€ ์ €์žฅ์žฅ์น˜์— ๋‹ด์•„์„œ ์‹ค์ œ ์›๊ฒฉ ์„œ๋ฒ„์— ์žˆ๋Š” ๋ฌผ๋ฆฌ์ ์ธ ๊ณต๊ฐ„์œผ๋กœ ์ด๋™ํ•ด ์›๊ฒฉ ์„œ๋ฒ„์— USB ์žฅ์น˜๋ฅผ ๊ผฝ๊ณ  ๋Œ€์นญํ‚ค๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๋ฌผ๋ก  ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•์€ ์›๊ฒฉ ์„œ๋ฒ„๊ฐ€ ๊ฐ€๊นŒ์šด ๋ฌผ๋ฆฌ์ ์ธ ๊ณต๊ฐ„์— ์žˆ๋‹ค๋ฉด ์ƒ๊ด€์—†๊ฒ ์ง€๋งŒ, ์ „์„ธ๊ณ„์˜ ์–ด๋””๋“  ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒŒ ๋ชฉํ‘œ์ธ ์ธํ„ฐ๋„ท์ด๋ผ๋Š” ๊ณต๊ฐ„์—์„œ๋Š” ์ด๋Ÿฐ ๋ฐฉ๋ฒ•์€ ํ˜„์‹ค์„ฑ์ด ์—†๋‹ค.

 

์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋น„๋Œ€์นญํ‚ค ๋ฐฉ์‹์ด ๋“ฑ์žฅํ–ˆ๋‹ค. ๋น„๋Œ€์นญํ‚ค๋Š” ๊ฐ ์„œ๋ฒ„๋งˆ๋‹ค ํ•œ ์Œ์˜ ํ‚ค(์ฆ‰, ์ด 2๊ฐœ์˜ ํ‚ค)๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์„œ๋กœ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค. ์ด ์ค‘ ํ•˜๋‚˜์˜ ํ‚ค๋กœ๋Š” ์•”ํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ , ๋‚˜๋จธ์ง€ ํ‚ค๋กœ๋Š” ๋ณตํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค. ์ด ํ•œ ์Œ์˜ ํ‚ค๋ฅผ Public ํ‚ค, Private ํ‚ค๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค. ๋น„๋Œ€์นญ ํ‚ค ๋ฐฉ์‹์œผ๋กœ ์–ด๋–ป๊ฒŒ ๋‘ ์„œ๋ฒ„ ๊ฐ„์— ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์‚ดํŽด๋ณด์ž. ๋จผ์ € ์ƒํ™ฉ์€ [ํด๋ผ์ด์–ธํŠธ → ์„œ๋ฒ„] ๋กœ ํ†ต์‹ ํ•  ๋•Œ์˜ ๋‹จ๊ณ„์ด๋‹ค.

 

ํด๋ผ์ด์–ธํŠธ → ์„œ๋ฒ„๋กœ ํ†ต์‹ ํ•  ๋•Œ์˜ ๋น„๋Œ€์นญํ‚ค ๋ฐฉ์‹

 

๊ฐ€์žฅ ๋จผ์ € ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๋‘˜ ๋‹ค ํ•œ ์Œ์˜ ํ‚ค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฐ์ž์˜ Public ํ‚ค๋ฅผ ๊ตํ™˜ํ•œ๋‹ค. ์ด ๊ตํ™˜ํ•˜๋Š” ๊ณผ์ •์„ IKE(Internet Key Exchange)๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚œ ๋’ค, ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„๋กœ ๋ณด๋‚ผ ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋Š”๋ฐ, ์ด ๋•Œ, ๊ตํ™˜๋ฐ›์€ Server์˜ Public ํ‚ค๋กœ ์•”ํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ด์ œ ์ด ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ธฐ ์œ„ํ•œ ์ผ์ข…์˜ ์ฑ„๋„์ด ํ•˜๋‚˜ ์ƒ๊ธฐ๋Š”๋ฐ, ์ด ์ฑ„๋„์„ 'Tunnel(ํ„ฐ๋„)'์ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ์ด ํ„ฐ๋„์„ ํ†ตํ•ด ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ „์†ก์ด ๋˜๋ฉด ์„œ๋ฒ„์—์„œ๋Š” ์ž์‹ ์˜ Public ํ‚ค ์ฆ‰, Server์˜ Public ํ‚ค๋กœ ๋ณตํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค.

 

๋ฐ˜๋Œ€์ธ [์„œ๋ฒ„ → ํด๋ผ์ด์–ธํŠธ]๋กœ ์‘๋‹ต์„ ์ค„ ๋•Œ๋Š” ์ด์ œ ์„œ๋ฒ„์—์„œ๋Š” Client Public ํ‚ค๋กœ ์•”ํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•ด์„œ ํด๋ผ์ด์–ธํŠธ๋กœ ํ„ฐ๋„์„ ํ†ตํ•ด ๋„˜๊ฒจ์ฃผ๋ฉด ํด๋ผ์ด์–ธํŠธ๋Š” ์ž์‹ ์˜ ํ‚ค์ธ Client์˜ Public ํ‚ค๋กœ ๋ณตํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉด ๋œ๋‹ค. ์ด๊ฒƒ์ด ๋ฐ”๋กœ ๋น„๋Œ€์นญํ‚ค ๋ฐฉ์‹์ด๋‹ค.

 

ํ•˜์ง€๋งŒ ์œ„ ๋น„๋Œ€์นญํ‚ค ๋ฐฉ์‹์€ ๋ฌธ์ œ์ ์ด ๋ช‡ ๊ฐ€์ง€ ์žˆ๋Š”๋ฐ, ๋จผ์ € 1๋ฒˆ ๋‹จ๊ณ„์ธ ํ•œ ์Œ์˜ ํ‚ค๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ ์‹œ๊ฐ„์ด ๊ฝค ์˜ค๋ž˜๊ฑธ๋ฆฐ๋‹ค. ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค๋Š” ๊ฒƒ์€ ํ‚ค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋ณต์žก๋„๊ฐ€ ๋†’๋‹ค๋Š” ๊ฒƒ์ด๊ณ , ๋ณต์žก๋„๊ฐ€ ๋†’๋‹ค๋Š” ๊ฒƒ์€ ๋ณด์•ˆ์„ฑ์ด ๋†’๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ์™œ ๋ณด์•ˆ์„ฑ์ด ๋†’๋„๋ก ํ•˜๋Š”๊ฑธ๊นŒ? ์œ„ ๊ทธ๋ฆผ์—์„œ ๋ณด๋‹ค์‹œํ”ผ Public Key๋ฅผ ์„œ๋กœ ๊ตํ™˜ํ•  ๋•Œ ์ธํ„ฐ๋„ท์„ ํ†ตํ•ด ๊ตํ™˜ํ•˜๊ฒŒ ๋œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ธํ„ฐ๋„ท์— ์กด์žฌํ•˜๋Š” ๋ˆ„๊ตฐ๊ฐ€๋“ค์€ ๊ตํ™˜๋˜๊ณ  ์žˆ๋Š” Public Key๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๋ฌผ๋ก  ์ด Public Key๋ฅผ ๊ฐ–๊ณ  ์žˆ๋‹ค๊ณ  ํ•ด์„œ ๋ฐ”๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณตํ˜ธํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ ์ด Public Key๋ฅผ ๊ฐ€์ง€๊ณ  ๊ทธ์— ๋งคํ•‘๋˜์–ด ์žˆ๋Š” Private Key๋ฅผ ์–ด๋Š์ •๋„ ์œ ์ถ”ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. ์ด๋Ÿฐ ์œ ์ถ” ๊ฐ€๋Šฅ์„ฑ ๋•Œ๋ฌธ์— ์ตœ๋Œ€ํ•œ Key์˜ ๋ณด์•ˆ์„ฑ์„ ๋†’๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ณต์žก๋„๊ฐ€ ๋†’์€ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋  ์ˆ˜ ๋ฐ–์— ์—†๊ฒŒ ๋˜๊ณ , ์ด ๋ณต์žก๋„๊ฐ€ ๋†’์€ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๊ฒฐ๊ตญ Key๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋„๋ก ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ์ž‘์—…์„ ๋งค ํ†ต์‹ ๋งˆ๋‹ค ์ˆ˜ํ–‰์„ ํ•œ๋‹ค๊ณ  ํ•ด๋ณด์ž. ๋ ˆ์ดํ„ด์‹œ๊ฐ€ 1,2์ดˆ๋งŒ ๋„˜์–ด๊ฐ€๋„ ์œ ์ €๊ฐ€ ์ดํƒˆํ•˜๋Š” ์ƒํ™ฉ์—์„œ ํ‚ค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ๋งŒ 1์ดˆ๊ฐ€ ๋„˜๊ฒŒ ๊ฑธ๋ฆฐ๋‹ค๋ฉด ๋ฌธ์ œ๊ฐ€ ๋  ๊ฒƒ์ด๋‹ค.

3. ๋Œ€์นญํ‚ค์™€ ๋น„๋Œ€์นญํ‚ค๋ฅผ ํ˜ผํ•ฉํ•˜์ž

๋น„๋Œ€์นญํ‚ค๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์˜ ๋Œ€์•ˆ์œผ๋กœ ๋Œ€์นญํ‚ค์™€ ๋น„๋Œ€์นญํ‚ค๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋“ฑ์žฅํ•œ๋‹ค. ์ด ๋ฐฉ๋ฒ•์˜ ํ•ต์‹ฌ์€ ํด๋ผ์ด์–ธํŠธ๋Š” ๋Œ€์นญํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ์„œ๋ฒ„๋Š” ๋น„๋Œ€์นญํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ผ๋‹จ ์•„๋ž˜ ๊ทธ๋ฆผ์„ ๋ณด์ž.

 

๋Œ€์นญํ‚ค์™€ ๋น„๋Œ€์นญํ‚ค ํ˜ผํ•ฉ ๋ฐฉ์‹

 

๋จผ์ € ํด๋ผ์ด์–ธํŠธ์—์„œ๋Š” ๋Œ€์นญํ‚ค๋งŒ์„, ์„œ๋ฒ„์—์„œ๋Š” ๋น„๋Œ€์นญํ‚ค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด์ œ ์ธํ„ฐ๋„ท์„ ํ†ตํ•ด ์„œ๋ฒ„๋Š” ์ž์‹ ์˜ Public Key๋ฅผ ํด๋ผ์ด์–ธํŠธ์— ์ œ๊ณตํ•œ๋‹ค. ์ด ๋•Œ, ํด๋ผ์ด์–ธํŠธ๋Š” ๋จผ์ € ์ž์‹ ์˜ ๋Œ€์นญํ‚ค๋กœ ํ‰๋ฌธ ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”์‹œํ‚จ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚œ ๋’ค ์„œ๋ฒ„์˜ Public Key๋ฅผ ํ™œ์šฉํ•ด์„œ ์ž์‹ (ํด๋ผ์ด์–ธํŠธ)์˜ ๋Œ€์นญํ‚ค ์ž์ฒด๋ฅผ ์•”ํ˜ธํ™”ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด 2๊ฐœ๋ฅผ ํ„ฐ๋„๋กœ ์†ก์‹ ํ•œ๋‹ค. 

 

๊ทธ๋Ÿฌ๋ฉด ์ด์ œ ์„œ๋ฒ„๋Š” ๋จผ์ € ์•”ํ˜ธํ™”๋œ ํด๋ผ์ด์–ธํŠธ์˜ ๋Œ€์นญํ‚ค๋ฅผ ์ž์‹ (์„œ๋ฒ„)์˜ Private Key๋กœ ๋ณตํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค. ์ด๊ฒŒ ๊ฐ€๋Šฅํ•œ ์ด์œ ๋Š” ํด๋ผ์ด์–ธํŠธ ์ชฝ์—์„œ ์„œ๋ฒ„์˜ Public Key๋กœ ์•”ํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž„์„ ์žŠ์ง€๋ง์ž! ์ด์ œ ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ์˜ ๋Œ€์นญํ‚ค๋ฅผ ์–ป์–ด๋ƒˆ์œผ๋‹ˆ ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํด๋ผ์ด์–ธํŠธ์˜ ๋Œ€์นญํ‚ค๋กœ ๋ณตํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉด ํ‰๋ฌธ ๋ฐ์ดํ„ฐ๋ฅผ ์–ป์–ด๋‚ผ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. ์ด๊ฒƒ์ด ๋ฐ”๋กœ ๋Œ€์นญํ‚ค์™€ ๋น„๋Œ€์นญํ‚ค๋ฅผ ํ˜ผํ•ฉํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

 

ํ•˜์ง€๋งŒ ์ด์™€ ๊ฐ™์€ ๋ฐฉ์‹์€ ์ธํ„ฐ๋„ท ๊ณต๊ฐ„์˜ ๋ˆ„๊ตฐ๊ฐ€ ์ฆ‰, ํ•ด์ปค๊ฐ€ MITM(Man In The Middle) ๊ณต๊ฒฉ์„ ์ˆ˜ํ–‰ํ•ด์„œ ๋ณด์•ˆ์˜ ์ทจ์•ฝ์ ์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค. ์ด MITM ๋ฐฉ์‹์ด ์–ด๋–ป๊ฒŒ ๊ณต๊ฒฉํ•˜๋Š”์ง€ ๊ฐ„๋žตํ•˜๊ฒŒ ์‚ดํŽด๋ณด์ž. ์•„๋ž˜ ๊ทธ๋ฆผ์„ ๋ณด์ž.

 

MITM ํ•ดํ‚น ๋ฐฉ์‹

 

์ด์ „ ๊ณผ์ •์ฒ˜๋Ÿผ ํด๋ผ์ด์–ธํŠธ๋Š” ๋Œ€์นญํ‚ค, ์„œ๋ฒ„๋Š” ๋น„๋Œ€์นญํ‚ค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ด๋ฒˆ์—๋Š” ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ํ†ต์‹ ํ•˜๋Š” ๊ฒฝ๋กœ์ธ ์ธํ„ฐ๋„ท์˜ ์–ด๋”” ์ค‘๊ฐ„์—์„œ ์•…์˜์ ์ธ ์˜๋„๋ฅผ ๊ฐ–๋Š” ํ•ด์ปค๋„๋น„๋Œ€์นญ ํ‚ค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ๋กœ Public Key๋ฅผ ์ธํ„ฐ๋„ท์œผ๋กœ ์†ก์‹ ํ•˜๋Š” ์ˆœ๊ฐ„ ์ค‘๊ฐ„์— ํ•ด์ปค๊ฐ€ ์„œ๋ฒ„์˜ Public Key๋ฅผ ํƒˆ์ทจํ•˜๊ณ , ํ•ด์ปค์˜ Public Key๋กœ ๋ฐ”๊ฟ”์น˜๊ธฐํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ๋กœ ๋ณด๋‚ธ๋‹ค.

 

์ด๋ ‡๊ฒŒ ๋˜๋ฉด ๋ฐ์ดํ„ฐ ์†ก์‹  ์ธก์ธ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ž์‹ ์˜ ๋Œ€์นญํ‚ค๋ฅผ ์•”ํ˜ธํ™”ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” Public Key๋ฅผ ์„œ๋ฒ„ ๊ฒƒ์ด ์•„๋‹Œ ํ•ด์ปค์˜ ๊ฒƒ์œผ๋กœ ์•”ํ˜ธํ™”ํ•˜๊ฒŒ ๋œ๋‹ค. ๋‹น์—ฐํ•˜๊ฒŒ๋„ ํด๋ผ์ด์–ธํŠธ ์ธก์€ ์ธํ„ฐ๋„ท์„ ํ†ตํ•ด ์ „๋‹ฌ๋ฐ›์€ Public Key๊ฐ€ ์ง„์งœ ์„œ๋ฒ„์˜ ๊ฒƒ์ธ์ง€, ํ•ด์ปค์˜ ๊ฒƒ์ธ์ง€๋Š” ๋ˆˆ์น˜์ฑ„์ง€ ๋ชปํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•ด์ปค์˜ Public Key๋กœ ์•”ํ˜ธํ™”๋œ ํด๋ผ์ด์–ธํŠธ ๋Œ€์นญํ‚ค์™€ ํด๋ผ์ด์–ธํŠธ ๋Œ€์นญํ‚ค๋กœ ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ํ„ฐ๋„์„ ํ†ตํ•ด ์†ก์‹ ๋œ๋‹ค. ์ด ๋•Œ ๋˜ ํ•ด์ปค๋Š” ์ค‘๊ฐ„์— ๋ผ์–ด๋“ค์–ด ๋จผ์ € ์•”ํ˜ธํ™”๋œ ํด๋ผ์ด์–ธํŠธ ๋Œ€์นญํ‚ค๋ฅผ ํ•ด์ปค ์ž์‹ ์˜ Private Key๋กœ ๋ณตํ˜ธํ™”ํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ์•Œ์•„๋‚ธ ํด๋ผ์ด์–ธํŠธ์˜ ๋Œ€์นญํ‚ค๋ฅผ ์ด์šฉํ•ด์„œ ์ด์ œ ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณตํ˜ธํ™”ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

 

ํ•ด์ปค๋Š” ํด๋ผ์ด์–ธํŠธ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณตํ˜ธํ™”ํ•ด์„œ ํƒˆ์ทจํ•œ ๋’ค์— ๋” ๋‚˜์•„๊ฐ€ 2๋ฒˆ ๋‹จ๊ณ„์—์„œ ๊ฐ–๊ณ  ์žˆ์—ˆ๋˜ ์„œ๋ฒ„์˜ Public Key๋กœ ํด๋ผ์ด์–ธํŠธ์˜ ๋Œ€์นญํ‚ค๋ฅผ ๋‹ค์‹œ ์•”ํ˜ธํ™”ํ•ด์„œ ์„œ๋ฒ„ ์ชฝ์œผ๋กœ ๋ณด๋‚ด์ค€๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ์–ด์ฐŒ๋˜์—ˆ๊ฑด ์„œ๋ฒ„๊ฐ€ ๋ฐ›์€ ์•”ํ˜ธํ™”๋œ ํด๋ผ์ด์–ธํŠธ ๋Œ€์นญํ‚ค๋Š” ์„œ๋ฒ„์˜ Public Key๋กœ ์•”ํ˜ธํ™”ํ•œ ์…ˆ์ด๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋ฒ„๋Š” ์ž์‹ ์˜ Private Key๋กœ ๋ณตํ˜ธํ™”ํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. 

 

์ด ์ƒํ™ฉ์—์„œ ๊ฐ€์žฅ ์น˜๋ช…์ ์ธ ๋ฌธ์ œ๋Š” ๋ฐ”๋กœ ํด๋ผ์ด์–ธํŠธ, ์„œ๋ฒ„ ๋ชจ๋‘ ์ž์‹ ์ด ์†ก, ์ˆ˜์‹ ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•ด์ปค์—๊ฒŒ ํƒˆ์ทจ๋œ์ง€ ๋ˆˆ์น˜์ฑ„์ง€ ๋ชปํ•œ๋‹ค๋Š” ์ ์ด๋‹ค. MITM ํ•ด์ปค ๊ณต๊ฒฉ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ ๊ฐ€์žฅ ๊ทผ๋ณธ์ ์ธ ์›์ธ์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ œ๊ณต๋ฐ›์€ Public Key๋ฅผ ๋ฌด์กฐ๊ฑด์ ์œผ๋กœ ์‹ ๋ขฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•œ ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ์ œ๊ณต๋ฐ›์€ Publicy Key๊ฐ€ ์ •๋ง ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ฒ€์ฆํ•ด์•ผ๋งŒ ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋Œ€์ฒด Public Key๋ฅผ ์–ด๋–ป๊ฒŒ ๊ฒ€์ฆํ•ด์•ผ ํ• ๊นŒ?

3. ๊ณต์‹ ์ธ์ฆ ๊ธฐ๊ด€์„ ํ†ตํ•ด Public Key๋ฅผ ๊ฒ€์ฆํ•˜์ž!

๋Œ€์นญํ‚ค์™€ ๋น„๋Œ€์นญํ‚ค๋ฅผ ํ˜ผํ•ฉํ•˜๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•  ๋•Œ ๋ณด์•ˆ ์ทจ์•ฝ์ ์˜ ์›์ธ์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ˆ˜์‹ ๋ฐ›์€ Public Key๊ฐ€ ์ •๋ง ์„œ๋ฒ„์˜ ๊ฒƒ์ธ์ง€, ํ•ด์ปค์˜ ๊ฒƒ์ธ์ง€ ๊ฒ€์ฆํ•˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ํ–ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ด๋ฅผ ์–ด๋–ป๊ฒŒ ๊ฒ€์ฆํ• ๊นŒ? ๋‹ต์€ ์ƒ๊ฐ์™ธ๋กœ ๊ฐ„๋‹จํ•˜๋‹ค. ์ด๋ฅผ ๊ฒ€์ฆํ•ด์ฃผ๋Š” ์ œ 3์˜ ๊ธฐ๊ด€์ด ์กด์žฌํ•˜๋ฉด ๋œ๋‹ค.

 

CA, RA๋ผ๋Š” ์ œ3์ž ์ธ์ฆ๊ธฐ๊ด€์„ ๋‘์–ด Public Key๋ฅผ ๊ฒ€์ฆ

 

Public Key๋ฅผ ๊ฒ€์ฆํ•˜๋Š” ์ œ 3์˜ ๊ธฐ๊ด€์œผ๋กœ์„œ CA, RA๊ฐ€ ์กด์žฌํ•œ๋‹ค. RA๋Š” CA ๋ณด๋‹ค ๋ฐ‘์˜ ๊ธฐ๊ด€์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. ๊ฐ€์žฅ ๋จผ์ € ์„œ๋ฒ„ ์ชฝ์—์„œ ๋น„๋Œ€์นญํ‚ค ๊ตฌ๋งค ๋“ฑ๋ก์„ RA์— ์š”์ฒญํ•˜๋ฉด RA๋Š” ์‹ค์งˆ์ ์ธ ๋น„๋Œ€์นญํ‚ค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋Š” CA์—๊ฒŒ ์ „๋‹ฌํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ด์ œ CA๋Š” ๋น„๋Œ€์นญํ‚ค๋ฅผ RA๋ฅผ ํ†ตํ•ด์„œ ์„œ๋ฒ„์—๊ฒŒ ์ „๋‹ฌํ•ด์ค€๋‹ค. ์ด๋ ‡๊ฒŒ ํ•ด์„œ ์„œ๋ฒ„๋Š” ๋น„๋Œ€์นญํ‚ค๋ฅผ ๊ฐ–๊ฒŒ ๋œ๋‹ค. ์ด ๋•Œ, ์„œ๋ฒ„์˜ ๋น„๋Œ€์นญ ํ‚ค ์ค‘ Public Key์— ํ‚ค ๊ฐ’ ๋ง๊ณ ๋„ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ถ€๊ฐ€ ์ •๋ณด๊ฐ€ ๋“ค์–ด์žˆ๋Š”๋ฐ, ๊ทธ ์ค‘์— "hash ๊ฐ’"์ด ๋“ค์–ด์žˆ๋‹ค. ์ด hash ๊ฐ’์€ CA๊ฐ€ ๊ฐ–๊ณ  ์žˆ๋Š” Public/Private Key ์ค‘ Private Key๋กœ ์•”ํ˜ธํ™”ํ•œ ๊ฐ’์ด๋ฉฐ, ์ด ๊ฐ’์œผ๋กœ ์ถ”ํ›„์— ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ฐ›์€ Public Key๊ฐ€ ์ง„์งœ์ธ์ง€ ์•„๋‹Œ์ง€ ๊ฒ€์ฆํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด ๋•Œ Public Key์™€ ๋ถ€๊ฐ€์ ์ธ ์ •๋ณด(hash ๊ฐ’ ๋“ฑ..)๋“ค์„ ํ•ฉ์ณ ์ด๋ฅธ๋ฐ” '์ธ์ฆ์„œ' ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

 

์–ด์จŒ๊ฑด ์ด์ œ ์„œ๋ฒ„๋Š” ๋น„๋Œ€์นญํ‚ค๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ์œผ๋‹ˆ ์ž์‹ (์„œ๋ฒ„)์˜ Public ํ‚ค๋ฅผ ํด๋ผ์ด์–ธํŠธ์— ์ œ๊ณตํ•œ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋Š” ์ž์‹ ์˜ ๋Œ€์นญํ‚ค๋ฅผ ์ด Public ํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•ด์•ผ ํ•˜๋Š”๋ฐ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์ „์— ์ด Public ํ‚ค๊ฐ€ ์ง„์งœ ์‹ ๋ขฐํ• ๋งŒํ•œ์ง€ ๊ฒ€์ฆํ•ด์•ผ ํ•œ๋‹ค. ๊ฒ€์ฆํ•˜๊ธฐ ์œ„ํ•ด์„œ ์„œ๋ฒ„์˜ Public Key์— ๋ถ€๊ฐ€์ ์ธ ์ •๋ณด์ธ hash ๊ฐ’์„ ์‚ดํŽด๋ณธ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด hash ๊ฐ’์„ ๋ณตํ˜ธํ™”ํ•˜๋Š”๋ฐ, ์ด ๋ณตํ˜ธํ™”ํ•  ๋•Œ ํ™œ์šฉํ•˜๋Š” ํ‚ค๋Š” ๋ฐ”๋กœ CA์˜ Public Key๋ฅผ ์ด์šฉํ•œ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ํด๋ผ์ด์–ธํŠธ๋Š” CA์˜ Public Key๋ฅผ ์–ด๋–ป๊ฒŒ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š”๊ฐ€? ํ• ํ…๋ฐ, ์ด๋Š” ํด๋ผ์ด์–ธํŠธ(ex. ์œˆ๋„์šฐ, ๋งฅ, ๋ฆฌ๋ˆ…์Šค)์—์„œ ๋ณด์•ˆ ์—…๋ฐ์ดํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉด ํ•ด๋‹น OS์™€ ์ œํœด(?)๋ฅผ ๋งบ๊ณ  ์žˆ๋Š” CA ๊ธฐ๊ด€๋“ค์˜ Public Key๊ฐ€ ํด๋ผ์ด์–ธํŠธ์˜ ํŒŒ์ผ ์‹œ์Šคํ…œ์— ๋‹ค์šด๋กœ๋“œ ๋˜๋Š” ๊ฒƒ์ด๋‹ค. 

 

์ด๋ ‡๊ฒŒ ํด๋ผ์ด์–ธํŠธ๊ฐ€ CA์˜ Public Key๋ฅผ ๊ฐ–๊ณ  ์žˆ๊ฒŒ ๋˜๋ฉด ํ•ด๋‹น ํ‚ค๋กœ ์„œ๋ฒ„์˜ Public Key์— ๋ถ™์–ด์žˆ๋Š” hash ๊ฐ’์„ ๋ณตํ˜ธํ™”ํ•จ์œผ๋กœ์จ ํด๋ผ์ด์–ธํŠธ๋Š” "์ด Public Key๊ฐ€ ํ•ด์ปค์˜ ๊ฒƒ์ด ์•„๋‹Œ ์ •๋ง ์„œ๋ฒ„์˜ ๊ฒƒ์ด ๋งž๊ตฌ๋‚˜!" ๋ผ๊ณ  ๊ฒ€์ฆํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด๋‹ค. 

 

๊ทธ ์ดํ›„์—๋Š” ์ง์ „ ๋ชฉ์ฐจ์—์„œ ์‚ดํŽด๋ณธ ๊ฒƒ์ฒ˜๋Ÿผ ํด๋ผ์ด์–ธํŠธ์˜ ๋Œ€์นญํ‚ค๋ฅผ ์•”ํ˜ธํ™”ํ•˜๊ณ , ํ„ฐ๋„๋ง ๋“ฑ ์ดํ›„์˜ ๊ณผ์ •์€ ๋™์ผํ•˜๋‹ค.

 

์ด๋ ‡๊ฒŒ ์ œ 3์˜ ๊ธฐ๊ด€์„ ํ†ตํ•ด์„œ Public Key๋ฅผ ๊ฒ€์ฆํ•˜๋Š” ๊ณผ์ •์ด ์žˆ๋‹ค๋ฉด ์ธํ„ฐ๋„ท์— ๋Œ์•„๋‹ค๋‹ˆ๋Š” ํ•ด์ปค๋“ค์€ ์ค‘๊ฐ„์— ๊ณต๊ฒฉ์„ ํ•˜๋”๋ผ๋„ ์„œ๋ฒ„์˜ Public ํ‚ค์— ๋ถ™์–ด์žˆ๋Š” hash ๊ฐ’ ๋•Œ๋ฌธ์— ๊ณต๊ฒฉ์„ ํ•  ์ˆ˜๊ฐ€ ์—†๋‹ค. ์™œ๋ƒํ•˜๋ฉด ํ•ด์ปค๋“ค์€ ํด๋ผ์ด์–ธํŠธ์™€ ๋‹ฌ๋ฆฌ CA์˜ Public Key๋ฅผ ๊ฐ–๊ณ  ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

MITM ๊ณต๊ฒฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค!

 

์ด๋ ‡๊ฒŒ ์„œ๋ฒ„์˜ ๋น„๋Œ€์นญ ํ‚ค๋ฅผ RA, CA์™€ ๊ฐ™์€ ์ธ์ฆ๊ธฐ๊ด€์— ๊ตฌ๋งค๋ฅผ ์œ„ํƒํ•˜๊ณ  ์ƒ์„ฑํ•œ ๋’ค ์–ป์€ Public Key์™€ hash ๊ฐ’๊ณผ ๊ฐ™์€ ์ •๋ณด๋“ค์„ ํ†ตํ‹€์–ด์„œ '์ธ์ฆ์„œ'๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค๊ณ  ํ–ˆ๋‹ค. ์ด ๋•Œ, '์„œ๋ฒ„'๊ฐ€ ์›น์„œ๋ฒ„์ด๊ณ  ์›น ํ†ต์‹ ์„ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ ํ•ด๋‹น ์ธ์ฆ์„œ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ์ด ์ธ์ฆ์„œ๋ฅผ ๋ฐ”๋กœ 'SSL ์ธ์ฆ์„œ'๋ผ๊ณ  ๋ถ€๋ฅด๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด SSL ์ธ์ฆ์„œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” HTTP ํ†ต์‹  ํ”„๋กœํ† ์ฝœ์ด ๋ฐ”๋กœ HTTPS์ธ ๊ฒƒ์ด๋‹ค.

 

์ฐธ๊ณ ๋กœ TLS๋ผ๋Š” ๊ฒƒ๋„ ์žˆ๋Š”๋ฐ, TLS๋Š” SSL์˜ ๋ฐœ์ „ํ•จ์— ๋”ฐ๋ผ ๋‹จ์ ์„ ๋ณด์™„ํ•˜๋ฉด์„œ ๋‚˜์˜จ ๊ฒƒ์— ๋ถˆ๊ณผํ•˜๋‹ค. ๊ฐ„๋‹จํžˆ ๋งํ•ด์„œ SSL์˜ ๋”์šฑ ์•ˆ์ „ํ•œ ๋ฒ„์ „์ด๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

๋ฐ˜์‘ํ˜•