비트코인 버클리DB 체인 분기 사고
사건표준Bitcoin Berkeley DB chain fork incident
다른 이름 Bitcoin Berkeley DB chain fork incident · 2013년 3월 체인 분기 사고 · BIP 50 incident · March 2013 chain fork · 블록 225430 사고
비트코인 버클리DB 체인 분기 사고(Bitcoin Berkeley DB chain fork incident)는 2013년3월11일 비트코인 소프트웨어 0.8 버전과 이전 버전 사이의 데이터베이스 처리 방식 차이 때문에 블록체인이 약 6시간 동안 두 갈래로 갈라진 사건이다. 악의적 공격이 아니라 소프트웨어 업그레이드 과정에서 발견되지 못한 결함이 원인이었다는 점에서, 초기 비트코인 네트워크의 기술적 취약함을 보여준 사례로 꼽힌다.
1.블록 225,430의 분기#
비트코인 0.8 버전은 기존에 쓰던 버클리DB(Berkeley DB) 대신 리브엘DB(LevelDB)로 데이터베이스 엔진을 바꾸면서, 버클리DB에 있던 약 1만 개의 잠금(lock) 상한을 그대로 옮기지 못했다. 2013년3월11일 블록 225,430번이 이 상한을 넘는 대형 거래를 담아 채굴되자, 0.8 버전 노드는 이를 정상 처리했지만 그 이전 버전 노드는 거부했다. 그 결과 두 버전의 노드가 서로 다른 체인을 따라가는 분기가 발생했다. 분기 시점에는 구버전 체인이 채굴력의 약 60%를 쥐고 있어 자동으로는 봉합되지 않았다.
[1][2]2.자발적 다운그레이드로 봉합#
사태를 수습하기 위해 주요 채굴 풀 BTC길드와 슬러시풀이 0.8에서 0.7로 노드를 되돌려 구버전 체인을 따르는 데 합의했고, 이로써 단일 체인이 복원됐다. 이후 곧바로 배포된 0.8.1 버전은 블록당 참조 가능한 거래 입력 수를 4,500개로 임시 제한하는 규칙을 넣어 2013년5월15일까지 한시적으로 적용했다. 이 사고는 소프트웨어 구현의 사소한 차이가 네트워크 전체의 합의(컨센서스)를 흔들 수 있음을 실제로 보여준 초기 사례로 남았고, 이후 비트코인 코어 개발진이 프로토콜 규칙 변경을 더 신중하게 검토하고 여러 구현체 사이의 호환성을 사전에 점검하는 절차를 강화하는 계기가 됐다.
[3]3.연표1건
- 2013.03사건버전 호환성 결함으로 비트코인 체인 약 6시간 분기
각주
- [1]BIP 50: March 2013 Chain Fork Post-Mortem — bips.dev · Bitcoin Improvement Proposals
- [2]Bitcoin Network Shaken By Blockchain Fork — bitcoinmagazine.com · Bitcoin Magazine
- [3]bips/bip-0050.mediawiki — github.com · GitHub (bitcoin/bips)
이 문서가 도움이 됐나요?
토큰포스트 위키, “비트코인 버클리DB 체인 분기 사고”, 2026-09-28 수정, https://wiki.tokenpost.kr/w/bitcoin-berkeleydb-fork-2013Accept: text/markdown 로 요청해도 같은 결과문단 2개 · 연표 1건 · 각주 3개