์ด ๋ฌธ์„œ์˜ ์›๋ณธ์€ ์™ธ๋ถ€ ์œ„ํ‚ค์—์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.
1. ๊ฐœ์š”2. ๊ด€๋ จ ํ•ญ๋ชฉ

1. ๊ฐœ์š”[ํŽธ์ง‘]

MD5("The quick brown fox jumps over the lazy dog") = 9e107d9d372bb6826bd81d3542a419d6 
MD5("The quick brown fox jumps over the lazy dog.") = e4d909c290d0fb1ca068ffaddf22cbd0
[1]
Message-Digest algorithm 5

์ž„์˜์˜ ๊ธธ์ด์˜ ๊ฐ’์„ ์ž…๋ ฅ๋ฐ›์•„์„œ 128๋น„ํŠธ ๊ธธ์ด์˜ ํ•ด์‹œ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. 1991๋…„ ์„ค๊ณ„๋˜์—ˆ๋‹ค.

MD5๋Š” ๋‹จ๋ฐฉํ–ฅ ์•”ํ˜ธํ™”์ด๊ธฐ ๋•Œ๋ฌธ์— ์ถœ๋ ฅ๊ฐ’์—์„œ ์ž…๋ ฅ๊ฐ’์„ ๋ณต์›ํ•˜๋Š” ๊ฒƒ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. ๊ฐ™์€ ์ž…๋ ฅ๊ฐ’์ด๋ฉด ํ•ญ์ƒ ๊ฐ™์€ ์ถœ๋ ฅ๊ฐ’์ด ๋‚˜์˜ค๊ณ , ์„œ๋กœ ๋‹ค๋ฅธ ์ž…๋ ฅ๊ฐ’์—์„œ ๊ฐ™์€ ์ถœ๋ ฅ๊ฐ’์ด ๋‚˜์˜ฌ ํ™•๋ฅ ์€ ๊ทนํžˆ ๋‚ฎ๋‹ค(0์€ ์•„๋‹ˆ๋ฉฐ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.).

ํ”ํžˆ ํŒจ์Šค์›Œ๋“œ ์•”ํ˜ธํ™”์— ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š”๋ฐ, ํŒจ์Šค์›Œ๋“œ๋ฅผ MD5๋กœ ํ•ด์‹œํ•ด์„œ ๋‚˜์˜จ ๊ฐ’์„ ์ €์žฅํ•ด ๋‘๋Š” ๊ฒƒ์ด๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์šด์˜์ž๋‚˜, ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌด๋‹จ์œผ๋กœ ๋œฏ์–ด๋ณธ ์ž๋„ ์ด ๊ฐ’๋งŒ ๋ด์„œ๋Š” ๋ณธ๋ž˜์˜ ๊ฐ’ ์ž์ฒด๋Š” ์•Œ ์ˆ˜ ์—†๊ฒŒ ๋œ๋‹ค. ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์ž…๋ ฅํ–ˆ๋‹ค๋ฉด ๊ฐ™์€ ํ•ด์‹œ๊ฐ’์ด ํŠ€์–ด๋‚˜์˜ค๋ฏ€๋กœ, ๋ณธ๋ž˜์˜ ํ‚ค๋ผ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜๋Š” ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.(ํ•˜์ง€๋งŒ MD5๋ฐฉ์‹์˜ ์•”ํ˜ธํ™”๋Š” ์ด๋ฏธ ํฌ๋ž˜์ปค๋“ค์˜ ์ง‘๋…์— ์˜ํ•ด ๊นจ์กŒ๋‹ค)

๋‹จ๋ฐฉํ–ฅ ์•”ํ˜ธํ™”์ด๊ธฐ ๋•Œ๋ฌธ์— MD5 ํ•ด์‹œ๊ฐ’์—์„œ ์›๋ž˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์•„๋‚ด๋Š”๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋ฉฐ(์›๋ฌธ์„ ํ•ด์‹œ ๊ณ„์‚ฐ ๊ณผ์ •์—์„œ ๋น„ํŠธ ๋‹จ์œ„๋กœ ๋ฐ•์‚ด๋‚ด๋ฒ„๋ฆฐ๋‹ค), ํฌ๋ž˜์ปค๋“ค์€ "๊ฐ™์€ MD5๋ฅผ ๊ฐ–๋Š” ๋ฌธ์ž์—ด", ์ฆ‰ "์ถฉ๋Œ"(Collision)์„ ์ฐพ์•„๋‚ด๋Š” ๋ฐ ์ฃผ๋ ฅํ•œ๋‹ค. ์–ด์จŒ๋“  MD5๊ฐ’์ด ๊ฐ™์œผ๋ฉด ๊ฐ™์€ ๋ฌธ์ž์—ด์ด๋ผ๊ณ  ํŒ๋‹จํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋ฉฐ ์ด๋Š” ๋ชจ๋“  ๋‹จ๋ฐฉํ–ฅ ์•”ํ˜ธํ™”์— ํ†ต์šฉ๋˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค[2].

2004๋…„์— ๋†’์€ ์œ ์‚ฌ์„ฑ์„ ๋ณด์ด๋Š”(ํ•˜์ง€๋งŒ ์—„์—ฐํžˆ ๋‹ค๋ฅธ) 128๋ฐ”์ดํŠธ ํŒŒ์ผ ๋‘ ๊ฐœ์˜ ํ•ด์‹œ๊ฐ’ ์ถฉ๋Œ์ด ๋ฐœ๊ฒฌ๋˜์—ˆ๋‹ค. ์ด๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ž์ฒด์˜ ์—„์ฒญ๋‚œ ๊ฒฐํ•จ์ด๋‹ค. ๋…ผ๋ฌธ์— ๋”ฐ๋ฅด๋ฉด IBM P690 ๋จธ์‹ ์—์„œ ์ถฉ๋Œ์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ํ•œ ์‹œ๊ฐ„๋ฐ–์— ๊ฑธ๋ฆฌ์ง€ ์•Š์•˜๋‹ค๊ณ  ํ•œ๋‹ค.

2006๋…„์—๋Š” ๋”์šฑ ๋น ๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๊ฐœ๋ฐœ๋˜์–ด ๋…ผ๋ฌธ์— ๋”ฐ๋ฅด๋ฉด ๋…ธํŠธ๋ถ ํ•œ ๋Œ€์˜ ์—ฐ์‚ฐ ๋Šฅ๋ ฅ (Intel Pentium, 1.6 GHz)์œผ๋กœ 1๋ถ„ ๋งŒ์— ์ถฉ๋Œ์„ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋ณด์•ˆ์ด ์ค‘์š”์‹œ๋˜๋Š” ํ•ด์‹œ ์—ฐ์‚ฐ์€ SHA ๊ณ„์—ด ํ•ด์‹œ ํ•จ์ˆ˜๋กœ ๋Œ€์ฒด๋˜๊ณ  ์žˆ๋‹ค.

์‹ฌ์ง€์–ด๋Š” ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ๊ฐ™์€ MD5 ๊ฐ’์„ ๊ฐ€์งˆ ์ˆ˜๋„ ์žˆ๋‹ค.

๋‹ค๋งŒ ๊ณ ์† ์—ฐ์‚ฐ์ด ๊ฐ€๋Šฅํ•˜๊ณ (์ •์ˆ˜ ์—ฐ์‚ฐ ๋ฐ ๋น„ํŠธ์‹œํ”„ํŠธ๋กœ ๋ชจ๋“ ๊ฒŒ ํ•ด๊ฒฐ๋œ๋‹ค.) ์ž„์˜๋กœ ๋ณ€๊ฒฝ๋œ ํŒจํ„ด์— ๋Œ€ํ•ด์„œ๋Š” ์ถฉ๋Œ ๊ฐ€๋Šฅ์„ฑ์ด ์ถฉ๋ถ„ํžˆ ๋‚ฎ๊ธฐ ๋•Œ๋ฌธ์—, ํ˜„์žฌ๋Š” ์ฃผ๋กœ ๋„คํŠธ์›Œํฌ๋กœ ์ „์†ก๋œ ํฐ ํŒŒ์ผ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ํ™•์ธํ•˜๋Š”๋ฐ ์ฃผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค. ๋ณด์•ˆ์šฉ๋„๋กœ ์“ธ ๋•Œ๋Š” ๊ผญ salt[3]๋ฅผ ๋ถ™์—ฌ์„œ ์“ฐ๋Š” ๊ฒŒ ์•ˆ์ „ํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ถŒ์žฅํ•œ๋‹ค.

ํŠนํžˆ, ์•ž์—์„œ ์–ธ๊ธ‰๋œ ๋„คํŠธ์›Œํฌ์—์„œ๋Š” OSI 7๊ณ„์ธต ์ค‘ 2๊ณ„์ธต์— ์†ํ•˜๊ฒŒ๋˜๋Š” ์žฅ๋น„์ธ Switch, 3๊ณ„์ธต์— ์†ํ•˜๊ฒŒ๋˜๋Š” Router๋Š” ์žฅ๋น„ ๊ฐ„์˜ ์ƒํ˜ธ์ธ์ฆ์ฒด๊ณ„๋กœ ํ™œ์šฉ๋œ๋‹ค. (Cisco IOS ๊ธฐ์ค€)

2. ๊ด€๋ จ ํ•ญ๋ชฉ[ํŽธ์ง‘]

[1] ๋ณด๋‹ค์‹œํ”ผ ๋งˆ์นจํ‘œ์˜ ์œ ๋ฌด๋ผ๋Š” ๋งค์šฐ ์ž‘์€ ๋ณ€ํ™”์—๋„ ์ „ํ˜€ ๋‹ค๋ฅธ ๊ฐ’์ด ๋‚˜์˜จ๋‹ค. ๋Œ€์†Œ๋ฌธ์ž๋„ ๊ตฌ๋ถ„ํ•œ๋‹ค. ์•ž์ด ์†Œ๋ฌธ์ž์ธ MD5("the quick brown fox jumps over the lazy dog")์€ 77add1d5f41223d5582fca736a5cb335์ด๋‹ค.
[2] 1234๋‚˜ love ๋“ฑ์˜ ๊ฐ„๋‹จํ•œ ์ˆซ์ž๋‚˜ ๋‹จ์–ด๋งŒ ์จ์„œ ์•”ํ˜ธ๋ฅผ ๋งŒ๋“ค์ง€ ๋ง๋ผ๋Š” ์ด์œ ๋Š” ์—ฌ๊ธฐ์„œ๋„ ํ†ต์šฉ๋œ๋‹ค. ์ด๋Ÿฐ ๊ฐ„๋‹จํ•œ ์•”ํ˜ธ๋Š” ํ•ด์ปค๋“ค์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ํ•ด์‹œ๊ฐ’ ์‚ฌ์ „์—๋„ ์žˆ์„ ํ™•๋ฅ ์ด ๊ฑฐ์˜ 100%์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
[3] ์ž…๋ ฅ๋œ ๊ฐ’์— ์ž„์˜์˜ ๊ฐ’์„ ๋ถ™์ธ๋‹ค๋“ ์ง€, ์•”ํ˜ธํ™” ํ•œ ๊ฐ’์— ๋˜๋‹ค๋ฅธ ๊ฐ’์„ ๋ถ™์—ฌ์„œ ์•”ํ˜ธํ™” ํ•œ๋‹ค๋“ ์ง€