카이사르 암호 편집하기


편집하면 당신의 IP 주소가 공개적으로 기록됩니다. 계정을 만들고 로그인하면 편집 시 사용자 이름만 보이며, 위키 이용에 여러 가지 편의가 주어집니다.

편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.

최신판 당신의 편집
1번째 줄: 1번째 줄:
[[분류:암호]]


== 개요 ==
== 개요 ==
18번째 줄: 19번째 줄:


== 해독 ==
== 해독 ==
암호문이 많다면 어렵지 않게 해독할 수 있다. 각 문자에 따라 빈도수가 다르기 때문이다. {{ㅊ|뭔가 [[백:오리]]같다.}} 알파벳의 경우 E가 많이 사용되는 탓에 빈도수가 높은 알파벳이 E일 확률이 높다. {{ㅊ|알파벳은 26가지밖에 안 되는데 다 해보면 되지}}는 의미가 없는 행동인게, 모든 알파벳에 대해 E일 가능성을 시험해 보는 건 그야말로 노가다다. 게다가 한참 풀어나가지 않으면 그 알파벳이 E인지를 파악할 수 없는 경우도 생기므로 작업 효율에 있어서 도움이 안 된다.
암호문이 많다면 어렵지 않게 해독할 수 있다. 각 문자에 따라 빈도수가 다르기 때문이다. {{ㅊ|뭔가 [[백:오리]]같다.}} 알파벳의 경우 E가 많이 사용되는 탓에 빈도수가 높은 알파벳이 E일 확률이 높다. {{ㅊ|알파벳은 26가지밖에 안되는데 다 해보면 되지}}는 의미가 없는 행동인게, 모든 알파벳에 대해 E일 가능성을 시험해 보는 건 그야말로 노가다다. 게다가 한참 풀어나가지 않으면 그 알파벳이 E인지를 파악할 수 없는 경우도 생기므로 작업 효율에 있어서 도움이 안된다.  


== 예 ==
== 예 ==
72번째 줄: 73번째 줄:
|}
|}


여기서 빈도수가 높은 알파벳은 '''J'''와 '''Y'''{{ㅈ|암호문은 굵은 표시}}이다. 알파벳 E가 이 둘 중 하나로 바뀌었다고 추측할 수 있다.
여기서 빈도수가 높은 알파벳은 '''J'''와 '''Y'''{{ㅈ|암호문은 굵은 표시}}이다. 알파벳 E가 이 둘 중 하나로 바뀌었다고 추측할 수 있다.  
* 만약 E가 '''J'''로 바뀌었다면, '''Y'''는 T가 된다.
* 만약 E가 '''J'''로 바뀌었다면, '''Y'''는 T가 된다.
* 만약 E가 '''Y'''로 바뀌었다면, '''J'''는 D가 된다.
* 만약 E가 '''Y'''로 바뀌었다면, '''J'''는 D가 된다.
93번째 줄: 94번째 줄:
※ 이 표는 편의상 2줄만 기재했다.
※ 이 표는 편의상 2줄만 기재했다.


첫번째 변종은 위에서 처럼 매번 서로 다른 알파뱃 목록을 대응시키는 것이다. 첫글자는 위 아랫줄이 모두 알파벳 순서대로 써진 표를 사용해서 암호화 하고, 다음 글자를 암호화 할 때는 밑줄을 옆으로 한칸씩 밀어서 표를 재구성한 뒤 사용한다. 예를 들어서 위의 3줄짜리 구성에서 첫 글자로 EE가 나왔다면, DC로 암호화된다.
첫번째 변종은 위에서 처럼 매번 서로 다른 알파뱃 목록을 대응시키는 것이다. 첫글자는 위 아랫줄이 모두 알파벳 순서대로 써진 표를 사용해서 암호화 하고, 다음 글자를 암호화 할때는 밑줄을 옆으로 한칸씩 밀어서 표를 재구성한 뒤 사용한다. 예를 들어서 위의 3줄짜리 구성에서 첫 글자로 EE가 나왔다면, DC로 암호화된다.  


집에서 이 변종을 자작할 때는 각 줄을 규칙성있게 만드는 게 좋다. 안그랬다가는 암호/복호에 필요한 엄청난 크기의 표를 통째로 전달해야한다. 하나의 정해진 행을 만들고, 매번 옆으로 한칸씩 밀어나가는 게 외우기 편하다. 작업을 편하게 하려면 26등분된 원판을 사용해 안쪽판이 회전할 수 있게 만들거나, 적당한 굵기의 원통에 종이를 감은 뒤 이걸 26등분 하고, 둘로 분할해 링 두개가 회전할 수 있게 만들어서 '어디서 시작할지'만 정하면 된다. 참고로 매일 '어디서 시작할지'를 바꿔 나가면 해독자를 한번 더 물먹일 수 있다.<s>근데 진짜 노출되면 안 되는 거라면 [[PGP]]써라</s>
집에서 이 변종을 자작할때는 각 줄을 규칙성있게 만드는 게 좋다. 안그랬다가는 암호/복호에 필요한 엄청난 크기의 표를 통째로 전달해야한다. 하나의 정해진 행을 만들고, 매번 옆으로 한칸씩 밀어나가는 게 외우기 편하다. 작업을 편하게 하려면 26등분된 원판을 사용해 안쪽판이 회전할 수 있게 만들거나, 적당한 굵기의 원통에 종이를 감은 뒤 이걸 26등분 하고, 둘로 분할해 링 두개가 회전할 수 있게 만들어서 '어디서 시작할지'만 정하면 된다. 참고로 매일 '어디서 시작할지'를 바꿔 나가면 해독자를 한번 더 물먹일 수 있다.<s>근데 진짜 노출되면 안되는 거라면 [[PGP]]써라</s>


별거 아닌것 같지만 '임의로 알파벳이 배치된 암호/복호화표 여러 개를 사용한다'라는 발상은 이후 제퍼슨 디스크에 그대로 적용된다. 발명자는 바로 그 [[토마스 제퍼슨]]. 제퍼슨 디스크는 알파벳 배치 순서가 서로 다른 복수의 원판과 이를 꽂는 통으로 만들어진 단순한 장치로 위 변종에서 줄의 순서를 임의로 정할 수 있는 물건인 셈인데, 사용법은 아래와 같다.
별거 아닌것 같지만 '임의로 알파벳이 배치된 암호/복호화표 여러개를 사용한다'라는 발상은 이후 제퍼슨 디스크에 그대로 적용된다. 발명자는 바로 그 [[토마스 제퍼슨]]. 제퍼슨 디스크는 알파벳 배치 순서가 서로 다른 복수의 원판과 이를 꽂는 통으로 만들어진 단순한 장치로 위 변종에서 줄의 순서를 임의로 정할 수 있는 물건인 셈인데, 사용법은 아래와 같다.


{| class="wikitable"
{| class="wikitable"
111번째 줄: 112번째 줄:
# 정해진 순서에 맞춰 바퀴를 설치한다.
# 정해진 순서에 맞춰 바퀴를 설치한다.
# 전달받은 엉망진창 문장이 나오도록 바퀴를 돌린다.
# 전달받은 엉망진창 문장이 나오도록 바퀴를 돌린다.
# 이 상태에서 만들어진 문장들을 찬찬히 살펴보면 한줄이 원래 문장이 되어 있다.
# 이 상태에서 만들어진 문장들을 찬찬히 살펴보면 한줄이 원래 문장이 되어있다.
|}
|}
별거 아닌 물건 같지만 제2차 세계 대전에서도 부분적으로 써먹었다고 한다.(...)
별거 아닌 물건 같지만 제2차 세계 대전에서도 부분적으로 써먹었다고 한다.(...)


=== 여러 개를 하나에 배정하는 변종 ===
=== 여러개를 하나에 배정하는 변종 ===
{| class="wikitable"
{| class="wikitable"
|-
|-
127번째 줄: 128번째 줄:
|}
|}


두번째 변종은 기호까지 동원해서 자주 나오는 알파벳에 여러 개의 알파벳/기호를 배치하는 것으로 역시 빈도 분석을 어렵게 할 수 있다. 단점이라면 순수하게 알파벳으로만 만든 카이사르 암호화 장치와는 달리 기호가 들어가므로 외우기 힘들다. 적어두자니 털리겠고, 외우자니 골아프고 이래저래 난감한 구조라는 게 문제.
두번째 변종은 기호까지 동원해서 자주 나오는 알파벳에 여러개의 알파벳/기호를 배치하는 것으로 역시 빈도 분석을 어렵게 할 수 있다. 단점이라면 순수하게 알파벳으로만 만든 카이사르 암호화 장치와는 달리 기호가 들어가므로 외우기 힘들다. 적어두자니 털리겠고, 외우자니 골아프고 이래저래 난감한 구조라는 게 문제.


참고로 위의 표는 어디까지나 예시이므로 더 나은걸 만들어서 쓰자. 저렇게 했다가는 해독자가 '특수문자가 죄다 E아냐?'라고 생각하는 순간 깔끔하게 털린다.
참고로 위의 표는 어디까지나 예시이므로 더 나은걸 만들어서 쓰자. 저렇게 했다가는 해독자가 '특수문자가 죄다 E아냐?'라고 생각하는 순간 깔끔하게 털린다.
=== 대암호(Great Cipher) ===
[[16세기]]~[[17세기]] 동안 [[프랑스]] 왕정에서 사용하였던 암호. 로시뇰 부자가 개발하여 루이 14세가 사용하였다. 대체로 음절을 암호문으로 치환하는 전형적인 카이사르 암호이지만, 치환 대상이 불규칙하여 암호문의 한 글자가 음절을 의미할 수도, 알파벳 하나를 의미할 수도, 의미가 전혀 없을 수도 있다. 이 암호는 200년 동안 깨진 적이 없으며, 19세기 들어 대암호로 작성되었던 하나의 문건만이 해석되었다.
{{각주}}
{{각주}}
[[분류:암호학]]
리브레 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-동일조건변경허락 3.0 라이선스로 배포됩니다(자세한 내용에 대해서는 리브레 위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
글이 직접 작성되었거나 호환되는 라이선스인지 확인해주세요. 리그베다 위키, 나무위키, 오리위키, 구스위키, 디시위키 및 CCL 미적용 사이트 등에서 글을 가져오실 때는 본인이 문서의 유일한 기여자여야 하고, 만약 본인이 문서의 유일한 기여자라는 증거가 없다면 그 문서는 불시에 삭제될 수 있습니다.
취소 편집 도움말 (새 창에서 열림)

| () [] [[]] {{}} {{{}}} · <!-- --> · [[분류:]] · [[파일:]] · [[미디어:]] · #넘겨주기 [[]] · {{ㅊ|}} · <onlyinclude></onlyinclude> · <includeonly></includeonly> · <noinclude></noinclude> · <br /> · <ref></ref> · {{각주}} · {|class="wikitable" · |- · rowspan=""| · colspan=""| · |}

이 문서에서 사용한 틀: