지갑 개념

지갑은 입출금에 필요한 주소와 키, 기능의 논리적인 묶음입니다. 지갑은 플랫폼 별로 생성할 수 있으며, 같은 플랫폼의 지갑을 여러 개 생성할 수 있습니다. 하나의 지갑에는 여러 개의 주소와 키가 존재할 수 있습니다.

938

그림 1 : 지갑 개념

같은 플랫폼의 코인과 토큰은 하나의 지갑에 함께 보관할 수 있습니다. 그러나 다른 플랫폼의 자산은 하나의 지갑에 함께 보관할 수 없습니다. 예를 들어 비트코인과 이더리움을 사용한다면, 비트코인 지갑과 이더리움 지갑을 각각 생성해야 합니다. 이더리움과 이더리움 기반 토큰을 사용한다면, 하나의 이더리움 지갑에 두 자산을 보관할 수 있습니다.



주소 유형

하나의 지갑에는 여러 개의 주소와 키가 존재할 수 있습니다. 이때 주소는 3가지 유형으로 나뉘며, 다음과 같은 특징을 가집니다.

938

그림 2 : 지갑 주소 유형

1. 대표주소

대표주소는 지갑을 대표하는 주소로, 지갑 당 1개만 존재합니다. 대표주소는 지갑을 만들 때 고객사가 직접 생성하거나 옥텟 시스템 상에서 자동으로 생성됩니다. 대표주소에 대한 프라이빗 키는 고객사와 옥텟이 공동으로 관리하거나 옥텟이 관리합니다.

  • 중앙화 지갑에서는 대표주소에 모든 자산을 보관하기 때문에 대표주소를 필수로 사용해야 합니다.
  • 자식주소 출금 지갑에서는 각 자식주소에 자산을 보관하고 입출금하기 때문에 대표주소를 사용하지 않을 수도 있습니다.

2. 자식주소

자식주소는 대표주소 하위의 주소로, 일반적으로 엔드 유저 당 1개의 자식주소를 발급합니다. 자식주소는 HD 방식으로 니모닉을 통해 순차적으로 생성됩니다. 니모닉은 옥텟에서 관리하기 때문에 각 자식주소에 대한 프라이빗 키 또한 옥텟에서 관리합니다.

  • 중앙화 지갑에서 자식주소는 입금 주소 역할만 합니다. 자식주소의 자산은 대표주소로 집금된 뒤 대표주소에서 외부로 출금됩니다.
  • 자식주소 출금 지갑에서는 자식주소에서 입출금이 모두 가능하여 자식주소의 역할이 커집니다.

3. 수수료주소

수수료주소는 자식주소에 수수료를 충전하는 주소로, 지갑 당 1개만 존재합니다. 수수료주소는 토큰을 지원하는 플랫폼에서만 사용하며, 지갑을 만들 때 옥텟 시스템 상에서 자동으로 생성됩니다. 수수료주소에 대한 프라이빗 키는 옥텟에서 관리합니다.



지갑 유형

중앙화 지갑자식주소 출금 지갑
자산 보관 대표주소에 보관대표주소에 보관
자식주소에 보관
집금 가능불가능
출금 대표주소에서 출금대표주소에서 출금
자식주소에서 출금

1. 중앙화 지갑

거래소나 지갑 등 중앙화 서비스를 구축하려면 중앙화 지갑을 이용해야 합니다. 중앙화 지갑에서는 외부에서 자식주소로 입금된 자산이 대표주소로 집금됩니다. 집금된 자산은 대표주소에 보관되며, 대표주소에서만 외부로 출금할 수 있습니다.

938

그림 3 : 중앙화 지갑 구조

활용 예시

  • 중앙화 거래소 (바이낸스, 빗썸 등)
  • 중앙화 지갑 (토큰뱅크, 클립 등)
  • P2E 게임

2. 자식주소 출금 지갑

트래블룰에 대응하거나 디파이와 같은 탈중앙화 서비스에 호환하려면 자식주소 출금 지갑을 이용하는 것을 권장합니다. 자식주소 출금 지갑은 자식주소에 입금된 자산이 대표주소로 집금되지 않습니다. 각 자산은 자식주소에 그대로 보관되며, 자식주소에서 외부로 출금됩니다. (단, 대표주소에서도 자산을 입출금할 수 있습니다.)

938

그림 4: 자식주소 출금 지갑 구조

활용 예시

  • 중앙화 지갑으로 디파이 서비스를 이용하는 경우