[암호화폐가 100% 망한다고? 양자 컴퓨터와 블록체인 보안 이야기] Chapter 4. 큐비트를 이용한 양자 정보 처리

in #kr7 years ago (edited)

2039295025_FoUmYked_chip.jpg

안녕하세요. 훈하니 @hunhani입니다.

보다 쉽고 재미있게 전해드리고 싶은 마음이지만 제 글 솜씨가 부족한 탓에 내용을 접하실 때 다소 어렵게 받아들이시는 것 같습니다. 어려운 주제이지만 읽으면서 흥미를 느끼실 수 있도록 최선을 다하겠습니다.

지난 시간에는 양자 병렬성이 양자 통신 보안과 어떻게 관련되는지에 대하여 알아보는 시간을 가졌습니다.

Chapter 4. 큐비트를 이용한 양자 정보 처리에서는 양자 정보의 기본 단위인 큐비트를 이용한 양자 정보 처리에 대하여 다뤄보겠습니다.


2.jpg

간단 복습

양자 병렬성이 핵심이다.

  • 중첩과 얽힘이 가능한 양자 상태를 통해 단 한 번의 조작으로 모든 가능한 상태를 조작할 수 있다.
  • 양자 정보 처리, 양자 통신, 양자 암호 등의 기술을 통해 기존의 컴퓨터가 해결할 수 없는 문제들을 해결할 수 있게 해주는 역할을 한다.

임의의 양자 상태를 복사하는 것은 불가능하다.

  • 양자역학적 정보는 완벽하게 복사될 수 없다.
  • 이를 이용하면 통신 보안에 있어 절대적으로 훔칠 수 없는 양자 키 분배 암호 체계를 마련할 수 있다.
  • 도청 행위가 정보가 망가뜨리기 때문에 도청을 하려는 순간 금방 적발된다.

양자 컴퓨터는 통신 보안의 양면성을 갖는다.

  • 양자 컴퓨터는 공개키 암호 방식을 채택하고 있는 현대의 통신 보안에 큰 위협이 되는 한편, 도청이 절대로 불가능한 양자 암호 전송 방식을 제공할 수 있다.

shutterstock_527048005.jpg


큐비트! 양자 정보의 기본 단위

양자(quantum)의 어두에 고전 정보의 기본 단위인 비트(bit)를 결합하여 탄생한 단어 큐비트(qubit)양자 정보의 기본 단위입니다. 0 아니면 1 둘 중 하나로만 이루어진 비트와 달리 큐비트는 적절한 양자역학적 계를 채택하여 0과 1을 동시에 가질 수 있는 새로운 정보 단위를 이용합니다. 큐비트의 정보는 수학적으로는 복소수에 대한 2차원 벡터 공간인 2단계 양자역학계 안의 상태로 기술되는데요. 어려운 말만 가득하지요? 말보다는 공간 기하로 설명하는 편이 이해가 빠르답니다.

qubit.png

가능한 모든 사건이 일어나는 경우를 확률적으로 표현한 블로흐 구에서 구의 표면은 두 가지 결과에 대한 확률값의 합이 1인 점들로 이루어져 있습니다. 고전적인 비트는 구의 '북극'과 '남극'에 해당하는 1과 0 값만 지닐 수 있는데 반하여 큐비트는 구의 어느 곳에도 동시에 존재할 수 있답니다. 그동안 설명해왔던 양자 중첩과 얽힘을 제대로 이해하셨다면 북극과 남극을 제외한 나머지 표면에서는 1과 0 두 가지 사건에 대한 확률이 공존한다는 것을 짐작하셨을 겁니다.

이처럼 큐비트는 0과 1을 동시에 가질 수 있음을 이용하여 연산 과정에서 마치 0인 경우와 1인 경우를 동시에 훑어가는 효과를 줄 수 있는 것이지요. 이를 이용하면 현재의 슈퍼 컴퓨터도 엄두를 내지 못하는 문제를 쉽게 풀 수 있습니다. 큰 수의 소인수 분해가 매우 어렵다는 사실을 기반으로 한 공개키 암호 방식마저 말입니다. 이에 관해서는 지난 시간에 잠깐 언급했었죠?

Qubit_Bloch_Sphere.png


단 한 번의 연산으로 평균값을 찾아낸다!

단, 여기서 주의할 점이 있습니다. 수 천만 가지 경우의 연산을 통해 평균값을 알아내려는 경우 양자 병렬성을 지닌 큐비트를 이용하면 단 한 번의 연산으로 평균값을 바로 찾아낼 수 있다는 의미일 뿐, 수 천만 가지 각각의 개별 연산 값을 한 번에 찾는다는 의미가 아니라는 것을 명심해야 합니다. 이 점을 이해하기 위해서는 확률 계산양자 계산의 차이를 비교해볼 필요가 있습니다.

예를 들어, n개의 상자가 있고 n개의 상자 중에서 단 하나의 상자에 공이 들어있는 경우를 생각합시다. 고전적인 방법으로 공이 들어있는 상자를 찾기 위해서는 n번의 상자를 열어야만 하겠죠. 한편, 양자 병렬성을 이용하면 상자를 단 한 번만 열어보면 된답니다. 가령, 열어볼 상자의 번호를 적어서 그 번호에 해당하는 상자를 골라서 열어볼 수 있는 것이지요. 다만, 여는 동작 이전에 가능한 n개의 번호들을 양자 중첩/얽힘 상태로 만들어야 하는 번거로움이 있습니다.

r132q1316a1320.png

하지만 이런 일은 꼭 양자 알고리즘을 이용하지 않고도 확률 알고리즘을 통해 비슷하게 수행할 수 있는데요. 동전을 n번 던져서 상자의 번호를 모두 결정한 뒤에, 결정된 번호의 상자를 여는 방식입니다. 각 번호의 상자를 여는 행위가 확률적으로 중첩되어 있고, 각각의 상자에 대해서 그 상자를 열고 공을 발견할 확률이 0보다 크니까 별 차이가 없다고 생각할 수 있죠. 그러나 이렇게 할 경우 상자의 개수가 많아지면 상자를 열어서 공을 발견할 확률도 기하급수적으로 작아지기 때문에 사실상 못 찾는다고 봐야합니다.

정확히 같은 반박을 양자 컴퓨터에 대해서도 적용할 수 있는데요. 확률 알고리즘도 가능한 모든 상태의 확률적 중첩을 만들어낼 수 있지만 그렇게 하면 각각의 상태가 갖는 확률이 기하급수적으로 작아져서 의미 없는 알고리즘이 되듯이, 양자 알고리즘 또한 가능한 모든 상태의 큐비트를 만들어낼 수 있지만 그렇게 하면 각각의 상태가 갖는 확률 진폭이 기하급수적으로 작아져서 의미 없는 알고리즘이 되어버립니다. 애초에 그만큼의 양자 중첩/얽힘 상태의 큐비트를 기술적으로 구현하는 것은 먼 미래의 일이긴 하지만요.


16662697764_e82d4da3b5_b-100695620-large_0.jpg

양자 컴퓨터는 오답을 상쇄시키고 정답을 증폭시킬 수 있다.

양자 알고리즘과 확률 알고리즘의 가장 근본적인 차이점을 단적으로 말해보겠습니다. 확률은 절대 음수일 수 없지만 양자역학의 확률 진폭은 음수일 수 있을 뿐만 아니라, 심지어 실수가 아닌 복소수일 수도 있습니다. 양수끼리는 상쇄될 수 없지만 양수와 음수는 상쇄될 수 있죠. 거기다 확률 진폭의 절대값의 제곱이 확률이 되는데 확률의 총합은 1로 보존되어야 하므로 어떤 상태의 진폭이 상쇄되어 0이 된다면, 무엇인가 다른 상태의 진폭은 총합이 보존되기 때문에 커져야만 합니다.

위 예시 속 상자 문제에 대하여 상자를 양자적으로 열어 보면 공이 어느 상자에 있는지를 유의미한 확률로 맞힐 수 있습니다. 물론 고전적인 결과에 비하면 엄청난 개선이지만, 여전히 지수적인 속도 향상이 아니라 다항식적인 속도 향상에 불과한 것인데요. 이처럼 풀어야 할 문제 자체에 규칙성이 별로 없는 경우 정답의 확률 진폭을 최대화시키고, 오답의 확률 진폭을 최소화시키는 작업이 필요하므로 이런 문제에 대해서는 양자 컴퓨터가 기술적으로 비효율적이라고 할 수 있습니다.

그러나 풀어야 할 문제 자체에 규칙성이 존재하여 상쇄를 가능하게 하는 좋은 구조들이 있는 경우 이야기가 달라집니다. 큰 수의 소인수 분해가 대표적인 것으로, 이 경우 양자 알고리즘을 이용하면 고전적으로 알려진 최선의 알고리즘보다 지수적인 속도 향상이 있습니다. 따라서 높은 기술적인 비용이 소모되는 양자 컴퓨터가 모든 면에서 무조건 만능이 아니라 지수적인 속도 향상을 기대할 수 있는 부분에서 활약할 수 있음을 알고 가시면 좋겠습니다.


02-computing.png

우리가 양자 컴퓨터를 대하는 자세

양자 컴퓨터가 적은 수의 큐비트로도 많은 경우의 수를 표현할 수 있을 뿐 아니라 큐비트의 행동 자체가 비결정론적이라 여러 가지 결과에 대한 값을 한 번에 얻어낼 수 있음을 이해하셨나요? 또한 양자를 확률 파동함수로 표현했을 때 상반되는 상태가 상쇄되어 오답을 재빨리 제거할 수 있는 점도 빼놓을 수 없겠습니다. 그러나 이렇듯 풀어야 할 문제에 상반되는 상태를 상쇄할 수 있는 규칙성이 존재하여 지수적인 속도 향상을 기대할 수 없다면 기술적인 비용 소모가 큰 양자 컴퓨터에 대해 일면 회의적인 생각을 하실 수도 있겠습니다.

그러나 양자 컴퓨터의 빠름은 우리가 컴퓨터에 기대하는 빠름과는 그 적용분야나 성격에 큰 차이가 있음을 받아들인다면 양자 컴퓨터에 대한 이해도가 한층 더 올라가실 것입니다. 특정 연산에서 기존 컴퓨터와 속도 차이가 별로 없거나 부족한 결과를 보여주었다고 양자 컴퓨터에 실망할 필요는 없는 셈이지요. 따라서 양자 컴퓨터가 개발되더라도 당장 우리가 사용하고 있는 일반 컴퓨터가 모두 무용지물이 되는 것이 아니라 각자의 기술적 효율성이 극대화되는 면에서 서로 돕고 경쟁하는 관계로 출발하리라 예상합니다.

20170228_085625177_48845.jpg


오늘은 양자 정보의 기본 단위인 큐비트를 이용한 양자 정보 처리에 관하여 다뤘는데요. 다음 시간에는 양자 정보 세상을 위해 극복해야 할 기술적 난관에 대하여 알아보도록 하겠습니다.


쉽고 재미있게 전달해드리고 싶은데 어려운 주제를 다루다보니 혹시나 내용을 벅차게 느끼고 계시지는 않을까 걱정이 앞섭니다. 댓글로 질문을 달아주시면 제가 설명할 수 있는 범위에서 최대한 쉽고 간결하게 답변해드리도록 하겠습니다.

다음 Chapter를 소개 합니다.

Chapter 5. 양자 정보 세상을 위해 극복해야 할 기술적 난관

많이 기대해주세요!

12787899-Quantum-Processor-Illustration-Quantum-Computing-Theme-3D-Rendered-Model-of-the-Processor-Supercondu-Stock-Illustration.jpg

지난 이야기


  • 본문에서 사용된 모든 이미지는 구글 이미지에서 가져왔음을 밝힙니다.

# YHH
Sort:  

팔로우하고 읽은 몇몇 글의 퀄리티나 영작이 범상치 않다고 생각했는데 반연리에 계셨네요! 같은 반연리 주민으로서 반갑습니다 ㅋ

반갑습니다 ㅎㅎ 현재 대학원생이신가요? 앞으로 좋은 포스팅 기대하겠습니다~

두고 두고 읽어야 할 것 같아 팔로우 합니다^^

감사합니다. 저도 팔로우 하겠습니다~ 잘 부탁드립니다.

내용이 급격히 어려워진 느낌인데요 ㅠ.ㅠ 꾸역꾸역 읽어가며 이해해보려 하는데 상당히 어렵네요. 그래도 관심 있는 분야였는데 이렇게라도 자세한 글을 읽을 수 있는 기회를 만들어주셔서 감사합니다.

큐비트 개념이 나와서 이번 Chapter 내용이 급격히 어려워진 것 같습니다 ㅎㅎ 이론적인 내용은 최대한 줄이고 핵심만 쉽고 재미있게 전달해드리려고 했지만 양자 정보 처리 내용을 다루려면 꼭 필요한 개념이라 어쩔 수가 없었네요. 다음 Chapter 부터는 다시 쉽게 쉽게 가도록 하겠습니다. 관심 있게 지켜봐주셔서 감사합니다!

양자컴퓨터 하면 qrl이죠 ㅎㅎ

양자 컴퓨터와양자 암호는 서로 엎치락 뒤치락 하는 상보적인 관계이지요. 양자 컴퓨터 개발에 필요한 양자 알고리즘, 양자 프로세서 기술 개발이 그 자체로 양자 암호 기술 발전과도 연관이 있으니까요. 다만, 현재 블록체인 시스템은 그러한 양자 난수 생성 시스템을 사용하지 않기 때문에 만약 양자 암호를 이용하려면 완전히 새로운 형태의 암호화폐들이 개발되어야 하는데요. 말씀해주신 QTUM, QRL 과 같은 양자 컴퓨터 개발에 대비한 신생 화폐들이 선보여지고 있긴 하지만 양자 난수 생성 시스템에 근거한 것이라 진정한 의미에서 대비가 될 수 있는지는 기술적 개발 동향을 지켜봐야 합니다.

두고두고 읽어야 할 글이네요 감사합니다.^^

높게 평해주셔서 감사합니다~ 더 좋은 포스팅 할 수 있도록 노력하겠습니다.

기대하겠습니다.^^

이에 관련된 책이 어떤 게 잇을까요??

관련 논문과 학술 자료를 찾아보고 개인적으로 정리한 것입니다. 별도로 시판되는 책이 있는지는 모르겠습니다

아 그렇군요. 정리를 되게 잘 해놓으셧어요 ㅎㅎ

많이 부족한데 높게 평가해주셔서 감사합니다 ㅎㅎ

Coin Marketplace

STEEM 0.29
TRX 0.13
JST 0.033
BTC 63133.02
ETH 3043.69
USDT 1.00
SBD 3.63