[블록체인] KIP-7

dhkim·2022년 7월 21일
1

블록체인 뽀개기

목록 보기
20/22
post-thumbnail

KIP-7 토큰

KIP-7은 ERC-20을 기반으로 만들어진 내용으로 대체 가능한 토큰(Fungible Token)에 대한 표준입니다.

대체 가능한 토큰은 각 토큰 단위가 동일한 가치를 지니며 모든 가용 토큰끼리 서로 호환이 가능합니다.

KIP-7으로 만든 토큰은 표준 인터페이스를 통해 클레이튼의 모든 토큰들이 지갑에서 탈중앙 거래소에 이르기까지 다른 어플리케이션에서 재사용 할 수 있습니다.

그중 Fungible Token Standard에 대한 내용은 KIP-7에서 찾을 수 있습니다.

KIP-7 : https://kips.klaytn.com/KIPs/kip-7

KIP-7은 ERC-20을 기반으로 만들어진 내용입니다.

KIP-7 vs ERC-20 차이점

다음은 KIP(Klaytn Improvement Proposals)에 기재되어 있는 KIP-7과 ERC-20의 차이점 입니다.

  • 보다 많은 선택 가능한 기능들을 (mint, burn and pause extension) 지원합니다.
  • 모든 토큰의 transfer/ mint/ burn 작업은 이벤트 로그별 추적을 거쳐야 합니다.즉, 송금 작업은 무조건 transfer/ mint/ burn 관련된 작업들에서 발생되어야 합니다.
  • 각 method group에 KIP -13 인터페이스를 구현해야 합니다.

기본적인 KIP-7의 인터페이스 목록

또한 오픈제플린처럼 클레이튼에서는 스마트 컨트랙트 개발을 위한 공식 라이브러리를 제공합니다.

Klaytn-contracts : https://github.com/klaytn/klaytn-contracts

// KIP7 Interface
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
function safeTransfer(address recipient, uint256 amount, bytes data) external;
function safeTransfer(address recipient, uint256 amount) external;
function safeTransferFrom(address sender, address recipient, uint256 amount, bytes data) external;
function safeTransferFrom(address sender, address recipient, uint256 amount) external;

해당 문서에서는 KAS라는 프레임워크를 이용하여 EN노드에 truffle로 빌드하는 방법도 소개합니다.

profile
Blockchain developer

0개의 댓글