๏ฃฟ Apple Lover Developer & Artist

์˜์†์ ์ธ ๋””์ž์ธ์— ํ˜„๋Œ€์˜ ๊ณต๊ฐ์„ ์ฑ„์›Œ๋„ฃ๋Š” ๊ณต๋ฐฉ์ž…๋‹ˆ๋‹ค

๐Ÿ–ฅ Computer Science/Computer Security

[๋ณด์•ˆ ํ”„๋กœํ† ์ฝœ] 2์ฃผ์ฐจ - 2๊ฐ•

singularis7 2021. 9. 8. 10:35
๋ฐ˜์‘ํ˜•

์•”ํ˜ธ์˜ ์—ญ์‚ฌ

๋ณด์•ˆ ํ”„๋กœํ† ์ฝœ์˜ ํ•ต์‹ฌ ์›์ฒœ ๊ธฐ์ˆ ์˜ ์—ญ์‚ฌ์— ๊ด€ํ•˜์—ฌ ์‚ดํŽด๋ณธ๋‹ค.

์‹œ์ €์•”ํ˜ธ (Caesar cipher)

  • ๋กœ๋งˆ ์žฅ๊ตฐ ์ค„๋ฆฌ์–ด์Šค ์‹œ์ €๊ฐ€ ์‚ฌ์šฉํ•˜์˜€๋‹ค๋Š” ์•”ํ˜ธ (๊ธฐ์›์ „ 100๋…„๊ฒฝ)
  • ํ‰๋ฌธ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์•ŒํŒŒ๋ฒณ์„ ์ผ์ •ํ•œ ๋ฌธ์ž ์ˆ˜๋งŒํผ "ํ‰ํ–‰์ด๋™" ์‹œํ‚ด์œผ๋กœ์จ ์•”ํ˜ธํ™”

์ฃผ์–ด์ง„ ํ‚ค๋งŒํผ ํ‰ํ–‰์ด๋™ ์‹œํ‚จ ๋ฌธ์ž๋กœ ์•”ํ˜ธํ™” ํ•˜์—ฌ ์•”ํ˜ธ๋ฌธ์„ ์ƒ์„ฑํ•˜๊ณ  ์žˆ๋‹ค.

๋ณตํ˜ธํ™”๋Š” ์ฃผ์–ด์ง„ ํ‚ค๋งŒํผ ์—ญ์œผ๋กœ ๊ณ„์‚ฐํ•˜์—ฌ ๋ณตํ˜ธํ™” ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋Œ€์นญํ‚ค์•”ํ˜ธ์— ํ•ด๋‹น๋œ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

๋งŒ์•ฝ ๋ฉ”์‹œ์ง€๊ฐ€ ์‹œ์ € ์•”ํ˜ธ๋ฅผ ํ†ตํ•ด ์•”ํ˜ธํ™” ๋˜์—ˆ๋‹ค๋Š” ์ •๋ณด๋ฅผ ๋„์ฒญ์ž๊ฐ€ ์•Œ์•˜๋‹ค๋ฉด ์˜์–ด ์•ŒํŒŒ๋ฒณ์€ ์ด 26๊ฐœ์ด๊ธฐ ๋•Œ๋ฌธ์— ์‰ฝ๊ฒŒ ๋ชจ๋“  ํ‚ค ํ›„๋ณด๋ฅผ ๋Œ€์ž…ํ•˜์—ฌ ํ‰๋ฌธ์„ ๋„์ถœํ•  ์ˆ˜ ์žˆ๋‹ค. => ์ „์‚ฌ ๊ณต๊ฒฉ (brute-force attack)

์ „์‚ฌ ๊ณต๊ฒฉ์„ ๋ง‰์„ ์ˆ˜ ์žˆ๋Š” ์•”ํ˜ธ๊ฐ€ ์—†์„๊นŒ?

ํ‰๋ฌธ์„ ๊ตฌ์„ฑํ•˜๋Š” ์•ŒํŒŒ๋ฒณ์„ ์น˜ํ™˜ํ‘œ(๋น„๋ฐ€ํ‚ค)์— ๋”ฐ๋ผ ๋ณ€ํ™˜์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. ์น˜ํ™˜ํ‘œ๋Š” ์ „๋‹จ์‚ฌํ•จ์ˆ˜ (1:1๋Œ€์‘)์—ฌ์„œ ๋ชจ๋“  ๋ฌธ์ž์— ๋Œ€์‘๋˜๋Š” ๋‹ค๋ฅธ ๋ฌธ์ž๊ฐ€ ์กด์žฌํ•œ๋‹ค.

๋ณตํ˜ธํ™” ๊ณผ์ •์— ์žˆ์–ด์„œ ์น˜ํ™˜ํ‘œ๋Š” ๋น„๋ฐ€ํ‚ค์— ํ•ด๋‹น๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•˜๋‹ค. ์ „์‚ฌ๊ณต๊ฒฉ์—๋Š” ์•ˆ์ „ํ•˜์ง€๋งŒ ํ‰๋ฌธ์— ๋“ฑ์žฅํ•˜๋Š” ๋ฌธ์ž์˜ ๋นˆ๋„๊ฐ€ ์•”ํ˜ธ๋ฌธ์— ๋“ฑ์žฅํ•˜๋Š” ๋ฌธ์ž์˜ ๋นˆ๋„์™€ ๋™์ผํ•˜๋‹ค๋Š” ์•ฝ์ ์ด ์žˆ๋‹ค.

์‹œ์ €์•”ํ˜ธ๋Š” ํ‚ค๊ณต๊ฐ„์ด ์ž‘์•„์„œ brute-force ๊ณต๊ฒฉ์ด ๊ฐ€๋Šฅํ–ˆ๋‹ค. ํ‚ค ๊ณต๊ฐ„์€ ์•”ํ˜ธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ํ‚ค ํ›„๋ณด๋“ค์˜ ์ง‘ํ•ฉ์ด๋ฉฐ ์ „์ฒด ํ‚ค ํ›„๋ณด๋“ค์˜ ๊ฐœ์ˆ˜๋ฅผ ํ‚ค ๊ณต๊ฐ„์˜ ํฌ๊ธฐ๋ผ๊ณ  ๋ถ€๋ฅด๋ฉฐ ํ‚ค๊ณต๊ฐ„์˜ ํฌ๊ธฐ๊ฐ€ ํด ์ˆ˜๋ก ์ „์‚ฌ ๊ณต๊ฒฉ์— ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„์ด ๋Š˜์–ด๋‚œ๋‹ค. ๋”ฐ๋ผ์„œ ๋‹จ์ผ์น˜ํ™˜์•”ํ˜ธ๋Š” ํ‚ค๊ณต๊ฐ„์˜ ํฌ๊ธฐ(26!)๊ฐ€ ํฌ๊ธฐ ๋•Œ๋ฌธ์— brute-force๋กœ ๋šซ๊ธฐ ์–ด๋ ต๋‹ค. 

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

์˜ˆ์‹œ๋ฅผ ์‚ดํŽด๋ณด์ž ๋‹ค์Œ์€ ๋‹จ์ผ ์น˜ํ™˜ ์•”ํ˜ธ๋กœ ์•”ํ˜ธํ™”๋œ ์•”ํ˜ธ๋ฌธ์ด๋‹ค. ํ•ด์„ ํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด๋ด์•ผ ํ• ๊นŒ?

๋ฌธ์ž์—ด์„ ์œ ์‹ฌํžˆ ์‚ดํŽด๋ณผ ๊ฒƒ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๊ด€์‚ฌ "the"๋Š” ํ•ญ์ƒ ๋™์ผํ•œ ์•ŒํŒŒ๋ฒณ์œผ๋กœ ๋ณ€ํ™˜๋˜์—ˆ์„ ๊ฒƒ์ด๋‹ค. ์œ„์—์„œ MEY๊ฐ€ ๋ฐ˜๋ณต๋˜๋Š” ๊ฒƒ์„ ๋ฏธ๋ฃจ์–ด ๋ณด์•„ "the" ์ผ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋‹ค.  

์˜์–ด ์•ŒํŒŒ๋ฒณ์˜ ๋“ฑ์žฅ ๋นˆ๋„๋ฅผ ์‚ดํŽด๋ณผ ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ์•ž์—์„œ ์–ธ๊ธ‰๋“ฏ์ด ํ‰๋ฌธ๊ณผ ์•”ํ˜ธ๋ฌธ์˜ ๋ฌธ์ž์—ด ๋“ฑ์žฅ ๋นˆ๋„๋Š” ๋™์ผํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ํ†ต๊ณ„์ ์œผ๋กœ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ž ๋“ฑ์žฅ ๋นˆ๋„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

์•ŒํŒŒ๋ฒณ e๊ฐ€ 12.49%๋กœ ๋†’์€ ๋นˆ๋„๋กœ ๋“ฑ์žฅํ•˜๊ณ  ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์œผ๋ฉฐ ์•ŒํŒŒ๋ฒณ t๋„ 10% ์œก๋ฐ•ํ•˜๋Š” ๋นˆ๋„๋กœ ๋“ฑ์žฅํ•˜๊ณ  ์žˆ๋‹ค. 

ํ†ต๊ณ„์— ๋”ฐ๋ผ ๊ฐ€์žฅ ๋งŽ์ด ๋“ฑ์žฅํ•˜๋Š” ์˜๋ฌธ์ž๋ฅผ e๋กœ ๋ฐ”๊ฟ”๋ณธ ํ›„์— ๋งŒ์ด ๋“ฑ์žฅํ•˜๋Š” ๊ด€์‚ฌ the๋ฅผ ์ƒ๊ฐํ•˜์—ฌ ๋‹ค์‹œ ๋ฌธ์ž๋ฅผ ๋ฐ”๊ฟ”๋ณธ๋‹ค.

์ดํ›„์—๋Š” ๋‹จ์–ด์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์ถ”์ •์„ ํ•˜๋ฉฐ ์—ญ์ถ”์  ํ•ด๋ณธ๋‹ค. (try an-error) 

์œ„์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๋‹จ์ผ ์น˜ํ™˜ ์•”ํ˜ธ์˜ ์น˜ํ™˜ํ‘œ๋ฅผ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์‹ค์ œ ์›๋ฌธ์€ ์ด์† ์šฐํ™”์ธ ์—ฌ์šฐ์™€ ํฌ๋„์ด์•ผ๊ธฐ ์˜€์Œ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

๋นˆ๋„ ๋ถ„์„์„ ํ†ตํ•ญ ์•”ํ˜ธ ํ•ด๋…์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ง•์ด ์žˆ๋‹ค.

  • ๋นˆ๋„๊ฐ€ ๋†’์€ ๋ฌธ์ž ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋นˆ๋„๊ฐ€ ๋‚ฎ์€ ๋ฌธ์ž๋„ ๋‹จ์„œ
  • ๋‹จ์–ด์˜ ๋งฅ๋ฝ์„ ์•Œ๋ฉด ๊ทธ๊ฒƒ๋„ ๋‹จ์„œ
  • ์•”ํ˜ธ๋ฌธ์ด ๊ธธ๋ฉด ํ•ด๋…์ด ์šฉ์ดํ•จ
  • ๊ฐ™์€ ๋ฌธ์ž๊ฐ€ ์—ฐ์†ํ•ด์„œ ๋“ฑ์žฅํ•˜๋ฉด ๊ทธ๊ฒƒ ๋˜ํ•œ ๋‹จ์„œ
๋นˆ๋„ ๋ถ„์„์— ๊ฐ•ํ•œ ์•”ํ˜ธ๋ฅผ ๋งŒ๋“ค์–ด ๋‚ผ ์ˆ˜ ์—†๋Š”๊ฐ€?

๋‹ค์ค‘ ์น˜ํ™˜ ์•”ํ˜ธ๊ฐ€ ์žˆ๋‹ค.

  • ํ‰๋ฌธ์— ๋“ฑ์žฅํ•˜๋Š” ๋ฌธ์ž์˜ ๋นˆ๋„์™€ ์•”ํ˜ธ๋ฌธ์— ๋“ฑ์žฅํ•˜๋Š” ๋ฌธ์ž์˜ ๋นˆ๋„๋ฅผ ๋‹ค๋ฅด๊ฒŒ ๋งŒ๋“œ๋Š” ์•”ํ˜ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • ๋น„์ œ๋„ค๋ฅด ์•”ํ˜ธ (Vigenere cipher)
  • ํž ์•”ํ˜ธ (Hill Cipher)
  • ์—๋‹ˆ๊ทธ๋งˆ ๊ธฐ๊ณ„ (Enigma machine)

๋‹ค์ค‘ ์น˜ํ™˜ ์•”ํ˜ธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋™์ž‘ํ•œ๋‹ค.

๋น„์ œ๋„ค๋ฅด ์•”ํ˜ธ (Vigenere cipher)

  • a, b, c, d, e, f, g h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z
  • ํ‰๋ฌธ: kookmin university
  • ๋น„๋ฐ€ํ‚ค: abc (1, 2, 3) ํ‰ํ–‰์ด๋™
  • ์•”ํ˜ธ๋ฌธ: lqrlol

ํž ์•”ํ˜ธ

  1. ์˜์–ด ์•ŒํŒŒ๋ฒณ์„ ์ˆซ์ž๋กœ ๋Œ€์‘์‹œํ‚จ๋‹ค.
  2. ํ‚ค๋Š” n x n ํฌ๊ธฐ์˜ ํ–‰๋ ฌ๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋‹ค.
  3. ํ‰๋ฌธ์„ ํ‚ค์™€ ํ–‰๋ ฌ๊ณฑ ์‹œํ‚จ๋‹ค.

๋ณตํ˜ธํ™”๋ฅผ ์œ„ํ•ด ํ‚ค๋Š” ๋ฐ˜๋“œ์‹œ ์—ญํ–‰๋ ฌ์ด ์กด์žฌํ•˜๋Š” ํ–‰๋ ฌ์„ ์‚ฌ์šฉํ•ด์•ผํ•œ๋‹ค. 

 

์—๋‹ˆ๊ทธ๋งˆ

  • ๋…์ผ์˜ ์„ธ๋ฅด๋น„์šฐ์Šค(Arthur Scherbius)๊ฐ€ 20์„ธ๊ธฐ ์ดˆ์— ๋ฐœ๋ช…ํ•œ ์•”ํ˜ธํ™”/๋ณตํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ธฐ๊ณ„
  • ์—๋‹ˆ๊ทธ๋งˆ๋Š” ๋…์ผ์–ด๋กœ "์ˆ˜์ˆ˜๊ป˜๋ผ"๋ฅผ ์˜๋ฏธ
  • ํšŒ์ „ํ•˜๋Š” ์›๋ฐ˜๊ณผ ์ „๊ธฐํšŒ๋กœ๋ฅผ ์จ์„œ ๊ฐ•๋ ฅํ•œ ์•”ํ˜ธ๋ฅผ ๋งŒ๋“ค๊ณ ์ž ์‹œ๋„
  • ๋ฐœ๋ช… ๋‹น์‹œ์—๋Š” ์—๋‹ˆ๊ทธ๋งˆ๋ฅผ ์ƒ์šฉ์œผ๋กœ ์‚ฌ์šฉ
  • 2์ฐจ ์„ธ๊ณ„๋Œ€์ „ ๋•Œ ๋…์ผ๊ตฐ์˜ ๋น„๋ฐ€ํ†ต์‹  ์ˆ˜๋‹จ์œผ๋กœ ์‚ฌ์šฉ

ํ‚ค๋ณด๋“œ๋ฅผ ํ†ตํ•ด ํ‰๋ฌธ์„ ์ž…๋ ฅํ•˜๋ฉด ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์•”ํ˜ธ๋ฌธ์ด ์ „์†ก๋œ๋‹ค.

์•จ๋ฆฌ์Šค์™€ ๋ฐฅ์€ ์• ๋‹ˆ๊ทธ๋งˆ ๊ธฐ๊ณ„๊ฐ€ ์žˆ์–ด์•ผ ์•”/๋ณตํ˜ธํ™”๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ ๋‚ ์งœ๋ณ„ ์ฝ”๋“œ๋ถ์„ ๊ณต์œ ํ•˜๊ณ ์žˆ์œผ๋ฉฐ ์•”ํ˜ธ ๊ธฐ์ˆ ์—์„œ ๋น„๋ฐ€ํ‚ค์— ํ•ด๋‹น๋˜์–ด ์ œ3์ž๋Š” ๋ชจ๋ฅด๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค. 

์—๋‹ˆ๊ทธ๋งˆ๋Š” ๋‹จ์ผ ์น˜ํ™˜ ์•”ํ˜ธ๋ฅผ ๋ฐ˜๋ณตํ•ด์„œ ์‚ฌ์šฉํ•˜์—ฌ ์•”ํ˜ธํ™”๋ฅผ ์‹œํ‚ค๋Š”๋ฐ ์—๋‹ˆ๊ทธ๋งˆ์˜ ์„ค์ •์— ๋‚ ์งœ๋ณ„ ์ฝ”๋“œ๋ถ์ด ์‚ฌ์šฉ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ํ•˜๋ฃจ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์•”ํ˜ธ๊ฐ€ ๋œ๋‹ค. ๋งค๋ฒˆ ์•ŒํŒŒ๋ฒณ์„ ์ž…๋ ฅํ•  ๋•Œ๋งˆ๋‹ค ์น˜ํ™˜๋˜๋Š” ์•ŒํŒŒ๋ฒณ์ด ๊ฐฑ์‹ ๋œ๋‹ค. ์ฆ‰ ์•ŒํŒŒ๋ฒณ์„ ์ž…๋ ฅํ•  ๋•Œ๋งˆ๋‹ค ๋‹ค๋ฅธ ๋ฌธ์ž๋กœ ์น˜ํ™˜๋œ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค.

์šฐ๋ฆฌ๊ฐ€ ๋น„๋ฐ€ํ†ต์‹ ์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ ๋‘๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. 

  1. ์•”ํ˜ธ๋ฅผ ์ˆจ๊ฒจ์„œ ์–ด๋–ค ์•”ํ˜ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜, ๊ธฐ๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š”์ง€ ๋ชจ๋ฅด๊ฒŒ ํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค
  2. ์• ๋‹ˆ๊ทธ๋งˆ ์ฒ˜๋Ÿผ ์„ค๊ณ„๋Š” ์•Œ๋ ค์ฃผ๊ณ  ๊ฐ•ํ•œ ์•”ํ˜ธ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

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

์•”ํ˜ธ๋ผ๊ณ  ํ•˜๋Š” ๊ฒƒ์€ ์ธ๋ฅ˜ ์—ญ์‚ฌ์— ์žˆ์–ด์„œ ํฐ ์˜ํ–ฅ๋ ฅ์„ ์ฃผ์—ˆ๋‹ค.

๋ฐ˜์‘ํ˜•