이오스(EOS)
이오스 지갑 구조
이오스의 중앙화 지갑은 다음과 같이 구성되어 있습니다.
- 대표주소
TIP
이오스는 수수료주소와 자식주소를 사용하지 않습니다.
지갑
이오스는 계정명을 대표주소로 사용합니다. 지갑 생성 프로세스가 타 플랫폼과 다르므로, 아래 내용대로 지갑을 생성해야 합니다.
멀티시그 지갑
- 키 생성 프로그램으로 멀티시그 키를 생성합니다.
- 콘솔에서 키 정보를 등록합니다.
항목 | 내용 |
---|---|
대표주소 | 생성할 이오스 계정명을 입력하세요. 계정명은 a-z, 1-5로 구성된 12자리여야 합니다. 예) hexlant12345 |
퍼블릭키 | 키카드의 Address를 입력하세요. |
옥텟키 | 키카드의 RSA Encrypted Octet Key를 입력하세요. |
싱글시그 지갑
대표주소 항목에 생성할 이오스 계정명을 입력하세요. 계정명은 a-z, 1-5로 구성된 12자리여야 합니다. 예) hexlant12345
자식주소
이오스는 자식주소를 생성하지 않기 때문에 엔드 유저가 대표주소로 바로 입금합니다. 이때, 각 엔드 유저의 입금 내역을 구분하기 위해 엔드 유저에게 memo 값을 부여합니다. 엔드 유저는 대표주소로 입금을 진행할 때 memo 값을 입력해야 합니다.
입금
입금 상태
외부에서 보낸 자산이 대표주소에 도착하면 옥텟은 이를 입금으로 인식합니다. 외부에서 자산을 보냈으나 대표주소에 도착하지 않았다면 해당 트랜잭션은 인식되지 않습니다. 따라서 입금 트랜잭션에는 실패(FAILED
) 상태가 없습니다.
상태명 | 내용 |
---|---|
FINALIZED | 입금 트랜잭션이 완료된 상태 |
입금 확인
1. 콘솔에서 확인하기
콘솔의 [입출금 내역]에서 입금 내역을 확인할 수 있습니다. FINALIZED
상태인 입금은 '완료'로 표시됩니다.
2. 웹훅으로 확인하기
대표주소에 입금이 완료되면 입금 웹훅이 전송됩니다. 전송된 웹훅으로 입금 여부를 확인할 수 있습니다. 웹훅 이용 방법과 전송되는 데이터 형태는 웹훅 페이지를 참고하세요.
출금
출금 과정
대표주소에서 외부로 자산을 출금할 수 있습니다.
- 출금을 요청합니다.
- 트랜잭션을 생성합니다.
- 최적 수수료를 계산한 뒤 트랜잭션을 전파합니다.
- 트랜잭션이 블록에 반영되면 출금이 완료됩니다.
출금 상태
트랜잭션이 블록에 포함된 즉시 출금 완료(FINALIZED
) 처리됩니다.
상태명 | 내용 |
---|---|
AWAITING_DECISION | 출금 승인 대기 중인 상태 |
REJECTED | 출금이 거절된 상태 |
AWAITING_WITHDRAWAL | 출금이 승인되어 출금 대기 중인 상태 |
PENDING | 출금 트랜잭션이 생성된 상태 |
FINALIZED | 출금 트랜잭션이 블록에 포함된 상태 |
FAILED | 출금 트랜잭션이 실패한 상태 |
출금하기
출금 신청 API를 호출하면 대표주소에서 외부로 출금을 요청할 수 있습니다. 출금 요청에 성공하면 uuid
값이 반환됩니다. 해당 값으로 출금 진행 상태를 조회할 수 있습니다.
Response 예시
{
"uuid": "8bc699a0-7dbd-4b34-b546-e908b448907d"
}
출금 확인
1. 콘솔에서 확인하기
콘솔의 [입출금 내역]에서 출금 내역을 확인할 수 있습니다. AWAITING_WITHDRAWAL
와 PENDING
상태인 출금은 '진행'으로 표시되며, FINALIZED
상태인 출금은 '완료'로 표시됩니다.
2. API로 확인하기
출금 트랜잭션 정보 조회 API를 호출하면 특정 출금 트랜잭션의 진행 상태를 확인할 수 있습니다.
Response 예시
{
"idx": 242657,
"uuid": "d47e020f-87e7-4993-90a8-6a2256c0c29b",
"type": "WITHDRAWAL",
"txid": "80562bfd224c12d998e1962787cd7573d3a7d24ea97a2de98e453b5b3ee9f119",
"fromAddress": "staging12345",
"toAddress": "staging54321",
"amount": "100.00000000000000000000",
"usedFee": "0.00100000000000000000",
"nonce": null,
"blockHeight": "35807818",
"serialized": "12000022000000002402219FCF201B0222625B6140000000000F42406840000000000003E8732103A0A29F10A42C163999C7C0A579937D62EB39B5DCF267B1D4A38C7C96387A023274473045022100E9175A0CB20D2A69A1546AD5ADCD32B04FCCB5792E5F2EBD0207666D3798AF7F0220150BA3E1EDCCB06492D45F112E3D51BD3DB13D2CAE94BF8E400E64452571165D81143EE083FB424D1F78352B71F17982D02A2EE5E5B783140B4D4A8647BF7A9F5335F5D6E8869406AC2E51E7",
"memo": "",
"status": "FINALIZED",
"outputIndex": 0,
"createdDate": "2023-03-02T03:34:28.627Z",
"modifiedDate": "2023-03-02T03:34:30.924Z",
"unfinalizedDate": "2023-03-02T03:34:31.000Z",
"finalizedDate": "2023-03-02T03:34:31.000Z",
"failedDate": null,
"coin": {
"idx": 118,
"symbol": "EOS",
"nameKo": "이오스",
"nameEn": "Eos",
"status": "ACTIVATED",
"type": "DEFAULT",
"contractAddress": null,
"decimals": 4,
"createdDate": "2023-03-23T16:03:28.216Z",
"modifiedDate": "2023-07-13T05:21:13.798Z"
}
}
3. 웹훅으로 확인하기
대표주소에서 외부로 출금이 완료되면 출금 웹훅이 전송됩니다. 전송된 웹훅으로 출금 여부를 확인할 수 있습니다. 웹훅 이용 방법과 전송되는 데이터 형태는 웹훅 페이지를 참고하세요.
잔액 조회 기준
주소 잔액 조회 API를 호출하면 특정 주소에 보관된 자산의 잔액을 확인할 수 있습니다. 이때 조회되는 잔액은 총 잔액(Total Balance)과 사용 가능 잔액(Liquid Balance)으로 나누어집니다.
- 총 잔액은 confirmation이 1 이상인 모든 자산을 의미합니다.
- 사용 가능 잔액은 출금 가능한 자산을 의미합니다.
수수료
이오스는 트랜잭션 수수료로 EOS를 지불하지 않고 CPU, NET, RAM 자원을 사용합니다. 사용 가능한 CPU, NET, RAM 자원이 없을 경우 트랜잭션을 요청할 수 없습니다. CPU, NET 자원의 경우 하루 단위로 초기화됩니다.
자원 종류 | 설명 |
---|---|
CPU | CPU는 트랜잭션 처리 능력입니다. 트랜잭션을 처리할 때 사용되며, 테스트넷의 경우 PowerUp을 진행하여 주기적으로 충전할 수 있습니다. 메인넷은 옥텟에서 매일 PowerUp을 대행해 드립니다. |
NET | NET은 트랜잭션을 처리하기 위해 사용되는 네트워크의 BP입니다. 트랜잭션을 처리할 때 사용되며, 테스트넷의 경우 PowerUp을 진행하여 주기적으로 충전할 수 있습니다. 메인넷은 옥텟에서 매일 PowerUp을 대행해 드립니다. |
RAM | RAM은 블록체인 상에 데이터를 저장할 수 있는 메모리 공간에 대한 비용입니다. RAM의 경우 옥텟에서 따로 관리하지 않으며, 이는 구매하여 사용해 주셔야 합니다. |
Faucet
테스트넷일 경우 Faucet 사이트에서 테스트용 EOS를 얻은 뒤 입금해야 합니다. 테스트넷에 실제 EOS를 입금하면 입금이 인식되지 않습니다.
Updated 4 months ago