本頁面使用機器翻譯自英語,可能包含錯誤或不清楚的語言。如需最準確的信息,請參閱英文原文。由於更新頻繁,部分內容可能與英文原文有出入。請加入我們在 Crowdin 上的努力,幫助我們改進本頁面的翻譯。 (Crowdin translation page, Contributing guide)
收費代表團
TxTypeFeeDelegatedValueTransfer
TxTypeFeeDelegatedValueTransfer 用於用戶發送 KAIA。 由於 Kaia 提供了多種交易類型,使每種交易類型只服務於一個目的,因此 TxTypeFeeDelegatedValueTransfer 只限於將 KAIA 發送到外部擁有的賬戶。 因此,TxTypeFeeDelegatedValueTransfer 只有在 to 是外部擁有的賬戶時才會被接受。 要將 KAIA 轉入智能合約賬戶,請使用 TxTypeFeeDelegatedSmartContractExecution。 該交易類型將進行以下更改。
- 付費者的餘額會減少交易費的金額。
- 發送方的 nonce 增加一個。
valueKAIA 由發送方傳送給接收方。
屬性
| 屬性 | 類型 | 說明 |
|---|---|---|
| type | uint8(Go) | TxTypeFeeDelegatedValueTransfer 的類型。 必須為 0x09。 |
| nonce | uint64 (Go) | 用於唯一標識發件人交易的值。 如果一個發送方生成了兩個具有相同 nonce 的交易,則只執行其中一個。 |
| gasPrice | *big.Int ( Go) | 以 kei 為單位的氣體單價,發件人將支付交易費。 交易費的計算公式為 gas* gasPrice。 例如,如果交易消耗了 10 單位天然氣,而 gasPrice 為 10^18,則交易費為 10 KAIA。 See Unit of KAIA. |
| gas | uint64 (Go) | 交易允許使用的最大燃氣量。 |
| to | common.Address(Go) | 接收轉賬金額的賬戶地址。 |
| value | *big.Int ( Go) | 以 kei 為單位的 KAIA 轉賬金額。 |
| from | common.Address(Go) | 發件人地址。 For more details, see Signature Validation. |
| txSignatures | []{*big.Int, *big.Int, *big.Int} (Go) | 發件人簽名。 For more details, see Signature Validation. |
| feePayer | common.Address(Go) | 繳費人地址。 |
| feePayerSignatures | []{*big.Int, *big.Int, *big.Int} (Go) | 繳費人簽名。 |
寄件人簽名的 RLP 編碼
要對發送方進行簽名,RLP 序列化的方法如下:
SigRLP = encode([encode([type, nonce, gasPrice, gas, to, value, from]), chainid, 0, 0])SigHash = keccak256(SigRLP)Signature = sign(SigHash, <the sender's private key>)
繳費人簽名的 RLP 編碼
要製作繳費人簽名,RLP 序列化工作應如下進行:
SigFeePayerRLP = encode([ encode([type, nonce, gasPrice, gas, to, value, from]), feePayer, chainid, 0, 0 ])SigFeePayerHash = keccak256(SigFeePayerRLP)SignatureFeePayer = sign(SigFeePayerHash, <the fee payer's private key>)