지갑과 니모닉 - Wallet & Mnemonic
비트코인 지갑(월렛) 종류에는 어떤 것이 있나요?
분류 | 유형 | 설명 |
---|---|---|
수탁/비수탁 | 수탁 지갑 | 제3자가 개인키 관리 |
비수탁 지갑 | 자신이 직접 개인키 관리 | |
핫/콜드 | 핫 지갑 | 개인키가 인터넷에 항상 연결된 상태로 저장 |
콜드 지갑 | 개인키가 인터넷에서 분리 상태로 저장 | |
하드/소프트/종이 | 하드 지갑 | 하드웨어로 제작 |
소프트 지갑 | 소프트웨어로 제작 | |
종이 지갑 | 종이에 공개·개인키 인쇄 | |
데스크톱/모바일 | 데스크톱 지갑 | 컴퓨터에 설치 |
모바일 지갑 | 모바일 기기에 설치 |
니모닉(Mnemonic)이란 무엇인가요?
니모닉(Mnemonic)은 복잡한 정보를 쉽게 기억하고 회상할 수 있도록 돕는 기억법입니다. 암호화폐 분야에서의 니모닉은 일반적으로 니모닉 시드(Mnemonic Seed) 또는 니모닉 구문(Mnemonic Phrase)을 가리키며 주로 개인 키 또는 지갑 복구를 위해 사용됩니다.
니모닉 시드는 길고 복잡한 개인 키를 단어들의 나열로 변환한 것으로 주로 12, 18, 24개의 단어로 구성되어 있습니다. 이 단어들은 BIP-39라는 표준에 따라 사전에서 선택됩니다. 사용자는 이 니모닉 구문을 안전한 장소에 보관해두고, 지갑이 손실되거나 고장 날 경우 지갑을 복구할 때 사용할 수 있습니다.
니모닉의 이점은 다음과 같습니다.
(기억하기 쉽고 이해하기 쉬움) 니모닉 구문은 단어들의 나열이기 때문에 복잡한 문자열보다 기억하기 쉽고 이해하기 쉽습니다.
(오류 감지 기능) 니모닉 시드 생성 과정에는 일부 오류 검출 기능이 포함되어 있어 단어를 잘못 입력하거나 누락했을 때 시스템이 사용자에게 알려줄 수 있습니다.
(지갑 복구) 지갑에 문제가 발생했을 때, 니모닉 구문을 통해 지갑을 복구할 수 있습니다. 이를 통해 암호화폐를 잃어버릴 위험을 줄일 수 있습니다.
(여러 암호화폐 지원) 표준화된 니모닉 시드를 사용하는 다양한 암호화폐 지갑이 있어 하나의 니모닉 구문으로 여러 암호화폐 지갑을 복구할 수 있습니다.
니모닉을 사용할 때는 단어들을 정확한 순서대로 기록해두고, 누구와도 공유하지 않고 안전한 장소에 보관하는 것이 매우 중요합니다. 니모닉 구문을 탈취당하면, 해커가 사용자의 지갑을 복구하고 암호화폐를 도난당할 수 있기 때문입니다.
니모닉은 어떻게 생성되는 것인가요?
비트코인 니모닉 생성 원리는 BIP-39라는 표준을 따릅니다. 비트코인 니모닉 생성 과정은 대략 다음과 같습니다.
(무작위 데이터 생성) 암호화폐 지갑은 먼저 일정한 길이의 무작위 데이터를 생성합니다. 이 데이터는 주로 128비트, 160비트, 192비트, 224비트, 256비트 중 하나의 길이를 가집니다. 이 길이에 따라 니모닉 구문은 12, 15, 18, 21, 24개의 단어로 이루어집니다.
(체크섬 생성) 생성된 무작위 데이터에 대해 체크섬을 생성하고 이를 무작위 데이터에 추가합니다. 체크섬은 데이터의 정확성을 검증하는데 사용되며, 니모닉 구문을 복구할 때 오류를 감지하는 역할을 합니다.
(데이터를 단어로 변환) 체크섬이 추가된 데이터를 여러 개의 단어로 변환합니다. 이 과정에서 BIP-39 표준에 따라 2048개의 단어로 구성된 사전을 사용합니다. 이 사전의 각 단어에는 고유한 인덱스가 있으며, 데이터를 11비트 블록으로 나눈 후 각 블록에 해당하는 인덱스의 단어로 변환합니다.
(니모닉 구문 생성) 변환된 단어들을 순서대로 나열하여 최종적인 니모닉 구문을 생성합니다. 이 구문은 사용자가 기억하기 쉽고, 지갑 복구를 위해 사용됩니다.
비트코인 니모닉 생성 원리를 통해 사용자는 지갑을 복구하거나 여러 암호화폐 지갑을 사용할 때 단어로 구성된 니모닉 구문만 기억하면 됩니다.
니모닉 이외에 추가 단어를 지정하여 보안성을 높일 수도 있나요?
지갑을 만들 때 추가 단어를 사용하면 보안성을 높일 수 있습니다. 이러한 추가 단어를 패스프레이즈(Passphrase)라고 합니다. 니모닉은 이미 지갑의 개인 키를 복구하는데 사용되는 여러 단어로 구성되어 있지만, 추가로 패스프레이즈를 사용하면 이를 ‘제 25의 단어’처럼 생각할 수 있습니다.
패스프레이즈를 사용하면 다음과 같은 이점이 있습니다.
(더 강력한 보안) 패스프레이즈를 사용하면 니모닉만 가지고 개인 키를 복구하기 어렵게 되어 해커들이 지갑에 접근하기 어려워집니다.
(다중 계정) 패스프레이즈를 변경하면 새로운 개인 키와 공개 키가 생성됩니다. 이를 통해 여러 개의 계정을 동일한 니모닉으로 관리할 수 있습니다.
그러나 패스프레이즈를 사용할 때 주의해야 할 점도 있습니다. 패스프레이즈를 잃어버리면 니모닉만으로는 지갑을 복구할 수 없습니다. 따라서 패스프레이즈도 안전하게 보관해야 합니다. 패스프레이즈를 사용하면 복구 과정이 더 복잡해집니다. 지갑을 복구할 때 마다 패스프레이즈를 입력해야 하므로 사용자 친화적이지 않을 수 있습니다.
패스프레이즈를 사용하면 보안성을 높일 수 있지만, 동시에 안전하게 보관하고 관리해야 하는 책임도 커집니다. 따라서 이를 잘 고려하여 패스프레이즈 사용 여부를 결정해야 합니다.
니모닉은 영어로만 사용할 수 있나요?
기본적으로 BIP39는 영어로 된 니모닉을 사용하고 있지만, 다른 언어로 된 니모닉 목록도 있습니다.
BIP39는 이미 한국어, 중국어(간체자와 번체자), 일본어, 프랑스어, 이탈리아어, 스페인어 등 여러 언어로 된 니모닉 목록을 지원하고 있습니다. 이를 사용하면 해당 언어로 된 니모닉 코드로 암호화폐 지갑을 복구할 수 있습니다.
하지만 언어별로 지원되는 니모닉 목록이 다르기 때문에 복구를 위해 원래 사용한 언어와 동일한 언어로 된 니모닉 목록을 사용해야 합니다.
니모닉을 안전하게 보관하는 방법은 무엇인가요?
니모닉을 안전하게 보관하는 것은 암호화폐 지갑의 보안을 유지하는 데 매우 중요합니다. 니모닉이 노출되면 지갑의 암호화폐를 잃을 수 있기 때문입니다. 다음은 니모닉을 안전하게 보관하는 몇 가지 방법입니다.
(종이에 적어두기) 니모닉을 종이에 손으로 적어두고, 물리적으로 안전한 곳에 보관해야 합니다. 방화금고나 금고 등에 저장하는 것이 좋습니다. 이 방법은 전자적인 위협으로부터 안전하지만 종이가 물에 젖거나 탈 수 있으므로 주의해야 합니다.
(금속 플레이트 사용) 니모닉을 금속 플레이트에 새겨 놓으면 물, 불, 기타 환경적 요인으로부터 더 안전하게 보관할 수 있습니다. 이 방법은 비교적 비싼 편이지만 니모닉을 오랫동안 보관할 때 매우 유용합니다.
(암호화된 파일로 저장) 니모닉을 암호화된 파일로 저장하여 컴퓨터나 USB 드라이브에 보관할 수도 있습니다. 이 경우 강력한 암호를 사용해 파일을 암호화해야 하며, 가능하면 보관 장소를 여러 곳에 분산시켜 놓는 것이 좋습니다.
(하드웨어 지갑 사용) 하드웨어 지갑은 물리적인 장치로 개인 키와 니모닉을 안전하게 저장할 수 있습니다. 하드웨어 지갑은 컴퓨터의 보안 취약점과 독립적이므로 비교적 안전한 옵션이라고 할 수 있습니다.
어떤 방법을 사용하든 다음 사항에 유의해야 합니다.
여러 보관 장소에 백업을 만들어 두어야 합니다. 하나의 장소에서 문제가 발생할 경우 다른 곳에서 복구할 수 있습니다.
니모닉을 인터넷에 연결된 장치에 저장하면 안됩니다. 클라우드 서비스나 이메일, 스마트폰 등은 해킹의 위험이 높으므로 니모닉을 저장하기에 적합하지 않습니다.
니모닉을 누구와도 공유하지 않아야 합니다. 니모닉을 알면 어느 공간이든 모든 것을 인출할 수 있다는 사실을 기억해야 합니다.
니모닉과 패스프레이즈를 따로 보관해야 합니다. 니모닉과 패스프레이즈를 함께 보관하면 해커나 도둑이 두 정보를 모두 획득할 수 있는 위험이 있습니다. 따라서 두 정보를 별도의 안전한 위치에 보관하는 것이 좋습니다.
여러 사람이 공동으로 관리하는 비트코인 지갑을 만들 수 있나요?
여러 사람이 공동으로 관리하는 비트코인 지갑을 만들 수 있습니다. 이러한 종류의 지갑을 '다중 서명(Multisig)' 지갑이라고 부릅니다. 다중 서명 지갑은 여러 개의 개인 키를 사용하여 트랜잭션에 서명해야 하며, 일정 수의 서명이 모두 완료되어야만 트랜잭션이 유효하게 됩니다.
다중 서명 지갑의 가장 일반적인 설정은 'M-of-N'입니다. 여기서 M은 필요한 서명 수를 나타내고, N은 관련된 전체 키의 수를 의미합니다. 예를 들어, 2-of-3 다중 서명 지갑의 경우 총 3개의 키가 있고, 트랜잭션을 처리하려면 최소 2개의 키로 서명해야 합니다.
이러한 다중 서명 지갑은 회사, 비영리 단체, 가족 등에서 자산을 공동 관리하는 데 사용될 수 있으며, 보안성을 높이고 자금의 분산 관리를 가능하게 합니다. 또한 여러 참여자들이 동의해야만 자금을 이동시킬 수 있기 때문에 사기나 잘못된 거래를 방지하는 데 도움이 됩니다.
스패로우(Sparrow) 지갑은 비트코인을 위한 사용자 친화적인 오픈 소스 소프트웨어 지갑입니다. 스패로우 지갑을 사용하여 다중 서명 지갑을 만드는 절차를 예시로 설명하겠습니다.
(설치) https://sparrowwallet.com/ 에서 다운로드하고 설치합니다.
(실행) 설치를 완료한 후 스패로우 지갑을 실행합니다.
(새 지갑 만들기) 스패로우 지갑의 초기 화면에서 ‘새 지갑’을 선택합니다.
(다중 서명 지갑 설정) 화면에서 ‘다중 서명’을 선택합니다.
(M과 N 설정) 필요한 서명 수(M)와 전체 키 수(N)를 선택합니다. 예를 들어, 2-of-3 다중 서명 지갑을 만들려면, M을 2로, N을 3으로 설정합니다.
(서명자 추가) 이제 각 서명자의 확장 공개 키(xpub)를 추가해야 합니다. 각 서명자의 xpub를 입력하고, ‘서명자 추가’를 클릭하여 모든 서명자의 xpub를 입력합니다. 각 서명자는 자신의 지갑 소프트웨어에서 확장 공개 키를 찾을 수 있습니다. 모든 xpub를 입력한 후 다음으로 넘어갑니다.
(지갑 이름 설정) 지갑의 이름을 입력하고 ‘만들기’를 클릭하여 다중 서명 지갑을 완성합니다.
이제 다중 서명 지갑을 사용할 수 있습니다. 다중 서명 지갑 생성의 절차는 지갑마다 다르므로 선택한 지갑의 절차를 확인하여 지갑을 생성하시기 바랍니다. 트랜잭션을 보내려면 설정한 M개의 서명이 필요하므로 지갑에 있는 다른 참여자들이 트랜잭션에 서명해야 합니다. 이렇게 함으로써 다중 서명 지갑은 공동 관리와 높은 수준의 보안을 제공합니다.
Last updated