붕어빵 사먹는데 수학이 필요해?
수학을 배워서 어디에 쓰나요? 수학을 가르치는 선생님이면 한 번쯤 만나게 되는 질문입니다. 그러나 이는 수학을 잘 모르기 때문에 하는 생각입니다. 수학교육의 목적은 생활에 필요한 것을 가르치는 데 국한되어 있지 않습니다. 수학이 논리적인 사고력을 키워주어 일상의 여러 가지 문제를 해결하는데 도움을 준다고 말하면서도, 실제로는 현실에 적용하는 수학이 아니라 문제를 풀고 개념을 외우는 수학에 자주 머물러 있는 것이 사실입니다. 우리 학생들에게는 수학 덕분에 편리한 생활을 할 수 있게 되었음을 확인하는 경험이 자주 필요합니다.
암호 만들기와 소수
정보화 사회로의 발전 속도에 비례하여 대두되고 있는 개인정보보호에 필요한 암호와 소수(prime number)를 연결지어 수학이 현대 사회에서 어떻게 유용한지 직관적으로 실감할 수 있습니다.
소수(素數)
1과 자기 자신만을 약수로 갖는 1보다 큰 자연수
소수는 더 이상 쪼갤 수 없다는 특징 때문에 왠지 더 특별하게 느껴집니다. 사실 소수는 200~300년간 연구되었지만 쓸모 없는 학문이라고 여겨지기도 했습니다. 소수는 정보를 보호하는 암호에 사용되면서 결정적인 기여를 하고 있습니다. 그렇다면 정보를 어떻게 암호화하는지 알아보고 RSA암호에 소수가 어떻게 사용되고 있는지 그 아이디어를 살펴봅시다.
암호화(encryption)
전달하고자 하는 내용 및 메시지를 타인이 보아도 알 수 없도록 바꾸는 과정
이와 관련된 몇 가지 용어에 대해 알아봅시다.
(1) 암호화된 내용을 암호문(cirhertext)이라고 하고, 암호화하기 이전의 원래 전달하고자 했던 내용을 평문(plaintext)이라고 합니다.
(2) 복호화(decryption)는 전달 받은 암호문으로부터 평문을 찾아내는 과정을 의미합니다.
(3) 암호체계(cryptosystem)는 암호방식(cipher)이라고 하며 평문을 암호화하여 전달하고 복호화하여 다시 평문을 얻는 과정 전체를 의미합니다.
(4) 키(key)는 어떤 문서를 제3자가 볼 수 없게 전달하는 방법의 하나로 송신자가 문서를 상자에 넣어 자물쇠로 잠그고 보내면 수신자가 열쇠로 상자를 열어 문서를 꺼내어 보는 방식으로 비유할 수 있습니다.
정보를 암호화하는 방식은 1)대칭키 또는 비밀키 방식과 2)공개키방식 두 가지가 있습니다.
1) 대칭키 암호방식은 송신자와 수신자가 동일한 키에 의하여 암호화와 복호화 과정을 수행하는 방식입니다. 이는 안정한 통신을 원하는 두 사람이 서로 똑같은 비밀키를 소유하여 보내려고 하는 메시지를 송신자가 비밀키를 이용하여 암호화한 것을 수신자가 비밀키를 이용하여 복호화하는 방식입니다.
2) 개개인이 비밀 통신을 할 경우에는 비밀키 암호를 사용할 수 있지만, 다수가 통신을 할 때는 키의 개수가 급증하게 되어 큰 어려움이 따릅니다. 이런 어려움을 극복하기 위해 개발한 것이 공개키 암호입니다. 공개키 암호방식은 계산이 복잡한 단점이 있기 때문에 효율을 위해 비밀키 암호와 함께 사용됩니다. 즉 메시지를 임의로 만들어진 비밀키를 이용해 암호화한 다음, 이 비밀키를 수신자의 공개키로 암호화하여 메시지와 함께 전송하는 것입니다. 비밀키 암호 방식은 암호화 키와 복호화 키가 동일하고, 공개키 암호 방식은 암호화 키와 보호화 키가 따로 존재한다는 차이가 있습니다.
RSA암호와 소수
현대암호이론에서 암호는 소수를 이용한 공개키(Public Key) 암호방식
공개키 암호방식중에서 가장 유명한 것은 1977년에 개발된 RSA암호입니다. RSA는 이를 처음으로 연구한 수학자 론 리베스트(Rivest), 아디 셰미르(Shamir), 레오나르드 아델만(Adlerman)의 성을 본 떠 만든 용어로 처음으로 상용화 되었고 지금도 널리 쓰이는 대표적인 공개키 암호 방식입니다.
RSA암호의 아이디어는 중요 정보를 두 개의 소수로 표현한 후, 두 소수의 곱을 힌트와 함께 전송해 암호로 사용하는 것으로 RSA의 안정성은 매우 큰 정수의 소인수분해가 어렵다는 점에 기반하고 있습니다. 예를 들면, 두 소수 2,347과 2,551의 곱이 6,012,707이라는 것은 계산이 복잡할 뿐 어렵지 않지만, 6,012,707을 소인수분해 하는 것은 매우 어렵습니다. 실제로 RSA 암호 체계는 이보다 훨씬 복잡하고 정교하여 암호를 해독할 수 없도록 만들어져 있습니다.
암호와 소수, 수학 수업 이야기 : 소인수분해와 소수로 인터넷 보안을 지킨다?
인터넷 쇼핑을 하고 카드로 결제를 하면서 카드정보나 개인 정보를 보내어도 안전한지 걱정한 적이 있지 않나요? 그러나 우리가 입력한 카드정보나 개인 정보는 그대로 보내지는 것이 아니라 암호화를 거쳐 보내지기 때문에 안심하고 사용할 수 있습니다. 개인정보 보호를 위해 이처럼 중요한 암호에 숨어있는 소수 덕분에 우리 생활이 편리해졌음을 이해하는 수업을 설계해봅시다.
[교육과정 재구성]
단원명 | 1. 수와 연산 1. 소인수분해 |
수업모형 | 모둠학습 | |
교육과정 성취기준 | [9수01-01] 소인수분해의 뜻을 알고 자연수를 소인수분해할 수 있다. | |||
수업 및 평가 | 차시 | 주제 | 활동 | 평가 |
1 | 소수와 합성수로 분류하기 |
개념과 원리 탐구하기 |
관찰평가 자기평가 |
|
2-3 | 소인수분해 소인수분해와 약수 |
|||
4 | 소수를 찾아라! | |||
5 | 거듭제곱의 위력 | 실험수업 | ||
6 | 나눠! 나눠! 소인수분해와 최대공약수 |
개념과 원리 탐구하기 |
||
7 | 뭉쳐! 뭉쳐! 소인수분해와 최소공배수 |
|||
8 | 단원형성평가 과제수행 |
문제해결 | 형성평가 논술평가 |