CoindayLive Crypto · Daily
DeFi·NFT2026-09-2119분 읽기

📈 비트코인 발행량을 코어 코드대로 끝까지 더하면 2,100만개에서 0.0231개가 빠져요

비트코인 발행량 상한이 2,100만 개라는 문장은 어디에나 있는데, 그 숫자가 코드의 어느 줄에서 나오는지는 따로 물어볼 수 있는 질문이에요. Bitcoin Core 소스의 보조금 함수와 반감기 간격 상수와 상한 상수를 직접 받아, 코드가 블록마다 더하는 금액을 사토시 정수로 끝까지 합산했어요. 합계는 20,999,999.9769 BTC 였고 상한 상수와의 차이는 정확히 2,310,000 사토시, 즉 0.0231 BTC 였어요. 이 차이는 정수 우시프트 절삭분과 33회차 이후 꼬리 두 갈래로 정확히 갈려요. 오늘 높이 967,951 기준으로 남은 발행량과 다음 반감기까지의 블록 수도 같은 식으로 계산했어요. 날짜 예측이나 가격 전망은 다루지 않아요. 매매 권유가 아닌 정보 제공 글입니다.

Coinday 편집팀Live Crypto · Daily

CoinGecko · CoinMarketCap · TradingView · DefiLlama · 글로벌·국내 거래소 공식 자료를 교차 검증해 코인 시장 정보를 정리합니다. 특정 코인 매수·매도 권유가 아닙니다.

2026-09-2119분편집 정책 →

「비트코인은 2,100만 개까지만 발행돼요.」 거래소 소개 페이지에도, 입문서 첫 장에도 거의 같은 문장이 들어가 있어요. 그런데 그 2,100만이라는 숫자가 코드의 어느 줄에서 나오는지, 그리고 코드가 블록마다 실제로 더하는 금액을 끝까지 합산하면 그 숫자가 나오는지는 따로 물어볼 수 있는 질문이에요.

Bitcoin Core 소스에서 발행량을 정하는 자리는 세 곳이에요. 블록 보조금을 계산하는 함수 하나, 반감기 간격 상수 하나, 상한 상수 하나. 세 파일을 직접 받아서 코드가 더하는 금액을 사토시 정수로 끝까지 합산했어요.

결론부터 적을게요. 코드가 더하는 합계는 20,999,999.9769 BTC예요. 상한 상수는 21,000,000 BTC 니까 차이는 2,310,000 사토시, 즉 0.0231 BTC예요. 어림값이 어긋난 게 아니라 두 갈래로 정확히 분해되는 숫자예요.

짙은 회색 천 위에 놓인 작은 은색 금속 구슬들을 가까이서 찍은 사진. 왼쪽에서 들어온 빛이 구슬의 둥근 면에 작은 흰 점을 만들고 뒤쪽은 흐리게 번진다

조회일은 2026년 9월 21일이에요. 이 글은 반감기의 4년 주기 해설도, 가격 전망도, 채굴 수익성도 다루지 않아요. 다루는 것은 「코드가 더하는 합계가 상한 상수와 다르다」는 산수 하나예요. 2,100만이라는 숫자가 무슨 뜻인지부터 알고 싶은 분이라면 비트코인과 사토시 단위, 2,100만 개 상한을 기초부터 정리한 글을 먼저 보셔도 좋아요.

발행량을 정하는 코드는 여섯 줄이에요

보조금을 정하는 함수는 src/validation.cpp 안에 있어요. 실행되는 줄만 보면 여섯 줄이에요.

CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams)
{
    int halvings = nHeight / consensusParams.nSubsidyHalvingInterval;
    // Force block reward to zero when right shift is undefined.
    if (halvings >= 64)
        return 0;

    CAmount nSubsidy = 50 * COIN;
    // Subsidy is cut in half every 210,000 blocks which will occur approximately every 4 years.
    nSubsidy >>= halvings;
    return nSubsidy;
}

읽는 순서대로 뜯어 볼게요. 먼저 블록 높이를 반감기 간격으로 나눠서 몇 번째 구간인지를 정수로 구해요. 그 값이 64 이상이면 0 을 돌려주고 끝나요. 아니면 50 BTC 에서 시작해서 구간 번호만큼 오른쪽으로 시프트해요.

여기서 제일 중요한 한 줄이 마지막 시프트예요. 반으로 줄이는 연산이 나눗셈이 아니라 정수 우시프트거든요. 금액의 단위는 사토시 정수이고, CAmount 는 64비트 정수형이에요. 그래서 나눠서 소수점이 생기는 순간 그 소수부는 반올림되지 않고 버려져요. 이 한 줄이 뒤에서 볼 0.0231 BTC 의 대부분을 만들어요.

금액 단위는 src/consensus/amount.h 에 있어요.

inline constexpr CAmount COIN{100'000'000};
inline constexpr CAmount MAX_MONEY{21'000'000 * COIN};

1 BTC 가 100,000,000 사토시니까 50 * COIN 은 5,000,000,000 사토시예요. 그리고 상한 상수는 2,100,000,000,000,000 사토시예요.

반감기 간격 210,000 은 체인마다 적혀 있어요

nSubsidyHalvingInterval 이라는 이름의 값이 src/kernel/chainparams.cpp 에 다섯 번 대입돼요. 체인별로 적어 두는 구조라 값이 다를 수 있는데, 실제로 다른 건 하나뿐이었어요.

체인반감기 간격
메인넷210,000
테스트넷3210,000
테스트넷4210,000
시그넷210,000
레그테스트150

레그테스트는 개발자가 로컬에서 체인을 직접 굴려 보는 환경이에요. 간격이 150 이면 반감기를 몇 초 안에 여러 번 지나가게 만들 수 있어서, 반감기 관련 동작을 시험하기 쉬워요. 이 글의 합산은 전부 메인넷 값 210,000 으로 했어요.

Notice

투자 정보 안내

본 글은 암호화폐 시장에 대한 객관 데이터·정보 제공 목적이며, 특정 코인 매수·매도 권유가 아닙니다. 암호화폐는 변동성이 매우 크고 원금 전액 손실이 가능하므로 본인 판단과 책임 하에 결정하세요.

⚡ 내 포지션 점검 — 레버리지별 청산가 계산기로 확인해 보기

상한 상수는 발행 총량이 아니라고 코드가 직접 적어 뒀어요

여기서 흥미로운 건, 2,100만이 적혀 있는 파일이 그 숫자의 성격을 먼저 밝혀 뒀다는 점이에요. MAX_MONEY 바로 위 주석에 이렇게 적혀 있어요.

Note that this constant is not the total money supply, which in Bitcoin currently happens to be less than 21,000,000 BTC for various reasons, but rather a sanity check.

이 상수는 발행 총량이 아니고, 여러 이유로 실제 총량은 2,100만 BTC 보다 적다고, 이건 온전성 검사용 한도라고 적어 둔 거예요. 같은 주석은 이 상수가 합의에 직접 영향을 주는 값이어서 값을 고치면 체인이 갈릴 수 있다고도 덧붙여요. 그러니까 코드는 처음부터 「상한」과 「합계」를 구분해 두고 있었어요. 이 글은 그 주석이 말한 차이를 숫자로 재 보는 거예요.

보조금이 0 이 되는 건 33번째 구간이에요

함수에 64 라는 숫자가 있으니 「64번 반감기가 지나면 채굴이 끝난다」로 읽는 설명이 자주 보여요. 그런데 사토시 정수로 따라가면 훨씬 앞에서 0 이 돼요. 보조금이 한 자리 수로 내려가는 구간을 적어 보면 이래요.

반감기 회차시작 블록코드가 주는 보조금
296,090,0009 사토시
306,300,0004 사토시
316,510,0002 사토시
326,720,0001 사토시
336,930,0000 사토시

1 사토시를 오른쪽으로 한 번 더 시프트하면 0 이에요. 그래서 보조금이 0 이 되는 첫 블록은 6,930,000번이고, 보조금이 붙는 구간은 0회차부터 32회차까지 33구간이에요. 함수의 64 이상 조건이 가리키는 블록은 13,440,000번인데, 보조금은 그보다 6,510,000블록 앞선 자리에서 이미 0 이 되니 이 조건은 실제 체인에서 밟히는 자리가 아니라 우시프트가 정의되지 않는 경우를 막는 방어선이에요. 주석에도 오른쪽 시프트가 정의되지 않을 때 보상을 0 으로 강제한다고만 적혀 있어요.

끝까지 더한 합계는 20,999,999.9769 BTC 예요

구간마다 블록 210,000개가 같은 보조금을 받으니 합산은 단순해요. 앞 여섯 구간과 전체를 적으면 이래요.

반감기 회차블록 보조금구간 발행량
050 BTC10,500,000 BTC
125 BTC5,250,000 BTC
212.5 BTC2,625,000 BTC
36.25 BTC1,312,500 BTC
43.125 BTC656,250 BTC
51.5625 BTC328,125 BTC
0회차부터 32회차까지20,999,999.9769 BTC

앞 네 구간만 더해도 19,687,500 BTC 로 전체의 93.75퍼센트예요. 반감기가 등비수열이라 앞쪽에 몰리는 구조이고, 뒤쪽 29구간이 나머지 6.25퍼센트를 나눠 가져요.

사토시 정수로는 합계가 2,099,999,997,690,000 사토시예요. 상한 상수 2,100,000,000,000,000 사토시에서 2,310,000 사토시가 모자라요.

2,310,000 사토시는 두 갈래로 정확히 갈려요

이 차이가 왜 생기는지 보려면, 먼저 절삭이 없는 이상적인 합계를 구해 보면 돼요. 50 BTC 에서 시작해 210,000블록마다 정확히 절반이 되는 값을 무한히 더하면, 등비수열 합이라 처음 구간 발행량의 두 배가 돼요. 50 × 210,000 × 2 = 21,000,000 이에요. 상한 상수의 2,100만이라는 깔끔한 숫자는 여기서 나온 거예요.

그러니까 실제 코드가 그 값에 못 미치는 이유는 둘뿐이에요. 소수점을 버리는 것과, 무한히 더하지 않고 멈추는 것이에요.

빠지는 자리금액
정수 우시프트로 버려지는 소수부2,065,527.82 사토시
33회차 이후 지급되지 않는 꼬리244,472.18 사토시
합계2,310,000 사토시

두 값을 분수로 정확히 계산해서 더하면 반올림 없이 2,310,000 사토시로 딱 맞아요. 꼬리 쪽은 계산이 아주 단순한데, 33회차 이후 이상적인 발행량은 1,050,000,000,000,000 사토시를 2의 32제곱으로 나눈 값이고 그게 244,472.1758 사토시예요. 절삭 쪽이 꼬리보다 여덟 배 이상 커요. 「마지막 비트코인을 못 캐서 모자라다」는 설명보다 「블록마다 사토시 소수부를 버려서 모자라다」는 쪽이 사실에 가까워요.

Notice

투자 정보 안내

본 글은 암호화폐 시장에 대한 객관 데이터·정보 제공 목적이며, 특정 코인 매수·매도 권유가 아닙니다. 암호화폐는 변동성이 매우 크고 원금 전액 손실이 가능하므로 본인 판단과 책임 하에 결정하세요.

⚡ 내 포지션 점검 — 레버리지별 청산가 계산기로 확인해 보기

절삭이 처음 생기는 자리는 반감기 10회차예요

절삭은 처음부터 생기지 않아요. 50 BTC 를 사토시로 쓰면 5,000,000,000 사토시이고, 이 수를 소인수로 쪼개면 2^9 × 5^10 이에요. 2 가 아홉 개뿐이라서 아홉 번까지는 나누어떨어지고 열 번째에서 남아요.

그래서 절삭이 처음 생기는 구간은 반감기 10회차, 블록 2,100,000번부터예요. 이 구간의 정확한 보조금은 4,882,812.5 사토시인데 코드는 4,882,812 사토시를 줘요. 블록마다 0.5 사토시가 사라지고, 구간 전체로는 105,000 사토시가 사라져요.

구간별로 사라지는 양은 계속 줄어드는 게 아니에요. 버려지는 값이 그 구간 보조금의 이진 소수부라서 회차마다 오르내려요.

반감기 회차정확한 보조금코드가 주는 보조금구간에서 사라지는 양
104,882,812.5 사토시4,882,812 사토시105,000 사토시
13610,351.5625 사토시610,351 사토시118,125 사토시
1738,146.97265625 사토시38,146 사토시204,257.8 사토시
2674.50580596 사토시74 사토시106,219.3 사토시
321.16415321 사토시1 사토시34,472.2 사토시

제일 많이 사라지는 구간은 17회차로 204,257.8 사토시예요. 이 표는 전체 23개 구간 가운데 다섯 개만 뽑은 것이고, 10회차부터 32회차까지 전부 더한 값이 앞에서 본 2,065,527.82 사토시예요. 9회차까지는 절삭이 0 이에요.

오늘 높이 967,951번에서 남은 발행량

같은 계산을 지금 높이에 적용해 볼게요. 2026년 9월 21일에 확인한 체인 팁 높이는 967,951번이었어요. 서로 무관한 공개 API 두 곳에 각각 물어서 같은 값을 받았어요.

이 높이는 반감기 4회차 구간, 즉 블록 840,000번부터 1,049,999번까지 사이예요. 그래서 지금 블록 보조금은 3.125 BTC 예요.

항목
0회차부터 3회차까지 완료분19,687,500 BTC
4회차 구간 누적분399,850 BTC
제네시스 블록부터 누적 발행20,087,350 BTC
코드 합계에 대한 비율95.654퍼센트
남은 발행량912,649.9769 BTC
남은 비율4.346퍼센트

4회차 구간 누적분은 3.125 BTC 에 블록 127,952개를 곱한 값이에요. 제네시스 블록을 포함해 세니까 967,951에서 840,000을 빼고 1을 더한 개수예요.

다음 반감기가 시작되는 블록은 1,050,000번이고, 남은 블록은 82,049개예요. 날짜는 적지 않을게요. 블록 간격 10분은 목표값이고 실제 간격은 난이도 조정으로 사후에 맞춰지는 값이거든요. 굳이 곱해 보면 820,490분, 569.8일이 나오지만 이건 가정 하나가 들어간 참고치예요. 실제 간격이 어떻게 흔들리는지는 난이도 조정 주기를 블록 수로 직접 재 본 글에 적어 뒀어요. 반감기 자체의 구조가 궁금하시면 반감기와 블록 보조금을 기초부터 정리한 글이 있어요.

이 합계조차 상한이에요

지금까지 구한 20,999,999.9769 BTC 는 「코드가 더하는 금액」이에요. 실제로 쓸 수 있는 양은 이보다 또 적은데, 그중 일부는 코어 소스가 직접 표시해 두고 있어요.

첫째는 제네시스 블록이에요. 블록을 체인에 연결하는 함수 안에 이런 주석과 함께 특수 처리가 들어 있어요.

Special case for the genesis block, skipping connection of its transactions (its coinbase is unspendable)

제네시스 블록은 트랜잭션 연결을 건너뛰고, 그 코인베이스는 쓸 수 없다고 적어 둔 거예요. 그래서 이 50 BTC 는 합계에는 들어가지만 지갑으로는 나오지 않아요.

둘째는 코인베이스가 겹친 블록 두 개예요. 코어에는 쓸 수 없는 블록인지 판정하는 함수가 따로 있고, 그 안에 높이 91,722번과 91,812번이 하드코딩돼 있어요. 같은 파일의 다른 주석은 이 두 쌍에서 어떤 일이 있었는지 이렇게 적어요.

by the time BIP34 activated, in each of the existing pairs the duplicate coinbase had overwritten the first before the first had been spent.

나중 코인베이스가 앞선 것을 덮어썼고, 덮이기 전에 앞선 것은 쓰이지 않았다는 뜻이에요. 두 블록 다 보조금이 50 BTC 인 0회차 구간이에요.

코드가 쓸 수 없다고 표시한 것금액
제네시스 블록 코인베이스50 BTC
높이 91,722번 코인베이스50 BTC
높이 91,812번 코인베이스50 BTC
합계150 BTC

이 150 BTC 를 빼면 20,999,849.9769 BTC 가 돼요. 다만 이건 코드가 표시해 준 것만 뺀 값이에요. 잃어버린 키나 소각 주소로 보낸 코인은 코드가 알 수 없는 영역이라 이 글에서는 세지 않았어요.

이 글이 재지 않은 것

범위를 분명히 적어 둘게요.

자주 묻는 질문 (FAQ)

Q. 비트코인 발행량은 정확히 2,100만 개인가요?

코드가 더하는 금액을 끝까지 합산하면 그보다 조금 적어요. 사토시 정수로 2,099,999,997,690,000 사토시, 즉 20,999,999.9769 BTC 예요. 상한 상수는 2,100,000,000,000,000 사토시라서 차이가 2,310,000 사토시 생겨요. 그리고 그 상수가 적힌 파일 자체가 이건 발행 총량이 아니라 검사용 한도라고 밝혀 뒀어요. 2,100만은 틀린 숫자가 아니라 상한이에요.

Q. 0.0231 BTC 는 왜 생기나요?

정수 절삭 약 2,065,527.82 사토시와 33회차 이후 꼬리 약 244,472.18 사토시가 합쳐진 값이에요. 분수로 정확히 계산해 더하면 2,310,000 사토시로 딱 맞아요. 절삭 쪽이 여덟 배 이상 크다는 점이 포인트예요.

Q. 마지막 블록 보조금이 0 이 되는 건 64번째 반감기 아닌가요?

보조금은 32회차에서 이미 1 사토시이고 다음 시프트에서 0 이 돼요. 그래서 0 이 되는 첫 블록은 6,930,000번이에요. 함수의 64 이상 조건이 가리키는 13,440,000번은 실제로 밟히지 않는 방어선이에요.

Q. 지금까지 발행된 양과 남은 양은 얼마인가요?

높이 967,951번 기준으로 누적 20,087,350 BTC, 코드 합계의 95.654퍼센트예요. 남은 발행량은 912,649.9769 BTC, 4.346퍼센트예요. 이 값도 코드가 더하는 금액이고 지갑에서 쓸 수 있는 양과는 다른 숫자예요.

Q. 다음 반감기까지 얼마나 남았나요?

블록으로는 82,049개예요. 날짜는 적지 않아요. 블록 간격 10분은 목표값이고 실제 간격은 난이도 조정으로 사후에 맞춰지는 값이라, 10분을 곱해 나오는 569.8일은 가정이 들어간 참고치예요.

Q. 코드 합계가 곧 유통량인가요?

아니에요. 코어 소스가 직접 쓸 수 없다고 표시한 금액만 해도 제네시스 코인베이스 50 BTC 와 코인베이스가 겹친 두 블록 100 BTC 를 합쳐 150 BTC 예요. 잃어버린 키는 코드가 표시해 주지 않으니 그건 세지 않았어요.

정리

이 글은 매매 권유가 아닌 정보 제공 글입니다. 가상자산은 변동성이 크고 원금 손실 위험이 있으며, 투자 판단과 그 결과에 대한 책임은 본인에게 있습니다.

Disclosure
본 글은 정보 제공 목적이며 투자 권유가 아닙니다.

객관 데이터·과거 실적·시뮬레이션 기반으로 작성되었으며, 특정 종목의 매수·매도 권유가 아닙니다. 투자 결정에 따른 모든 손익은 본인에게 귀속됩니다. 미국 주식 직접 투자는 환율·세금·시장 변동 리스크가 있으며, 본인 판단과 전문가 상담을 통해 결정하세요.

#비트코인 발행량#비트코인 총 발행량#비트코인 2100만개#비트코인 블록 보조금#비트코인 사토시 단위
공유하기:𝕏f

📚 관련 글

DeFi·NFT2026-09-17· 24min

확정된 ERC 142개 중 16개에 보안 고려 사항 절이 없어요 — ERC-20·721·1155가 그 안에 있어요

EIP-1 은 보안 고려 사항 절 없이는 확정으로 갈 수 없다고 적어 뒀는데, 확정 상태인 이더리움 토큰 표준을 포함한 ERC 142개 중 16개에 그 절이 없었어요. ERC-20·721·1155 가 그 안에 있어요.

이더리움 토큰 표준ERC 보안 고려 사항ERC 표준 확정 상태
DeFi·NFT2026-09-16· 25min

BIP-39 단어 목록 중 체코어만 svetr 이 알파벳순보다 두 칸 앞이에요 — 2021년 공개 지적 뒤 지금도 그대로

공식 BIP-39 단어 목록 10개를 파일에 적힌 줄 순서 그대로 이진 탐색해 봤어요. 2,048개를 전부 찾은 목록은 네 개뿐이었고, 설명되지 않는 건 체코어 하나였어요. svetr 이 제 알파벳 자리보다 두 칸 앞에 있는데, 2021년에 공개로 지적된 뒤에도 파일은 그대로예요.

BIP-39 단어 목록BIP-39 니모닉니모닉 단어 목록
DeFi·NFT2026-09-15· 23min

유니스왑 수수료 티어가 이더리움에는 네 가지, 베이스에는 일곱 가지 켜져 있어요 — 공식 SDK 목록과 맞은 쪽은 베이스였어요

유니스왑 v3 수수료 티어가 몇 개인지를 정리 글이 아니라 팩토리 계약에 직접 물어봤어요. 수수료 값 0부터 19,999까지 2만 개를 여섯 체인의 팩토리에 하나씩 넣어 보니 이더리움·아비트럼·옵티미즘·BNB 체인은 네 가지, 베이스는 일곱 가지가 켜져 있었어요. 공식 v3 SDK 의 열거형 일곱 개와 베이스에서 켜진 일곱 개는 개수만 같은 게 아니라 값과 틱 간격까지 일곱 개 중 일곱 개가 같았어요. 같은 질문에 공식 문서 산문은 셋, 같은 페이지의 표는 넷, 계약 생성자 코드는 셋이라고 답해요. 조회는 2026년 9월 15일 오전 10시 57분부터 오전 11시 56분까지(한국 시각)이고, 2만 개 구간 밖은 재지 않았어요. 매매 권유가 아닌 정보 제공 글입니다.

유니스왑 수수료 티어유니스왑 수수료율유니스왑 0.3% 수수료
Coinday

다른 카테고리 코인 정보도 확인해 보세요

본 매체의 모든 콘텐츠는 정보 제공 목적이며, 특정 코인 매수·매도 권유가 아닙니다. 코인 시장 변동성을 충분히 인지하고 본인 책임 하에 판단하세요.