php实现ETH原生签名交易sendRowTransaction

1.安装GMP 之前需要先安装m4 (不然会出错)

m4可以通过命名自动安装:

apt-get install m4

2.然后ubuntu安装gmp:

gmp官网:https://gmplib.org/

6.2版本下载链接:https://gmplib.org/download/gmp/gmp-6.2.0.tar.lz

wget https://gmplib.org/download/gmp/gmp-6.2.0.tar.lz

apt-get install lzip
lzip -d gmp-6.2.0.tar.lz
tar -xvf gmp-6.2.0.tar
cd gmp-6.2.0

./configure --enable-cxx 

make 
make install

3.然后安装PHP gmp扩展:

cd /soft/php-7.1.21/ext/gmp
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-gmp

make && make install

php.ini添加extension = gmp.so

4.安装scrypt 扩展

scrypt扩展文件下载地址:http://pecl.php.net/package/scrypt

wget http://pecl.php.net/get/scrypt-1.4.2.tgz

tar -zxvf scrypt-1.4.2.tgz

cd scrypt-1.4.2/

/usr/local/php/bin/phpize

./configure --enable-scrypt --with-php-config=/usr/local/php/bin/php-config

make && make install

php.ini加入扩展

extension = scrypt.so

为了解决PHP跨目录读取keystore中的root文件出现的权限问题,决定曲线救国,在系统中把www切换为root用户时跳过密码输入

1.切换到root用户下

sudo su

2.添加sudo文件的写权限

chmod u+w /etc/sudoers

3.编辑sudoers文件

vi /etc/sudoers

找到这行 root ALL=(ALL) ALL,在他下面添加 xxx ALL=(ALL) ALL (这里的xxx是你的用户名)

ps:这里说下你可以sudoers添加下面四行中任意一条

youuser            ALL=(ALL)                ALL
%youuser           ALL=(ALL)                ALL
youuser            ALL=(ALL)                NOPASSWD: ALL
%youuser           ALL=(ALL)                NOPASSWD: ALL
  • 第一行:允许用户youuser执行sudo命令(需要输入密码).
  • 第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码).
  • 第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码.
  • 第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码.

4.撤销sudoers文件写权限,命令:

chmod u-w /etc/sudoers

这样www用户就可以使用sudo了

sudo cat xxx

参考文章链接:

优先参考文章:

http://mash.imkxa.com/eth-account

https://www.li6.cc/article/read/250

使用到的nebulasio对应的github代码地址:

https://github.com/nebulasio/neb.php

https://github.com/gaodongyuan/php/tree/acc7f9341301fadbf3cd7a9267a5fecfd107a39a/php%E4%B8%8E%E4%BB%A5%E5%A4%AA%E5%9D%8A/repo

https://github.com/zhuzhen520/yueling/blob/ddd665d7c08895da09439f50ade5cc0957b60579/application/helps/Eth.php

PHP实现ETH离线生成地址、发起签名交易、冷钱包实现方案

https://blog.csdn.net/u012841825/article/details/88787981

PHP通过keystore文件得到私钥的方案(ETHTool)

https://github.com/uguopai/ethtool/blob/master/demo.php

PHP开发ETH钱包、助记词创建、助记词导入、钱包签名发起交易

https://sbing.vip/archives/eth-wallets.html

具体实现未完待续。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值