Eos离线签名PHP代码

栏目: PHP · 发布时间: 7年前

内容简介:EOS区块链的钱包服务器Keosd,提供了sign_transaction开发接口,允许开发者进行交易签名。 但是,如果我们希望自己管理密钥而不是交给keosd管理,应该如何在PHP代码中实现交易的离线 签名功能?答案是使用实例化

EOS区块链的钱包服务器Keosd,提供了sign_transaction开发接口,允许开发者进行交易签名。 但是,如果我们希望自己管理密钥而不是交给keosd管理,应该如何在 PHP 代码中实现交易的离线 签名功能?

答案是使用 EosTool 这个用于EOS应用开发的PHP包。EosTool的 LocalSigner 类可以轻松实现对EOS交易的离线签名。 例如,下面的代码使用自己管理的私钥来签名一个代币转账交易:

use EosTool\Signer\LocalSigner;

$tx =  [
  'expiration'=>'2018-12-04T17:00:00',
  'ref_block_num' => 2878,
  'ref_block_prefix' => 29012031,
  'max_net_usage_words' => 0,
  'max_cpu_usage_ms' => 0,
  'delay_sec' => 0,
  'context_free_actions' => [],
  'actions' => [[
    'account' => 'eosio.token',
    'name' => 'transfer',
    'authorization' => [[
      'actor' => 'eosio',
      'permission' => 'active'
    ]],
    'data' => '1122334455667788990011223344556677.....889900'
  ]],
  'transaction_extensions' => []
];
$pubKeys = [...];
$chainId = '...';
$signer = new LocalSigner(['5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3']/*private keys*/);
$signatures = $signer->sign($tx,$pubKeys,$chainId);

实例化 LocalSigner 需要传入一组用于签名的私钥,然后调用其 sign() 方法传入交易发起账户公钥数组 及区块链ID,返回结果就是交易的权威签名数组。

EosTool下载地址: http://sc.hubwiz.com/codebag/eos-php-sdk/


以上所述就是小编给大家介绍的《Eos离线签名PHP代码》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Code

Code

Charles Petzold / Microsoft Press / 2000-10-21 / USD 29.99

Paperback Edition What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of ......一起来看看 《Code》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器