9μ›” 3μ£Όμ°¨ ν•΄ν‚Ήμ•Œλ €μ€„κ²Œ 7ν™”: Classical Cipher


ν•΄ν‚Ή μ•Œλ €μ€„κ²Œ
7ν™”: Classical Cipher

μ•ˆλ…•ν•˜μ„Έμš”! πŸ˜ƒ   μ•”ν˜Έλ‘œ λŒμ•„μ˜¨ ν•΄ν‚Ή μ•Œλ €μ€„κ²Œ μž…λ‹ˆλ‹€. 
λ§Žμ€ μ‚¬λžŒμ΄ μ•”ν˜ΈλŠ” μˆ˜ν•™λ„ 잘 μ•Œμ•„μ•Ό ν•˜κ³ , 무슨 μ†Œλ¦¬μΈμ§€λ„ λͺ¨λ₯΄κ² λ‹€κ³  λ³„λ‘œ μ•ˆ μ’‹μ•„ν•˜λŠ” 것 κ°™μ•„μš”. πŸ˜“
ν˜Ήμ‹œ 그럼 λ°©νƒˆμΆœμ€ μ’‹μ•„ν•˜μ‹œλ‚˜μš”? μ €λŠ” 맀우 μ’‹μ•„ν•˜λŠ”λ°μš”. 
ν•œ λ²ˆμ€ 이런 λ¬Έμ œκ°€ λ‚˜μ™”μ–΄μš”. 같이 ν•œλ²ˆ ν’€μ–΄λ΄…μ‹œλ‹€. πŸ˜†

λ­˜κΉŒμš”? μ΄κ²ƒλ§Œ 보고 이게 뭔지 μ•„μ‹œλŠ” 뢄도 μžˆμ„κ±°μ—μš”. 이게 뭐지..? ν•˜λŠ” 도쀑에 μ˜†μ— 이런 νžŒνŠΈλ„ μžˆλ„€μš”!

μ΄μ œλŠ” λˆˆμΉ˜μ±„μ‹  뢄도 λ§Žμ„ 것 κ°™μ•„μš”! πŸ™‚  아직 잘 λͺ¨λ₯΄κ² λ‹€λ©΄ μ„€λͺ…ν•΄λ“œλ¦΄κ²Œμš”.
μžμ„Ένžˆ 보면 μš°λ¦¬μ— 돼지가 λ“€μ–΄κ°€ μžˆλŠ” κ²ƒμ²˜λŸΌ λ³΄μ΄μ‹œλ‚˜μš”? 사싀 이건 '돼지 우리 μ•”ν˜Έ(Pigpen Cipher)'라고 μ•Œλ €μ Έ μžˆλŠ” μ•”ν˜Έμ—μš”. 🐷
외계인 κΈ€μ”¨μ²˜λŸΌ λ³΄μ΄λŠ” 각 λ¬ΈμžλŠ” ν•˜λ‚˜μ˜ μ•ŒνŒŒλ²³μœΌλ‘œ μΉ˜ν™˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λͺ¨λ‘ μΉ˜ν™˜ν•˜λ©΄ 'HACKYBOIZ' κ°€ 숨겨져 μžˆμ—ˆμ–΄μš”! πŸ₯

κΈ°λ³Έμ μœΌλ‘œλŠ” ν•΄λ…ν‘œμ—λŠ” AλΆ€ν„° ZκΉŒμ§€ μ°¨λ‘€λŒ€λ‘œ μžˆμ§€λ§Œ, μœ„μ— μ˜ˆμ‹œμ²˜λŸΌ μ•ŒνŒŒλ²³ μˆœμ„œλ₯Ό λ°”κΎΈμ–΄μ„œ 또 λ‹€λ₯Έ μΉ˜ν™˜μ„ μ‚¬μš©ν•  μˆ˜λ„ μžˆμ–΄μš”. λ¬Όλ‘  κ·Έλ ‡λ‹€λ©΄ λ³΄λ‚΄λŠ” μ‚¬λžŒλ„, λ°›λŠ” μ‚¬λžŒλ„ 같은 ν•΄λ…ν‘œλ₯Ό 가지고 μžˆμ–΄μ•Όκ² λ„€μš”.

이 글을 처음 μž‘μ„±ν•  λ•Œλ§Œ 해도 μ˜†μ—μ„œ 'λ„ˆ 이거 λŒ€νƒˆμΆœμ—μ„œ λ‚˜μ˜¨ 거지!!' ν–ˆμ„ λ•Œ 'μ•„λ‹ˆμ•Ό! μ•ˆ λ‚˜μ™”μ–΄!' 라고 ν–ˆλŠ”λ°(λŒ€νƒˆμΆœ 맀주 μ±™κ²¨λ³΄λŠ” μ‚¬λžŒ) λ‚˜μ™€λ²„λ¦¬κ³  λ§μ•˜μŠ΅λ‹ˆλ‹€. πŸ€“

ν‹°λΉ™ λŒ€νƒˆμΆœ4 8ν™”
λ…ΈνŠΈλΆμ˜ μ•”ν˜Έλ₯Ό μžŠμ§€ μ•ŠκΈ° μœ„ν•΄ λ‹€μŒκ³Ό 같은 ν‘œμ‹œλ₯Ό ν•΄λ‘μ—ˆλ‹€. μ•”ν˜Έλ₯Ό λ§žν˜€λΌ! 
흠 근데 ν•΄λ…ν‘œλ₯Ό 가지고 μžˆμ–΄μ•Ό ν’€ 수 μžˆμ„ ν…λ°μš”? πŸ€”

힌트λ₯Ό λ³΄λ‹ˆ '숫자 ν‚€νŒ¨λ“œ'라고 μ•Œλ €μ£Όμ„Έμš”. 

힌트λ₯Ό λ³Έ λ’€ λ°”λ‘œ λ…ΈνŠΈλΆμœΌλ‘œ 직진 ν›„ 짧은 μ‹œκ°„ 내에 λ°”λ‘œ 정닡을 λ§žνžˆλ”λΌκ³ μš”. λ¬Όλ‘  저도 같이 보던 μ–Έλ‹ˆν•œν…Œ μ•„λŠ” μ²™ μ’€ ν–ˆμ£ . 😎

이처럼 μ–΄λ– ν•œ 자료λ₯Ό 이해할 수 μ—†κ²Œ λ§Œλ“€μ–΄ 자료의 κΈ°λ°€μ„±(confidentiality)을 보μž₯ν•˜λŠ” 것을 μ•”ν˜Έν™”(encryption)라고 ν•©λ‹ˆλ‹€.
ν˜„λŒ€μ—λŠ” ꡉμž₯히 λ³΅μž‘ν•˜κ³  λ§Žμ€ μ•”ν˜Έν™” μ•Œκ³ λ¦¬μ¦˜μ΄ μžˆμ§€λ§Œ, 컴퓨터가 μ—†λŠ” κ³ μ „μ˜ μ•”ν˜ΈλŠ” λΉ„νŠΈκ°€ μ•„λ‹Œ 문자λ₯Ό λ‹€λ£¨λŠ” μ•”ν˜Έμ—μš”. λŒ€λΆ€λΆ„ 각 κΈ€μžλ₯Ό μ–΄λ–€ κΈ€μžλ‘œ λ°”κΎΈλŠ” μΉ˜ν™˜(Permutation) 방식을 μ‚¬μš©ν•©λ‹ˆλ‹€.
그만큼 비ꡐ적 κ°„λ‹¨ν•˜λ‹€κ³  ν•  수 있죠! ν•˜μ§€λ§Œ 그만큼 κ°„λ‹¨ν•˜κ²Œ λ³΅ν˜Έν™”ν•  수 μžˆλ‹΅λ‹ˆλ‹€. πŸ€“
μ•„, ν•œ 가지 더 λ§ν•˜μžλ©΄ μΉ˜ν™˜μ€ 각 ν•­λͺ©μ— κ³ μœ ν•œ 역원(inverse)이 μ‘΄μž¬ν•΄μ•Ό ν•΄μš”. A, B, C, Dλ₯Ό B, C, D, E둜 λ°”κΏ€ 수 μžˆμ§€λ§Œ, B, B, D, Eλ‘œλŠ” λ°”κΏ€ 수 μ—†μŠ΅λ‹ˆλ‹€. μ™œλƒλ©΄ μ•”ν˜Έλ¬Έμ˜ EλŠ” D둜 λ³΅ν˜Έν™”ν•  수 μžˆμ§€λ§Œ, BλŠ” μ–΄λ–€ 문자둜 λ³΅ν˜Έν™”ν•΄μ•Ό ν• κΉŒμš”? A? B? πŸ˜‘

μ–΄λ””κ°€μ„œ μ•„λŠ” μ²™ ν•˜λ €λ©΄ μ΅œμ†Œν•œ 이건 μ•Œμ•„μ•Ό ν•œλ‹€! ν•˜λŠ” λͺ‡ 가지 맀우 κ°„λ‹¨ν•œ κ³ μ „ μ•”ν˜Έμ™€, λΉˆλ„ 뢄석에 λŒ€ν•΄ μ•Œλ €λ“œλ¦΄κ²Œμš”. πŸ˜—

λ¬Όλ‘  μ•„λŠ” 척이 μ•ˆ 톡할 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€..
1. μ‹œμ € μ•”ν˜Έ(Caesar Cipher), 카이사λ₯΄ μ•”ν˜Έ(Caesar cipher)
κ°€μž₯ λŒ€ν‘œμ μΈ κ³ μ „ μ•”ν˜ΈλŠ” μ‹œμ € μ•”ν˜Έμž…λ‹ˆλ‹€. 카이사λ₯΄ μ•”ν˜ΈλΌκ³ λ„ ν•˜μ£ .

각 μ•ŒνŒŒλ²³μ„ μ„Έ μžλ¦¬μ”© λ’€λ‘œ μˆœν™˜ μ΄λ™ν•˜λŠ” λ°©λ²•μ΄μ—μš”. AλŠ” D, BλŠ” E, CλŠ” F... μ—„μ²­ κ°„λ‹¨ν•˜μ£ ! πŸ˜ƒ
λ‹Ήμ—°νžˆ μ›λž˜μ˜ λ‚΄μš©μ„ μ•Œμ•„λ‚΄λŠ” 것도 μ—„μ²­ κ°„λ‹¨ν•˜κ² λ„€μš”. μ„Έ μžλ¦¬μ”© μ•žμœΌλ‘œ μ΄λ™ν•˜λ©΄ λ˜κ² μ–΄μš”. DλŠ” A, EλŠ” B, FλŠ” C둜 λ°”λ‘œ λ³΅ν˜Έν™”ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
κ·Έλ ‡λ‹€λ©΄ 3이 μ•„λ‹ˆλΌ λ‹€λ₯Έ μˆ«μžλŠ”μš”? πŸ™„  라고 ν•œλ‹€λ©΄ ν•΄λ΄€μž μ•ŒνŒŒλ²³μ€ 26κ°œλΌμ„œ ν•œ μžλ¦¬μ”© 이동뢀터 쭈욱 ν•œλ‹€λ©΄ κ²°κ΅­ μ†μ‰½κ²Œ μ•Œμ•„λ‚Ό 수 μžˆμ–΄μš”.
그리고 또 ν•˜λ‚˜, 13번 μˆœν™˜μ΄λ™ν•˜λŠ” μ•”ν˜Έλ₯Ό νŠΉλ³„νžˆ ROT13이라고 λΆ€λ₯Έλ‹΅λ‹ˆλ‹€.

2. λΉ„μ œλ„€λ₯΄ μ•”ν˜Έ(VigenΓ¨re Cipher)
λ‹€μŒμ€ λΉ„μ œλ„€λ₯΄ μ•”ν˜Έμž…λ‹ˆλ‹€. μ‹œμ € μ•”ν˜Έμ™€ μˆœν™˜ 이동을 ν•˜λŠ” 것은 κ°™μ§€λ§Œ ν‚€λ‘œ μ •μ˜λ˜λŠ” κ°’λ“€λ§ŒνΌ μ΄λ™ν•©λ‹ˆλ‹€.

평문이 THEY ENJOY THE CAR이고, ν‚€κ°€ ABC라고 μ •ν–ˆμ–΄μš”. 그러면 TλŠ” ν•œ κΈ€μž μ΄λ™ν•΄μ„œ U, HλŠ” 두 κΈ€μž μ΄λ™ν•΄μ„œ J, EλŠ” μ„Έ κΈ€μž μ΄λ™ν•΄μ„œ H, YλŠ” λ‹€μ‹œ ν•œ κΈ€μž μ΄λ™ν•΄μ„œ Z... μ΄λ ‡κ²Œ μ•”ν˜Έν™” ν•˜κ²Œ λ©λ‹ˆλ‹€.
μ•”ν˜Έλ¬Έμ€ UJHZGQKQBUJHDCU둜 λ§Œλ“€μ–΄μ§‘λ‹ˆλ‹€. κ·Έλ ‡λ‹€λ©΄ λΉ„μ œλ„€λ₯΄ μ•”ν˜ΈλŠ” μ–΄λ–»κ²Œ κΉ° 수 μžˆμ„κΉŒμš”?

일단, μ‹œμ € μ•”ν˜Έμ™€ 달리 λΉ„μ œλ„€λ₯΄λŠ” ν‚€κ°€ μΆ”κ°€λ˜μ—ˆλŠ”λ° μ•”ν˜Έλ¬Έλ§Œ 가지고 ν‚€μ˜ 길이λ₯Ό μΆ”μΈ‘ν•  수 μžˆμ„κΉŒμš”?
μ•”ν˜Έλ¬Έμ„ 잘 보면 UJHZGQKQBUJHDCUμ—μ„œ UJHκ°€ 두 번 λ‚˜μ™”μ–΄μš”. πŸ€” κ·Έλ ‡λ‹€λ©΄ UJHZGQKQBκΉŒμ§€ 9κΈ€μž 이후 ν‚€κ°€ μ’…λ£Œλ˜κ³ , λ‹€μŒλΆ€ν„° λ‹€μ‹œ λ™μΌν•œ ν‚€λ‘œ UJH둜 μ•”ν˜Έν™”λœ 것일 수 μžˆκ² λ„€μš”. 9뿐만 μ•„λ‹ˆλΌ 9의 μ•½μˆ˜μΈ 3도 ν‚€ 길이의 ν›„λ³΄λ‘œ μΆ”μΈ‘ν•  수 μžˆμ–΄μš”. 그럼, ν‚€μ˜ κΈΈμ΄λŠ” 3 λ˜λŠ” 9이닀!
근데 생각할 수 μžˆλŠ” 또 ν•œ 가지, μ €λ ‡κ²Œ UJHκ°€ λ°˜λ³΅λœλ‹€λ©΄ ν˜Ήμ‹œ μ € μ„Έ κΈ€μžκ°€ μ˜μ–΄μ—μ„œ ν”νžˆ μ‚¬μš©λ˜λŠ” THE μ•„λ‹κΉŒ? ν•˜λ©΄ ν‚€λ₯Ό ABC둜 μΆ”μΈ‘ν•  수 μžˆμ–΄μš”. 그럼 κ²Œμž„ λμ΄λ„€μš”. πŸ™„

3. λΉˆλ„ 뢄석
μ—¬κΈ°μ„œ λΉˆλ„ 뢄석에 λŒ€ν•΄μ„œ 더 μ„€λͺ…ν•΄λ“œλ¦΄κ²Œμš”. λ§Œμ•½ ν‚€μ˜ 길이λ₯Ό μ•Œκ³  μžˆλ‹€λ©΄ λΉˆλ„ 뢄석을 톡해 ν‚€λ₯Ό μΆ”μΈ‘ν•  수 μžˆλ‹΅λ‹ˆλ‹€!
ν‚€κ°€ μ„Έ κΈ€μžλΌλŠ” 것을 μ•Œμ•„λ‚Έλ‹€λ©΄ μ„Έ κΈ€μžμ”© λŠμ–΄μ„œ UZKUD(UJHZGQKQBUJHDCU), JGQJC, HQBHUλŠ” 각각 같은 문자둜 μ•”ν˜Έν™”λ˜μ—ˆμ–΄μš”.
μ‚¬λžŒλ“€μ€ "같은 κΈ€μžλ‘œ μ•”ν˜Έν™”λœ 것끼리 λͺ¨μ•„μ„œ λΉˆλ„ λΆ„μ„ν–ˆμ„ λ•Œ gκ°€ 제일 많이 λ‚˜μ˜¨λ‹€λ©΄ 이 gλŠ” μ˜μ–΄μ˜ κ°€μž₯ 많이 μ‚¬μš©λ˜λŠ” κΈ€μžλ₯Ό μ•”ν˜Έν™” ν•œ 것이 μ•„λ‹κΉŒ? πŸ€”" 라고 μƒκ°ν•˜κ²Œ λ©λ‹ˆλ‹€.
그럼 μ˜μ–΄μ—μ„œ κ°€μž₯ 많이 μ‚¬μš©λ˜λŠ” κΈ€μžλŠ” λ­˜κΉŒμš”?

영문자의 μΆœν˜„λΉˆλ„
정닡은 eμž…λ‹ˆλ‹€. e, t, a, o, i 순으둜 κ°€μž₯ 많이 μ‚¬μš©λ˜λ„€μš”. λ§Œμ•½ μ•”ν˜Έλ¬Έμ„ λΉˆλ„ λΆ„μ„ν–ˆμ„ λ•Œ gκ°€ 제일 많이 λ‚˜μ˜¨λ‹€λ©΄ eλ₯Ό μ•”ν˜Έν™”ν–ˆμ„ λ•Œ g라고 κ°€μ •ν•˜κ³ , eμ—μ„œ gκΉŒμ§€ λ’€λ‘œ 두 자리 이동을 ν–ˆμœΌλ―€λ‘œ λ‹€λ₯Έ μ•ŒνŒŒλ²³λ„ μ•žμœΌλ‘œ 두 μžλ¦¬μ”© μ΄λ™ν•˜λ©΄ 평문을 ꡬ할 수 μžˆμ–΄μš”.

2013 κ΅­κ°€μ•”ν˜Έκ³΅λͺ¨μ „ (1-A) λΆ„μ•Ό - 문제 1번
λΉ„μ œλ„€λ₯΄ μ•”ν˜Έμ˜ λΉˆλ„ 뢄석 κ΄€λ ¨ν•΄μ„œ 문제λ₯Ό ν’€κ³  μ‹ΆμœΌμ‹œλ©΄ 2013λ…„ κ΅­κ°€μ•”ν˜Έκ³΅λͺ¨μ „μ˜ 첫 번째 문제λ₯Ό μΆ”μ²œλ“œλ¦΄κ²Œμš”. πŸ‘πŸ»  

ν‚€μ˜ 길이λ₯Ό μ•Œμ•„λ„ λΉˆλ„ 뢄석할 수 μ—†λŠ” κ²½μš°λ„ μžˆμ„κΉŒμš”? λ°”λ‘œ 평문과 λ™μΌν•œ 길이의 ν‚€λ₯Ό μ‚¬μš©ν•˜λŠ” κ²½μš°μž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ 이 κ²½μš°μ— λ‹€λ₯Έ 평문에도 λ™μΌν•œ ν‚€λ₯Ό μ‚¬μš©ν•˜λ©΄ μœ μ‚¬μ„±μ„ λ°œκ²¬ν•  수 μžˆμœΌλ―€λ‘œ ν•œ 번만 μ‚¬μš©ν•΄μ•Ό ν•΄μš”.

였늘의 ν•΄ν‚Ή μ•Œλ €μ€„κ²ŒλŠ” μ—¬κΈ°κΉŒμ§€! πŸ˜ƒ  λ‹€μŒ μ£ΌλŠ” 좔석이죠? κΈˆμš”μΌ ν•΄μ»€μ˜ TMI도 재미있게 λ΄μ£Όμ‹œκ³  ν•΄ν‚Ή μ•Œλ €μ€„κ²ŒλŠ” λ‹€λ‹€μŒμ£Όμ— κΌ­ λ‹€μ‹œ λ§Œλ‚˜μš”!
였늘 μ „ν•΄λ“œλ¦° λ‚΄μš©μ΄ λ§ˆμŒμ— λ“œμ…¨λ‚˜μš”?
μ£Όμœ„ μΉœκ΅¬λ“€μ—κ²Œ λ‰΄μŠ€λ ˆν„°λ₯Ό μΆ”μ²œν•΄μ£Όμ„Έμš”!
λ‹€μŒμ£Όμ—λ„ μ•Œμ°¬ λ‚΄μš©μœΌλ‘œ λŒμ•„μ˜€κ² μŠ΅λ‹ˆλ‹€. πŸ˜™
ν˜Ήμ‹œ λ§ˆμŒμ— μ•ˆλ“œλŠ” 뢀뢄이 μžˆμ—ˆλ‚˜μš”? μ—¬κΈ°μ—μ„œ ν”Όλ“œλ°±μ„ μ „λ‹¬ν•΄μ£Όμ„Έμš”!
μ—¬λŸ¬λΆ„μ˜ μ˜κ²¬λ“€μ„ 적극 λ°˜μ˜ν•΄μ„œ λ”μš± μœ μ΅ν•œ λ‰΄μŠ€λ ˆν„°λ₯Ό λ§Œλ“€μ–΄κ°€λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€. πŸ˜ƒ
ν•΄ν‚€λ³΄μ΄μ¦ˆ
hackyboizteam@gmail.com
μ„œμšΈμ‹œ 광진ꡬ κ΅°μžλ™ 134-33 3μΈ΅
μˆ˜μ‹ κ±°λΆ€ Unsubscribe