[Blockchan A-Z] 블록체인은 무엇인가?

bolee·2022년 7월 9일
0

Blockchan A-Z

목록 보기
1/33

MODULE 1 - BLOCKCHAIN INTUITION
01. WHAT IS A BLOCKCHAIN?

블록체인은 어디에서 왔는가?

(좌) Stuart Haber & (우) W. Scott Stornetta

위 사진에 나온 두 사람이 블록체인의 개념을 처음으로 소개했다.

하지만 두 사람이 코인 혹은 블록체인이란 용어를 만들지는 않았다.
블록체인이라는 용어는 개념보다는 훨씬 늦게, Satoshi Nakamoto의 논문 이후에 나왔다.

위 두 사람은 Stuart Haber와 W. Scott Stornetta으로 "How to time-stamp a digital document"라는 논문을 1991년에 발표했다.

논문을 살펴보면, 우리가 현재 블록체인이라고 부르는 개념과 블록체인의 특징과 개념의 대부분이 논문에 존재한다는 것을 알 수 있다.

A blockchain is a continuously growing list of records, called blocks, which are linked and secured using cyptography

위키피디아는 블록체인을 지속적으로 증가하는 데이터(즉, 블록이라고 불리는 데이터)를 암호학을 통해 보호하고 연결하는 기술이라고 정의한다.

그리고 이는 이는 매우 일반적인 정의이다.

블록의 구성

<그림 1>

블록은 무엇으로 구성되어 있을까?

  • 블록은 레코드이기 때문에 데이터를 가지고 있다.
  • 이전 해시라고 불리는 값
  • 해시값

해시는 블록의 지문, 또는 데이터의 지문과도 같다
처음 두 개의 요소인 데이터와 이전 해시를 이용해 데이터를 표현하는 숫자를 찾는다.
데이터의 축약형으로 64자의 길이를 가진다.

블록은 고유의 해시값을 가진다.
블록 안에 참조로 포함된 이전 해시는 해당 해시의 바로 앞에 있던 블록의 해시값이다.

블록체인 동작 방법

<그림 2>

여기 블록 1이 있다.
블록체인에서는 첫 번째 블록을 제네시스 블록(genesis block)이라고 한다.
블록체인이 초기화된 후 이 블록은 언제나 첫 번째이기 때문에 제네시스 블록이라고 부른다.
이것은 절대로 바뀌는 경우가 없다. 즉, 이 블록만이 첫 번째 블록이며 다른 블록은 첫 번째가 될 수 없다.

블록에는 데이터가 있을 수 있다.

제네시스 블록이기 때문에 이전 해시는 없다. 이전 해시가 없는 유일한 블록이다. 따라서 이전 해시는 0이라 하자

다음은 블록의 지문이라고 생각할 수 있는 해시값이 존재한다.

<그림 3>

그리고 블록 2가 있습니다. 블록 2에도 어떤 데이터가 있고 이번에는 이전 해시값도 가지며 해시값도 갖을 것이다.

<그림 4>

블록 2의 이전 해시는 블록 1의 해시와 동일하다.
이를 통해 두 블록이 연결되게 된다.

블록체인이라고 불리는 이유는 이 해시값을 통해 블록들이 암호화 링크로 연결되어 있기 때문이다.

개념적으로 이렇게 동작한다.
모든 블록은 각자의 지문을 갖고 있고 이전 블록의 지문을 참조한다. 따라서, 블록 1에 변하면 이것의 지문이 변한다.

즉, 여기 이 데이터에 변화가 있으면, 예를 들어 누군가가 데이터를 조작하면, 지문이 바뀌기 때문에 이 지문과는 더는 매칭되지 않는다.
따라서 이 블록을 보면 누군가가 이 블록을 조작했다는 것을 알 수 있다.

<그림 5>

블록 3에도 이전 해시, 해시가 있고 이는 이전 블록의 해시와 연결된다.
따라서 개념을 생각했을 때, 누군가가 어떤 블록이든 조작하려 하면 이것들의 지문이 더는 매칭되지 않고 체인은 유효하지 않게 됩니다.
그럼 체인 내 무언가가 잘못됐다는 걸 알게 되고, 이것이 블록들이 암호로 연결되었다고 말하는 이유이다.

블록체인에 관해 좀 더 알아보고 싶다면 블록체인의 개념이 처음으로 나왔던 논문을 읽어보길 추천한다.
Stuart Haber & W. Scott Stornetta, (1991). How to Time Stamp a Digital Document

0개의 댓글