"블록바디"의 두 판 사이의 차이
잔글 (→같이 보기) |
|||
3번째 줄: | 3번째 줄: | ||
== 개요 == | == 개요 == | ||
블록바디는 거래정보들로 이루어져 있다. 거래가 일어날 때마다 합의 Consensus 과정을 거쳐서 그 적합성을 판단하고 블록바디에 거래 정보가 기록되기 때문에 실질적으로 블록은 검증된 거래정보들의 집합이라고 볼 수 있다. 하나의 블록에는 여러 개의 거래 정보가 들어가며 비트코인의 경우 한 블록에 1800개의 거래정보가 들어간다. 거래 정보가 가득 차면 새로운 블록을 추가하여 다시 거래 정보를 넣는 방식으로 DB가 구축된다.<ref>비포유, 〈[https://viforyou.com/2019/01/02/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%9B%90%EB%A6%AC-%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%ED%95%98%EB%82%98%EB%B6%80%ED%84%B0-%EC%97%B4%EA%B9%8C%EC%A7%80/ 블록체인 원리 | 블록체인 알고리즘 하나부터 열까지]〉, 《비포유》, 2019-01-02</ref> 블록체인 참여자들(peer)은 해시값을 통해 해당 데이터를 검증할 수 있다. <ref>안지영 연구원, 〈[file:///C:/Users/c671/Downloads/[BIOECONOMYREPORT]%209.%20%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%20%EA%B8%B0%EC%88%A0%EA%B3%BC%20%EB%B0%94%EC%9D%B4%EC%98%A4%ED%97%AC%EC%8A%A4%EC%82%B0%EC%97%85.pdf 블록체인 기술과 바이오헬스산업]〉, 《economy preport - issue 9》, 2018-03</ref> | 블록바디는 거래정보들로 이루어져 있다. 거래가 일어날 때마다 합의 Consensus 과정을 거쳐서 그 적합성을 판단하고 블록바디에 거래 정보가 기록되기 때문에 실질적으로 블록은 검증된 거래정보들의 집합이라고 볼 수 있다. 하나의 블록에는 여러 개의 거래 정보가 들어가며 비트코인의 경우 한 블록에 1800개의 거래정보가 들어간다. 거래 정보가 가득 차면 새로운 블록을 추가하여 다시 거래 정보를 넣는 방식으로 DB가 구축된다.<ref>비포유, 〈[https://viforyou.com/2019/01/02/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%9B%90%EB%A6%AC-%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%ED%95%98%EB%82%98%EB%B6%80%ED%84%B0-%EC%97%B4%EA%B9%8C%EC%A7%80/ 블록체인 원리 | 블록체인 알고리즘 하나부터 열까지]〉, 《비포유》, 2019-01-02</ref> 블록체인 참여자들(peer)은 해시값을 통해 해당 데이터를 검증할 수 있다. <ref>안지영 연구원, 〈[file:///C:/Users/c671/Downloads/[BIOECONOMYREPORT]%209.%20%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%20%EA%B8%B0%EC%88%A0%EA%B3%BC%20%EB%B0%94%EC%9D%B4%EC%98%A4%ED%97%AC%EC%8A%A4%EC%82%B0%EC%97%85.pdf 블록체인 기술과 바이오헬스산업]〉, 《economy preport - issue 9》, 2018-03</ref> | ||
+ | |||
+ | == 블록 == | ||
+ | |||
+ | 앞서 간략하게 설명한 것처럼 블록은 블록체인의 원소 개념으로, 다수의 거래 정보의 묶음을 의미한다. 블록에는 블록의 이름이 있다. 이 이름은 Height(높이)라는 용어로 표현되고 있다. 블록체인을 길게 이어진 수평선으로 보는 것이 아니라 한 칸 한 칸 쌓아나가 탑의 형태로 구성된다고 생각하여 Height(높이)라는 말을 쓴다고 한다. 하지만 이 높이는 정확한 블록의 이름이 아니다. 블록의 정확한 이름은 TXID라 불리는 블록의 해시값이다. 이 블록의 해시값은 블록의 헤더 정보를 모두 합산한 후 SHA256으로 변환된 값이다.<ref name="yahweh87">〈[http://bitly.kr/keYuRL 블록에 관한 정의]〉,《스팀잇》</ref> | ||
+ | |||
+ | ===구성요소=== | ||
+ | |||
+ | *'''블록 해시''' : 블록 해시는 쉽게 '블록'의 이름 정보 이다. 블록 해시는 블록의 헤더 정보인 버전, 이전 블록 해시, 머클 루트, 타임, bits, 논스 정보를 모두 더하여 합을 구한 후 SHA256으로 변환한 결과 값이다. | ||
+ | |||
+ | *'''버전''' : 해당 블록의 버전이다. 현재 이 블록 헤더를 만든 비트코인 프로그램의 버전 정보로 이해하면 된다. | ||
+ | |||
+ | *'''이전 블록 해시''' : 블록체인은 거래 정보의 묶음인 블록이 체인 형태로 연결되어 있다. 이름에서도 직관적으로 알 수 있지만 이전 블록 해시 정보는 이전 블록의 주소 값을 가리키는 요소이다. | ||
+ | |||
+ | *'''머클 루트''' : 머클 루트는 블록의 바디 부분에 저장된 트랜잭션(거래 정보)들의 해시 트리이다. 각 트랜잭션과 가까운 노드 끼리 쌍을 지어 해시 값을 구하여 최종적으로 구해진 해시 값이 머클루트 해시 이다. | ||
+ | 머클루트의 역할은 아래와 같다. | ||
+ | 머클루트(머클해시)값을 통해 단일 블록 내에 존재하는 트랜잭션의 무결성을 검증할 수 있다. | ||
+ | 머클루트(머클해시)값을 이용하여 블록의 해시 값을 생성하였기 때문에 블록의 해시의 무결성도 함께 검증할 수 있다. | ||
+ | 해당 블록이 유효한지에 대한 무결성을 검증하기 위한 요소가 머클루트 혹은 머클해시라는 구성요소이다. | ||
+ | |||
+ | *'''타임''' : 해당 블록의 대략적인 생성 시간을 말한다. 타임 스탬프는 유닉스 기준일 자로 표시되며 1970년 1월 1일 자정부터 경과한 시간을 초 단위로 계산한 값이다. | ||
+ | |||
+ | *'''bits''' : bits는 난이도 해시 목표 값을 의미하는 지표이다. | ||
+ | |||
+ | *'''Nonce''' : Nonce 난스는 블록을 만드는 과정에서 해시 값을 구할 때 필요한 재료 역할을 수행한다.<ref name="yahweh87"></ref> | ||
{{각주}} | {{각주}} | ||
12번째 줄: | 36번째 줄: | ||
* 비포유, 〈[https://viforyou.com/2019/01/02/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%9B%90%EB%A6%AC-%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%ED%95%98%EB%82%98%EB%B6%80%ED%84%B0-%EC%97%B4%EA%B9%8C%EC%A7%80/ 블록체인 원리 | 블록체인 알고리즘 하나부터 열까지]〉, 《비포유》, 2019-01-02 | * 비포유, 〈[https://viforyou.com/2019/01/02/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%9B%90%EB%A6%AC-%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%ED%95%98%EB%82%98%EB%B6%80%ED%84%B0-%EC%97%B4%EA%B9%8C%EC%A7%80/ 블록체인 원리 | 블록체인 알고리즘 하나부터 열까지]〉, 《비포유》, 2019-01-02 | ||
* 안지영 연구원, 〈[file:///C:/Users/c671/Downloads/[BIOECONOMYREPORT]%209.%20%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%20%EA%B8%B0%EC%88%A0%EA%B3%BC%20%EB%B0%94%EC%9D%B4%EC%98%A4%ED%97%AC%EC%8A%A4%EC%82%B0%EC%97%85.pdf 블록체인 기술과 바이오헬스산업]〉, 《economy preport - issue 9》, 2018-03 | * 안지영 연구원, 〈[file:///C:/Users/c671/Downloads/[BIOECONOMYREPORT]%209.%20%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%20%EA%B8%B0%EC%88%A0%EA%B3%BC%20%EB%B0%94%EC%9D%B4%EC%98%A4%ED%97%AC%EC%8A%A4%EC%82%B0%EC%97%85.pdf 블록체인 기술과 바이오헬스산업]〉, 《economy preport - issue 9》, 2018-03 | ||
+ | * yahweh87, 〈[http://bitly.kr/keYuRL 블록에 관한 정의]〉, 《스팀잇》, 2019-04-25 | ||
+ | |||
== 같이 보기 == | == 같이 보기 == |
2019년 7월 31일 (수) 13:41 판
블록바디(block body)는 블록을 구성하는 요소를 구분한 단위 중 하나이다. 각각의 블록은 머리와 몸이라고 할 수 있는 블록헤더와 블록바디로 구성되어 있다. 블록헤더와 블록바디는 서로의 정보를 비교하면서 위변조 가능성을 확인하며 무결성을 높인다. 비트코인의 블록바디에는 여러 개의 트랜잭션과 기타 정보로 구성되어 있다.
개요
블록바디는 거래정보들로 이루어져 있다. 거래가 일어날 때마다 합의 Consensus 과정을 거쳐서 그 적합성을 판단하고 블록바디에 거래 정보가 기록되기 때문에 실질적으로 블록은 검증된 거래정보들의 집합이라고 볼 수 있다. 하나의 블록에는 여러 개의 거래 정보가 들어가며 비트코인의 경우 한 블록에 1800개의 거래정보가 들어간다. 거래 정보가 가득 차면 새로운 블록을 추가하여 다시 거래 정보를 넣는 방식으로 DB가 구축된다.[1] 블록체인 참여자들(peer)은 해시값을 통해 해당 데이터를 검증할 수 있다. [2]
블록
앞서 간략하게 설명한 것처럼 블록은 블록체인의 원소 개념으로, 다수의 거래 정보의 묶음을 의미한다. 블록에는 블록의 이름이 있다. 이 이름은 Height(높이)라는 용어로 표현되고 있다. 블록체인을 길게 이어진 수평선으로 보는 것이 아니라 한 칸 한 칸 쌓아나가 탑의 형태로 구성된다고 생각하여 Height(높이)라는 말을 쓴다고 한다. 하지만 이 높이는 정확한 블록의 이름이 아니다. 블록의 정확한 이름은 TXID라 불리는 블록의 해시값이다. 이 블록의 해시값은 블록의 헤더 정보를 모두 합산한 후 SHA256으로 변환된 값이다.[3]
구성요소
- 블록 해시 : 블록 해시는 쉽게 '블록'의 이름 정보 이다. 블록 해시는 블록의 헤더 정보인 버전, 이전 블록 해시, 머클 루트, 타임, bits, 논스 정보를 모두 더하여 합을 구한 후 SHA256으로 변환한 결과 값이다.
- 버전 : 해당 블록의 버전이다. 현재 이 블록 헤더를 만든 비트코인 프로그램의 버전 정보로 이해하면 된다.
- 이전 블록 해시 : 블록체인은 거래 정보의 묶음인 블록이 체인 형태로 연결되어 있다. 이름에서도 직관적으로 알 수 있지만 이전 블록 해시 정보는 이전 블록의 주소 값을 가리키는 요소이다.
- 머클 루트 : 머클 루트는 블록의 바디 부분에 저장된 트랜잭션(거래 정보)들의 해시 트리이다. 각 트랜잭션과 가까운 노드 끼리 쌍을 지어 해시 값을 구하여 최종적으로 구해진 해시 값이 머클루트 해시 이다.
머클루트의 역할은 아래와 같다. 머클루트(머클해시)값을 통해 단일 블록 내에 존재하는 트랜잭션의 무결성을 검증할 수 있다. 머클루트(머클해시)값을 이용하여 블록의 해시 값을 생성하였기 때문에 블록의 해시의 무결성도 함께 검증할 수 있다. 해당 블록이 유효한지에 대한 무결성을 검증하기 위한 요소가 머클루트 혹은 머클해시라는 구성요소이다.
- 타임 : 해당 블록의 대략적인 생성 시간을 말한다. 타임 스탬프는 유닉스 기준일 자로 표시되며 1970년 1월 1일 자정부터 경과한 시간을 초 단위로 계산한 값이다.
- bits : bits는 난이도 해시 목표 값을 의미하는 지표이다.
- Nonce : Nonce 난스는 블록을 만드는 과정에서 해시 값을 구할 때 필요한 재료 역할을 수행한다.[3]
각주
- ↑ 비포유, 〈블록체인 원리 | 블록체인 알고리즘 하나부터 열까지〉, 《비포유》, 2019-01-02
- ↑ 안지영 연구원, 〈[file:///C:/Users/c671/Downloads/[BIOECONOMYREPORT]%209.%20%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%20%EA%B8%B0%EC%88%A0%EA%B3%BC%20%EB%B0%94%EC%9D%B4%EC%98%A4%ED%97%AC%EC%8A%A4%EC%82%B0%EC%97%85.pdf 블록체인 기술과 바이오헬스산업]〉, 《economy preport - issue 9》, 2018-03
- ↑ 3.0 3.1 〈블록에 관한 정의〉,《스팀잇》
참고자료
- 이은실 기자, 〈(정종기의 블록체인知) 블록체인으로 인해서 바뀌게 될 세상〉, 《일간투데이》, 2019-04-25
- 김원, 〈비트코인 블록체인 동작원리 및 진화〉, 《한국인터넷진흥원》
- 불곰, 〈이더리움 블록과 블록체인〉, 《티스토리》, 2018-08-17
- 비포유, 〈블록체인 원리 | 블록체인 알고리즘 하나부터 열까지〉, 《비포유》, 2019-01-02
- 안지영 연구원, 〈[file:///C:/Users/c671/Downloads/[BIOECONOMYREPORT]%209.%20%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%20%EA%B8%B0%EC%88%A0%EA%B3%BC%20%EB%B0%94%EC%9D%B4%EC%98%A4%ED%97%AC%EC%8A%A4%EC%82%B0%EC%97%85.pdf 블록체인 기술과 바이오헬스산업]〉, 《economy preport - issue 9》, 2018-03
- yahweh87, 〈블록에 관한 정의〉, 《스팀잇》, 2019-04-25
같이 보기