Communication Signal Design Lab.

한국어

송홍엽 교수의 잡글

암호이야기

2008.05.21 22:04

송홍엽 조회 수:2917 추천:313

정보통신과 암호 이야기

송홍엽 (부교수, 소속: 공과대학 전기전자전공, 세부전공: 부호 및 정보이론)  2001년 7월


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


오늘날 사용되는 암호에서는 100-150자리의 소수 두개를 이용합니다. 전자상거래, 전자현금, 전자문서 결재 등을 가능케 하는 암호학은 오늘날 인터넷과 무선데이터 통신망의 획기적인 확산보급으로 점점 더 절실해지고 있으며, 컴퓨터 시스템의 보안문제와도 관련하여 필수적인 분야입니다. 암호문을 작성하고 보내고 받아서 그 소인수를 아는 사람만이 다시 복구할 수 있다는 것입니다. 2차 세계대전 당시에 급속한 발전을 이룩한 암호학은 전쟁이 진행되면서 많은 사람을 살리기도 하였고 또 다른 많은 사람을 죽이기도 하였으니, 처음에 이야기한 수학자 Hardy의 회고와 예견과는 정 반대가 된 셈입니다.

번호 제목 글쓴이 날짜 조회 수
공지 논문에 영어작문 주의사항 몇 가지 송홍엽 2008.05.22 8347
공지 젊은 학부생 여러분에게... 송홍엽 2008.11.20 5809
공지 우리학과 대학원생 모두에게 (특히, 박사과정들에게) 하고싶은 말입니다. 송홍엽 2014.01.20 5756
69 [소고] 수학이란.... 송홍엽 2004.04.13 3313
68 오류정정부호에 대한 이야기 송홍엽 2004.04.13 5013
67 [교양상식] 메르센 소수--Mersenne Prime 송홍엽 2004.04.13 12277
66 [교양상식] 정수와 암호 송홍엽 2004.04.13 3533
65 [펌]Turbo code에 대한 글 송홍엽 2004.04.13 12347
64 SHANNON : CRACKING THE CHANNEL file 송홍엽 2004.04.13 8556
63 Re..Turbo code Encoder file 송홍엽 2004.04.13 4299
62 Re.. Turbo code Decoder file 송홍엽 2004.04.13 4188
61 2000년에 어딘가에 올린 글입니다.."열정" 송홍엽 2004.04.15 4361
60 퍼즐 2 송홍엽 2004.04.15 3565
59 퍼즐 3 송홍엽 2004.04.15 3771
58 퍼즐 4 송홍엽 2004.04.15 3982
57 퍼즐에 상금을 부여합니다...^^ 송홍엽 2004.04.15 4202
56 랜덤변수의 variance가 0이면? 송홍엽 2004.05.13 4581
55 marginally Gaussian but not jointly Gaussian 송홍엽 2004.05.13 4500
54 uncorrelated but not independent 송홍엽 2004.05.13 4678
53 combinatorial search problem file 송홍엽 2004.07.21 4455
52 아날로그 신호와 디지털 신호 송홍엽 2004.08.06 7101
51 정보화와 정보이론 송홍엽 2004.08.06 4591
50 교재준비작업(1) 송홍엽 2004.10.03 7185