비트코인 개인키가 없으면 정말 아무도 못 찾아주나 — 공개키·개인키·주소의 수학적 구조 완전 분석 [2026] (moneyfacto 비트코인기초·암호화폐정보 11편)
본문 바로가기
비트코인 기술,보안 정보

비트코인 개인키가 없으면 정말 아무도 못 찾아주나 — 공개키·개인키·주소의 수학적 구조 완전 분석 [2026] (moneyfacto 비트코인기초·암호화폐정보 11편)

by moneyfacto 2026. 5. 24.

들어가며 — "비밀번호 찾기"가 없는 세계

은행 비밀번호를 잊으면 어떻게 합니까? 신분증을 들고 은행에 가면 재설정해줍니다.

이메일 비밀번호를 잊으면? 가입한 이메일로 재설정 링크를 받으면 됩니다.

그런데 비트코인 개인키를 잃으면?

아무도 없습니다. 사토시 나카모토도, 레저 회사도, 법원도, 슈퍼컴퓨터도.

영구 소멸입니다.

Chainalytic의 암호화폐 데이터 분석에 따르면, 존재하는 1,850만 개의 비트코인 중 약 20%가 현재 접근 불가능하거나 분실되었거나 휴면 지갑에 잠겨 있는 것으로 추정됩니다. Bit coin

20%. 현재 비트코인 가격 기준으로 수백조 원에 달하는 자산이 영구히 잠겨 있습니다. 개인키를 잃어버렸기 때문에.

이것이 왜 발생하는지, 개인키가 수학적으로 왜 복구 불가능한지, 그리고 어떻게 해야 절대 이런 상황을 피할 수 있는지. 오늘 처음부터 끝까지 정리합니다.


목차

  1. 비트코인 보안의 핵심 — 세 가지 층위
  2. 개인키란 무엇인가 — 256비트 숫자의 정체
  3. 공개키란 무엇인가 — 개인키에서 파생되는 방식
  4. 비트코인 주소 — 공개키의 한 번 더 압축
  5. 왜 공개키에서 개인키를 역산할 수 없는가 — 타원곡선의 비밀
  6. 디지털 서명 — 거래가 승인되는 원리
  7. HD 지갑과 시드 구문의 관계
  8. 개인키 분실의 실제 규모와 사례
  9. "개인키 복구 서비스" 사기 주의
  10. 보안 실전 가이드 — 개인키를 절대 잃지 않는 방법
  11. 양자 컴퓨터 위협과 비트코인의 대응
  12. 필자의 생각

개인키,공개키

1. 비트코인 보안의 핵심 — 세 가지 층위

비트코인 보안을 이해하려면 서로 다른 역할을 하는 세 가지를 구분해야 합니다.

개인키(Private Key): 비트코인을 보낼 수 있는 권한. 절대 공개 불가.
공개키(Public Key): 개인키에서 수학적으로 파생. 공개해도 됨.
주소(Address): 공개키에서 다시 파생. 이것을 다른 사람에게 알려줘 비트코인을 받음.

이 세 가지의 관계는 단방향입니다.

개인키 → 공개키 → 주소 (이 방향만 가능)
주소 → 공개키 → 개인키 (이 방향은 수학적으로 불가능)

이 단방향성이 비트코인 보안의 전부입니다. 주소를 알아도 공개키를 모르고, 공개키를 알아도 개인키를 모릅니다.


2. 개인키란 무엇인가 — 256비트 숫자의 정체

개인키는 단순히 말하면 매우 큰 숫자입니다.

구체적으로는 1부터 약 1.158 ×10⁷⁷ 사이의 임의 정수입니다. 256비트의 이진수로 표현되며, 16진수로 표현하면 64자리 문자열이 됩니다.

예시

개인키(16진수):
e9873d79c6d87dc0fb6a5778633389f4453213303da61f20bd67fc233aa33262

이 숫자가 얼마나 큰가

10⁷⁷이라는 숫자가 얼마나 큰지 감이 없습니다. 비교해 드립니다.

  • 관측 가능한 우주의 원자 수: 약 10⁸⁰개
  • 가능한 비트코인 개인키 수: 약 10⁷⁷개

비트코인 개인키의 가능한 경우의 수는 우주의 원자 수에 맞먹습니다. 이것이 무차별 대입으로 개인키를 찾는 것이 불가능한 이유입니다.

개인키는 어떻게 만들어지는가

지갑 소프트웨어가 처음 설정될 때 운영체제의 난수 생성기를 사용해 256비트의 무작위 숫자를 생성합니다. 이 무작위성이 충분해야 보안이 보장됩니다. 취약한 난수 생성기를 쓰면 개인키가 예측 가능해져 위험합니다.


3. 공개키란 무엇인가 — 개인키에서 파생되는 방식

개인키에서 공개키를 만드는 과정은 **타원곡선 암호화(ECC, Elliptic Curve Cryptography)**를 사용합니다.

비트코인은 구체적으로 secp256 k 1이라는 타원곡선을 사용합니다. 이 곡선 위에 있는 특정 점(Generator Point, G)을 개인키(k) 번만큼 덧셈 연산합니다.

공개키 = 개인키 × Generator Point
K = k × G

타원곡선 위의 점 덧셈은 매우 빠릅니다. 개인키 k가 256비트여도 이 계산은 컴퓨터로 순식간에 처리됩니다.

반면 역산, 즉 공개키 K와 Generator Point G를 알 때 k를 구하는 것은 현재 알려진 어떤 알고리즘으로도 현실적인 시간 내에 불가능합니다. 이것을 **이산 로그 문제(Discrete Logarithm Problem)**라고 합니다.

공개키는 압축·비압축 형태 두 가지가 있습니다.

  • 비압축 공개키: 04 + x좌표(32바이트) + y좌표(32바이트) = 65바이트
  • 압축 공개키: 02 또는 03 + x좌표(32바이트) = 33바이트 (현재 표준)

타원곡선의 특성상 x좌표만 알면 y좌표를 구할 수 있어 압축 공개키가 가능합니다.


4. 비트코인 주소 — 공개키의 한 번 더 압축

비트코인 주소는 공개키를 그대로 쓰지 않습니다. 한 번 더 변환합니다.

공개키 → 주소 변환 과정 (Legacy 주소 기준)

  1. 공개키에 SHA-256 해시 적용
  2. 결과에 RIPEMD-160 해시 적용 (이 두 단계를 합쳐 Hash160이라고 합니다)
  3. 네트워크 버전 바이트 추가 (메인넷: 0x00)
  4. 체크섬 계산 (SHA-256 두 번 적용 후 앞 4바이트)
  5. Base58 Check 인코딩

최종 결과가 우리가 아는 1...으로 시작하는 비트코인 주소입니다.

왜 공개키를 그냥 쓰지 않고 한 번 더 해시하나?

두 가지 이유가 있습니다.

첫째, 주소가 짧아집니다. 65바이트 공개키보다 25바이트 주소가 다루기 편합니다.

둘째, 추가 보안 레이어가 생깁니다. 주소만 알아서는 공개키를 알 수 없습니다. 공개키가 드러나는 것은 실제로 비트코인을 보낼 때(서명할 때)뿐입니다. 한 번도 비트코인을 보내지 않은 주소는 공개키조차 외부에 노출되지 않습니다. 이것이 양자 컴퓨터 위협에 대한 일차적 방어선이기도 합니다.


5. 왜 공개키에서 개인키를 역산할 수 없는가 — 타원곡선의 비밀

이것이 비트코인 보안의 수학적 핵심입니다.

직관적 비유

5편에서 배운 해시 함수처럼, 타원곡선 점 덧셈도 "정방향"은 쉽고 "역방향"은 극도로 어렵습니다.

달팽이를 한 방향으로 1,000번 밀면 어디 있는지 알 수 있습니다. 그런데 달팽이가 어디 있는지만 알 때 몇 번 밀었는지를 알아내는 것은 전수 조사 외에 방법이 없습니다. (이것도 정확하지 않지만 직관 이해용입니다)

이산 로그 문제의 어려움

타원곡선에서의 이산 로그 문제(ECDLP)는 현재까지 다항식 시간에 풀 수 있는 알고리즘이 발견되지 않았습니다. 가장 빠른 알고리즘으로도 secp256 k 1에서 개인키를 구하려면 현재 전 세계 모든 컴퓨터를 동원해도 우주 나이보다 긴 시간이 필요합니다.

무차별 대입은?

10⁷⁷개의 가능한 개인키를 무차별로 대입하면 어떨까요? 불가능합니다. 지구상 모든 컴퓨터가 초당 10 ¹⁸번의 계산을 한다고 해도 10⁷⁷개를 모두 시도하려면 10⁵⁹년이 필요합니다. 우주 나이(약 138억 년 = 1.38 ×10 ¹⁰년)보다 10⁴⁹배 길다.

이것이 "분실된 개인키는 영구히 복구 불가능하다"는 수학적 근거입니다.


6. 디지털 서명 — 거래가 승인되는 원리

개인키의 가장 중요한 역할이 바로 **디지털 서명(Digital Signature)**입니다.

비트코인을 보낼 때 "나는 이 주소의 소유자이며 이 거래를 승인한다"는 것을 증명해야 합니다. 이것을 개인키 없이는 할 수 없습니다.

ECDSA 서명 과정 (개념)

  1. 거래 데이터의 해시값 계산
  2. 개인키와 임의 난수(k)를 사용해 서명값(r, s) 생성
  3. 거래에 서명값 포함해서 전송

서명 검증 과정

노드들은 서명값(r, s)과 공개키를 사용해 이 서명이 해당 개인키 소유자에 의해 만들어졌는지 검증합니다. 개인키 없이는 이 서명을 만들 수 없습니다.

핵심 특성

  • 서명값을 보더라도 개인키를 알 수 없습니다
  • 누구든 서명의 유효성을 검증할 수 있습니다
  • 거래 데이터가 조금이라도 바뀌면 서명이 무효가 됩니다

Taproot(bc1p) 주소는 ECDSA 대신 슈노르 서명(Schnorr Signature)을 사용합니다. 슈노르 서명은 여러 서명을 하나로 합칠 수 있어(Signature Aggregation) 멀티시그 거래를 더 효율적으로 처리합니다.


7. HD 지갑과 시드 구문의 관계

비트코인을 처음 공부하면 혼란스러운 부분이 있습니다. "개인키가 중요하다는데, 나는 개인키를 본 적이 없다. 시드 구문만 봤다."

이것은 현대 지갑이 **HD 지갑(Hierarchical Deterministic Wallet, 계층 결정적 지갑)**을 사용하기 때문입니다.

HD 지갑의 작동 방식

시드 구문(12~24개 단어) → 마스터 시드(Master Seed) → 마스터 개인키 → 수백만 개의 자식 개인키

시드 구문 하나에서 수백만 개의 개인키가 결정론적으로(같은 시드 = 항상 같은 키) 파생됩니다. 사용자는 시드 구문만 안전하게 보관하면 됩니다.

개인키와 시드 구문의 관계

  • 시드 구문: 모든 개인키를 복구할 수 있는 마스터 백업
  • 개인키: 특정 주소에서 비트코인을 보낼 수 있는 실제 권한

시드 구문을 알면 모든 개인키를 복구할 수 있습니다. 개인키를 개별적으로 백업할 필요가 없는 이유입니다.

BIP-32, BIP-39, BIP-44

HD 지갑 표준은 세 가지 BIP(Bit coin Improvement Proposal)로 정의됩니다. BIP-32는 계층 구조, BIP-39는 시드 구문(니모닉) 표준, BIP-44는 경로(Path) 구조를 정의합니다.

12편에서 시드 구문을 자세히 다룹니다. 이번 편에서는 시드 구문이 개인키의 마스터 백업이라는 개념만 이해하면 됩니다.


8. 개인키 분실의 실제 규모와 사례

이론이 아닌 실제로 얼마나 많은 비트코인이 사라졌는지 봅니다.

전체 규모

존재하는 1,850만 개의 비트코인 중 약 20%가 현재 접근 불가능하거나 분실되었거나 휴면 지갑에 잠겨 있는 것으로 추정됩니다. Bit coin

약 370만 BTC(2026년 6월 현재 가격 기준 수백조 원)가 영구히 접근 불가 상태입니다. 이 코인들은 총 공급량 2,100만 개에 포함되어 있지만 실제로 유통될 수 없습니다.

대표 사례들

제임스 하웰스(James Howells): 2009년에 채굴한 7,500 BTC가 담긴 하드드라이브를 2013년 실수로 버렸습니다. 영국 뉴포트의 쓰레기 매립지 어딘가에 있습니다. 수차례 발굴 허가를 신청했지만 매번 거부됐습니다. 2026년 현재도 회수하지 못하고 있습니다. 현재 가치로 수천억 원입니다.

사토시 나카모토의 비트코인: 비트코인 초기에 채굴한 약 100만 BTC(추정)가 한 번도 이동하지 않았습니다. 사토시가 생존해 있다면 이 코인들은 안전합니다. 사토시가 사망했고 개인키를 아무에게도 알리지 않았다면 이 코인들은 영구히 잠겨 있습니다. 아무도 모릅니다.

Stefan Thomas: 초기 비트코인 개발자로 7,002 BTC가 담긴 하드웨어 지갑 IronKey의 PIN을 잊었습니다. 10번 오류 시 자동 삭제되는 구조인데 이미 8번 시도했습니다. 남은 시도는 2번.


9. "개인키 복구 서비스" 사기 주의

이 섹션이 이 글에서 가장 중요할 수 있습니다.

인터넷을 검색하면 "잃어버린 비트코인 개인키 복구 전문 업체"라는 광고를 볼 수 있습니다. 사기입니다. 100%.

왜 100% 사기인가

개인키 복구가 수학적으로 불가능하다는 것을 이 글에서 충분히 설명했습니다. 아무도 복구할 수 없습니다. 따라서 "개인키 복구 서비스"를 제공하는 업체는 존재할 수 없습니다.

이 업체들의 실제 수법은 두 가지입니다.

수법 1: 수수료 선취 후 잠적
"복구 성공 시 50% 분배, 선착금 000만 원"이라는 방식으로 선금을 받고 사라집니다.

수법 2: 남은 시드 구문 또는 개인키 조각 탈취
"복구를 위해 시드 구문의 일부를 알려달라"라고 요청합니다. 시드 구문 일부만으로도 나머지를 추측하거나, 알려준 정보로 다른 공격 벡터를 만들 수 있습니다.

진짜 복구 가능한 경우와 아닌 경우

복구 가능한 경우: 지갑 앱만 삭제했지만 시드 구문이 있는 경우. 하드웨어 지갑이 고장 났지만 시드 구문이 있는 경우. 비밀번호(파스프레이즈)를 잊었지만 시드 구문이 있는 경우 (파스프레이즈는 추측 가능).

복구 불가능한 경우: 시드 구문도 없고 개인키도 없는 경우. 이 경우 어떤 서비스도, 어떤 기술도 복구할 수 없습니다.

불행하게도 많은 암호화폐 소유자들은 이 사실을 잊고 개인키 분실로 인해 결국 그들의 자금에 대한 접근을 잃게 됩니다. Ajunews


10. 보안 실전 가이드 — 개인키를 절대 잃지 않는 방법

원칙 1: 개인키 = 시드 구문이다

현대 HD 지갑에서 개인키를 직접 백업할 필요는 없습니다. 시드 구문(12~24개 단어)만 안전하게 보관하면 모든 개인키를 복구할 수 있습니다.

원칙 2: 시드 구문의 절대 금지 목록

  • 스마트폰으로 사진 찍기 → 클라우드 동기화로 유출 위험
  • 구글 드라이브, 아이클라우드에 저장 → 해킹 위험
  • 이메일·카카오톡으로 전송 → 전송 기록 남음
  • 스크린숏 → 사진 앱 클라우드 백업으로 유출 위험
  • 메모장 파일 저장 → 악성코드로 탈취 가능

원칙 3: 물리적 백업의 기본

종이에 펜으로 쓰기가 기본입니다. 두 장을 서로 다른 장소에 보관합니다. 화재·수해에 강하게 하려면 스테인리스 시드 카드(Cryptosteel 등)에 각인합니다.

원칙 4: 2장 이상 다른 장소에

화재, 수해, 분실에 대비해 최소 2곳 이상에 보관합니다. 집과 은행 대여 금고. 또는 신뢰할 수 있는 두 가족 구성원에게 각각 맡기는 방법도 있습니다.

원칙 5: 정기적 확인

1년에 한 번 시드 구문을 새 지갑 앱에 입력해서 올바른 주소가 복구되는지 테스트하세요. 종이가 훼손되거나 글씨가 지워지기 전에 발견할 수 있습니다.

원칙 6: 큰 금액이면 멀티시그를 고려하라

15편에서 자세히 다루겠지만, 보유량이 커지면 멀티시그(2-of-3 등)를 고려합니다. 키 하나를 잃어도 나머지로 복구 가능한 구조입니다.


11. 양자 컴퓨터 위협과 비트코인의 대응

완결성을 위해 2026년 현재의 양자 컴퓨터 위협을 정리합니다.

이론적 위협

양자 컴퓨터는 Shor 알고리즘을 사용하면 타원곡선 이산 로그 문제를 다항식 시간에 풀 수 있습니다. 즉 충분히 강력한 양자 컴퓨터라면 공개키에서 개인키를 역산할 수 있습니다.

현재 현실

이것을 실행하려면 수백만 개의 안정적인 큐비트(qubit)가 필요합니다. 2026년 현재 가장 앞선 양자 컴퓨터도 수천 큐비트 수준이며 오류율이 높습니다. 비트코인을 위협할 수준까지 도달하려면 수십 년이 걸릴 것으로 전문가들이 추정합니다.

비트코인의 일차 방어선

8편에서 배운 것처럼 비트코인 주소는 공개키의 해시입니다. 한 번도 비트코인을 보내지 않은 주소는 공개키가 외부에 공개되지 않습니다. 공개키가 없으면 Shor 알고리즘도 적용할 수 없습니다. 이미 사용한 주소를 재사용하지 않는 것이 좋습니다.

장기 대응

비트코인 개발 커뮤니티는 양자 내성 서명 알고리즘으로의 마이그레이션을 장기 로드맵에 포함하고 있습니다. 아직 구체적인 일정이 확정되지 않았지만 위협이 현실화되기 전에 대응할 시간이 있습니다.


12. 필자의 생각

💡 "복구 불가능"이 비트코인의 강점이다

처음에는 "복구 방법이 없다"는 것이 비트코인의 치명적 단점처럼 보였습니다. 그런데 이것이 오히려 강점이라는 것을 이해하는 데 시간이 걸렸습니다. 복구가 불가능하다는 것은 누구도 빼앗을 수 없다는 의미이기도 합니다. 정부가, 은행이, 해커가 개인키를 모르면 비트코인에 접근할 수 없습니다. 몰수도, 동결도 불가능합니다. 이 특성은 러시아 자산 동결, 사이프러스 예금 차감 같은 사례를 보면 얼마나 중요한지 실감합니다. 복구 불가능성과 몰수 불가능성은 동전의 양면입니다.

💡 개인키를 "비밀번호"라고 부르는 것의 위험성

많은 곳에서 개인키를 "비밀번호 같은 것"이라고 설명합니다. 이 비유가 위험한 이유가 있습니다. 비밀번호는 잊어버려도 재설정할 수 있습니다. 개인키는 재설정이 없습니다. 이 차이를 이해하지 못하면 "어딘가에 백업해 뒀으니 괜찮겠지"라는 막연한 생각으로 부주의하게 관리하게 됩니다. 개인키(또는 시드 구문)는 재설정 없는 단 하나의 열쇠입니다. 이것을 잃으면 모든 것을 잃습니다.

💡 10⁷⁷이라는 숫자가 주는 안도감과 책임감

개인키가 될 수 있는 숫자가 10⁷⁷개라는 것은 두 가지 의미가 있습니다. 하나는 안도감입니다. 해커가 내 개인키를 무차별 대입으로 맞출 확률이 사실상 0입니다. 다른 하나는 책임감입니다. 아무도 복구해 줄 수 없으니 내가 관리해야 합니다. 이 두 가지가 비트코인 자기 보관(셀프 커스터디)의 본질입니다. 막대한 자유와 그에 따른 막대한 책임.


자주 묻는 질문 (FAQ)

Q1. 개인키와 시드 구문 중 어느 것을 백업해야 하나요?

현대 HD 지갑에서는 시드 구문을 백업하면 됩니다. 시드 구문에서 모든 개인키가 파생되기 때문입니다. 시드 구문만 있으면 어떤 기기에서든 지갑을 복구할 수 있습니다. 개인키를 개별적으로 백업할 필요가 없습니다.

Q2. 지갑 앱을 삭제했는데 비트코인이 사라졌나요?

비트코인은 사라지지 않았습니다. 비트코인은 블록체인에 존재하지 앱에 저장되지 않습니다. 시드 구문이 있다면 새 지갑 앱에 입력하면 그대로 복구됩니다. 시드 구문 없이 앱만 삭제했고 시드 구문 백업을 하지 않았다면 접근 불가 상태가 될 수 있습니다.

Q3. 같은 시드 구문으로 여러 지갑 앱에서 복구하면 어떻게 되나요?

동일한 주소들이 생성됩니다. 어느 기기에서든 같은 시드 구문 = 항상 같은 개인키와 주소입니다. 이것이 HD 지갑의 핵심 특성(결정론적)입니다. 여러 기기에서 사용하면 모두 동일한 주소와 잔액을 보여줍니다.

Q4. 시드 구문 12개와 24개 중 어느 것이 더 안전한가요?

24개가 더 안전합니다. 12개는 128비트 엔트로피, 24개는 256비트 엔트로피를 제공합니다. 현재 컴퓨팅 환경에서는 12개도 충분히 안전합니다. 하지만 큰 금액 장기 보관이라면 24개를 권장합니다.

Q5. 다른 사람이 내 비트코인 주소를 알면 비트코인을 빼갈 수 있나요?

아닙니다. 비트코인 주소를 알더라도 개인키 없이는 비트코인을 보낼 수 없습니다. 주소는 계좌번호와 같습니다. 계좌번호를 알아도 비밀번호 없이는 출금할 수 없는 것처럼. 오히려 주소는 자유롭게 공개해도 됩니다. 비트코인을 받을 때 상대방에게 알려주는 것입니다.


결론 — 비트코인 보안의 전부는 개인키 하나에 달려 있다

비트코인 보안을 한 문장으로 정리합니다.

"개인키를 아는 사람이 비트코인의 진짜 소유자다. 개인키를 잃으면 우주가 끝나도 복구할 수 없다."

이것이 과장처럼 들릴 수 있습니다. 그런데 수학이 그렇게 말합니다. 10⁷⁷개의 가능한 숫자 중 하나를 무차별 대입으로 찾는 것은 우주 나이보다 긴 시간이 필요합니다.

이 수학적 사실이 비트코인을 아무도 빼앗을 수 없게 만들고, 동시에 아무도 되찾아줄 수 없게 만듭니다.

그래서 시드 구문 백업이 선택이 아닌 필수입니다.

다음 12편에서는 시드 구문(니모닉)의 정확한 작동 방식인 BIP-39 표준과 24개 단어가 어떻게 개인키를 만드는지를 처음부터 설명합니다.


 

 

※ 이 글은 정보 제공을 목적으로 작성된 것이며, 특정 자산에 대한 투자를 권유하지 않습니다. 투자에 대한 모든 결정과 책임은 투자자 본인에게 있습니다.