EOS는 KEY가 왜 이렇게 많은거죠?

EOS 입문자를 위한 한 페이지 개념 정리_계정편_KEY

NOVA Wallet
NOVA WALLET
Published in
5 min readSep 3, 2018

--

안녕하세요 NOVA팀 입니다.

EOS 계정을 생성하실 때 가장 처음에 맞닥들이는 어려움이 바로 KEY가 아닌가 싶습니다. 어떤 서비스를 이용할 때 현재 우리에게 익숙한건 ID와 비밀번호 정도이니까요. 심지여 요즘은 간편 로그인으로도 이용하는 추세라 이런 방식의 계정을 생각하셨다면 EOS 계정은 너무나 어렵게 느껴지실수도 있겠습니다.

아이폰 X Face ID 광고가 생각 나네요. 비밀번호가 요즘 우리에게 이렇게 귀찮은 존재죠.

하지만 이제 막 성장 초기 단계에 있는 EOS에서 충분한 시간과 축적된 정보를 바탕으로한 요즘의 보편화된 서비스 경험을 기대하는 것은 아무래도 무리가 있는 것 같습니다. 그래도 언젠간 EOS 세계에서도 누구나 간편하게 접근할 수 있는 UI, UX를 볼 수 있는 날이 오겠죠? ^____^

EOS 성장 초기와 함께 하고 있는 지금 우리는 조금 더 너그러운 마음으로 지금의 EOS를 바라보고 알아갈 필요가 있겠습니다. 그런 맥락에서 EOS 계정을 생성하고 이용하려 하는 우리에게 닥쳐온 현실은 Owner Key, Active Key, Public Key, Private Key, 이 복잡한 네 종류의 키입니다. 흡사 비밀번호가 4개라는 이야기야? 라고 생각하시기 쉽지만 비빌번호와 다른 개념이니 설명을 드리도록 하겠습니다.

Public Key 와 Private Key

EOS Key는 Public Key와 Private Key로 구성됩니다. Public Key는 계정을 인증해주는 역할을 하며, Private Key는 계정의 권한을 인증하는 역할을 하는데요.

그럼 ID랑 비밀번호랑 다를게 뭐죠? 그럴거면 계정명은 왜 따로 있는거죠?

다 이유가 있답니다. Public Key와 Private Key를 생성하셨을 때 그 모양새를 확인하셨나요? 어마어마하게 길고 복잡한, 외우기 힘든 문자열로 나열된 형태를 보셨을 거에요.

서비스를 이용하는데 이런 아이디로 이용한다고 하면 얼마나 불편할까요? 그래서 우리가 일상적으로 사용할 수 있는 계정명을 만들어 키 쌍(Key Pair)에 연결시키는 방법을 고안해내게 됩니다. 계정명을 입력하면 블록체인 상에서 계정명과 연결된 키에 접속하게 되는 것이죠. 이제 EOS 세계에서 키 쌍을 이야기하면 Public Key 와 Active Key가 묶여진 한 쌍을 떠올리실 수 있으시겠죠?

Owner Key 와 Active Key

EOS 계정에 역할이 다른 두 가지 키를 등록하게 되어 있는데요. 이 두 키가 Owner Key와 Active Key 입니다. Owner Key는 계정의 소유권에 관련된 키로 계정 권한을 변경할 때 사용하는 키입니다. Active Key는 계정의 활동에 관련된 키로 토큰 전송, 투표 등의 활동에 필요합니다. 그래서 각 키에 Public Key 와 Private Key가 필요하니, Owner Key에 한 쌍, Active Key에 한 쌍, 이렇게 두 쌍의 키가 필요하게 된 것입니다.

사실 많은 분들이 Owner Key와 Active Key를 구별하지 않고 한 개의 키 쌍을 동일하게 등록하여 이용하시는 분이 많이 계시지만 원칙상 두 개의 키 쌍을 이용하도록 되어 있습니다. 보안상의 이유가 있는데요. 혹, Active Key가 유출되었다고 가정해봅시다. Staking 되어있는 자원을 Unstaking 하여 EOS 토큰으로 전송하는데까지 3일이 소요되는데, 그 사이에 실제 계정 주인은 이 3일이라는 시간안에 Owner Key를 가지고 Active Key를 변경하여 계정을 지킬 수 있습니다.

이 뿐만 아니라 언젠가 Owner Key와 Active Key가 별도로 필요한 시스템 혹은 서비스가 생길지도 모르는 일이구요.

EOS 계정과 EOS Key는 n:n 관계이다.

저는 계정을 여러개 만들어 이용하고 싶은데, 각 계정마다 새롭게 키 쌍을 생성해서 관리해야 하나요?

위와 같은 의문이 드실 수 있으실 것 같습니다. 30개의 계정을 가지고 있는 사람이 각각 계정당 한 쌍의 키를 1:1로 생성하여 관리한다 가정해봅시다. 하나의 계정 로그인을 위해 30개의 키 쌍 중 하나를 찾아 넣어야 하는 어려움이 생기죠. 여기에 먼저 답을 드리자면 하나의 키 쌍을 30개의 모든 계정에 사용할 수 있습니다.

EOS 시스템에서는 계정과 키 쌍을 연결이라는 개념으로 이용하고 있기 때문에 키 쌍을 이리 붙였다 저리 붙였다 유연하게 움직일 수 있습니다. 다시말해 한 쌍의 키를 여러 계정에 연결할 수 있고, 여러 쌍의 키를 한 계정에 연결할 수 있습니다. 하지만 각 계정은 연동 되는 것이 아닌 독립적이니 참고해주세요. 키 쌍만 같은 겁니다.

그렇다고 설마 30개의 계정에 하나의 키쌍을 동일하게 등록하시지는 않을꺼죠? 위의 예는 키에 대한 이해를 도와드리기 위해 극단적으로 상황을 설정한 예시입니다. 모든 계정에 같읕 키쌍을 등록할 경우 프라이빗키를 실수로 잃어버리시게 되면 모든 계정의 비밀번호가 노출되는 난감한 상황이 생길 수 있습니다. 이 부분도 계정 관리에 꼭 참고하셔서 이용해주세요.

이렇게 EOS Key에 대해서 아는대로 설명을 드려보았는데요. 무엇보다도 Private Key를 분실하지 않는 것이 가장 중요합니다. 아직은 분실한 키를 찾으실 수 있는 방편이 마련되어 있지 않기 때문입니다. 반드시 오프라인 상에 저장해놓으시고 잃어버리지 않을 수 있도록 조심 또 조심해주세요.

그럼 다음 편에서 만나요^^

[NOVA Wallet 공식 채널]

Android Download | iOS Download | Homepage | Telegram

--

--