electroneum/wallet-manager-php

Electroneum PHP 钱包管理器

0.1.0 2018-10-18 09:50 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:43:28 UTC


README

这是一个用PHP编写的钱包管理器,用于创建和验证Electroneum钱包地址和密钥。

这允许仅使用PHP解决方案;无需运行需要同步区块链的wallet-rpc。

要求

安装

手动安装

解压代码并包含Electroneum WalletManager类

require_once('lib/WalletManager.php');

Composer安装

使用Composer,你可以轻松地安装

composer require electroneum/wallet-manager-php

或者,你可以在你的composer.json中添加以下内容

"require": {
    "electroneum/wallet-manager-php": "^0.1.0"
},
"repositories": [
    {
        "type": "vcs",
        "url": "https://github.com/electroneum/wallet-manager-php"
    }
],

演示

example/demo.php中可以找到演示。

快速使用

最常见的使用,生成一个新的钱包

    $walletManager = new Electroneum\Wallet\WalletManager();
    $wallet = $walletManager->wallet_from_seed();

入门

创建WalletManager()对象,可选地传递所需的助记词语言的ISO 639-1代码

// Default to English
$walletManager = new Electroneum\Wallet\WalletManager();

// French
$walletManager = new Electroneum\Wallet\WalletManager('fr');

目前支持的语言有限,包括

创建钱包

这接受一个可选的种子(32个十六进制字符串),并返回一个包含种子、助记词、钱包地址和花费/查看公私密钥的数组。

$wallet = $walletManager->wallet_from_seed($seed = null);

从助记词创建钱包

这接受一个由空格分隔的助记词字符串,并返回一个包含种子、助记词、钱包地址和花费/查看公私密钥的数组。

$wallet = $walletManager->wallet_from_mnemonic($mnemonicWords);

解码集成钱包

这接受一个集成地址,并返回一个包含集成钱包地址、钱包地址、公观看密钥、公花费密钥和付款ID的数组。

$wallet = $walletManager->integrated_decode($integrated_wallet);

编码集成钱包

这返回一个包含集成钱包地址、钱包地址、公花费密钥、公观看密钥和付款ID的数组。

这可以通过从公花费/查看密钥中可选的付款ID创建。

$iAddress = $walletManager->integrated_encode($public_spend_key, $public_view_key, $payment_id = null);

如果你没有公钥,有一个integrated_encode_address()函数接受钱包地址,将其解码成公钥,然后调用上述函数。因此,如果你有密钥可用,上述方法会更快。

$iAddress = $walletManager->integrated_encode_address($address, $payment_id = null);

从钱包地址获取公钥

这接受一个钱包地址,并解码成公花费和观看密钥

$wallet = $walletManager>decode_address($address);

这返回一个包含钱包地址、网络字节、公花费密钥和公观看密钥的数组。

验证私钥

这根据花费和观看密钥是否属于同一钱包返回一个布尔响应。

$result = $walletManager->verify_privates($privateSpendKey, $privateViewKey);

生成付款ID

生成一个密码学安全的十六进制数,适用于付款ID。

$paymentId = $walletManager->generate_payment_id($length);