비트코인 타임록 — 열쇠가 있어도 기다려야 하는 이유
비트코인은 서명뿐 아니라 기다림도 요구할 수 있다. BIP65와 BIP112는 나중에 쓸 수 있는 출구를 지출 조건에 넣는 방법, 그리고 기한이 되어도 돈이 저절로 움직이지 않는 이유를 보여 준다.

3줄 퀵 브리핑
- 발단 / 역설BIP65는 특정 시각이나 블록 높이까지 기다리는 조건을 비트코인 지출 스크립트에 넣었다.
- 결정적 사건BIP112는 지출할 출력이 확정된 뒤 얼마나 지났는지를 기준으로 삼는 상대적인 기다림을 더했다.
- 역사적 결말기한이 지나면 다른 지출 경로가 열릴 수 있다. 자동 송금되거나 기존 경로가 반드시 닫히는 것은 아니다.
사건의 흐름 한눈에 보기
피터 토드가 스크립트 수준의 절대 타임록을 명세했다.
BIP112가 출력의 나이에 따라 열리는 지출 경로를 설명했다.
Bitcoin Core 0.11.2에 BIP65 규칙 집행을 위한 지원이 들어갔다. 실제 적용에는 활성화가 필요했다.
예약된 거래만으로는 부족했다
비트코인 지갑 이야기에서 결정적인 것은 대개 열쇠를 가졌느냐다. BIP65는 여기에 질문 하나를 더한다. 아직 쓸 때가 되지 않은 것은 아닐까? 피터 토드가 2014년 10월 1일 제안한 CHECKLOCKTIMEVERIFY는 특정 시각이나 블록 높이에 도달해야 지출 경로를 사용할 수 있게 하는 규칙이다. 이후 Bitcoin Core 0.11.2에 이 규칙을 집행하는 기능이 포함됐다. 해당 버전을 설치하는 것과 합의 규칙이 활성화되는 것은 별개였다.[1][2]
비트코인에는 이미 특정 거래가 블록에 들어갈 수 있는 때를 늦추는 nLockTime 필드가 있었다. 그러나 거래 하나를 미뤘다고 그 돈이 먼저 움직일 수 없다는 보장이 생기지는 않았다. 같은 출력을 쓰는 다른 거래에 서명할 수 있는 사람은 기다림을 빼버릴 수도 있었다. BIP65는 조건을 출력을 지키는 스크립트에 넣었다. 그 경로로 지출하려는 거래라면 스스로 기다리겠다고 선택하는 수준을 넘어 정해진 시간 조건을 충족해야 했다.[1]
나중에 열리는 출구
제안서의 예를 보면 차이가 분명해진다. 평소에는 사용자와 서비스 양쪽의 서명이 필요한 지갑을 생각해 보자. 두 번째 경로는 사용자 서명만 요구하되 정해진 기한 뒤에 열리도록 만들 수 있다. 이는 BIP의 설계 예시이지 모든 지갑에 이런 복구 기능이 있다는 뜻은 아니다. 기한 전에는 사용자가 혼자 이 경로를 쓸 수 없지만, 기한 뒤에는 서비스가 응답하지 않아도 자금이 계속 묶일 필요가 없다.[1]
타임록은 시간이 되면 송금을 전파하는 알람이 아니다. 해당 서명과 출력을 실제로 지출하는 거래가 여전히 필요하다. 늦게 열리는 경로가 생겼다고 협력 경로가 자동으로 닫히지도 않는다. 예시에서는 출력이 아직 지출되지 않았다면 기한 뒤에도 사용자와 서비스가 함께 지출할 수 있다. 달라지는 것은 허용되는 행동이지 반드시 일어날 행동이 아니다.[1]
시계는 언제부터 움직일까
절대적인 기준점이 항상 적합한 시계는 아니다. BtcDrak, 마크 프리덴바흐, 에릭 롬브로조가 2015년 8월 제안한 BIP112는 CHECKSEQUENCEVERIFY를 설명한다. BIP68과 함께 쓰면 출력이 일정한 나이에 이를 때까지 기다리게 할 수 있다. 제안서의 에스크로 예시는 자금을 넣는 거래가 확정된 때부터 시간을 센다. 입금 전부터 계속 다가오는 고정된 날짜를 정하는 것과 다르다.[3]
여기서 시계는 비트코인의 규칙으로 정의된다. 블록 개수를 셀 수도 있고, 시간 기준 타임록은 휴대전화 시계가 아니라 BIP113의 최근 블록 타임스탬프 중앙값 같은 블록체인 시간 규칙을 따른다. BIP112는 채널의 상대방이 오래된 약정에 대응할 시간을 지연으로 확보하는 방법도 설명한다. 기다림의 목적은 돈을 얼리는 데 그치지 않는다. 상대에게 행동할 시간을 주거나 나중의 출구를 남기면서도, 그 출구를 쓸 사람은 여전히 서명으로 가린다.[3][4]
이 인물 & 사건과 연결된 또 다른 이야기
역사의 나비효과로 이어진 블록체인 비하인드 스토리를 계속해서 탐험해 보세요.
출처 및 참고 자료
- [1]출처 1: BIP65: 절대 타임록의 동기와 지갑 예시Bitcoin BIPs · 2014-10-01확인 2026-09-25
- [2]출처 2: Bitcoin Core 0.11.2: BIP65 지원과 활성화Bitcoin Core · 2015-11-13확인 2026-09-25
- [3]출처 3: BIP112: 상대 타임록·에스크로·결제 채널Bitcoin BIPs · 2015-08-10확인 2026-09-25
- [4]출처 4: BIP113: 타임록 계산에 쓰는 과거 시간 중앙값Bitcoin BIPs · 2015-08-10확인 2026-09-25

