PHP实现创建以太坊钱包转账等功能

admin3年前PHP教程53
1.Geth下载

(对以太坊了解不深的可以后面自己查找有关geth的资料,与此类似的客户端还有Ethereum、Parity 、Mist),本文采用windows版(Windows系统:geth-windows-amd64-1.8.3)
ethfans.org/wikis/Ethereum-Geth-Mirror

安装:

windows版的直接傻瓜式安装到放软件的地方,然后打开安装根目录,这时可以看到有个geth.exe的可执行文件,先别急执行;先在该目录下创建一个piccgenesis.json文件。
piccgenesis.json文件内容如下:


{
"config": {
"chainId": 33,
"homesteadBlock": 0,
"eip155Block": 0,
"eip158Block": 0
},
"coinbase": "0x0000000000000000000000000000000000000000",
"difficulty": "0x4",
"extraData": "",
"gasLimit": "0xffffffff",
"nonce": "0x0000000000000042",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"parentHash": “0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp": "0x00",
"alloc": { }
}

配置说明请参考:colabug/4943842
现在使用cmd命令行工具来运行geth.exe,在该终端下执行如下命令:

geth --datadir “chain” init piccgenesis.json

然后在该终端设置json-rpc,命令如下:

geth --rpc --rpccorsdomain * --datadir ./mychain -rpcport 8534 --port 30308 --identity test --networkid 111111111 --rpcaddr 0.0.0.0 --rpcapi admin,miner,db,eth,net,web3,personal --nodiscover console

注:这里用的是测试网络,不需要同步所有区块,如果要正式应用需要一台linux服务器,开启主网同步所有区块,在打开并设置rpc。

2.使用composer下载web3.php

在此之前本人默认你已有一个本地的测试项目(能跑通),本人用的是tp5的测试项目

要求:

php版本大于7.1且php需开启openssl扩展
安装过程:
请先在composer中加入一行

“minimum-stability”: “dev”,

然后在项目根目录下执行(该项目根目录必须)

composer require sc0vu/web3.php dev-master

或者在 composer.json中加入

“sc0vu/web3.php”: “dev-master”

到这里,准备工作基本完毕。
PHP代码调用web.php接口实现创建新的以太坊账号(在该本地项目需要处理以太坊账号管理逻辑的控制器写,建议随便找个控制器或php页面先测试)
$web3 = new \Web3\Web3(‘localhost:8534'); //这里的端口是前面设置的rpc端口号,不要把geth终端关掉
$newAccount = ‘';


$web3->personal->newAccount('123456', function ($err, $account) use (&$newAccount) {
    if ($err !== null) {
        echo 'Error: ' . $err->getMessage();
        return;
    }
    $newAccount = $account;
    echo 'New account: ' . $account . PHP_EOL;
});

执行结果

到这里,基本上php+eth的开发就可以跑起来了,下面是web3.php的一些接口使用

github/sc0Vu/web3.php

gethAPI文档:cw.hubwiz/card/c/geth-rpc-api/1/4/5/

以上就是PHP实现创建以太坊钱包转账等功能的详细内容,更多关于PHP以太坊钱包的资料请关注其它相关文章!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

境外站群服务器有哪些好用的多ip服务器

境外站群服务器就是所谓的国外多ip服务器,是指美国、韩国、日本的多ip服务器。我们知道站群是SEO优化的重要手段,站群服务器的应用是不够的。仅限于网站应用,甚至很多游戏代理IP、外贸电商等都有一定的广...

香港大带宽服务器测评怎么判断好坏

香港大带宽服务器测评怎么判断好坏?要判断香港大带宽服务器的好坏,需要考虑多个因素。以下是一些可参考的测评指标:带宽速度:测量服务器的带宽速度是很重要的,可以使用网站或工具进行测试。越高的带宽速度意味着...

哪些企业需要租用新加坡大带宽服务器

哪些企业需要租用新加坡大带宽服务器?以下是一些需要租用新加坡大带宽服务器的企业或组织:大型网站:需要高速互联网连接、高带宽和高可用性,以提供更好的用户体验和更高的访问速度。网络游戏公司:需要高速互联网...

SublimeText3配置PHP函数追踪定位插件

一、下载ctagsdownload.csdn/detail/xujunabc999/9604934二、安装ctags和codeBeautifier插件:1)按Ctrl+shift+P,打开Instal...

租用江苏BGP高防服务器安全吗

租用江苏BGP高防服务器安全吗?租用江苏BGP高防服务器是比较安全的,但也要注意以下几点:选择正规的服务商:选择知名度高、信誉好的正规服务商,确保服务器的质量和安全性。配置安全防护:在服务器中安装防火...

详解PHP的Sodium加密扩展函数

目录AEAD_AES_256_GCM 加解密信息签名Hash总结参考文档Sodium 扩展在 PHP7.2 后是跟随 PHP 源码一起发布的,只需要在编译的时候加上 --with-sodium 即可安...