Eos离线签名PHP代码

作者: 编程狂魔 | 来源:发表于2018-12-11 09:15 被阅读17次

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代码

    EOS区块链的钱包服务器Keosd,提供了sign_transaction开发接口,允许开发者进行交易签名。 但是...

  • Eos离线密钥生成的PHP代码

    虽然EOS的密钥算法类似于比特币,但做了一些调整,定义了自己的格式。开发包EosTool包含了EOS离线密钥生成模...

  • EOS PHP 开发包

    在网上找到个PHP的EOS RPC客户端,另外提供EOS-ECC方法和离线交易,在这里记录一下,挺好用的 欢迎大家...

  • 2018-03-05 java和php json字符串传输造成的

    java代码详见阿里巴巴录音转文字代码; php代码 原php验证签名有误:: 首先json数据和java的jso...

  • 如何获得EOS COIN|imtoken用户篇

    昨天的文章说明了一条经过映射的私钥其实是对应多份EOS主网资产的,只需完成私钥的离线签名验证,即可获得已启动EOS...

  • IOS超级签名原理及实现

    现在大部分超级签名原理及实现都是基于linux平台来实现签名的,代码都是java,php的需要各种部署,各种...

  • IOS超级签名实现

    现在大部分超级签名原理及实现都是基于linux平台来实现签名的,代码都是java,php的需要各种部署,各种调用第...

  • ETH 离线签名及代币离线签名

    ETH 签名 ETH代币签名

  • iOS重签名了解一下

    什么是代码签名 签名: 确保被签名文件的有效性 代码签名:iOS里的代码签名,简单概括就是用Mac上的私钥,对ap...

  • 2019-11-14

    bitcion 离线签名加入依赖 //bip44 //签名 在构建交易时 拿到UTXO后可以通过rpc来构建未签...

网友评论

    本文标题:Eos离线签名PHP代码

    本文链接:https://www.haomeiwen.com/subject/lptshqtx.html