If you're seeing this message, it means we're having trouble loading external resources on our website.

웹 필터가 올바르게 작동하지 않으면 도메인 *. kastatic.org*.kasandbox.org이 차단되어 있는지 확인하세요.

주요 내용

암호 vs. 코드

시작하기에 앞서, 암호코드의 차이점을 확실히 알아봅시다. 이 질문은 지금 당장 아무한테나 한 번 물어보라고 하고 싶네요. 질문하는 동안 저는 여기서 로렌츠 암호 기계 를 보며 감탄하고 있겠습니다...
대답하기 어려워하던가요? 대부분의 사람들에게, 이는 mix와 blend의 차이점이 무엇이냐고 묻는 것과 비슷합니다. 어려운 질문이죠. 다행히도, 코드북에 대해 설명해주는 모스 부호에 관한 영상이 있습니다.—확인해보세요! 이 영상에서는 어떻게 전신 기사가 전체 문장을 짧은 단어로 바꾸어 시간을 절약했는지 볼 수 있습니다.
여기서, accountant라는 단어는 "Come at once. Do not delay."라는 뜻입니다. 코드는 단어, 문장 등 의미가 있는 단위를 더 짧은 기호로 나타내는 것을 말합니다. 예를 들어, 사과를 67로 표현하는 코드를 하나 만들 수 있습니다.. 일반적으로 코드는 메세지를 전송할 때 시간을 절약하는 방법입니다. 시간이 곧 돈이기도 하죠.
코드북 은 단지 이런 도표화의 목록이고 사람들이 글쓰기를 시작했을 때부터 존재했습니다. 코드는 코드북이 필요하다는 것 을 기억하세요.
자, 그럼 암호 는 어떨까요?
더 중요한 것은 암호는 의미를 포함하지 않는다는 것입니다. 대신, 각 문자에 적용되는 알고리즘이라고 알려진 기술적인 연산입니다. 예를 들어, 카이사르 암호 에서 각 알파벳이 다른 문자로 치환되는 것을 보았습니다. 시프트가 4면  A→D, B→E, C→F으로 치환되었죠. 이러한 암호는 시프트 암호라고 합니다.
아래의 프로그램으로 시프트 암호가 어떻게 작동하는지 확인해보세요:
이 경우에는, 코드북이 필요하지 않습니다. 대신, 알고리즘이라는 것에 따라 특정 숫자만큼 문자를 시프트합니다. 알고리즘은 공유된 정보인 를 필요로 합니다. 위의 예시 A→D에서 키의 값은 4입니다. 공유된 키값은 메시지를 암호화할 쪽, HELLO → KHOOR과 해독할 쪽, KHOOR→HELLO 양쪽 모두에게 필요합니다.
다시 원래 질문으로 돌아가봅시다. 코드와 암호의 차이점은 무엇인가요? 코드는 일반적으로 의미론 과 의미로 작동하고, 반면 암호는 구문론 과 기호로 작동합니다. 코드는 코드북에 변환 방법을 보관하고, 암호는 알고리즘에 따라 각 기호를 변환합니다.
이제 다음 연습 문제에서는 카이사르 암호에 포함된 기법을 살펴보도록 합시다.