비밀복구구문, 비밀번호 및 개인 키 사용자 가이드
MetaMask 학습으로 이동하시면 웹3 신규 사용자를 위해 특별히 마련한 간단한 학습 환경을 체험할 수 있습니다. 이는 완전히 무료이고 다국어로 제공되며 MetaMask를 사용하여 자신의 위치를 찾는 데 도움이 되는 시뮬레이션과 같은 유용한 도구가 포함되어 있습니다.
MetaMask: 기존과는 다른 계정 보안 방식
퍼블릭 블록체인 기술은 기존의 온라인 기술과는 매우 다른 방식으로 사용자 데이터를 보호합니다. 대부분의 사람들은 일반적인 앱이나 서비스를 사용할 때 계정을 만들고, 비밀번호나 사용자명을 잊어버리면 고객 지원팀에 문의하여 재설정할 수 있다고 생각합니다. 이는 해당 앱이 사용자의 데이터를 회사 소유의 서버에 저장하고 있기 때문입니다.
하지만, MetaMask는 이와 다르게 작동합니다. MetaMask는 사용자의 지갑과 계정을 안전하게 보호하기 위해 서로 다른 세 가지 비밀(Secret), 비밀복구구문, 비밀번호, 그리고 개인 키를 사용합니다. 이제 이 개념들을 하나씩 살펴보겠습니다.
비밀복구구문 소개
MetaMask를 비롯한 암호화폐 분야에서 대부분의 사용자 계정 관련 도구를 뒷받침하는 핵심 기술 중 하나는 시드 구문 입니다. MetaMask에서는 이를 비밀복구구문(SRP) 이라고 합니다.
모든 계정은 비밀복구구문에서 수학적으로 생성됩니다. 비밀복구구문(SRP)은 열쇠고리에 비유할 수 있습니다. 이 열쇠고리에는 원하는 만큼의 개인 키를 보유할 수 있습니다. 이때 각각의 키가 개별 계정을 제어합니다.
이제 좀 더 기술적으로 설명해 보겠습니다.
현재 우리가 알고 있는 시드 구문은 비트코인 개선 제안서(Bitcoin Improvement Proposal 39) 또는 BIP-39라는 표준에 따라 작성된 것입니다. BIP-39는 여러 언어의 특정 단어 목록 등을 규정하는 표준이며, 이 목록에서 무작위성이 매우 높은 방식으로 선택된 단어들이 시드 구문 또는 비밀복구구문을 만드는 데 사용됩니다.
MetaMask의 시드 구문은 12개의 단어로 이루어집니다. 일부 오래된 시드 구문과 하드웨어 지갑 등에서 생성된 시드 구문은 18개 또는 24개의 단어로 구성되기도 합니다.
각 단어는 특정 숫자와 연결되어 있으며, 특정한 순서로 배치되면 매우 긴 숫자를 보다 쉽게 기억할 수 있도록 변환한 형태가 됩니다. 이 숫자는 사용자의 계정을 결정론적 방식(deterministic method) 으로 생성하는 데 사용되는데 이를 결정론적 지갑이라고 합니다. 컴퓨터 과학에서 결정론적이라는 용어는 항상 동일한 결과를 생성하는 과정(일반적으로 알고리즘)을 설명하는 데 사용됩니다. 다시 말해, 비밀복구구문은 여기에서 항상 동일한 계정 세트를 생성합니다.
여기에서 주목할 몇 가지 중요한 기능이 있습니다.
비밀복구구문은 지갑을 제어하는 비밀 정보입니다.
- 누군가가 이 비밀 정보를 알고 있다면, 지갑과 그로부터 생성된 모든 계정에 완전히 접근할 수 있습니다.
MetaMask는 SRP를 보관하지 않습니다. 사용자가 직접 자신의 지갑을 관리합니다.
- MetaMask 담당자는 고객 지원 상황은 물론 어떤 경우에도 절대로 비밀복구구문을 물어보지 않습니다. 누군가 비밀복구구문을 요청한다면 사기를 시도하거나 자금을 탈취하려는 것입니다.
비밀복구구문은 각 계정/주소에 대한 개인 키를 로컬에서 생성합니다.
- 계정은 블록체인에 존재하며, 이러한 개인 키를 사용해 해당 계정의 잠금을 해제할 수 있습니다.
다른 SRP와 개인 키에서 계정을 가져올 수 있습니다.
- 하지만 이러한 계정은 다른 인스턴스에서도 MetaMask에 의해 자동으로 복구되지 않으므로, 직접 다시 추가해야 합니다. 다만 Google/Apple 계정을 MetaMask에 연결한 경우에는 연결된 모든 계정이 자동으로 복원됩니다 (하드웨어 지갑 제외).
- 그 외의 경우, 계정을 직접 가져왔다면, 시드구문에 했던 것과 동일한 방식으로 개인 키를 안전하게 보관해 두어야 앞으로도 이를 다시 가져올 수 있습니다.
확장 프로그램이나 앱을 삭제하면 데이터와 계정에 대한 접근 권한을 잃을 가능성이 높습니다.
- 사용자 데이터는 암호화된 볼트에 로컬로 저장되며, 일부 경우에는 이 볼트에서 SRP를 복구할 수 있습니다.
- MetaMask의 해당 로컬 버전으로 실행한 트랜잭션은 이를 삭제하더라도 모두 블록체인에 기록되어 있습니다.
- 따라서 해당 트랜잭션은 블록 탐색기에도 반영됩니다.
- 동일한 비밀복구구문을 사용해 복구하면(단어 순서까지 동일한 경우) 다른 MetaMask 인스턴스에서도 계속 해당 계정을 사용할 수 있습니다.
핵심은 비밀복구구문을 가지고 있는 한 언제든지 MetaMask를 설치 해제하고 지갑을 복구할 수 있다는 것입니다.
MetaMask 비밀복구구문 사용 시 유의할 점
권장 사항
- 비밀복구구문을 안전한 곳에 적어 두세요. 정확히 어디에 적어야 하는지는 상황에 따라 다르므로 설명하지 않겠습니다.
- 비밀복구구문을 손으로 적어 두는 것이 중요한 이유는 온라인으로 탈취될 위험을 방지할 수 있기 때문입니다. 예를 들어 인터넷에 연결된 클라우드 저장소 폴더에 파일로 저장하면 가능성은 적지만 도난당할 수 있습니다.
- 철자를 검토하고 모든 단어를 순서대로 적었는지 다시 한번 확인하세요.
- 도움이 필요하면 MetaMask 지원팀의 공식 채널에 문의하세요.
주의 사항
- 포스트잇에 적어 컴퓨터에 붙여두는 식으로 누구나 쉽게 찾을 수 있는 곳에 두지 마세요.
- ‘비밀복구구문’이라는 제목의 이메일이나 클라우드 저장 문서처럼 쉽게 해킹당할 수 있는 형태로 보관하지 마세요.
- 누구에게도 비밀복구구문을 알려주지 마세요. MetaMask 지원팀이라고 하더라도 알려주면 안 됩니다.
- 단어의 순서를 바꾸지 마세요.
비밀복구구문 FAQ
시드 구문을 사용했는데 다른 계정이 복구되었어요!
이 문제에 대한 해결 방법은 여기에서 지식 베이스 문서를 참고하세요. 또한 자세한 맥락과 배경 정보는 여기에서 커뮤니티 대화 내용을 참조하세요.
기타 FAQ:
비밀복구구문 없이 계정에 접근하려면 어떻게 해야 하나요?
다른 지갑 소프트웨어에서 시드 구문 가져오기: 파생 경로
비밀복구구문란 무엇이며 지갑을 안전하게 보호하는 방법은 무엇인가요?
비밀번호와 MetaMask
MetaMask는 앱 자체를 보호한다는 한 가지 목적을 위해 암호를 사용합니다. 즉, 모바일 앱이나 브라우저 내 확장 프로그램에서 앱을 열 수 있어야 합니다. 비밀복구구문은 지갑을 복구하거나 생성할 때만 필요하며, 이후에는 자주 사용할 일이 없습니다(다만, 안전한 장소에 백업해 두어야 합니다). 이후에는 비밀번호(또는 모바일에서는 얼굴 인식이나 지문 인식과 같은 생체 인증이 더 일반적으로 사용됨)를 이용해 앱을 잠금해제하게 됩니다. 자세한 내용은 여기의 글을 참조하세요.
MetaMask는 전통적으로 앱 자체를 보호하기 위해 비밀번호를 사용합니다. 즉, 애플리케이션을 여는 데 비밀번호를 사용합니다. 애플리케이션(확장 프로그램 또는 모바일 앱)이 잠기면 비밀번호를 사용해 잠금을 해제합니다. 사용자는 강력한 비밀번호를 설정하고 이를 안전하게 백업해 두어야 합니다. 비밀번호를 잊어버린 경우 MetaMask는 비밀번호 복구를 도와드릴 수 없습니다.
Google 또는 Apple 계정을 MetaMask에 연결한 경우, 비밀번호는 애플리케이션의 잠금을 해제하는 데 도움이 될 뿐 아니라 SRP에 접근하는 데에도 도움이 됩니다. SRP는 암호화된 상태로 다섯 개의 서로 다른 부분으로 분할되어 저장됩니다. Google/Apple 계정과 비밀번호를 함께 사용해야만 SRP를 해독하고 이에 접근할 수 있습니다. SRP와 MetaMask에 접근하려면 이 둘이 모두 필요합니다.
개인 키
비밀복구구문은 해당 지갑에서 생성된 모든 계정을 포함해 지갑을 생성하고 복구하는 데 사용됩니다. 그러나 각 계정에는 고유한 개인 키가 있습니다. 이 개인 키를 사용하면 특정 계정을 가져오거나, 해당 계정만을 다른 지갑으로 가져갈 수 있습니다. 마찬가지로 다른 암호화폐 지갑의 개별 계정도 MetaMask로 가져올 수 있습니다.