BlockChain
BlockChain - 블록체인 구성요소
char1ey
2023. 4. 25. 21:20
목차 |
1. 블록체인(Block Chain) |
2. 블록헤더(Block Header) |
3. 블록바디(Block Body) |
4. 블록체인 구성요소 |
1. 블록체인(BlockChain)
블록체인은 블록들의 연속으로 구성되어 있다.
각 블록은 이전 블록의 정보와 함께 데이터를 담고 있고,
이전 블록의 정보를 이용해 데이터를 검증하고 보안성을 확보한다.
블록끼리 이전 정보를 매개로 연결되어있어 마치 체인같다하여 블록체인이라 한다.
위의 그림처럼 블록은 블록 헤더, 거래 데이터(블록 바디) 등으로 구성되어 있다.
블록 헤더와 블록 바디에 대해서 자세히 알아보자.
2. 블록 헤더(Block Header)
블록 헤더에는 블록을 설명하는 데이터(메타 데이터)를 포함하여, 각 블록을 식별하는데 사용된다.
블록 헤더는 다음의 정보를 가지고 있다.
버전(Version)
블록의 현재 버전을 나타낸다.
이전 블록의 해시(Previous Block Hash)
이전 블록의 해시값을 나타내며, 이를 통해 블록의 순서를 식별한다.
머클 루트(Merkle Root)
머클 트리의 루트 해시 값, 이 값을 이용해서 블록의 거래 내역의 유효성을 알 수 있다.
타임스탬프(Timestamp)
블록이 생성된 시간을 나타낸다.
난이도(Difficulty)
새 블록이 생성될 때 필요한 작업증명(PoW) 난이도를 나타낸다.
논스(Nonce)
새로운 블록을 생성하기 위한 작업증명(PoW)과정에서 사용되는 임의의 값이다.
위의 값들을 가지고 블록 해시를 만들어 낸다.
블록 해시(Block Hash)
블록 헤더의 정보들을 가지고 블록 해시를 생성한다.
블록의 고유 식별자 역할을 하며, 블록의 내용이 변경되었을 경우 새로운 해시값이 생성된다.
블록 해시값은 블록의 유효성 검증을 할 수 있도록 한다.
3. 블록 바디(Block Body)
블록에 포함된 모든 거래(Transaction) 정보와 기타 데이터를 담고 있는 부분이다.
블록 바디는 다음의 정보를 가지고 있다.
거래 정보(Transaction Data)
블록에 포함된 모든 거래 정보를 담고 있다.
거래 정보는 송금자, 수취인의 주소, 송금액, 수수료 등의 정보를 담고 있다.
거래 카운터(Transaction Counter)
기록된 거래의 수를 나타낸다.
코인 베이스(Coinbase)
블록 생성자에게 지급되는 새로운 코인을 생성하는 거래 정보이다.
코인베이스 거래는 블록의 첫 번째 거래로 포함되며, 새로운 코인을 생성하는데 사용된다.
채굴 성공시 보상으로 지급되는 것을 의미한다.
기타 데이터(Other Data)
블록에 포함된 기타 데이터들을 담고 있다.
4. 블록체인 구성요소
위의 모든 내용을 가지고 블록을 나타내면 다음과 같이 나타낼 수 있다.