MPC 키 생성하기
MPC 키는 회사(Company) 단위로 생성되며, 생성된 키는 지갑의 자식 주소를 생성할 때 연결하여 사용할 수 있습니다.
키 생성 흐름
- MPC 키 생성 신청: 고객사는 옥텟 API를 호출하여 키 생성 작업을 요청하고 인증 토큰을 받습니다.
- MPC 에이전트 키 생성 요청: 발급받은 토큰과 UUID를 통해 고객사 인프라 내의 MPC 에이전트가 실제 키 생성 연산을 시작합니다.
- User Key Share 추출 및 전달: 연산 완료 후, MPC 에이전트에서 생성된 User Key Share를 조회하여 엔드유저에게 안전하게 전달합니다.
- 에이전트 내 키 삭제: 보안을 위해 에이전트에 일시 저장된 User Key Share를 삭제합니다.
상세 단계
1단계: 옥텟에 키 생성 신청
MPC 키 생성 신청 API를 호출합니다.
- 응답값:
uuid(작업 고유 ID),token(MPC 에이전트 인증용 JWT)
2단계: MPC 에이전트 작업 요청
1단계에서 받은 정보를 사용하여 고객사 내 MPC 에이전트에 요청을 보냅니다.
- 작업: MPC 에이전트와 옥텟 MPC Worker 간의 통신을 통해 키 조각들이 분산 생성됩니다.
3단계: 엔드유저 키 전달 및 관리
- 키 조회: MPC 에이전트의 조회 API를 통해 생성된 User Key Share를 가져옵니다.
- 키 전달: 가져온 User Key Share를 엔드유저에게 전달합니다.
- 에이전트 내 삭제: 전달이 완료되면 에이전트의 삭제 API를 호출하여 고객사 서버에 남은 User Key Share을 지웁니다.
4단계: 상태 확인
키 생성 연산의 진행 상황이나 최종 결과는 옥텟 API로 확인할 수 있습니다.
- 생성 상태 조회: MPC 키 생성 신청 정보 조회
- 최종 키 정보 조회: MPC 키 조회 (공개키 정보 등 포함)
자식 주소 생성 시 MPC 키 연결
MPC 키 생성이 완료되면, 지갑 내에서 해당 키를 사용하는 주소를 만들 수 있습니다.
- 방법: 자식 주소 생성 API 호출 시
mpcKeyUuid필드에 위에서 생성한 키의uuid를 입력합니다. - 이 주소로 발생하는 모든 출금은 해당 MPC 키의 서명이 필요하게 됩니다.
Updated about 21 hours ago
