암호화폐 보안을 이해하기 위한 기초 개념 정리

hi2li·2026년 6월 23일

security

목록 보기
10/12

개요

암호화폐 관련 글을 보다보면 거래소, 블록체인, 지갑, 개인키, 멀티시그, Safe Wallet 같은 용어가 계속 등장한다.
처음에는 모두 비슷해 보이지만, 실제로는 각각 맡고 있는 역할이 다르다.

특히 암호화폐 사고를 이해하려면 단순히 “코인이 해킹당했다”라고 보는 것보다, 어디에 자산이 있고, 누가 그 자산을 움직일 수 있으며, 어떤 승인 구조를 거치는지를 이해하는 것이 중요하다.

이번 글에서는 암호화폐 보안 사고를 이해하기 위해 필요한 기본 개념을 초보자도 이해할 수 있는 수준으로 정리해보려고 한다.





1. 거래소(CEX)와 개인지갑은 무엇이 다를까?

암호화폐를 처음 접하면 가장 먼저 헷갈리는 것이 거래소와 지갑의 차이이다.

거래소(CEX, Centralized Exchange)는 사용자가 암호화폐를 사고팔 수 있도록 해주는 중앙화된 서비스이다. 대표적으로 Binance, Coinbase, Upbit, Bybit 같은 서비스가 여기에 해당한다.

사용자는 거래소에 회원가입을 하고, 로그인한 뒤 암호화폐를 거래한다. 이 구조는 주식 거래 앱과 비슷하다. 사용자는 앱에서 잔액을 확인하고 매수·매도를 하지만, 실제 자산 관리는 거래소가 대신 수행한다.

사용자
  │
  ▼
거래소 계정
  │
  ▼
거래소가 관리하는 지갑






즉, 거래소에 있는 암호화폐는 사용자가 직접 개인키를 들고 관리하는 구조가 아니라, 거래소가 사용자의 자산을 대신 보관하고 관리하는 구조이다.

반면 개인지갑은 사용자가 직접 개인키를 관리하는 방식이다. MetaMask, Phantom, Ledger, Trezor 같은 지갑이 대표적이다.

개인지갑을 사용하면 거래소에 로그인해서 거래하는 것이 아니라, 사용자가 직접 지갑을 통해 블록체인 네트워크와 상호작용한다.

거래소는 사용하기 편하지만 자산 관리 권한이 거래소에 있다.
반대로 개인지갑은 사용자가 직접 자산을 통제할 수 있지만, 개인키를 잃어버리거나 유출되면 복구가 어렵다.



정리하면 다음과 같다.

구분거래소(CEX)개인지갑
자산 관리거래소가 대신 관리사용자가 직접 관리
로그인 방식ID, 비밀번호, 2FA개인키, 시드 구문
사용 편의성높음상대적으로 어려움
책임 주체거래소 책임이 큼사용자 책임이 큼
예시Upbit, Binance, BybitMetaMask, Ledger, Trezor





2. 블록체인은 무엇인가?

블록체인은 쉽게 말하면 거래 기록을 여러 컴퓨터가 함께 보관하는 분산 장부이다.



일반적인 은행 시스템에서는 은행의 중앙 서버가 계좌 잔액과 거래 내역을 관리한다. 하지만 블록체인에서는 전 세계의 여러 노드가 같은 거래 기록을 검증하고 저장한다.


  • 블록체인 구조

    사용자
      │
      ▼
블록체인 네트워크
  │
  ├── 노드 A
  ├── 노드 B
  ├── 노드 C
  └── 노드 D

블록체인의 핵심은 거래 기록이 한 곳에만 저장되는 것이 아니라 여러 참여자에게 분산되어 저장된다는 점이다.

그래서 특정 한 명이 마음대로 기록을 바꾸기 어렵다.





Bitcoin

Bitcoin은 가장 대표적인 블록체인 네트워크이다.

Bitcoin의 목적은 비교적 단순하다. 중앙기관 없이도 개인 간에 BTC (비트코인 화폐) 를 주고받을 수 있도록 하는 것이다.

즉, Bitcoin은 탈중앙화된 디지털 화폐 시스템에 가깝다.



Bitcoin 네트워크에서는 누가 누구에게 얼마의 BTC를 보냈는지 거래 기록이 블록체인에 저장된다. 그리고 채굴자 또는 네트워크 참여자들이 이 거래를 검증한다.





Ethereum

Ethereum도 블록체인 네트워크이지만 Bitcoin보다 더 다양한 기능을 제공한다.

Bitcoin이 주로 “가치를 전송하는 네트워크”에 가깝다면, Ethereum은 스마트 컨트랙트를 실행할 수 있는 블록체인 플랫폼이다.



스마트 컨트랙트는 블록체인 위에 배포되어 특정 기능이나 비즈니스 로직을 수행하는 프로그램입니다.

Bitcoin
  └── BTC 전송 중심

Ethereum
  ├── ETH 전송
  ├── 스마트 컨트랙트 실행
  ├── 토큰 발행
  └── DeFi, NFT, DAO 등 다양한 서비스 구현

이더리움 위에서는 ETH뿐만 아니라 여러 토큰도 존재한다.
예를 들어 USDT, USDC 같은 스테이블 코인이나 다양한 프로젝트 토큰이 Ethereum 네트워크 위에서 동작할 수 있다.

그래서 거래소나 프로젝트가 Ethereum 지갑을 관리한다는 것은 단순히 ETH만 관리한다는 뜻이 아니라, Ethereum 위에서 발행된 여러 토큰을 함께 관리한다는 의미일 수 있다.





3. 지갑(Wallet)이란 무엇인가?

암호화폐에서 지갑(Wallet)은 매우 중요한 개념이다.

이름만 보면 지갑 안에 실제 코인이 들어있는 것처럼 느껴지지만, 정확히 말하면 지갑은 코인을 저장하는 공간이 아니다.


암호화폐는 블록체인 네트워크의 장부 위에 존재한다.지갑은 그 자산을 사용할 수 있게 해주는 개인키를 관리하는 도구에 가깝다.

블록체인
  └── 잔액과 거래 기록 저장

지갑
  └── 개인키 관리

예를 들어 어떤 주소에 1 ETH가 있다고 하자. 이 ETH가 내 컴퓨터나 스마트폰 안에 저장되어 있는 것이 아니다. Ethereum 블록체인 장부에 “이 주소는 1 ETH를 가지고 있다”는 기록이 존재하는 것이다.

그리고 그 주소의 자산을 이동시키려면 해당 주소에 대한 개인키로 거래에 서명해야 한다.





Wallet의 역할

지갑의 핵심 역할은 다음과 같다.

첫째, 주소를 생성한다.

사용자는 지갑을 통해 블록체인 주소를 만들 수 있다.


둘째, 개인키를 관리한다.

개인키는 해당 주소의 자산을 움직일 수 있는 권한이다.

셋째, 거래에 서명한다.
암호화폐를 전송하거나 스마트 컨트랙트를 실행하려면 개인키로 거래에 서명해야 한다.

사용자
  │
  ▼
지갑
  │
  ├── 주소 생성
  ├── 개인키 관리
  └── 거래 서명

따라서 지갑은 단순히 잔액을 보여주는 앱이 아니라, 블록체인 자산을 사용할 수 있도록 해주는 핵심 도구이다.





개인키와 공개키

암호화폐 지갑을 이해하려면 먼저 암호학에서 사용하는 개인키와 공개키의 개념을 알아야 한다.

공개키 암호 방식(Public Key Cryptography)은 한 개의 키가 아니라 서로 연결된 두 개의 키를 사용하는 암호화 방식이다.

  • 개인키(Private Key) : 본인만 가지고 있는 비밀 키로, 데이터를 복호화하거나 전자서명을 생성하는 데 사용된다.
  • 공개키(Public Key) : 누구에게나 공개할 수 있는 키로, 데이터를 암호화하거나 전자서명을 검증하는 데 사용된다.

암호화폐에서는 이 원리를 활용하여 지갑을 생성한다. 개인키로부터 공개키가 만들어지고, 공개키를 기반으로 지갑 주소(Address)가 생성된다.

쉽게 비유하면 다음과 같다.

개인키 = 금고를 열 수 있는 열쇠
공개키 = 금고 번호를 만들기 위한 정보
주소    = 다른 사람이 입금할 수 있는 계좌번호





4. Hot Wallet과 Cold Wallet

거래소나 기관은 하나의 지갑으로 모든 자산을 관리하지 않는다.

암호화폐는 블록체인에 존재하지만, 자산을 사용할 수 있는 권한(개인키)을 관리하는 지갑을 Hot Wallet과 Cold Wallet으로 구분하여 운영한다.

Hot Wallet은 인터넷에 연결되어 있는 지갑이다. 사용자의 입출금을 빠르게 처리하기 위해 사용된다.



예를 들어 사용자가 거래소에서 ETH를 출금한다고 하면, 거래소는 Hot Wallet을 이용해 빠르게 출금 요청을 처리할 수 있다.

Hot Wallet
  ├── 인터넷 연결
  ├── 빠른 입출금 처리
  └── 상대적으로 공격 위험 높음






반면 Cold Wallet은 인터넷과 분리된 지갑이다. 대량의 자산을 안전하게 보관하기 위해 사용된다.

Cold Wallet
  ├── 인터넷과 분리
  ├── 대량 자산 보관
  └── 출금 절차가 상대적으로 느림

거래소 입장에서는 모든 자산을 Hot Wallet에 두면 편리하지만 위험하다. 인터넷에 연결되어 있기 때문에 공격자가 접근할 가능성이 높아진다.

반대로 모든 자산을 Cold Wallet에 두면 안전하지만 입출금 처리가 불편하다.






그래서 일반적으로는 다음과 같은 구조를 사용한다.

대부분의 자산
▼
Cold Wallet이 관리하는 주소

일부 운영 자금
▼
Hot Wallet이 관리하는 주소

즉, Hot Wallet은 편의성을 위한 지갑이고, Cold Wallet은 보안을 위한 지갑이라고 이해하면 된다.





5. Multi Signature란?

Multi Signature, 줄여서 멀티시그는 여러 명의 승인이 있어야 거래가 실행되는 방식이다.

일반적인 지갑은 개인키 하나만 있으면 거래를 보낼 수 있다. 하지만 큰 금액을 관리하는 거래소나 기관에서는 개인키 하나만으로 자산을 이동시키는 구조가 위험할 수 있다.

만약 개인키 하나가 유출되면 모든 자산이 이동될 수 있기 때문이다.

그래서 멀티시그 구조를 사용한다.

예를 들어 5명의 관리자 중 3명이 승인해야만 거래가 실행되도록 설정할 수 있다.

관리자 A  ✔
관리자 B  ✔
관리자 C  ✔
관리자 D  ✖
관리자 E  ✖

→ 5명 중 3명이 승인했으므로 거래 실행

이런 구조를 보통 3-of-5 멀티시그라고 표현한다.



멀티시그의 장점은 다음과 같다.

  • 개인키 하나가 유출되어도 바로 자산이 이동되지 않는다.
  • 여러 관리자의 승인을 요구하여 내부자 위험을 줄일 수 있다.
  • 대규모 자산 이동에 대한 통제력을 높일 수 있다.

하지만 멀티시그가 모든 공격을 막아주는 것은 아니다. 승인자가 속아서 잘못된 거래에 서명하거나, 서명 과정에서 화면에 표시되는 정보가 조작된다면 여전히 사고가 발생할 수 있다.

즉, 멀티시그는 보안을 강화하는 중요한 구조이지만, 사용자가 무엇에 서명하는지 확인하는 과정도 함께 중요하다.





6. Safe Wallet은 무엇인가?

앞에서 설명한 멀티시그(Multi Signature)는 여러 명의 승인이 있어야 거래를 실행하는 보안 방식이다.

하지만 멀티시그는 하나의 기술 또는 개념일 뿐이다. 이를 실제로 사용할 수 있도록 구현한 다양한 지갑과 서비스가 있으며, 그 대표적인 예가 Safe Wallet이다.

Safe Wallet은 Ethereum 생태계에서 가장 널리 사용되는 스마트 컨트랙트 기반 멀티시그 지갑이다.

일반 개인지갑은 보통 개인키 하나로 거래를 서명한다. 예를 들어 MetaMask 같은 지갑은 사용자가 직접 개인키를 관리하고, 사용자가 승인하면 거래가 전송된다.

반면 Safe Wallet은 스마트 컨트랙트로 동작하는 지갑이다. 하나의 개인키가 아니라 여러 주소의 승인을 조건으로 거래를 실행할 수 있다.



일반 지갑
  └── 개인키 하나로 서명

Safe Wallet
  └── 여러 승인자의 서명 조건을 만족해야 거래 실행

예를 들어 회사나 DAO가 자금을 관리할 때 Safe Wallet을 사용할 수 있다.

Safe Wallet 설정 예시

승인자 5명
필요 승인 수 3명

→ 5명 중 3명 이상이 승인해야 송금 가능

Safe Wallet을 사용하면 특정 한 사람이 단독으로 자금을 이동시키는 것을 막을 수 있다. 그래서 거래소, 프로젝트 팀, DAO, 기관 등이 자금 관리에 사용하는 경우가 많다.

다만 Safe Wallet도 결국 거래를 실행하기 위해서는 승인자들이 서명해야 한다. 따라서 승인자가 악성 거래를 정상 거래로 착각하고 승인하면 문제가 발생할 수 있다.

정리하면 Safe Wallet은 “코인을 보관하는 앱”이라기보다, 여러 승인자의 서명을 조건으로 자산 이동을 제어하는 스마트 컨트랙트 지갑이라고 이해하면 된다.





7. 전체 구조

지금까지 살펴본 개념을 하나의 구조로 연결해보면 다음과 같다.

거래소는 사용자의 자산을 직접 관리해야 하기 때문에 여러 지갑을 운영한다. 일부 자산은 빠른 입출금을 위해 Hot Wallet에 두고, 대부분의 자산은 보안을 위해 Cold Wallet에 보관한다.

Ethereum 기반 자산을 관리하는 경우에는 다음과 같은 구조도 가능하다.

거래소 운영자
      │
      ▼
Safe Wallet
(멀티시그 승인)
      │
      ▼
Ethereum 블록체인

이 구조에서 Bybit 같은 거래소는 서비스를 제공하는 주체이고, Safe Wallet은 거래를 승인하고 제어하는 지갑 시스템이며, Ethereum은 실제 거래가 기록되는 블록체인 네트워크이다.

즉, 각각의 역할은 다음과 같이 구분할 수 있다.

구성 요소역할
거래소(CEX)사용자가 암호화폐를 사고팔 수 있는 서비스 제공
Wallet블록체인 자산을 사용할 수 있는 개인키 또는 승인 구조 관리
Safe Wallet여러 승인자의 서명을 요구하는 스마트 컨트랙트 지갑
Ethereum거래 기록과 자산 상태가 저장되는 블록체인 네트워크

많은 사람이 거래소, 지갑, 블록체인을 하나의 시스템처럼 생각하지만 실제로는 서로 다른 역할을 한다.

거래소는 사용자에게 거래 서비스를 제공하고, 지갑은 자산을 이동할 수 있는 권한을 관리하며, 블록체인은 실제 거래 기록을 저장한다.





8. 마무리

암호화폐를 이해할 때 가장 중요한 것은 코인이 어디에 저장되어 있는지, 그리고 누가 그것을 움직일 수 있는지를 구분하는 것이다.

코인은 지갑 앱 안에 들어있는 것이 아니라 블록체인 장부 위에 존재한다. 지갑은 그 자산을 움직일 수 있는 개인키나 승인 구조를 관리하는 도구이다.

거래소는 사용자의 자산을 대신 관리하는 중앙화된 서비스이고, 개인지갑은 사용자가 직접 자산 통제권을 가지는 방식이다.

또한 거래소나 기관은 보안을 위해 Hot Wallet과 Cold Wallet을 나누어 사용하고, 큰 금액을 이동할 때는 Multi Signature나 Safe Wallet 같은 구조를 활용하기도 한다.

정리하면 다음과 같다.

Blockchain
  └── 자산과 거래 기록이 존재하는 곳

Wallet
  └── 자산을 움직일 수 있는 권한을 관리하는 도구

Exchange
  └── 사용자 대신 자산을 보관하고 거래 서비스를 제공하는 곳

Multi Signature
  └── 여러 명의 승인이 있어야 거래가 가능한 구조

Safe Wallet
  └── 스마트 컨트랙트 기반 멀티시그 지갑

이 개념들을 이해하면 암호화폐 사고를 볼 때 단순히 “해킹당했다”가 아니라, 개인키가 탈취된 것인지, 지갑 승인 과정이 문제였는지, 거래소 운영 구조에서 문제가 발생한 것인지를 구분해서 볼 수 있다.

따라서 암호화폐 보안 사고를 이해하기 위해서는 기술적인 공격 기법을 보기 전에, 먼저 거래소·지갑·블록체인·개인키·멀티시그의 관계를 이해하는 것이 중요하다.

profile
Easy come , Easy go

0개의 댓글