본문으로 건너뛰기

첫 지갑 생성


API 인증

WaaS API를 호출하기 위해서는 콘솔에서 발급받은 인증 정보가 필요합니다. 콘솔 계정은 문의하기로 요청해주시기 바랍니다.

  • API Key: 각 프로젝트를 식별하는 공개 키입니다.
  • API Secret: 서버 간 통신 시 인증을 위해 사용되는 비밀 키로, 절대 클라이언트 측에 노출되지 않도록 주의하십시오.
  • 설정 방법: ABC WaaS 콘솔 > Project 선택 > [설정] > [API Key]에서 발급 및 재발급이 가능합니다.

인증 흐름

username을 식별자로 사용하며, 가입 여부 확인 후 즉시 계정을 생성하고 로그인하는 흐름입니다.

1. 계정 생성 가능 여부 조회

사용자가 사용할 username이 가입 가능한 상태인지 먼저 확인합니다.

  • API: GET /member/user-management/v3/{username}
  • API 콘솔: 가입 가능 여부 조회
  • username 규격: 영문 대소문자, 숫자, 특수문자를 포함한 5~64자 이내

2. 계정 생성 (회원 가입)

가입이 가능한 경우, 해당 username으로 계정을 생성합니다.

  • API: POST /member/user-management/v3/signup
  • API 콘솔: 회원 가입
  • 성공 시: 201 Created

3. 로그인 및 토큰 발급

생성된 계정으로 로그인하여 이후 MPC 및 Core 서비스 이용에 필요한 인증 토큰을 획득합니다.

  • API: POST /auth/auth-service/v3/login
  • API 콘솔: 로그인
  • Request Body: grant_type=client_credentials, username={username}
  • 결과: JSON 형태의 access_token 발급

지갑 생성

로그인을 통해 획득한 access_token을 지갑 생성 API의 입력값으로 전달하면, MPC 엔진이 해당 사용자를 위한 분산 키 조각을 생성하고 이를 블록체인 네트워크 지갑 주소와 바인딩합니다.

1. 지갑 키 생성 (Generate MPC Key)

  • 키쉐어 생성: Server-side, Mobile SDK
  • Header에 access_token 포함 필수
  • MPC 키 할당: WaaS 서버가 토큰이 유효한 username인지 확인한 뒤 보안 연산을 시작합니다.
  • 지갑 주소 반환: 생성된 공개키로부터 도출된 지갑 주소(address)를 즉시 반환합니다.
중요

고객은 반환되는 모든 값(key_id, curve, public_key, secret_store, encrypted_share)을 안전하게 저장해야 합니다.

2. 지갑 주소 조회 (Get Wallet Info)

생성된 키로부터 실제 블록체인 네트워크(EVM, Solana 등)에서 사용할 공개 주소를 도출해 확인하는 단계입니다.

  • 지갑 정보 조회: Server-side, Mobile SDK
  • Header에 access_token 포함 필수
  • 생성된 MPC 키 정보를 기반으로 네트워크별 지갑 주소(address)를 반환합니다.
  • 활용: 이후 Core API로 트랜잭션을 전송할 때, 여기서 확인한 주소를 송신처(From)로 사용합니다.