Web3js

為什麼我們在廣播交易之前使用 ethereumjs-tx 包的 serialize 功能

  • January 24, 2020

我只想知道serialize我們在廣播交易之前使用的功能的目的/功能:

const serializedTransaction = tx.serialize()
const raw = '0x' + serializedTransaction.toString('hex')

這是我使用序列化函式的一段程式碼。

serialize 函式用於將 javascript 交易對象轉換為交易的 RLP 編碼。RLP 編碼過程使用標準方法將結構/對象編碼為字節,以便它們可以從一個應用程序/庫發送和理解到另一個應用程序/庫 - 與它們使用的語言無關。

在這種情況下 - 交易是使用 ethereumjs-tx 創建的,可能傳遞給 web3 或 ethers,然後傳遞給區塊鏈節點。所有三個步驟都需要處理和理解事務,因此以它通過的每個庫/應用程序可以使用的格式來處理它是很重要的。

RLP 編碼

ethereum-js-tx 序列化

引用自:https://ethereum.stackexchange.com/questions/79302