가상자산을 안전하게 보관하는 방법
핫 월렛 또는 콜드 월렛? 위탁 또는 비위탁? 고팍스 아카데미에서 여러분의 개인 키를 보호하고 가상자산을 안전하게 보관하는 방법에 대해 알아보시기 바랍니다.
들어가며
가상자산의 핵심 아이디어는 자기 주권이며, 이는 사용자가 자신의 은행처럼 행동할 수 있다는 개념입니다. 여러분의 자금을 올바른 방법으로 안전하게 보관하면, 보안이 가장 우수한 은행 금고보다도 접근이 힘들어지게 됩니다. 그러나 자금을 올바른 방법으로 안전하게 보관하지 못한다면, 누군가 멀리서 여러분의 디지털 지갑을 털어갈 위험이 있습니다.
여러분의 디지털 코인을 안전하게 보관하는 방법을 배우는 것은 가상자산 세계에 입문하기 위한 필수 단계입니다. 이번 설명에서 우리는 이를 위한 몇 가지 기술들에 대해 논의할 것입니다.
개인 키란 무엇인가요?
개인 키(private key)는 실제 키와 마찬가지로 여러분의 가상자산을 사용하기 위해 잠금을 해제하는 키입니다. 이는 단지 상당히 큰 숫자이며, 무척 크기 때문에 누군가 이를 추측하는 것은 불가능할 것입니다. 여러분이 동전 하나를 256번 던져 앞면이 나오면 "1"을, 뒷면이 나오면 "0"을 적는다면 하나의 개인 키를 얻게 됩니다. 다음은 우리가 방금 생성한 개인 키입니다. 이는 보다 간결한 표현을 위해 16진법(0~9 숫자와 a~f 알파벳을 사용)으로 인코딩되어 있습니다.
8b9929a7636a0bff73f2a19b1196327d2b7e151656ab2f515a4e1849f8a8f9ba
여러분이 이 숫자를 구글에서 찾아본다면 오직 해당 아티클에서만 이를 발견할 수 있을 것입니다(이후에 다른 곳으로 복사되지 않았다면). 이는 해당 숫자가 정말이지 얼마나 임의적인 것이며 누군가 이를 이전에 봤을 확률은 천문학적으로 낮은지 알 수 있게 할 것입니다.
해당 예시는 여전히 이러한 사실을 충분히 보여주지는 못합니다. 가능한 개인 키의 숫자는 우주에 알려진 원자 수와 근접합니다. 간단히 말하자면, 이는 비트코인과 이더리움 같은 가상자산의 필수적인 보안 원리입니다. 여러분의 코인은 상상할 수 없을만큼 큰 범위 안에 감춰져 있기 때문에 안전합니다.
여러분이 이전에 자금을 전송받은 적이 있다면, 임의적으로 보이는 일련의 숫자이기도 한 공개 주소에 익숙하실 것입니다. 공개 주소는 공개 키를 얻기 위한 개인 키의 암호학적 마술을 통해 얻어지며, 이는 공개 주소를 얻기 위해 해시화됩니다.
이번 아티클에서는 이것이 어떻게 작동하는지에 대해서는 깊게 살펴보지 않을 것입니다. 여러분이 알아야 할 것은 개인 키를 통해 공개 주소를 생성하는 것은 쉽지만, 그 반대의 일은 오늘날 거의 불가능하다는 것입니다. 이것이 바로 여러분의 블로그, 소셜 미디어 등에 공개 주소를안전하게 공유할 수 있는 이유입니다. 이와 상응하는 개인 키가 없다면 누구도 자금을 사용할 수 없습니다.
만약 개인 키를 잃어버리게 된다면 자금에 접근할 수 없게 됩니다. 누군가 여러분의 키를 알게 된다면, 해당 자금을 사용할 수 있습니다. 따라서 개인 키를 엿보려는 이들로부터 이를 안전하게 지키는 것이 가장 중요합니다.
시드 문구(Seed phrase)
오늘날의 지갑에 단 하나의 개인 키만 있는 경우가 드뭅니다. 이들은 계층 결정적(HD, hierarchical deterministic) 지갑들로, 수십억 개의 서로 다른 키를 보유할 수 있습니다. 여러분이 알아야 할 것은 시드 문구이며, 이는 해당 키들을 생성하는 데 사용되는 사람이 읽을 수 있는 단어들의 모음입니다. 이는 다음과 유사한 것일 수 있습니다.
strike sadness boss daring voice connect holiday vintage quantum pony stable genuine
여러분이 의도적으로 하나의 개인 키만 사용하도록 선택하지 않는 한, 새로운 지갑을 만들 때 시드 문구를 백업하라는 요청을 받게 될 것입니다. 키 저장소에 대해서는 이후에 논의할 것이며, 키라는 용어는 개인 키와 시드 모두를 설명하는 데 사용될 것입니다.
디지털 서명
앞서 개인/공개 키 쌍을 통해 설명한 것이 공개 키 암호방식입니다. 우리는 또한 공개 키 암호 방식을 통해 디지털 서명을 사용할 수 있으며, 디지털 서명은 메시지가 특정 개인에게서 온 것임을 증명합니다. 여러분은 디지털 서명을 생성하기 위해 가상자산 트랜잭션을 생성할 때 개인 키와 메시지를 조합합니다. 서명을 살펴보는 것으로는 개인 키를 찾아낼 수 없기 때문에, 이는 공용 주소로서 공유해도 안전한 것입니다.
디지털 서명의 훌륭한 기능은 누구나 개인 키와 서명을 비교하고, 해당 키의 주인이 메시지에 서명한 것인지 판단할 수 있다는 것입니다. 여러분이 가상자산을 사용할 때는, 보통 "나는 X 코인을 Y 주소로 지불합니다."와 같은 서명된 메시지를 함께 제공합니다.
이런 방식으로 여러분은 특정 코인을 사용할 권한이 있다는 것을 증명할 수 있습니다. 여러분이 전송하는 메시지(여러분의 트랜잭션)는 블록체인에 추가되며, 누구나 유효성을 확인할 수 있습니다. 이 과정 모두에서 여러분의 개인 키는 노출되지 않습니다.
핫 월렛 vs. 콜드 월렛
지갑은 핫 월렛과 콜드 월렛 두 가지 유형으로 나뉩니다. 여기에는 다양한 범위의 솔루션들이 포함되며, 가상자산 지갑 유형 설명에서 몇 가지 예를 살펴보실 수 있습니다. 이제 핫 월렛과 콜드 월렛에 대해 자세히 살펴보도록 하겠습니다.
핫 월렛(Hot wallets)
핫 월렛은 인터넷에 연결되어 있는 모든 가상자산 지갑입니다(예를 들면, 스마트폰과 데스크톱 지갑). 핫 월렛은 가장 부드러운 사용자 경험을 제공하는 경향이 있습니다. 핫 월렛을 사용하면 가상자산과 토큰 전송, 수령, 트레이딩이 무척 편리합니다. 그러나 이러한 편리함은 보통 보안을 대가로 치릅니다.
핫 월렛은 인터넷 접속 때문에 본질적으로 위험합니다. 개인 키는 어떤 때에도 전송되지 않지만, 악의적인 행위자가 여러분의 온라인 기기를 감염시키거나 이에 원격으로 접속할 수 있습니다.
핫 월렛이 전적으로 안전하지 않다고 말하는 것은 아니며, 이는 단지 콜드 월렛보다 덜 안전할 뿐입니다. 핫 월렛은 사용성 측면이 우수하며, 따라서 보통 적은 잔액을 보유하는 경우 선호되는 선택지입니다.
콜드 월렛(Cold wallets)
중대한 온라인 공격 벡터를 제거하기 위해, 많은 이들은 자신의 키를 항상 오프라인에 보관하고자 합니다. 이들은 콜드 월렛을 사용합니다. 핫 월렛과 다르게 콜드 월렛은 인터넷에 연결되지 않습니다. 어떻게 이것이 가능한지 설명하기 위해 트랜잭션을 생성하고 전송하는 과정을 세분화하여 살펴보도록 하겠습니다.
트랜잭션 생성하기
UTXO 기반 가상자산에 트랜잭션을 생성하려면 몇 비트(bits) 정도의 정보가 필요합니다. 특별히 사용하고자 하는 자금상의 데이터와(입력값), 전송하려는 주소가 필요합니다. 이를 통해 여러분은 트랜잭션 "뼈대"를 생성할 수 있습니다. 그럼에도 불구하고 이를 아직 사용할 수는 없습니다. 이를 사용하기 위해서는 트랜잭션에 서명을 해야 합니다.
트랜잭션 서명하기
여러분은 네트워크에 전송되는 자금의 소유자라는 것을 증명해야 합니다. 여러분의 개인 키가 사용되는 시점입니다. 여러분의 입력값은 서명되며, 서명된 트랜잭션을 생성합니다. 서명 이후에는 해당 트랜잭션을 즉시 전송하거나 기다릴 수 있습니다. 또한 여러분을 대신해 누군가에게 이를 전송할 것을 요청할 수도 있습니다.
트랜잭션 전송하기
해당 단계는 트랜잭션이 블록체인 네트워크와 만나는 단계입니다. 서명된 트랜잭션이 아직 현금화되지 않은 수표와 같다면, 전송은 실제로 자금을 이동하는 것입니다.
하드웨어 지갑
흥미롭게도 이전의 어떤 단계도 동일한 기기상에서 이뤄지지 않아도 됩니다. 여러분은 컴퓨터 #1에서 트랜잭션을 형성하고, 컴퓨터 #2에서 서명하며, 컴퓨터 #3에서 전송할 수 있습니다. 콜드 월렛은 이러한 원리에 기반하고 있습니다. 해당 예시에서 여러분은 컴퓨터 #2에서 개인 키를 생성하고 저장할 것이며, 이를 영구히 오프라인에서 보관합니다.
컴퓨터 #1과 #3은 멜웨어에 취약할 수 있지만, 트랜잭션이 서명된 다음에는 이를 수정할 수 없기 때문에 문제가 되지는 않습니다. 관건은 컴퓨터 #2가 인터넷에 연결되어 있지 않다는 것입니다. 이는 여러분의 개인 키를 보관하고 트랜잭션에 서명하는 블랙박스 역할을 합니다. 실제로 컴퓨터 #3은 해당 시나리오에서 필요조차 없으며, 컴퓨터 #1에서 바로 전송할 수 있습니다.
하드웨어 지갑(트레저 원 또는 레저 나노 S)은 개인 키를 오프라인에 보관하는 것과 같은 원칙을 채택하며 동시에 보다 나은 사용자 경험을 제공하는 것을 목표로 합니다. 해당 지갑들은 휴대성이 더 좋으며, 완전한 컴퓨터보다 저렴하고, 가상자산 저장을 위해 주문 제작되는 것입니다. 보다 자세한 설명은 하드웨어 지갑이란 무엇인가요(그리고 왜 이를 사용해야 하나요)?를 살펴보시기 바랍니다.
하드웨어 지갑 업계는 수십 가지의 다양한 제품들을 시장에 선보이며 최근 몇 년 동안 크게 성장해 왔습니다.
위탁 vs. 비위탁
우리는 앞서 비위탁 방식의 지갑에 대해 설명했으며, 이는 여러분이 키를 전적으로 통제하는 것입니다. 그러나 여러분이 가상자산 거래소와 같은 온라인 서비스를 사용한다면, 프로토콜 수준에서 여러분은 실제로 코인을 보유하고 있지 않습니다. 그 대신 거래소가 여러분을 대신해 자금을 보유하고 관리합니다(이러한 이유로 위탁 지갑). 대부분의 거래소는 여러분의 코인을 안전하게 보관하기 위해 핫 월렛과 콜드 월렛을 조합해 사용합니다.
여러분이 BTC를 BNB로 교환하고자 한다면, 거래소는 데이터베이스 안에서 여러분의 BTC 잔고를 감소시키고, BNB 잔고를 증가시킬 것입니다. 그러나 여기에는 어떠한 블록체인 트랜잭션도 포함되지 않습니다. 여러분이 가상자산을 출금하기로 결정할 때만, 여러분은 거래소가 트랜잭션에 서명하기를 요청하는 것입니다. 이후 거래소는 여러분이 제공한 주소로 코인을 전달하는 트랜잭션을 전송할 것입니다.
가상자산 거래소는 자신의 자금을 제3자에게 위탁하는 것을 우려하지 않는 사용자에게 훨씬 더 편리한 경험을 제공합니다. 여러분이 스스로의 은행이 되는 것의 위험 중 하나는, 문제가 생겼을 때 누구도 여러분을 도와줄 수 없다는 것입니다. 여러분이 개인 키를 분실할 경우, 다시는 자금을 회복할 수 없을 것입니다. 반면, 여러분이 계정 비밀번호를 분실한 경우에는 이를 단지 초기화하면 됩니다.
여러분의 개인 정보가 유출될 위험은 여전히 존재하며, 계정을 안전하게 보호하기 위한 올바른 예방 조치를 취했는지 확인해야 합니다(2단계 인증과 강력한 비밀번호를 사용하는 것과 같은). 빠뜨린 단계가 없는지 확실하게 확인하기 위하여 계정을 보호하는 7가지 간단한 단계를 확인해보시기 바랍니다.
가장 좋은 보관 방법은 무엇인가요?
안타깝지만 해당 질문에 대한 하나의 보편적인 대답은 존재하지 않으며, 그랬다면 이번 아티클이 훨씬 간결했을 것입니다. 이에 대한 대답은 여러분이 위험을 얼마나 감수하려는 지와 더불어 가상자산을 사용하는 방식에 달려있습니다.
예를 들어, 활동적인 스윙 트레이더에게는 장기 보유자(HODLer)와 다른 요구 사항이 존재할 것입니다. 또는 여러분이 대규모 금액을 다루는 기관을 운영한다면, 자금이 전송되기 전 다수의 사용자의 서명이 필요한 다중서명 설정을 원할 수 있습니다.
일반적인 사용자는 사용 중이지 않은 콜드 스토리지에 자금을 저장하는 것이 좋습니다. 하드웨어 지갑은 가장 간단한 선택지이지만, 이에 익숙해지기 전 반드시 작은 금액으로 이를 테스트해 보시기 바랍니다. 여러분은 또한 기기를 분실하거나 고장날 경우를 대비해 다른 어딘가에 키를 백업해 두고 싶을 수도 있습니다. 이를 반드시 오프라인에 보관하시기 바라며, 일부는 자신의 시드 구문을 종이에 적어 이를 금고에 보관하기도 하며, 다른 이들은 불연성 금속에 이를 새겨두기도 합니다.
온라인 지갑은 상품이나 서비스를 구매할 때 사용하는 작은 금액을 보관하는 데 좋습니다. 여러분의 콜드 스토리지가 예금 계좌 같은 것이라면, 모바일 지갑은 가지고 돌아다니는 물리적인 지갑 같은 것입니다. 이상적으로 해당 금액은 이를 잃어버리더라도 심각한 재정적 문제를 일으키지 않을 정도여야 합니다.
렌딩, 스테이킹, 트레이딩에 있어서는 위탁 솔루션이 가장 좋은 방법입니다. 그럼에도 불구하고 여러분의 자금을 넣기 전, 얼마나 많은 금액을 할당할 것인지 하는 계획을 세워야 합니다(예를 들면, 포지션 크기 전략). 디지털 통화는 무척이나 변동적이며, 따라서 감당할 수 있는 손실보다 큰 금액을 절대 투자해서는 안 된다는 것을 기억하시기 바랍니다.
마치며
가상자산 보관에 있어서 오늘날 블록체인 업계는 흥미로운 선택지들을 많이 제공하고 있습니다. 각 선택지에는 저마다의 장단점이 존재하기 때문에, 해당 특성들을 잘 이해하는 것이 중요합니다. 이러한 방식을 통해 여러분은 필요에 따라 핫 월렛과 콜드 월렛을 보다 수월하게 조합하여 사용할 수 있습니다.