如何创建和签署以太坊交易_币世界+区块链研究实验室

2021-04-18 20:25 栏目:行业动态 来源:网络整理 查看()

由于所有的数字资产都是通过交易创造的,因此签名在任何区块链都扮演着至关重要的角色。如何创建和签署以太坊交易_币世界+区块链研究实验室可以使用JavaScript对象表示法(JSON)描述事务,因此在创建该事务时,使用MyEtherWallet(通过send offline登录后使用)如下所示: { ' nonce ' : '0x 00 ',//0 un decimal ' gas limit ' : '0x 5208 ',//21000 un decimal ' gas price ' : '0x 3b 9 ACA 00 ',//10000000000这与我们交易的内容无关,而是与我们执行交易的方式有关。这是因为在以太网中发送事务时,您必须定义一些其他参数来告诉矿工如何处理您的事务。我们的交易中有两个属性涉及“gas”,这是计算工作量的度量单位,必须先支付给邰方矿工,然后才能将交易提交给区块链网络。

一个是gasPrice(以名为Gwei的单位表示,等于Ethereum原生令牌Ethereum的1/10),另一个是gasLimit,即你的交易允许的最大天然气量。这些值可以从以太网节点进行估计,因此通常由钱包提供商自动填写。

如何创建和签署以太坊交易_币世界+区块链研究实验室

最后但同样重要的是,我们有数据和随机数。如果需要提交一些其他数据,可以作为交易的一部分附上。与智能合同交互时,数据字段将包含您对合同的说明。

随机数(“一次性使用号码”)是以太网用来跟踪事务的号码,它有助于避免网络中的双重开销和重放攻击。有时因为汽油价格低,交易会卡在网络上,所以交易会以更高的价格播出,但同样的随机数在矿工接手后会有效地“取代”网络上的未决交易(一旦“交易”可以“慢慢”看到,就会因为与批准的交易有相同的当前编号而被拒绝)。

签署以太坊交易

抓住我们之前的JSON,我们终于可以继续签约过程了。我们说过,这个过程涉及到ECDSA算法。为了和ECDSA签署交易,我们将使用流行的ethers.js库,它已经打包了对椭圆曲线包的必要调用,以便使用带有ECDSA算法的secp256k1曲线。

如何创建和签署以太坊交易_币世界+区块链研究实验室

结果表明,您签署的交易可以广播到以太网。

0xf 86 b 80843 b 9 ACA 008252089417 a 98 D2 b 11 DFB 784 e 63337d 2170 e 21 cf 5 DD 0463188016345785d 8 a 0008025 a 02 e 47 aa 4c 37 e 7003 af 4 D3 b 7d 20265691 b 6 c 03 Baba 509 c 0556d 21 ACA 82876 CB 4 b 05711 b

您可以直接使用Composer,这是MEW或Alchemy的一个在线实用程序,它允许您使用用于与以太网节点通信eth_sendRawTransaction的RPC API方法将签名的事务传递到以太网网络。

立即签名,稍后再转

如上所述执行的交易签名被称为“离线签名”。由于我们的私钥在我们的控制之下,我们可以使用以太网帐户创建签名验证,并在稍后将其广播到以太网网络。很多在线钱包同时签名和广播(比如Metamask,Portis)。但是,离线签名对于状态通道等应用程序特别有用,这些应用程序是跟踪两个帐户之间余额的智能合同,并且可以在提交签名的交易后转移资金。

离线签名也是分散式交易所(DEXes)的常见做法,在分散式交易所中,买卖订单存储在链外,只有当它们与适合先前签名交易的订单匹配时,才会在链上结算。

有了Portis,你就可以签约交易,与加油站网络(GSN)进行交互。为了与GSN互动,Portis订阅了一个中继站池,可以为您交易的汽油付费。这些中继器订阅分散的合同(比如Ropsten测试网络中的这个),Portis向它们发送请求来中继您的事务。您仍然需要签署交易(毕竟未签署的签名没有意义),但是Portis小部件将在后台执行所有以前的处理,因此即使有了全新的钱包,用户也可以开始签署交易并与智能合同交互。不用ETH也可以付汽油钱。

微信二维码
售前客服二维码

文章均源于网络收集编辑侵删

提示:仅接受技术开发咨询!

郑重申明:资讯文章为网络收集整理,官方公告以外的资讯内容与本站无关!
NFT开发,NFT交易所开发,DAPP开发 Keywords: NFT开发 NFT交易所开发 DAPP开发