비트코인(Bitcoin, BTC)
1) 개요(요지)
비트코인은 분산 원장 기술(Distributed Ledger Technology, DLT) 기반의 최초 널리 쓰인 암호화폐(cryptocurrency)로, 중앙기관 없이 P2P(Peer-to-Peer, 피어투피어) 네트워크에서 **거래의 무결성(Integrity)**과 이중지불(Double-spend) 방지를 달성한다. 핵심은 작업 증명(Proof of Work, PoW) 기반의 합의와 이를 유지하도록 설계된 경제적 인센티브이다.
2) 기본 아키텍처와 데이터 구조
2.1 노드와 네트워크
2.2 트랜잭션(거래)과 UTXO 모델
-
UTXO(Unspent Transaction Output, 미사용 거래 출력) 모델: 거래는 **입력(이전 UTXO 참조)**과 **출력(새 UTXO 생성)**으로 구성.
- 입력 각각은 이전 출력(UTXO)을 참조하고, 해당 UTXO를 소비하면서 서명으로 소유권 증명.
-
서명 알고리즘: ECDSA(Elliptic Curve Digital Signature Algorithm, 타원곡선 디지털 서명 알고리즘) over secp256k1 을 사용.
-
주소·스크립트:
- Pay-to-Public-Key-Hash (P2PKH), Pay-to-Script-Hash (P2SH), Bech32(세그윗 주소 형식) 등.
- 스크립트 언어는 스택 기반, 튜링 완전이 아니며 제한된 연산으로 안전성 확보.
2.3 블록과 머클 트리
3) 합의 메커니즘: 작업 증명(PoW)과 나카모토 합의
-
PoW(Proof of Work, 작업 증명): 블록 헤더를 특정 목표(Target) 이하의 해시값이 나오도록 반복(Nonce, nonce 변경 등) 해시 연산을 수행.
- 해시 함수: **SHA-256(Secure Hash Algorithm 256-bit)**를 두 번(double SHA-256) 적용.
-
목표(Target)와 난이도(Difficulty): 네트워크 목표는 평균 블록 생성 간격 약 10분. 난이도는 매 2016블록마다 재조정(retarget)되어 실제 생성시간이 목표(2016 × 10분 = 20160분 = 14일)와 일치하도록 조정된다. 재조정 시 일정 비율(원초 설계상 4배 상한/하한)로 제한됨.
-
체인 선택 규칙: 단순한 “가장 긴 체인(Longest chain)”이 아니라 누적 작업량(Most cumulative Proof-of-Work) 기준(즉, 가장 많은 작업증명이 축적된 체인)을 채택 — 이를 **나카모토 합의(Nakamoto Consensus)**라 통칭.
4) 발행(Emission)과 인센티브 정책 — 참여자 유인 설계
비트코인이 참여자(특히 채굴자, miner)를 협업하도록 유인하는 핵심은 블록 보상(Block reward) 구조와 수수료(Fee) 시장이다.
4.1 블록 보상 구성
4.2 보조금 감소(반감기, Halving)
-
초기 보조금은 50 비트코인(50 BTC). 약 210,000 블록마다 보조금이 절반으로 감소(halving).
-
수학적 총발행량: 첫 주기 보조금 합 = 50 × 210,000 = 10,500,000.
-
여기서 계산을 단계별로 보여드리면:
- 50 × 210,000 = (50 × 21) × 10,000 = 1,050 × 10,000 = 10,500,000.
-
무한히 반감되는 기하급수 합의 총합 = 50 × 210,000 × (1 + 1/2 + 1/4 + …) = 10,500,000 × 2 = 21,000,000.
-
결과적으로 최대 발행량은 **21,000,000 비트코인(21,000,000 BTC)**으로 수렴한다.
4.3 코인베이스 성숙도(Coinbase maturity)
- 채굴 보상(coinbase transaction)은 블록에 포함된 후 100 블록(약 16시간 ~ 100×10분 = 1000분 ≈ 16.67시간) 이상 지나야 소비(이체) 가능 — 이는 리오더(reorg) 리스크 완화용.
4.4 수수료 시장과 거래 우선 순위
- 트랜잭션 수수료는 **바이트당 사토시(satoshi per byte)**로 측정되어, 블록 공간(원래 1MB 한도, SegWit으로 효과적 확장 도입)을 더 필요로 하는 거래는 더 높은 수수료를 제시해 블록 포함 우선권을 얻음.
- Replace-By-Fee (RBF, Replace-By-Fee) 같은 기법으로 미확인 거래를 더 높은 수수료로 교체 가능해 수수료 시장을 유연하게 함.
4.5 인센티브 정합성(Why miners follow rules)
- 합의 규칙(블록 유효성 검증 규칙)을 위반한 블록은 네트워크에서 수용되지 않으므로, 규칙을 따르는 채굴자가 더 많은 보상을 실현할 가능성이 큼.
- 정책적 유인(경제적 인센티브): 규칙 준수 시 보상(새로 발행된 코인 + 수수료)을 받을 수 있고, 규칙 위반(예: 임의 변조 블록)은 다른 노드에 의해 거부되어 보상이 무효화됨 → 채굴 자원(전력·해시파워)의 낭비로 이어짐.
- 따라서, 합의 규칙을 따르는 것이 경제적으로 합리적이다(게임이론적 안정성).
5) 트랜잭션 처리 흐름(생애주기)
- 생성: 사용자가 거래를 만들어 자신의 개인키로 서명(ECDSA).
- 방송(Broadcast): 로컬 노드 → P2P 네트워크로 전파.
- mempool: 노드들은 거래를 메모리풀(mempool)에 보관.
- 채굴(mining): 채굴자는 mempool에서 수수료가 높은 거래들을 선택·집합하여 블록 후보 구성 → PoW 풋백(논스 변경 등) → 유효 블록 발견 시 브로드캐스트.
- 확인(Confirmation): 블록이 전파되어 다른 노드들에 의해 받아들여지면 그 블록 내 거래는 '1확인(1 confirmation)' 상태. 이후 블록이 더 쌓일수록 확정성(confidence) 상승(일반적으로 6확인 권장).
6) 보안 및 공격 벡터(분석)
6.1 이중지불(Double-spend)
- 공격자는 동일한 UTXO를 두 거래로 나눠 한 거래는 수신자에게, 다른 거래는 자신(또는 채굴자 보상)에게 포함시키려 함. PoW와 체인 선택 규칙으로 확인(confirmation) 이 쌓이면 이전 거래가 뒤집힐 확률은 기하급수적으로 작아진다.
6.2 51% 공격(해시파워 과반 공격)
- 해시파워의 51% 이상을 통제하면 공격자는 자기 체인(비밀로 채굴)으로 포크를 만들고, 기존 공개 체인을 뒤엎어 트랜잭션을 되돌릴 수 있음. 비용이 매우 높고(해시파워 확보·유지 비용), 경제적·운영적 제약으로 현실적 장벽이 큼.
6.3 셀피시 마이닝(Selfish mining)
- 일부 채굴자가 발견한 블록을 지연 공개하여 다른 채굴자들의 작업을 낭비시킴으로써 상대적 이득을 얻으려는 전략. 프로토콜·네트워크 전파 지연에 따라 이득이 날 수 있고, 이를 완화하기 위한 프로토콜·네트워크 개선(빠른 전파, 페널티 등)이 논의됨.
6.4 이클립스 공격(Eclipse attack)
- 특정 노드의 피어 연결을 통제하여 외부와 단절시킨 뒤 잘못된 정보를 주입하는 공격. 풀 노드는 피어 다양성 유지·접속 정책으로 위험을 완화.
7) 운영 현실과 중앙화 리스크
- 채굴 풀(Mining pool): 확률적 보상 변동성을 줄이기 위해 채굴자들이 해시파워를 묶음 → 보상 중앙화 위험(풀 운영자의 규칙·검증권한).
- ASIC(Application-Specific Integrated Circuit, 응용특화 집적회로) 등장으로 GPU/CPU 기반 채굴에서 전문 하드웨어 중심으로 전환 → 장비·전력 집약적 → 채굴의 지역적 집중(지리적·전력 비용 기반).
- 이로 인해 완전한 분권화 가치가 일부 훼손될 가능성이 있어 거버넌스와 인센티브 설계가 중요.
8) 확장성·프라이버시 개선 기법(요약)
- SegWit(Segregated Witness, 분리된 증명): 서명 데이터를 분리 저장하여 블록당 유효 트랜잭션 수 증가와 트랜잭션 ID(해시) 고정 문제(transaction malleability) 해결.
- LN(Lightning Network, 라이트닝 네트워크): 오프체인 결제 채널을 통해 소액·고속 결제를 처리하여 메인체인 부하 완화(레이어2 솔루션).
- CoinJoin / CoinShuffle 등: 트랜잭션 혼합 기법으로 프라이버시 향상.
- **샤딩(Sharding)**은 비트코인에 적용된 적은 없으나(퍼블릭 PoW 체인에 적용 난이도 높음), 다른 체인에서는 채택 시도 중.
9) 업그레이드와 개발 프로세스
- 프로토콜 변경은 BIP(Bitcoin Improvement Proposal, 비트코인 개선 제안) 형태로 제안·토론. 소프트포크(하위 호환)와 하드포크(비호환) 방식으로 기능 추가/변경. 실제 채택은 개발자, 운영자(풀·거래소), 노드 운영자, 채굴자 등 다양한 이해관계자의 합의·채택행위에 의존.
10) 요약(시험·현장 포인트)
- 핵심 원리: 블록체인(DLT) + PoW(Proof of Work) + UTXO(Unspent Transaction Output) 모델 + 경제적 인센티브 = 신뢰 없는 환경에서 신뢰 형성.
- 인센티브 설계: 블록 보조금(subsidy) + 거래 수수료(fees) → 채굴자들이 규칙을 따르고 네트워크 보안을 제공하도록 유도.
- 발행 스케줄: 반감기(210,000 블록 단위)로 보조금 절반 감소 → 총공급량 21,000,000 BTC(계산: 50×210,000×2).
- 보안 모델: 누적 작업량이 많은 체인이 정당 체인 → 51% 공격·셀피시 마이닝 등 위협 존재하나 막대한 비용으로 억제.
- 운영 리스크: 채굴·풀·ASIC로 인한 중앙화 압력, 확장성·프라이버시 개선 필요.
- 실무 고려사항: 결제시 적정 확인(confirmations) 수(예: 6확인 권장), 수수료 동적설정, 백업·키관리, 노드 운영 정책 등.
부록: 자주 쓰이는 약어(약어 표기 규칙 준수)
- DLT: Distributed Ledger Technology (분산 원장 기술)
- P2P: Peer-to-Peer (피어투피어 네트워크)
- PoW: Proof of Work (작업 증명)
- UTXO: Unspent Transaction Output (미사용 거래 출력)
- ECDSA: Elliptic Curve Digital Signature Algorithm (타원곡선 디지털 서명 알고리즘)
- SHA-256: Secure Hash Algorithm 256-bit (보안 해시 알고리듬 256비트)
- SPV: Simplified Payment Verification (단순 결제 검증)
- BIP: Bitcoin Improvement Proposal (비트코인 개선 제안)
- RBF: Replace-By-Fee (수수료 교체)
- ASIC: Application-Specific Integrated Circuit (응용특화 집적회로)
- SegWit: Segregated Witness (분리된 증명)
- LN: Lightning Network (라이트닝 네트워크)
- TPS: Transactions Per Second (초당 거래 처리량)
1. DLT: Distributed Ledger Technology (분산 원장 기술)
비유:
“친구들이 모두 공책을 가지고 있고, 새로운 거래를 할 때마다 공책에 같이 적는 것”
- 공책이 여러 개라서 누가 속여도 금방 티가 나요.
2. P2P: Peer-to-Peer (피어투피어 네트워크)
비유:
“중간에 선생님이나 가게 없이 친구들끼리 직접 장난감을 주고받는 것”
3. PoW: Proof of Work (작업 증명)
비유:
“누가 장난감을 받았는지 기록하려면 먼저 퍼즐을 풀어야 하는 게임”
4. UTXO: Unspent Transaction Output (미사용 거래 출력)
비유:
“아직 쓰지 않은 용돈 동전만 장난감을 사는 데 사용할 수 있는 것”
5. ECDSA: Elliptic Curve Digital Signature Algorithm (타원곡선 디지털 서명 알고리즘)
비유:
“내가 장난감을 보냈다는 걸 친구가 확실히 알 수 있게 하는 비밀 도장”
- 도장을 찍으면 다른 친구들이 ‘진짜 너가 보냈구나’ 하고 확인할 수 있어요.
6. SHA-256: Secure Hash Algorithm 256-bit (보안 해시 알고리듬 256비트)
비유:
“장난감 상자를 봉인하고 비밀번호를 만들어서 아무도 몰래 바꾸지 못하게 하는 자물쇠”
- 상자가 조금이라도 바뀌면 비밀번호가 완전히 달라져요.
7. SPV: Simplified Payment Verification (단순 결제 검증)
비유:
“전체 공책을 다 볼 필요 없이, ‘내 장난감이 친구에게 잘 갔는지’ 작은 확인만 하는 방법”
8. BIP: Bitcoin Improvement Proposal (비트코인 개선 제안)
비유:
“친구들이 ‘이렇게 하면 장난감 거래가 더 편해질 것 같아요’ 하고 제안하는 아이디어”
9. RBF: Replace-By-Fee (수수료 교체)
비유:
“장난감을 먼저 보내고 싶으면, 조금 더 사탕(수수료)을 주고 기록 순서를 올리는 것”
10. ASIC: Application-Specific Integrated Circuit (응용특화 집적회로)
비유:
“퍼즐만 빠르게 풀 수 있는 특별한 장난감 로봇”
- 다른 일은 못 하지만 퍼즐은 최고 속도로 해결해요.
11. SegWit: Segregated Witness (분리된 증명)
비유:
“장난감과 확인 도장을 따로 담아서 상자를 가볍게 만드는 것”
- 덕분에 더 많은 거래를 빠르게 기록할 수 있어요.
12. LN: Lightning Network (라이트닝 네트워크)
비유:
“친구들끼리 미리 만든 비밀 통로를 통해 작은 장난감 거래를 초고속으로 주고받는 것”
13. TPS: Transactions Per Second (초당 거래 처리량)
비유:
“초당 몇 개의 장난감을 친구에게 줄 수 있는지”
💡 정리 비유:
친구들이 모두 공책(DLT)을 가지고, 중간에 선생님 없이(P2P) 거래를 하고, 퍼즐을 풀어 기록(PoW)하며, 쓰지 않은 용돈(UTXO)만 사용하고, 비밀 도장(ECDSA)과 자물쇠(SHA-256)로 안전하게 지켜요.
작은 거래는 비밀 통로(LN)로 빨리 하고, 아이디어(BIP)로 더 편하게 만들고, 순서를 바꾸고 싶으면 사탕(RBF)을 주고, 퍼즐 로봇(ASIC)으로 기록을 빠르게 하며, 거래 속도(TPS)도 체크해요.