Tech Lab5 min read

블록체인 코스 #15 비트코인 vs 이더리움 핵심 비교

비트코인과 이더리움의 목적, 주소 구조, 계정·UTXO 모델, Nonce와 보안·합의까지를 표와 함께 비교 정리한 블록체인 코스 #15 강의 노트입니다. “둘이 뭐가 달라?”라는 질문에 구조적으로 답하는 글입니다.

#블록체인#코스#비트코인#vs#이더리움#UTXO와#계정#모델#Nonce#비교#블록체인#보안

독자는 이 글을 통해 비트코인과 이더리움이 어떤 목적과 구조 차이를 가지고 있는지를 한눈에 비교하고, 주소·계정 모델·Nonce·보안·합의 알고리즘까지 실제 구현 관점에서 이해하게 됩니다.

비트코인은 송금, 이더리움은 DApp 플랫폼

두 블록체인의 출발점: 목적부터 다르다

비트코인과 이더리움은 겉으로 보면 둘 다 “암호화폐가 있는 블록체인”처럼 보이지만, 출발 목적 자체가 다르게 설계된 프로토콜입니다.

항목비트코인이더리움
주요 목적디지털 통화, 가치 저장 및 거래스마트 계약·DApp 실행 플랫폼
네트워크 설계 방향단순하고 안정적인 구조유연하고 확장 가능한 구조

이 목적 차이는 주소 구조, 데이터 모델, 합의, 보안 설계 전반에 영향을 미칩니다.

주소와 키 구조: 같은 ECDSA, 다른 해시

두 블록체인은 모두 공개키·개인키 쌍을 만들 때 ECDSA(secp256k1) 곡선을 사용합니다. 하지만 해시 함수와 주소 인코딩 방식이 다르기 때문에, 화면에 보이는 주소 형식은 꽤 다르게 느껴집니다.

특징이더리움비트코인
곡선 알고리즘ECDSA(secp256k1)ECDSA(secp256k1)
해시 함수Keccak-256SHA-256 + RIPEMD-160
주소 표현0x로 시작하는 16진수 40자Base58Check 인코딩, 숫자+문자 혼합

주소 예시

  • 이더리움: 0x742d35Cc6634C0532925a3b844Bc454e4438f44e
  • 비트코인: bc1qw4ljmrvvfj9pxvlz0y3tc9ka25mrfvhyxtq67y

팁: 주소 형식이 다르다고 해서 보안 강도가 완전히 다른 것은 아닙니다. 둘 다 공개키 앞에 어떤 해시를 어떻게 적용하느냐의 차이로 이해하면 됩니다.

데이터 모델: 계정(Account) vs UTXO

블록체인이 자산을 어떻게 표현하고 관리하는지는 데이터 모델에 의해 결정됩니다. 이 부분이 비트코인과 이더리움의 가장 큰 차이 중 하나입니다.

balances

이더리움: 계정 기반(Account-based) 모델

이더리움에서는 모든 참여자가 계정(Account) 을 하나의 객체처럼 가지고, 그 안에 잔고와 상태를 저장합니다.

  • 외부 소유 계정(EOA)
    • 개인이 소유한 계정, 개인키로 제어.
    • 트랜잭션을 생성할 수 있는 주체입니다.
  • 스마트 계약 계정(Contract Account)
    • 스마트 계약 코드가 배포된 계정.
    • 직접 트랜잭션을 만들지는 못하고, 다른 트랜잭션에 의해 호출될 때 코드가 실행됩니다.

계정에는 다음과 같은 상태 값이 포함됩니다.

  • Nonce: 이 계정에서 보낸 트랜잭션 횟수
  • Balance: ETH 잔고
  • Storage: 스마트 계약이 사용하는 상태 값
  • CodeHash: 스마트 계약 코드의 해시

트랜잭션은 계정 → 계정으로 전송되며, 이 과정에서 상태(State)가 바뀝니다.

비트코인: UTXO 기반 모델

비트코인은 UTXO(Unspent Transaction Output) 모델을 사용합니다.

  • 각 트랜잭션의 출력(Output)이 새로운 UTXO가 됩니다.
  • “잔고”라는 값은 따로 존재하지 않고, 해당 사용자가 소유한 UTXO의 합이 곧 잔고입니다.
  • 새 트랜잭션을 만들 때는 여러 UTXO를 입력으로 소비하고, 그에 상응하는 새로운 UTXO를 생성합니다.

두 모델의 비교

특징이더리움(Account-based)비트코인(UTXO-based)
기본 단위계정(Account)UTXO(미사용 트랜잭션 출력)
잔고 관리계정에 Balance 값으로 저장UTXO들의 합으로 계산
표현 방식직관적, 은행 계좌 느낌다소 복잡하지만, 병렬 처리에 유리
스마트 계약계정에 코드·스토리지 저장제한적 스크립트만 지원

이더리움의 계정 모델은 DApp·스마트 계약을 표현하기에 더 직관적이고, 비트코인의 UTXO 모델은 간단한 가치 전송에 최적화된 설계라고 볼 수 있습니다.

Nonce: 같은 이름, 다른 역할

둘 다 Nonce라는 용어를 쓰지만, 의미와 쓰임새는 꽤 다릅니다.

비트코인의 Nonce: 채굴을 위한 변수

비트코인에서 Nonce는 블록 헤더 안에 들어가는 32비트 정수입니다.

  • 채굴자는 Nonce 값을 계속 바꿔가며 해시를 계산합니다.
  • 목표 난이도보다 작은 해시가 나올 때까지 반복 시도합니다.
  • Nonce 공간을 다 쓰면 타임스탬프나 머클 루트를 변경해 추가 시도를 이어갑니다.

즉, 비트코인에서 Nonce는 PoW 퍼즐을 풀기 위한 임시 변수입니다. 트랜잭션 순서를 관리하는 용도로 쓰이지 않습니다.

이더리움의 Nonce: 계정 트랜잭션 카운터

이더리움에서 Nonce는 계정별로 증가하는 트랜잭션 번호입니다.

  • 한 계정에서 보내는 첫 트랜잭션: Nonce = 0 또는 1 (체인 규칙에 따라)
  • 같은 Nonce를 가진 트랜잭션이 두 개 올라오면, 하나만 유효합니다.
  • 이를 통해 재생 공격(replay)이나 중복 전송을 방지합니다.
항목비트코인 Nonce이더리움 Nonce
주요 목적PoW 퍼즐 해결용 변수계정의 트랜잭션 순서·유일성 보장
단위블록 헤더에 포함계정 상태에 포함
보안 역할51% 공격 난이도 상승에 간접 기여재생 공격·중복 전송 방지

이더리움은 여기에 더해 체인 ID까지 사용해, 포크된 체인 간 재생 공격도 막고 있습니다.

보안과 합의: PoW vs PoS, 그리고 공격 모델

보안 측면에서도 두 블록체인은 서로 다른 위협 모델을 전제로 설계되어 있습니다.

비트코인: 이중 지불(Double Spending)과 51% 공격

  • 비트코인의 대표적인 위협은 이중 지불(Double Spending) 입니다.
  • 공격자는 동일한 UTXO를 사용한 두 트랜잭션을 만들고,
    자신의 해시 파워를 이용해 원하는 쪽 체인을 “더 긴 체인”으로 만들려 합니다.
  • 이를 막기 위해 사용자는 여러 블록이 쌓일 때까지(예: 6컨펌) 기다립니다.

이더리움: 재생 공격과 PoS 보안

  • 이더리움은 계정 기반 + DApp 플랫폼 특성상, 재생 공격(Replay Attack) 에 주의를 기울입니다.
  • Nonce와 체인 ID를 조합해 동일 트랜잭션이 다른 상황·다른 체인에서 반복 실행되는 것을 방지합니다.
  • 합의 측면에서는 기존 PoW에서 PoS(Proof of Stake) 로 전환하면서,
    Nothing at Stake와 같은 PoS 특유의 공격 모델에 맞는 슬래싱(Slashing) 규칙을 도입했습니다.

합의 알고리즘 비교

항목비트코인이더리움
합의 방식PoW(작업 증명)PoW → PoS(지분 증명)
에너지 사용매우 큼(채굴)PoS 전환 후 크게 감소
보안 접근해시 파워 기반 경제적 비용스테이킹·슬래싱 기반 경제적 비용

비트코인은 채굴 장비와 전기를, 이더리움은 스테이킹된 자산과 슬래싱을 보안의 핵심 레버리지로 사용합니다.

정리: 언제 무엇을 떠올려야 할까

블록체인 코스 #15에서 가져가야 할 포인트를 정리하면 다음과 같습니다.

  • 비트코인은 디지털 통화·가치 저장이 목적, 이더리움은 DApp·스마트 계약 플랫폼이 목적이다.
  • 두 체인은 같은 ECDSA를 쓰지만, 주소 해시와 인코딩 방식이 달라 다른 모양의 주소가 나온다.
  • 데이터 모델은 UTXO vs 계정(Account) 로 나뉘며, 이더리움은 상태와 코드를 계정에 붙여 프로그래밍 가능성을 높였다.
  • Nonce는 비트코인에서는 채굴용 변수, 이더리움에서는 계정 트랜잭션 카운터라는 전혀 다른 의미를 가진다.
  • 보안·합의에서는 비트코인의 이중 지불·51% 공격, 이더리움의 재생 공격, PoS 보안 이슈를 각각 염두에 두고 설계되어 있다.

참고 링크

다음으로 읽어볼 글