Klaytn에서 Web3j 사용시 송금 단위

안녕하세요 현재 caver-java로 klay 전송 테스트 후 Web3j 로도 테스트 중입니다.

Transfer.sendFunds()에서 Unit을 지정해줘야하는 것으로 알고있는데
KLAY 또는 PEB으로 지정할 수 있는 방법이나 관련된 문서가 있을까요?
현재로서는 ETHER밖에 설정이 안되는 상태입니다.

   Web3j web3 = Web3j.build(new HttpService("https://api.baobab.klaytn.net:8651"));

        Credentials credentials = Credentials.create(SENDER_PRIVATE_KEY);

        TransactionReceipt transactionReceipt = Transfer.sendFunds(
                web3,
                credentials,
                TO_ADDRESS,
                BigDecimal.valueOf(1.0), // value(peb)
                Convert.Unit.ETHER
        ).send();

        String txHash = transactionReceipt.getTransactionHash();

web3 는 이더리움 기반으로 작성된 SDK이기 때문에, 클레이튼의 unit을 이용하시려면 caver를 사용하셔야 합니다. 다만 같은 단위의 매칭되는 Ethereum의 단위를 사용하시면 그대로 이용하실수 있을것이라 생각됩니다.

해당 UNIT은 크게 의미있는게 아니고 SDK에서 사용자 편의를 위해 제공하는 값이라고 생각하시면됩니다.

답변되셨길바랍니다.
감사합니다.

2 Likes

답변 감사합니다.
한가지 더 궁금한 점이 있습니다.
그렇다면 klay 코인을 이체하기 위해서는 web3j 를 사용할 수 없는건가요?
Ethereum의 단위를 사용하면 된다는 말씀은 klaytn의 테스트넷에서 이더를 이체할 수 있다는 말씀이실까요?

web3 상에서는 1 Ether 를 1 Klay로 가정하시면됩니다.
편의를 위한 표기이기때문에 해당 단위는 자릿수에 대한 정의라고 생각하시면됩니다.

즉 1 Klay(Ether) = 10^18 peb(Wei) 입니다

2 Likes