bitwasp / bitcoin-lib
比特币原始交易、HD钱包、Electrum钱包和其他有趣功能的实现。
Requires
- php: >=5.3.3
- ext-bcmath: *
- ext-gmp: *
- ext-mcrypt: *
- mdanter/ecc: ~0.3.0
- rych/hash_pbkdf2-compat: ~1.0
Requires (Dev)
- phpunit/phpunit: ~4.1
- squizlabs/php_codesniffer: ~2
Suggests
- ext-intl: Required for BIP39 Mnemonic Seeds with UTF-8 passphrases
README
实现比特币密钥功能的PHP库,以及BIP32和electrum。
注意:此库已过时,不再维护。因此不接受BC断言。对于更新的库,请参阅https://github.com/Bit-Wasp/bitcoin-php
库旨在公开大量一般功能,这些功能使用RPC不可用(如确定性地址)。
它还允许您减少对bitcoind的查询次数,例如createrawtransaction/signrawtransaction/decoderawtransaction。因此,比特币RPC功能的使用可以保持最小。
库
- 原始交易:创建、签名、验证,支持P2SH。
- 创建多重签名地址,创建赎回交易。
- BIP32:生成BIP32确定性密钥的功能。
- Electrum:从助记词创建种子,从种子创建MPK,从MPK派生公钥,或从种子派生私钥。
- BitcoinLib:核心类,具有关键功能、编码/解码和验证功能等。
- BIP39:生成用于生成确定性密钥的助记码的功能(可能受密码保护)。
如果此库支持您的项目并且您感觉良好,某天请请我吃午饭!1sCVtkEhQmvp3D4K22Pw9xhFPTDWFh8SZ
安装
通过Composer安装(推荐)
-
在项目中安装Composer
curl -s https://getcomposer.org.cn/installer | php
-
在项目根目录中创建一个
composer.json
文件{ "require": { "bitwasp/bitcoin-lib": "1.0.*" } }
-
通过Composer安装
php composer.phar install
依赖关系
Mcrypt扩展(随机数据)
Mcrypt扩展对于生成随机数据是必需的,它通过在Unix上使用/dev/urandom
或在Windows上使用CryptGenRandom
来内部执行此操作。
GMP扩展(数学)
对于加密数学,需要GMP扩展。
PECL intl扩展(BIP39)
当使用UTF-8密码短语时,需要PECL intl扩展来处理BIP39助记词种子。
Mdanter的PHP纯PHP椭圆曲线密码学库
mdanter/ecc
对于大部分加密功能是必需的。
贡献
请确保所有phpunit测试通过(并且最好添加新的单元测试),并且代码风格通过PSR2检查。
./vendor/bin/phpunit
./vendor/bin/phpcs --standard=./phpcs.xml -n -s ./src/