멀티시그 수동 서명하기
멀티시그 지갑에서 고객사의 출금 통제권을 강화하기 위해 수동 서명 옵션을 사용할 수 있습니다. 해당 기능을 사용하면 옥텟이 생성한 출금 트랜잭션을 받아 고객사 서버에서 직접 서명한 뒤 출금합니다.
옥텟에서는 기본적으로 고객사의 출금 신청 시 트랜잭션 생성 - 서명 - 전파 과정을 자동으로 진행합니다. 하지만 수동 서명 옵션으로 출금을 신청할 경우 옥텟에서는 서명 과정을 제외한 트랜잭션 생성 및 전파 과정만 진행합니다. 옥텟이 생성한 트랜잭션에 직접 서명한 뒤, 서명된 트랜잭션 값을 보내면 옥텟에서 최종 전파합니다.
수동 서명하기
- 옥텟키 조회 API를 호출하여 옥텟키를 조회합니다. 암호화된 옥텟키가 반환됩니다.
- 암호화된 옥텟키를 복호화합니다.
- 옥텟키와 유저키를 합성하여, 주소의 프라이빗 키를 도출합니다.
- 출금 신청 API를 호출합니다. 이때,
autoSigning
필드를false
로 신청합니다. - 출금 신청 정보 조회 API나 또는 출금 서명 대기 웹훅으로 생성된 트랜잭션을 확인합니다.
- 생성된 serializedUnsignedTransaction을 3단계에서 도출한 프라이빗 키로 서명합니다.
- 서명된 출금 트랜잭션 등록 API를 호출하여 해당 출금에 대한 serializedSignedTransaction을 등록합니다.
출금 신청 상태
상태명 | 내용 |
---|---|
AWAITING_BUILD | 출금이 신청되었으며, 출금 트랜잭션이 생성되기 전의 상태 |
AWAITING_SIGNING | 옥텟이 출금 트랜잭션을 생성했으며, 고객사가 서명하기 전의 상태 |
AWAITING_WITHDRAWAL | 고객사가 서명하고, 출금 트랜잭션이 전파되기 전의 상태 |
SENT | 출금 트랜잭션이 네트워크에 전파된 상태 |
FAILED | 출금 트랜잭션 생성에 실패한 상태 |
출금 트랜잭션 상태
상태명 | 내용 |
---|---|
PENDING | 출금 트랜잭션이 생성된 상태 |
FINALIZED | 출금 트랜잭션이 블록에 포함된 상태 |
FAILED | 출금 트랜잭션이 실패한 상태 |
Updated 7 months ago