webworker01/komodophp

与 Komodo 基区块链交互的库

v0.1.7 2022-06-05 12:26 UTC

This package is auto-updated.

Last update: 2024-09-20 00:37:24 UTC


README

一个用于操作 Komodo 地址和密钥并与 Electrum 服务器交互的库

用法

composer require webworker01/komodophp

地址和密钥操作

请参阅 https://github.com/Bit-Wasp/bitcoin-php 中的文档,以了解如何操作 Komodo 地址和密钥

您将传递 Komodo 对象

use webworker01\Komodo\Komodo;
use BitWasp\Bitcoin\Address\AddressCreator;

$komodo = new Komodo();
$addrCreator = new AddressCreator();

$addressInput = 'RWEBo1Yp4uGkeXPi1ZGQARfLPkGmoW1MwY';

try {
    $address = $addrCreator->fromString($addressInput, $komodo);
} catch ( \BitWasp\Bitcoin\Exceptions\UnrecognizedAddressException $e) {
    $errormessage = 'The address you entered is not valid, please try again';
    echo $errormessage;
}

与 ElectrumX 交互

use webworker01\Komodo\Electrum;

$electrum = new Electrum();

$electrum->connect($electrumhost, $electrumport);
$unspent = $electrum->blockchainAddressListunspent($address);

与 CLI 交互

简单 CLI/RPC 接口,用于与本地运行的完整节点交互。

此类不了解 komodod 中的命令,因此任何数据验证都由守护程序处理。

use webworker01\Komodo\Cli;

$cli = new Cli();

$notarizations = $cli->run('getaddresstxids', [['addresses' => [$notarizationAddress], 'start' => $currentblock, 'end' => $currentendblock]] );

foreach ($notarizations as $tx) {
    $rawtx = $cli->run('getrawtransaction', [$tx, 1]);
}

Opreturn

解码 opreturn 以搜索认证数据

use webworker01\Komodo\Opreturn;

$opreturn = new Opreturn();

$notarisationdata = $opreturn->decode($rawtx->vout[1]->scriptPubKey->hex);