이중 지불
IT위키
더 많은 작업
이중 지불(Double Spending)은 같은 디지털 자산을 두 번 이상 써서, 서로 다른 상대가 각각 자기가 받은 거래를 유효하다고 믿게 만드는 문제이자 그것을 노리는 공격이다.
| 방식 | 내용 |
|---|---|
| 경쟁 공격(race) | 같은 코인을 쓴 거래 둘을 거의 동시에 서로 다른 경로로 퍼뜨린다. 상인이 블록 확인 전에 물건을 내주면 상인 쪽 거래가 버려질 수 있다 |
| 빠른 결제 공격 | 몇 초 안에 끝나는 매장 결제처럼 확인을 기다리지 않는 결제를 노린다. 카라메(Karame) 등은 이 공격이 적은 비용으로 가능하고, 당시 권장된 대책도 늘 통하지는 않음을 보였다[3] |
| 체인 재구성 | 해시 파워 과반으로 비밀 체인을 쌓았다가 공개해, 이미 확인된 거래를 되돌린다 → 51% 공격 |
| 고립된 노드 이용 | 상인 노드를 공격자 노드에만 연결해 두고 그 노드에만 거래를 보여 준다 → 이클립스 공격 |
- 금액에 맞게 확인 수를 기다린다. 블록이 쌓일수록 그 거래를 되돌리는 데 드는 연산이 기하급수적으로 커진다[1]
- 확인 전 거래를 받을 때는 같은 입력을 쓴 충돌 거래가 네트워크에 퍼지는지 지켜본다
- 피어를 여럿, 다양한 경로로 연결해 고립을 막는다
- ↑ 1.0 1.1 Satoshi Nakamoto, 「Bitcoin: A Peer-to-Peer Electronic Cash System」, https://bitcoin.org/bitcoin.pdf, 확인일: 2026-11-04.
- ↑ 「Blockchain Technology Overview」(NISTIR 8202), NIST, https://nvlpubs.nist.gov/nistpubs/ir/2018/NIST.IR.8202.pdf, 확인일: 2026-11-04.
- ↑ Ghassan O. Karame, Elli Androulaki, Srdjan Capkun, 「Two Bitcoins at the Price of One? Double-Spending Attacks on Fast Payments in Bitcoin」, IACR ePrint 2012/248, https://eprint.iacr.org/2012/248, 확인일: 2026-11-04.