이 페이지는 영문에서 기계 번역되었으므로 오역이나 어색한 표현이 있을 수 있습니다. 따라서 정확한 정보는 영어 원문을 참조하시기 바랍니다. 또한 잦은 업데이트로 인해 일부 콘텐츠는 영문이 그대로 남아있을 수 있습니다. Crowdin에서 이 페이지의 번역을 개선하는 데 동참하여 도움을 주세요. (Crowdin translation page, Contributing guide)
트랜잭션 구현
이 가이드는 다양한 트랜잭션 유형, 인코딩, 서명, 네트워크 상호 작용을 다루며 Kaia 네트워크에서 트랜잭션을 구현하는 방법에 대한 포괄적인 개요를 제공합니다.
카이아 트랜잭션 구성 요소
카이아 거래에는 일반적으로 다음과 같은 구성 요소가 포함됩니다:
구성 요소 | 설명 |
---|---|
'부터' | 발신자의 주소입니다. 키 쌍과 주소의 분리로 인해 대부분의 카이아 트랜잭션 유형에 필요합니다. |
to | 이체된 값을 받을 계정 주소입니다. |
값 | 전송할 peb 의 KAIA 양입니다. |
'입력' | 트랜잭션 실행에 사용되는 트랜잭션에 첨부된 데이터입니다. |
v, r, s` | 수신자가 발신자의 주소를 알 수 있도록 발신자가 생성한 암호화 서명입니다. |
nonce | 발신자의 트랜잭션을 고유하게 식별하는 데 사용되는 값입니다. 발신자가 동일한 nonce를 가진 두 개의 트랜잭션을 생성한 경우 하나만 실행됩니다. |
gas | 트랜잭션이 사용할 수 있는 최대 트랜잭션 수수료 금액입니다. |
gasPrice | 발신자가 토큰으로 지불할 금액을 얻기 위한 승수입니다. 발신자가 지불할 토큰의 양은 gas * gasPrice 를 통해 계산됩니다. 예를 들어, 가스값이 10이고 가스가격이 10^18이면 발신자는 트랜잭션 수수료로 10 KAIA를 지불하게 됩니다. KAIA의 단위는 여기에 설명되어 있습니다. |
서명 유효성 검사
카이아는 주소에서 키 쌍을 분리하기 때문에 서명 검증은 일반적인 블록체인과 다릅니다. 보낸 사람` 필드는 발신자를 식별하기 때문에 매우 중요합니다. '보낸 사람' 주소와 연결된 AccountKey는 서명의 유효성을 검사하는 데 사용됩니다.
수수료 위임 및 SenderTxHash
카이아의 수수료 위임 기능을 사용하면 제3자가 거래 수수료를 대신 지불할 수 있습니다. 이를 위해서는 발신자와 수수료 납부자가 각각 한 명씩 두 명의 서명이 필요합니다. 'SenderTxHash'는 수수료 위임 거래를 추적하는 데 매우 중요합니다. 수수료 납부자의 정보가 '없는' 거래의 해시로, 발신자는 수수료 납부자가 서명하기 전에 거래를 추적할 수 있습니다. 발신자는 SenderTxHash
를 사용하여 kaia_getTransactionBySenderTxHash RPC 메서드를 통해 전체 트랜잭션을 검색할 수 있습니다.