치환암호 편집하기
최신판 | 당신의 편집 | ||
4번째 줄: | 4번째 줄: | ||
치환암호는 특정 글자를 다른 글자로 치환함으로써 암호를 생성하는 방법이다. 예를 들어 알파벳 A를 임의로 H로 지정하듯이 특정 문자를 다른 문자로 치환하면 된다. 치환 암호에는 단일치환암호와 다중치환암호라는 두 가지 방식이 있다. 단일치환암호는 '단일문자치환암호'라고도 하며, 항상 문자에 대해서는 같은 문자로 치환하는 방식이다. 예를 들어, 앞서 A를 H로 치환했다면 하나의 키를 통해 [[암호화]]된 문서에서 나타나는 모든 H는 평문의 A가 된다. 반면에 '다중문자치환암호'라고도 불리는 다중치환암호는 하나의 문자가 여러 다른 문자로 바뀔 수 있다. 즉 평문의 A가 H가 될 수도, Y가 될 수도 있다는 말이다. 이 말은 일반적으로 다중치환암호가 단일치환암호 방식보다 더욱 알아내기 어렵다고 생각할 수 있다. | 치환암호는 특정 글자를 다른 글자로 치환함으로써 암호를 생성하는 방법이다. 예를 들어 알파벳 A를 임의로 H로 지정하듯이 특정 문자를 다른 문자로 치환하면 된다. 치환 암호에는 단일치환암호와 다중치환암호라는 두 가지 방식이 있다. 단일치환암호는 '단일문자치환암호'라고도 하며, 항상 문자에 대해서는 같은 문자로 치환하는 방식이다. 예를 들어, 앞서 A를 H로 치환했다면 하나의 키를 통해 [[암호화]]된 문서에서 나타나는 모든 H는 평문의 A가 된다. 반면에 '다중문자치환암호'라고도 불리는 다중치환암호는 하나의 문자가 여러 다른 문자로 바뀔 수 있다. 즉 평문의 A가 H가 될 수도, Y가 될 수도 있다는 말이다. 이 말은 일반적으로 다중치환암호가 단일치환암호 방식보다 더욱 알아내기 어렵다고 생각할 수 있다. | ||
− | == | + | ==암호방식== |
===단일치환암호=== | ===단일치환암호=== | ||
알파벳에서 숫자(키 값)를 이용해서 다른 알파벳이 되도록 치환시키는 방식이다. 알파벳 26문자를 무작위로 나열한 집합과 원래의 알파벳 26문자를 서로 1대1 대응시킴으로써 암호문을 생성해낸다.<ref>〈[https://jaebworld.tistory.com/5 Simple Substitution Cipher(단일치환암호)]〉, 《티스토리》, 2019-04-20</ref> 단일치환암호 방식은 알파벳의 수가 26개로 한정되있다는 약점이 있어, [[평행이동]], [[빈도분석법]] 등과 같은 방법으로 [[평문]]을 찾을 수 있다.<ref>ITqom, 〈[http://itqomcom.blogspot.com/2018/04/blog-post_14.html 단일치환 암호방식과 다중치환 암호방식]〉, 《개인블로그》, 2018-04-14</ref> 단일치환암호 방식으로는 덧셈암호, 곱셈암호, 아핀암호가 있다. | 알파벳에서 숫자(키 값)를 이용해서 다른 알파벳이 되도록 치환시키는 방식이다. 알파벳 26문자를 무작위로 나열한 집합과 원래의 알파벳 26문자를 서로 1대1 대응시킴으로써 암호문을 생성해낸다.<ref>〈[https://jaebworld.tistory.com/5 Simple Substitution Cipher(단일치환암호)]〉, 《티스토리》, 2019-04-20</ref> 단일치환암호 방식은 알파벳의 수가 26개로 한정되있다는 약점이 있어, [[평행이동]], [[빈도분석법]] 등과 같은 방법으로 [[평문]]을 찾을 수 있다.<ref>ITqom, 〈[http://itqomcom.blogspot.com/2018/04/blog-post_14.html 단일치환 암호방식과 다중치환 암호방식]〉, 《개인블로그》, 2018-04-14</ref> 단일치환암호 방식으로는 덧셈암호, 곱셈암호, 아핀암호가 있다. |