Communication Signal Design Lab.

한국어

송홍엽 교수의 잡글

[교양상식] 정수와 암호

2004.04.13 05:56

송홍엽 조회 수:3533 추천:155

우리가 잘 알고있는 정수(integer)는 순수과학 연구의
정점에 서 있지만 응용부문에서도 굉장히 중요한 도구입니다.
이를 연구대상으로 삼는 사람들은(날 포함하여)
0, 1, -1, 2, ... 등등의 숫자 하나 하나가 각자 살아
움직이는 듯한 느낌을 받습니다. 서로 자기가 잘났다고
뽐내는 모양도 제각각이구요. 이들 중에서 소수(prime number)에
대한 이야기를 짧게 하겠습니다.


1보다 크며 오직 1과 자기자신으로만 나누어떨어지는 양의 정수를
소수라고 합니다.
예를 들어
2, 3, 5, 7, 11, 13, 17, 19, 23, .......
등등 입니다.


이 소수는 20세기 초반까지만해도 완벽한 순수학문의 대명사였습니다.
아무짝에도 쓸모없는 현학적 사고의 대상이었지요. 영국의 유명한
수학자는 (Sir T. G. Hardy)
1900년대 초에 작성한 회고록에서
자신이 행해온 수학적연구의 장점에
대하여 어느 누구에게도 해를 끼치지 않을뿐더러 그렇다고 이익을
주지도 않는, 즉, 세상살이와는 전혀관계없는 짓이었기에 다행이라고
회고하기도 했습니다. 앞으로도 영원히 그러할 것이라고
예견까지 하였습니다. 그러나
이제는 그와 정반대가 되었습니다.

이를 설명하기 위해서 소수와 관련된 두 가지의 문제를 설명하고자
합니다. 첫째는 주어진 어떤수가 소수인지 판정하는 문제입니다.
서너자리 수이라면 초등학생도 쉽게 해결할수 있지만, 자릿수가 100 정도만
되어도 그 쉬운 방법으로는 (현재 만들어져 있는 가장 빠른 컴퓨터를
이용해도) 영원한 시간이 걸릴겁니다. 많은 좋은 방법이 연구되었고,
굉장히 복잡한 방법이긴 하지만 이제는 적당한 시간 안에 이를
확인할 수 있습니다.

둘째 문제는 정수의 인수분해 문제입니다.15는 3과 5의 곱으로 이루어지고,
3과 5를 15의 소인수라고 합니다. 이것 역시 200-300자리의 수가 주어졌을때
이를 구성하는 두개의 소인수를 찾기란 현실적으로 불가능합니다.
(사실 이 문제는 아직 증명되진 않았지만, 모두들 그렇게 믿고 있습니다.)
이론적으로는 1부터 시작하여 차례로 나누어보면 언젠가는 하나의 소인수가
튀어나오겠지만, 200자리 수이면, 현재 알려진 가장 빠른 컴퓨터를 이용해도
여러분의 일생이 끝나기 전엔 나오지 않을 것입니다. 사실은 몇백년 정도는
쉽게 걸릴것이라는게 손쉬운 예상의 결과입니다.

오늘날 사용되는 암호에서는 100-150자리의 소수 두개를 이용합니다.
전자상거래, 전자현금, 전자문서결재등을 가능케하는 암호학은
오늘날 인터넷과 무선데이터 통신망의 획기적인 확산보급으로 점점 더
절실해지고 있으며, 컴퓨터 시스템의 보안문제와도 관련하여 필수적인
연구분야입니다. 암호문을 작성하고 보내고 받아서 그 소인수를 아는
사람만이 다시 복구할수있다는 것입니다.
2차대전 당시에 급속한 발전을 이룩한 암호학은
많은 사람을 살리기도 하였고 또다른 많은 사람을 죽이기도 하였으니
처음에 이야기한 수학자의 회고는 정 반대가 된 셈입니다.
구체적인 암호학적 방식을 소개하기에는
이 글이 너무 지루해지므로 (벌써 충분히 지루합니다.)
여기서 그만 하겠습니다.
궁금하다면 다음편에 시도해보긴 하겠지만........
번호 제목 글쓴이 날짜 조회 수
공지 논문에 영어작문 주의사항 몇 가지 송홍엽 2008.05.22 8438
공지 젊은 학부생 여러분에게... 송홍엽 2008.11.20 5821
공지 우리학과 대학원생 모두에게 (특히, 박사과정들에게) 하고싶은 말입니다. 송홍엽 2014.01.20 5784
67 김정한 교수의 '창의적 수학교육' [1] file 송홍엽 2008.06.20 5977
66 [퍼온글] 에르도쉬 넘버 [1] file 송홍엽 2004.10.23 5871
65 [퍼온글] 애플컴퓨터 로고의 유래(?) 송홍엽 2006.02.09 5844
64 벡터공간이란 무엇일까.. 송홍엽 2003.10.06 5742
63 게임의 확률과 기대값 송홍엽 2004.12.02 5741
62 채널코딩 둘째이야기... 송홍엽 2003.11.12 5716
61 [퍼온글] 명왕성 이야기 송홍엽 2006.04.26 5315
60 [펀글] 영문이력서 작성법 송홍엽 2011.03.27 5299
59 [퍼온글] 달력의 유래 송홍엽 2004.04.01 5116
58 오류정정부호에 대한 이야기 송홍엽 2004.04.13 5018
57 채널코딩 세째 이야기 송홍엽 2003.11.13 4923
56 [펀글] 프로그램 설계시 좋은 코딩 습관 송홍엽 2009.12.27 4792
55 지금 내 전공분야는 공부한던 시절엔 나에게 가장 힘든 분야였답니다... 송홍엽 2003.06.03 4780
54 uncorrelated but not independent 송홍엽 2004.05.13 4678
53 수학자와 공학자 송홍엽 2006.05.09 4662
52 정보화와 정보이론 송홍엽 2004.08.06 4591
51 랜덤변수의 variance가 0이면? 송홍엽 2004.05.13 4581
50 [퍼온글]과학자들은 왜 속이는가 송홍엽 2006.02.07 4577