bitwasp / secp256k1-php
用于bitcoin/secp256k1的PHP扩展,包含绑定。
v0.2.2
2019-02-26 18:56 UTC
Requires
- php: ^7.0
README
PHP绑定https://github.com/bitcoin-core/secp256k1
请注意,上游库libsecp256k1的作者仍然将其视为实验性,并且尚未正式发布。因此,不建议使用。对于共识系统,此警告至关重要。
该库支持EcDH和签名恢复模块 - 这些库是安装所需的。
需求
在v0.0.x版本中支持PHP 5.*版本。v0.1.x系列支持PHP 7。
关于扩展
- 自v0.1.3版本发布以来,完全单元测试,代码覆盖率>99%。
- 该扩展目前仅支持确定性签名。实际上,此扩展没有使用RNG - 私钥必须在其他地方生成。
- 该扩展暴露与libsecp256k1相同的原始API。因此,您必须确保您传递每个值的二进制表示。
- 与libsecp256k1一致,此扩展通过写入变量引用并将返回代码表示失败/成功来向用户返回某些数据。
安装
libsecp256k1
git clone git@github.com:bitcoin-core/secp256k1 && \
cd secp256k1 && \
./autogen.sh && \
./configure --enable-experimental --enable-module-{ecdh,recovery} && \
make && \
sudo make install && \
cd ../
secp256k1-php
git clone git@github.com:Bit-Wasp/secp256k1-php && \
cd secp256k1-php/secp256k1 && \
phpize && \
./configure --with-secp256k1 && \
make && sudo make install && \
cd ../../
示例
请参阅示例文件夹,或测试套件中的* _ basic.phpt文件
(可选) - 默认启用扩展!
如果您是重度用户,您可以将此行添加到您的php.ini文件中,用于php-cli、apache2或php-fpm。
/etc/php/7.0/cli/conf.d/20-secp256k1.ini -> /etc/php/7.0/mods-available/secp256k1.ini
extension=secp256k1.so
运行测试
(从secp256k1-php目录发出命令)
基本测试
cd secp256k1-php/secp256k1 && make test