d라이브러리









Ⅰ 디지털 르네상스 주도할 쌍두마차 ① 원자세계 신출귀몰한 조화 양자컴퓨터

암호해독 시간 3백년을 4분으로 단축

기존의 컴퓨터로 해결 불가능한 문제들을 빠른 시간에 풀 수 있는 차세대 주자로 양자컴퓨터가 급부상하고 있다. 특히 양자컴퓨터는 양자정보과학 전체를 통칭하기도 할 만큼 첨단과학기술의 미래를 짊어질 분야이기도 하다.

최근 지금까지와는 전혀 다른 차원의 새로운 정보처리기술을 개발하는 양자정보과학이 발전하고 있다. 바로 양자통신과 양자컴퓨터 분야다. 양자통신에서는 무협지에 나오는 순간이동이라든지 요사이 사회적으로 문제가 되는 도청이 근본적으로 불가능한 통신을, 양자컴퓨터에서는 지금 우리가 사용하는 컴퓨터와 마찬가지로 하드웨어와 소프트웨어를 주 연구대상으로 삼는다. 특히 양자컴퓨터는 양자정보과학 전체를 통칭하기도 할 만큼 미래의 첨단과학기술의 발전에 영향을 끼칠 분야로 주목받고 있다.

미국 국방성이 관심 갖는 이유

양자컴퓨터의 가능성은 1982년 리처드 파인만이 처음으로 제시했다. 파인만이 양자컴퓨터의 개념을 제시했을 때는 양자계를 양자컴퓨터로 시늉내면 좋겠다는 생각이었다. 양자계를 표현하는데 필요한 정보량은 같은 정확도로 대응하는 고전계를 표현하는데 필요한 정보량보다 지수적으로 훨씬 커서 기존 컴퓨터로 양자계를 시늉내기가 불가능하기 때문이다. 이 당시에는 양자컴퓨터의 실용성을 전혀 상상할 수 없었으므로 그 후 10여년간 사람들은 “양자컴퓨터라는 이름이 멋있기는 한데, 그래서 어쨌다는 거냐”며 비판적이었다. 그러나 1994년 피터 쇼가 양자컴퓨터용 소인수분해 알고리듬을 발표하고 나서부터 분위기가 완전히 달라졌다. 이 알고리듬은 현대의 암호체계를 모두 격파할 수 있는 엄청난 능력이 있었다.

더구나 1997년 핵자기공명을 이용한 양자컴퓨터가 처음으로 실현되자 과학선진국들은 모두 정부 차원에서 대대적인 지원을 시작했다. 미국의 경우 주로 국방성이나 CIA, 그리고 ‘스니커즈’ 등의 영화로 우리에게도 잘 알려진 국가안보국(NSA) 등을 통해 연구를 지원하고 있다. 공개적으로 알려진 연구비만 일년에 3백억원 정도이며, 비밀리에 지원되는 연구비는 이보다 한단위 정도 크다고 한다.

양자컴퓨터에 대해 선진국들이 초미의 관심을 보이는 이유는 뭐니뭐니 해도 모든 암호를 격파할 수 있다는 사실이다. 예를 들어 56비트로 된 패스워드를 1부터 차례대로 대입해서 알아낸다고 할 때 1MIPS, 즉 1초에 1백만개의 명령을 수행하는 고전컴퓨터로 찾아내려면 약 3백년이 걸리지만, 똑같은 속도로 돌아가는 양자컴퓨터를 이용하면 단 4분만에 알아낼 수 있다.

여기서 잠깐 고대에 시작한 암호의 역사를 살펴보자. 시저의 집안에서는 알파벳 순서에서 두개씩 밀려 쓰는 방법의 암호를 사용했다고 한다. 예를 들어 ‘SPIN’을 ‘URKP’로 표시하는 식인데, 암살 당하는 날도 가족들이 이런 방식으로 조심하라는 암호문을 보냈다고 한다. 이와 같이 암호문의 알파벳과 원문의 알파벳이 일대일로 대응되게 하는 방식은 오랫동안 사용됐다.

1차대전 때 전설적인 여간첩 마타하리의 악보 암호도 알파벳 대신 음표를 사용했을 뿐 이런 방식에 해당된다. 암호문을 만들 때나 해독할 때는 소위 ‘암호열쇠’라 불리는 숫자를 사용하는데, 시저의 암호에서는 숫자 ‘2’가 이에 해당한다. 물론 시저의 암호같이 간단한 암호는 열쇠를 쉽게 찾아내 가볍게 풀린다. 세계대전을 거치는 동안 암호의 중요성이 커지면서 열쇠는 점점 더 복잡해졌다. 현대의 암호는 매 알파벳마다 쓰이는 열쇠가 달라 암호문에서 평문의 알파벳 사용빈도의 통계를 찾아볼 수 없다. 간첩들이 사용해 널리 알려진 난수표는 바로 매 알파벳마다 사용될 열쇠의 표이다.

2차대전 때 독일은 난수를 발생하는 ‘에니그마’라는 기계를 암호통신에 사용했다. 독일은 우수한 종족인 게르만이 만들어낸 암호체계를 격파할 나라는 없을 것이라고 자만하다가 전쟁을 지고 말았다. 얼마 전에 나온 영화 ‘U571’은 바로 이 에니그마의 난수발생표를 구하기 위해 침몰하는 독일 잠수함에 미 해병이 뛰어드는 이야기로, 실화에 바탕을 두고 있다. 실제로는 해병 셋이 뛰어들어 그 중 둘은 잠수함과 함께 침몰하고, 하나가 간신히 그 문서를 들고 살아 나왔다고 한다. 요즘은 컴퓨터를 이용해 하나의 대표 열쇠숫자에서 복잡한 과정을 거쳐 난수를 생성한다. 이러한 암호체계를 비밀열쇠 방식이라고 한다. 최근까지 이것이 가장 안전한 방식으로 생각돼 왔지만, 양자 데이터검색 알고리듬이 등장하면서 무용지물이 될 처지에 놓였다.

양자 데이터검색 알고리듬은 암호를 격파할 뿐 아니라 인터넷 검색, 유전자배열 검색 등을 획기적으로 빠르게 한다. 인체의 유전자배열이 모두 알려진 지금, DNA에서 어떤 특정한 배열을 잘 찾는 것이 생명공학 연구의 핵심이다. 이런 관점에서 볼 때 양자컴퓨터보다 더 적합한 도구는 찾기 힘들다. 이 밖에도 양자컴퓨터는 많은 정보를 압축해서 전달한다든지, 완벽하게 무작위한 난수를 발생시킬 수도 있다.

피아노 ‘도’와 기타 ‘도’의 차이

이렇듯 중요성이 크게 대두되고 있는 양자컴퓨터의 원리는 과연 무엇일까. 물체의 속도가 빛의 속도에 가까워지면 이상한 일들이 일어나는 것처럼 원자 크기의 작은 세계에서는 우리가 보는 세상과는 매우 다른 일들이 벌어진다. 이러한 미시세계에서 일어나는 일들을 소위 양자현상이라고 한다. 즉 양자현상은 우리가 볼 수 있는 크기의 세상에서는 그 효과가 거의 사라진다. 양자컴퓨터는 이런 양자현상에 기초한 컴퓨터이기 때문에 그 원리를 이해하기 위해서는 우선 미시의 세계에서 어떤 일이 일어나는지 알아야 한다.

원자를 구성하는 핵이나 전자들은 마치 음파나 빛과 같은 파동의 성질을 갖고 있음이 1백년 전부터 밝혀져 있다. 당구공 같은 물체 덩어리가 파동 같은 성질을 갖는다는 것은 우리의 상식과는 도저히 맞지 않으므로 상상하기가 힘들고, 또 그것이 당연한 일이다. 그러나 우리가 어떻게 생각하고 느끼든 물체 덩어리들은 파동의 성질을 갖고 있으며, 이 파동성 때문에 이상한 일들이 벌어진다. 덩어리가 파동성을 가질 때 어떤 일이 벌어지는지 이해하기 위해 일상적인 파동의 성질을 잠깐 관찰해보자.

피아노나 기타를 치면 줄이 진동하면서 소리를 낸다(그림 1). 가령 (가)와 같은 모양으로 진동할 때 ‘도’음이 난다면 (나)와 같은 모양으로 진동하면 높은 ‘도’음이 들리며 (다)와 같은 모양으로 진동하면 두 옥타브 높은 ‘도’음이 들린다. 실제 피아노나 기타의 ‘도’를 치면 (가)와 같은 방식으로 현이 진동하는 것이 아니고, 일반적으로 (가), (나), (다)의 진동방식이 적당히 조합된 진동이 일어난다. 예를 들어 피아노 건반이 현을 때릴 때나 우리가 기타 줄을 튕길 때는 (가), (나), (다)와 같은 모양으로 줄 모양을 만들어 진동을 시작시키는 것이 아니라 (라)와 같은 형태에서 처음 진동을 시작시킨다. (가), (나), (다) 같은 진동의 모습은 각 진동의 적절한 조합이라고 생각하면 된다. 같은 ‘도’음이라고 해도 피아노와 기타의 음색이 다른 것은 각 진동 성분의 조합비가 다르기 때문이다. 이와 같이 파동에서는 진동수가 일정한 진동들이 겹쳐지는 중첩이 일어날 수 있으며, 이 중첩이야말로 파동의 회절, 간섭 등을 일으키는 원인이 되는, 파동의 가장 중요한 성질이라 할 수 있다.
 

(그림 1) 피아노와 기타를 칠 때 줄이 진동하는 형태^ 피아노나 기타를 치면 줄이 진동하면 서 소리를 낸다. (가)의 모양일 때‘도’ 음, (나)의 모양일 때 높은‘도’음, 그 리고 (다)의 모양일 때 두 옥타브 높 은‘도’음이 들린다. 하지만 실제로 피아노나 기타의‘도’ 음을 치면 각각의 유일한 방식으로 진 동하는 것이 아니다. 처음에는 (라)와 같은 형태에서 시작해 (가), (나), (다)의 진동방식들이 적당히 조합돼 하 나의 진동을 만들어낸다. 이처럼 파동에서는 진동수가 일정한 진동들이 겹쳐지는 중첩이 일어난다. 물체덩어리도 이와 유사하게 진동수 가 일정한 여러 파동의 중첩상태에 있 을 수 있다. 양자컴퓨터의 핵심은 바 로 중첩성에 있다.


양자컴퓨터의 정보 단위 큐빗

기타줄이 진동수가 일정한 진동들의 중첩상태에 있을 수 있는 것처럼, 물체 덩어리들도 이와 유사하게 진동수가 일정한 여러 파동의 중첩상태에 있을 수 있다. 예를 들어 전자가 원자만한 조그만 상자 안에 들어 있는 경우를 생각해보자. 물리학자들이 알아낸 바에 따르면 이렇게 작은 세상에서는 물체 덩어리를 당구공같이 표현할 수 없고, 파동으로 나타낼 수밖에 없다. 기타 줄이 여러가지 상태로 진동할 수 있는 것처럼, 덩어리의 파동도 여러가지 상태가 존재할 수 있다.

이때 이 파동의 진폭이 큰 곳에서 입자를 발견할 확률이 크다. (나)와 (다) 상태는 각각 (가) 상태보다 진동수와 에너지가 2배, 3배인 상태이다. 현이 진동하는 경우처럼 전자의 상태도 (가), (나), (다)와 같이 에너지가 특정하게 주어진 상태만이 아니라 일반적으로 이들의 중첩된 상태로 존재할 수 있다.

이제 이 원리를 양자컴퓨터에 적용해 살펴보자. 양자컴퓨터에서는 (가)와 (나)의 상태를 각각 0과 1을 나타내기 위해 사용한다. 이는 고전컴퓨터 안의 전자소자들이 0V와 5V인 상태를 각각 0과 1을 나타내기 위해 사용하는 것과 마찬가지이다. 양자컴퓨터와 고전컴퓨터의 중요한 차이는, 0V의 전압과 5V의 전압은 중첩시킬 수 없지만 파동상태들은 중첩시킬 수 있다는 점이다.

즉 양자컴퓨터에서는 정보의 단위로 비트가 아니라 양자 비트인 ‘큐빗’을 사용한다. 비트가 0과 1을 각각 나타낼 수 있는데 반해, 큐빗은 0과 1 두상태를 중첩시킬 수 있으므로 0과 1에 대한 계산을 동시에 할 수 있다. 이렇게 소위 양자적 병렬처리를 함으로써 계산시간을 줄일 수 있다.

예를 들어서 어떤 함수 f(x)=0의 값을 찾는다고 하자. 0이나 1 중에서 이 방정식의 해가 있는지 찾으려면 0을 대입해서 함수값을 계산해보고, 그 다음에는 1을 대입해서 함수값을 계산하는 두번의 과정을 거쳐야 한다. 그런데 이 두값에 대해서 동시에 함수값을 계산할 수 있다면 시간이 반으로 줄어든다.

이쯤에서 두배 정도의 시간 차이는 별 것 아니라고 말하는 사람도 있을 것이다. 하지만 이 시간 차이는 비트 수가 늘어날수록 지수적으로 증가한다. 전자를 담은 상자를 두개 준비하고 각각을 첫번째 비트와 두번째 비트를 나타내는 것으로 약속해보자. 두 전자 모두 0과 1의 중첩된 상태에 있다면, 이 두개의 전자는 (00), (01), (10), (11)인 네 수의 중첩된 상태에 있는 것으로 해석할 수 있다. 일반적으로 n개의 비트가 있으면 표시할 수 있는 수가 0부터 ${2}^{n-1}$까지 모두 2ⁿ개인데, 각각의 비트가 모두 중첩돼 있으면 2ⁿ개의 숫자가 모두 중첩된 상태가 된다. 따라서 0부터 1천23까지의 수 가운데 방정식의 해를 찾을 때 고전컴퓨터를 쓰면 1천24번 함수값을 순차적으로 계산해야 하지만, 양자컴퓨터를 쓰면 10개의 비트(${2}^{10}$=1천24)를 몽땅 0과 1의 중첩상태로 만든 후 한번에 병렬계산하면 된다.

액체 분자의 핵을 비트로 사용
 

(그림 2) 메모리 한비트당 사용되는 연도별 원자수 변화^그래프를 보면 메모리 한비트당 사용되는 원자수가 해가 지날수록 줄어들고 있다. 컴퓨터 메모 리의 용량이 1년 반마다 2배씩 증가한다는 무어의 법칙이 그대로 지켜진다면 2020년에는 한개 의 원자로 메모리 한 비트를 만들어야 한다. 하지만 이런 일은 양자현상 때문에 불가능하다.


양자 데이타검색 알고리듬도 이 중첩성을 이용해 N개의 데이터에서 1개를 찾아내는데 $\sqrt{N}$번 정도만 검색해 성공할 수 있게 해준다. 예를 들어 1백개 가운데 하나를 찾을 때는 10번을 찾으나 1백번을 찾으나 큰 차이가 없을 것이다. 하지만 한 아이가 1백만개의 돌을 갖고 와서 그 중에 숨겨진 한개의 사탕을 찾아달라고 조른다면 과연 1백만개의 돌을 모조리 뒤져야 할까. 아이에게 양자역학에 대해 가르치고 1천번만 찾는 수고를 하는 것이 훨씬 더 나을 것이다.

양자컴퓨터의 하드웨어로는 여러가지 양자계가 제안되고 있다. 지금은 PC용으로 주로 인텔의 마이크로프로세서가 사용되지만 초창기에는 여러가지 칩들이 사용됐던 것처럼, 양자컴퓨터에서도 어떤 방식이 실용적인 CPU로서 최종적인 승자가 될 것인지 현재로서는 가늠하기 어렵다. 핵자기공명 양자컴퓨터에서는 물 같은 액체상태 분자의 핵을 비트로 사용한다. 현재 가장 발달된 양자컴퓨터는 핵자기공명 양자컴퓨터로서 7비트의 처리능력을 지니고 있다. 이 컴퓨터로 할 수 있는 일을 예로 든다면 0에서 7까지의 수 가운데 어떤 수가 소수인지 찾아주는 정도다.

컴퓨터의 구조는 여러가지가 있을 수 있는데, 우리는 지금 소위 폰노이만 방식의 컴퓨터를 사용하고 있다. 이 컴퓨터는 전자공학의 눈부신 발전으로 인해 그 연산능력이 엄청나게 늘어왔다. 컴퓨터 메모리의 용량이 1년 반마다 2배씩 증가한다는 무어의 법칙은 조만간 맞지 않게 될 것이라는 비판이 10년 전부터도 있었으나, 도저히 불가능해 보이는 상황에서도 돈의 힘은 불가능을 가능으로 바꿔왔다.

그런데 이 무어의 법칙도 절대로 깰 수 없는 이론적 한계가 있다. 예를 들어 메모리 한 비트에 사용되는 원자의 수를 각 년도별로 도식한 것을 보자(그림 2). 지금 현재는 메모리 한 비트의 크기를 원자의 수로 계산하기에는 너무 많지만, 무어의 법칙이 그대로 지켜진다고 할 때 2020년에는 한개의 원자로 메모리 한 비트를 만들어야 한다. 아무리 잘 맞아왔던 무어의 법칙도 이 단계까지는 갈 수 없다.


원자 크기에서는 양자현상이 강하게 나타나고, 고전컴퓨터의 제작원리가 됐던 고전적 물리현상이 더 이상 잘 맞지 않기 때문이다. 2020년까지 갈 것도 없이 벌써 메모리칩 제조회사에서는 양자현상 때문에 용량을 늘이기에 골머리를 앓고 있으며, 이 분야 연구자들의 관심은 어떻게 해서든지 양자현상을 제거하려는 것이다. 그런데 양자컴퓨터는 양자현상을 제거하려고 노력할 것이 아니고, 관점을 완전히 뒤집어서 양자현상을 이용하자는 적극적인 아이디어를 바탕으로 탄생하게 된 것이다.

양자컴퓨터로 인해 펼쳐질 미래의 모습은 어떻게 변화할까. 양자컴퓨터는 우리 문명의 전반에 걸쳐 혁명적인 변화를 가져오게 될 것이라는 사실은 틀림없지만, 지금 같은 초기 개발 상태에서 양자컴퓨터가 미래에 전개할 세상의 모습을 전체적으로 조망하기란 불가능하다. 또한 양자컴퓨터는 덧셈 같은 연산을 빨리 하는 것이 아니기 때문에 현재의 컴퓨터를 모두 대체하게 되는 것은 아니며, 현재까지 쓸모 있는 알고리듬으로 알려진 것도 서너개에 불과하다. 하지만 나노테크놀로지의 발전에 따라 양자상태를 제어하는 기술이 발전하면 양자컴퓨터 제작기술도 같이 발전하게 되므로 언젠가는 우리 책상 위에 올라올 것이다. 양자컴퓨터가 21세기 인류문명에서 가장 중요한 과제 중의 하나로 꼽히는 이유이기도 하다. 양자컴퓨터는 젊은 과학도들에게 새로운 사고와 도전의 기회를 제공해주기에 충분하다.

이 기사의 내용이 궁금하신가요?

기사 전문을 보시려면500(500원)이 필요합니다.

2001년 12월 과학동아 정보

  • 이순칠 교수

🎓️ 진로 추천

  • 물리학
  • 컴퓨터공학
  • 수학
이 기사를 읽은 분이 본
다른 인기기사는?