전체 메뉴

[쉽게아는 블록체인] 블록체인이란? 블록과 체인!?

이승훈 기자 승인 2018.11.13 14:04 의견 0

블록체인은 블록과 체인이 결합된 말입니다. 따라서 블록과 체인의 뜻을 알면 블록체인의 뜻을 알 수 있습니다.

블록이란 ①데이터②해시(hash), ③이전 블록의 해시로 구성된 하나의 뭉치입니다.

①데이터는 돈을 보낸 사람의 정보, 돈을 받는 사람의 정보, 송금 금액 정보로 구성돼 있습니다.

②해시란 데이터에 붙어 있는 일종의 전자 지문입니다. 지문은 수십억명 중에 똑같은 지문을 가진 사람은 없다고 합니다. (실제로는 사람의 지문은 640억 분의 1로 같은 지문을 가진 사람이 있을 수 있다고 합니다.)

즉 해시를 통해 거래와 관련된 송수신자,금액 등의 정보가 기록된 데이터 뭉치가 오직 하나 뿐인 표식을 넣어서 그 데이터 뭉치가 특정된 고유의 데이터 뭉치로 만듭니다.

③그런데 이 해시는 두 가지 종류의 해시가 있습니다. 해당 블록의 해시값, 이전 블록의 해시값입니다. 이 두 가지 종류의 해시가 한 블록에 지문처럼 붙어 있습니다.

한 번 거래가 일어났을 때 그에 관한 데이터가 기록된 블록이 있을 때, 그를 바탕으로 다시 추가적인 거래가 일어났을 때 그 데이터가 기록된 새로운 블록이 있습니다.


이 새로운 블록에는 그 블록의 해시값과 함께 이전 블록의 해시값이 지문처럼 붙어 있습니다.

새로운 블록에 붙어 있는 이전 블록의 해시값은 이전블록의 해시값과 연결돼 있습니다. 이렇게 블록이 연결돼 있다고 해서 ‘블록체인’이라는 이름을 가지게 됩니다.

해당블록의 해시값은 이전 블록의 해시값에 연결되고 그 이전 블록의 해시값은 그 이전 이전 블록의 해시값에 연결되면서 블록체인이 계속 기록을 쌓아나갑니다.

여기서 어떤 단계의 블록을 기록을 조작해서 새로운 블록을 만들려고 하는 사람은 해당블록만 조작해서는 즉 해당블록의 데이터를 조작하고 그 블록의 해시값을 조작해서는 조작의 목적, 즉 참여자들을 속이기를 달성할 수 없습니다.

그 이전단계의 해시값을 조작해야 하고 그 이전 단계의 해시값을 조작하려면 그 이전&이전 단계의 해시값까지 조작해야 합니다. 그렇게 모든 해시값을 조작하는 것은 여간 번거롭고 힘든 것이 아닙니다.

거래정보를 기록한 블록을 체인처럼 만들어 연결하면 이처럼 위변조가 매우 어려워지는 효과를 볼 수 있습니다.

...에필로그...

이상으로 블록체인을 블록과 체인으로 나눠서 기본적인 개념을 설명 드렸는데요, 여기에는 위변조를 막는 두 가지 장치가 더 있습니다.

바로 해시함수와 분산시스템입니다. 해시 값을 도출하는 해시함수는 일방향으로 계산은 쉽지만 역방향의 계산은 매우 어려운 함수입니다. 그래서 이전의 해시값을 찾아내기가 매우 어렵습니다. 이렇게 해시함수를 이용해 해시값을 도출해 기록하는 장치가 있습니다.

또 하나의 장치는 이러한 블록체인을 참여자 각자에게 모두 가지도록 분산시킵니다. 이렇게 되면 모든 참여자의 모든 블록에서 51%이상을 위변조 해야 위변조의 목적을 달성할 수 있습1니다. 아무리 컴퓨터가 성능이 발달한다고 해도 사실상 불가능한 일입니다. 위변조를 시도하려는 순간에도 거래는 일어나고 새 블록이 체인으로 연결됩니다.

중앙집중식으로 중앙에서 거래정보를 기록해서 관리하는 경우 중앙을 뚫어서 거래정보를 조작하는 것보다 훨씬 조작이 어렵습니다.

<저작권자 ⓒ시사N라이프> 출처와 url을 동시 표기할 경우에만 재배포를 허용합니다.