검수요청.png검수요청.png

니모닉

위키원
shoot008 (토론 | 기여)님의 2019년 8월 19일 (월) 10:21 판 (안전하게 보관하는 방법)
이동: 둘러보기, 검색

니모닉(Mnemonic)이란 지갑을 복구하기 위한 12개의 단어이다. 개인키가 너무 복잡한 단어들로 구성되어 있기 때문에, 이를 쉽게 입력할 수 있도록 갖춰진 형식이다. 니모닉의 어원은 그리스 신화의 기억의 여신 므네모시네(Mnemosyne)에서 유래되었다. 므네모시네의 자녀인 뮤즈(Muses)는 올림포스 산의 신들의 축제에서 아폴론을 도와 음악을 연주 하였는데, 악보가 없는 세계라 기억력에 의존하여 연주할 수 있었다고 한다. 그래서 니모닉이라는 어원은 "기억"에 기반하고 있다. 니모닉은 개인키와 같이 유출될 경우 지갑 내 가상화폐를 모두 잃게될 수 있다. 컴퓨터 내 메모장과 같은 곳에 저장하면 악성코드에 노출되어 위험할 수 있다. 그렇기 때문에 암호화하여 저장하는 것을 추천한다. 보통 니모닉과 개인키의 경우 프린트하거나, 어딘가에 적어두고 금고 등 물리적으로 보관하는 것이 가장 안전한 방법이다.

개요

니모닉이란 가장 순수한 형식으로 정보를 쉽게 기억할 수 있는 문자, 단어 또는 연상어의 패턴이다. 니모닉은 단어 12개를 순서대로 맞추는 것으로 암호화된 보안 비밀번호 방식으로 이 니모닉의 문자배열을 초기대로 하지 못하면 어느 누구도 지갑을 열 수 없다. 처음 내 지갑 만들기를 실행했을때 지갑에서 영단어 그룹을 사용하여 고유의 지갑 문구를 생성하게 된다. 이 지갑 문구가 내 지갑의 니모닉이 된다. 니모닉은 12개 또는 24개의 랜덤한 영어 단어로 이루어져 있다.

특징

니모닉은 사용자에게 기억을 편하게 하기 위해 사용되고 있다. 단어 자체는 처음 들어볼지 몰라도 핸드폰 단축키, 줄임말 등으로 우리는 이미 니모닉을 사용하고 있다. 블록체인에서도 니모닉이 사용되고 있으며 이는 우리에게 편의를 제공한다.

안전하게 보관하는 방법

니모닉이 유출되면 내 지갑을 통째로 남에게 주는 것과 마찬가지이기 때문에 니모닉 보안에 신경을 써야 한다. 그래서 대부분의 지갑에서는 니모닉을 절대 다른 사람에게 보여줘서는 안된다고 경고를 하며, 직접 종이에 적어서 잘 보관하라고 한다. 하지만 플레이월렛은 클라우드 백업을 제공합니다. 클라우드 백업의 보안은 인터넷 암호화 통신에 사용하는 SSL 통신만큼 안전합니다.

  1. 절대 암호화하지 않은 니모닉이 클라이언트에서 서버로 전달되지 않게 한다.
  2. 서버 보안에 문제가 생겨서 서버 데이터베이스가 공격자에게 노출이 되더라도 사용자의 니모닉을 공격자가 알 수 없게 한다.
  3. 서버가 안전하더라도 클라이언트가 고객이 아닌 다른 사람의 손에 넘어갔을 때 니모닉 복구가 불가능하게 한다.

첫번 째는 당연하게 보안을 생각하면 지켜야 한다. 두번 째와 세번 째는 기존 암호 통신에서 "키 교환(Key Exchange)"라는 방식을 활용해 해결할 수 있다. 키 교환 방식을 활용하면 서버클라이언트는 각자의 비밀 정보(타원곡선 비대칭 키)를 가지고 안전한 방식으로 키(대칭키)를 공유할 수 있다. 이때 특히 클라이언트에서는 비밀정보를 생성할 때 PIN(Personal Identification Number)을 사용해 한번 더 비밀정보를 보호한다. 그 후, 클라이언트는 AES(미국 표준 암호 알고리즘)과 대칭키를 사용해서 니모닉을 암호화하고, HTTPS를 사용해 암호화한 니모닉을 서버에 전달한다. 서버는 데이터베이스에 서버 자신의 비밀 정보와 암호화한 니모닉만을 저장한다. 클라이언트는 니모닉 암호화가 끝나고 나면 즉시 메모리에서 자체 비밀정보를 제거하며, 아무 정보도 남기지 않는다. 이 상황에서 서버가 공격자의 손에 넘어가더라도, 공격자는 암호화한 니모닉과 서버만의 비밀정보를 얻을 뿐이다. 이 상황에서는 암호화한 니모닉을 복구할 수 없다. 이때 암호화한 니모닉을 깰 수 있는 확률은 극히 낮다. 마찬가지로 지갑이 설치된 핸드폰을 잃어버렸다고 해도 니모닉 복구를 위해서는 서버 인증(이메일, 비밀번호)을 거쳐야 하며, 혹시 서버 인증을 통과했더라도 PIN을 제대로 입력해야 한다. PIN 입력 횟수 제한을 두면 몇번 시도에 실패하면 서버에서는 해당 계정을 잠그고 즉시 사용자 이메일이나 SMS로 통보할 수 있다.

각주

참고자료

같이 보기


  검수요청.png검수요청.png 이 니모닉 문서는 보안에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.