본 글은 비트코인의 작동 원리를 이해하기 쉽게 설명해 놓은 해외 사이트 Learn me a bitcoin 내에 있는 Block Header 페이지를 번역한 글입니다. 읽은 것을 개인적으로 이해하기 쉽게 정리하여 작성한 글이다 보니, 어색한 부분이 있을 수도 있습니다. 원문을 읽고자 하시는 분은 위의 링크를 참조해 주세요. 😀
What is Block Header?
블록 헤더는 트랜잭션이 담겨있는 블록의 맨 위에 있는 메타데이터와 같습니다.
블록 헤더에 있는 필드들은 전체 블록에 대한 요약 정보를 제공합니다.
Example
123,456번 블록의 블록 헤더 예시
(위의 링크를 통해 들어가서 보시면 필드별로 상세하게 볼 수 있습니다.)
010000009500c43a25c624520b5100adf82cb9f9da72fd2447a496bc600b0000000000006cd862370395dedf1da2841ccda0fc489e3039de5f1ccddef0e834991a65600ea6c8cb4db3936a1ae3143991
Fields
Field 이름 | 내용 |
Version | 블록의 버젼 |
Previous Block Hash | 바로 직전 블록의 블록 해시값. 이 필드로 인하여 이전 블록과 현재 블록이 연결하여 블록체인 구조를 형성합니다. |
Merkle Root | 블록의 모든 트랜잭션을 다합쳐 해시한 값. 즉, 이 블록의 모든 트랜잭션들에 대한 한 줄 요약이라고 할 수 있습니다. |
Time | 이 블록이 채굴될 때, 블록 헤더를 해시하는 시점이 Unix Time으로 블록 헤더 자체적으로 기록됩니다. |
Bits | 목표값(Target)의 짧은 축약값입니다. |
Nonce | 채굴자가 채굴 과정중에 목표값(Target)보다 낮은 블록 해시를 얻기 위해 임의로 변경하는 값(더미 데이터)입니다. |
데이터 구조
Field 이름 | Size | Data |
Version | 4 bytes | Little-endian |
Previous Block Hash | 32 bytes | Little-endian |
Merkle Root | 32 bytes | Little-endian |
Time | 4 bytes | Little-endian |
Bits | 4 bytes | Little-endian |
Nonce | 4 bytes | Little-endian |
'블록체인 > 비트코인' 카테고리의 다른 글
비츠(Bits) (0) | 2023.04.07 |
---|---|
머클 루트 (Merkle Root) (0) | 2023.04.07 |
블록(Blocks) (0) | 2023.04.07 |
후보 블록(Candidate Block) (0) | 2023.04.07 |
메모리 풀 (Memory pool) (0) | 2023.04.07 |