블록체인은 어떻게 작동할까
블록체인은 거래를 블록 단위로 묶은 기록으로, 각 블록은 바로 앞 블록에 잠겨 있습니다. 이 잠금 덕분에 오래된 기록을 바꾸기가 매우 어렵습니다. 이 레슨에서는 그 구성 요소를 하나씩 살펴봅니다.
누구나 확인할 수 있는 장부
장부는 거래 목록입니다. 누가 누구에게 얼마를 보냈는지가 적혀 있습니다. 비트코인에서는 풀 노드라고 부르는 독립된 컴퓨터들이 각자 장부 사본을 보관하고, 모든 거래와 블록을 규칙에 따라 확인합니다. 적당한 컴퓨터와 인터넷 연결만 있으면 누구나 노드를 운영할 수 있습니다.
블록
새 거래는 하나의 블록으로 모입니다. 비트코인에서는 평균적으로 약 10분마다 새 블록이 추가됩니다. 각 블록에 담기는 주요 내용은 다음과 같습니다.
- 거래 묶음
- 타임스탬프
- 앞 블록의 지문
해시: 데이터의 지문
이 지문을 해시라고 합니다. 해시는 어떤 데이터로든 계산할 수 있는 일정한 길이의 짧은 코드입니다. 유용한 성질이 세 가지 있습니다.
- 같은 데이터는 항상 같은 해시를 만든다.
- 글자 하나만 바꿔도 완전히 다른 해시가 나온다.
- 해시에서 거꾸로 원래 데이터를 알아낼 수 없다.
비트코인은 SHA-256이라는 해시 함수를 두 번 적용해 씁니다.
체인을 바꾸기 어려운 이유
각 블록에는 앞 블록의 해시가 들어 있어서 블록들이 사슬처럼 이어집니다. 누군가 오래된 블록의 거래를 고쳤다고 해 봅시다. 그 블록의 해시가 바뀌고, 다음 블록은 더 이상 존재하지 않는 해시를 가리키게 되며, 모든 노드가 그 불일치를 알아챕니다.
변경을 유지하려면 공격자는 그 블록과 그 뒤의 모든 블록을 다시 만들어야 합니다. 그것도 나머지 네트워크가 새 블록을 추가하는 속도보다 빠르게요. 레슨 4에서 그 일이 왜 그토록 비싼지 설명합니다.
컨펌
거래가 블록에 담기면 컨펌(확인)이 하나 생깁니다. 그 위로 블록이 하나 쌓일 때마다 하나씩 늘어납니다. 컨펌이 많을수록 결제를 되돌리기 어려워지므로, 많은 서비스는 결제를 최종으로 처리하기 전에 몇 번의 컨펌을 기다립니다. 보통 기준은 6번입니다.
누군가 오래된 블록의 거래 하나를 바꾸면 그 블록의 해시는 그대로일까?
각 블록은 앞 블록의 해시를 담고 있습니다. 오래된 데이터를 바꾸면 그 뒤의 연결이 모두 끊어지고, 네트워크 전체가 알아챕니다.
출처
- Bitcoin developer guide: Block chain
- Bitcoin developer reference: Block headers
- bitcoin.org: Running a full node
- Bitcoin Wiki: Confirmation
2026년 10월 8일에 이 출처들과 사실을 대조했습니다.
이메일로 듣는 강좌
시작을 돕는 짧은 이메일 5통, 그 후에는 한 달에 한 번 새 소식을 보냅니다. 가격 예측도, 과장 광고도 없습니다.