조상 채굴 (Ancestor Mining)

중급블록체인수정일

조상 채굴(Ancestor mining)은 채굴자가 블록에 넣을 트랜잭션을 고를 때, 각 트랜잭션의 자체 수수료율이 아니라 아직 확인되지 않은 조상(부모, 조부모 …) 트랜잭션까지 합친 묶음의 수수료율로 평가하는 방식입니다. 비트코인 코어는 0.13.0(2016년)에서 이 방식을 기본 거래 선택 알고리즘으로 도입했고, 2026년 4월 31.0부터는 이를 발전시킨 클러스터 멤풀 방식으로 대체했습니다.

자세히 알아보기

비트코인에서 자식 트랜잭션은 부모 트랜잭션의 출력을 입력으로 쓰기 때문에, 부모가 블록에 들어가지 않으면 자식도 들어갈 수 없습니다. 예전 방식처럼 개별 수수료율만 보면, 수수료가 낮은 부모는 계속 뒤로 밀리고 그 뒤에 붙은 고수수료 자식도 함께 묶여 버립니다.

조상 채굴에서는 후보 트랜잭션마다 "자신 + 미확인 조상 전체"의 수수료 합을 크기(vbyte) 합으로 나눈 조상 수수료율(ancestor feerate)을 계산합니다. 채굴자는 이 값이 높은 묶음부터 블록에 넣고, 이미 포함된 조상은 이후 계산에서 빼 줍니다. 이렇게 하면 저수수료 부모와 고수수료 자식을 한 번에 넣는 것이 수익이 더 클 때 이를 제대로 반영할 수 있습니다.

조상 수수료율은 탐욕적(greedy) 근사로, 항상 수익이 가장 큰 조합을 찾는 것은 아닙니다. 이를 개선하기 위해 비트코인 코어 31.0은 서로 연결된 거래 묶음(클러스터)을 통째로 분석해, 함께 채굴될 묶음(청크)의 수수료율로 순서를 매기는 클러스터 멤풀(cluster mempool)을 도입했습니다.

이 방식이 도입되기 전에는 채굴자가 개별 수수료율 순으로만 거래를 골랐기 때문에, 저수수료 부모에 묶인 고수수료 자식이 오래 대기하는 일이 흔했습니다. 비트코인 코어는 지나치게 긴 거래 사슬이 멤풀 계산을 무겁게 만드는 것을 막기 위해 미확인 조상·자손 묶음의 개수와 크기에 상한을 두었고, 31.0부터는 이를 클러스터당 거래 64개·101kvB 상한으로 바꾸었습니다.

블록체인·암호화폐에서는

조상 채굴은 사용자 쪽 기법인 CPFP(Child Pays For Parent)를 가능하게 하는 채굴자 쪽 짝입니다. 수수료를 너무 낮게 보내 멈춘 거래가 있으면, 받는 사람이나 보낸 사람이 그 출력을 쓰는 자식 거래를 높은 수수료로 만들어 부모까지 함께 확인되게 할 수 있습니다. 비트코인 외에도 UTXO 모델을 쓰는 일부 체인이 비슷한 정책을 씁니다.

쉽게 말하면

택배 두 상자가 묶여 있어 같이만 실을 수 있다면, 각 상자의 운임이 아니라 두 상자를 합친 운임을 보고 실을지 결정하는 것입니다.

예시

부모: 수수료 200 sat, 크기 200 vB(1 sat/vB). 자식: 수수료 2,800 sat, 크기 200 vB. 자식의 조상 수수료율은 (200+2,800)/(200+200) = 7.5 sat/vB로, 7.5 sat/vB 미만 거래보다 먼저 두 거래가 함께 블록에 들어갑니다.

이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.