itinance / bitcoin-php-fork
PHP Bitcoin library with functions for transactions, signatures, serialization, Random/Deterministic ECDSA keys, blocks, RPC bindings
Requires
- php-64bit: >=7.0
- bitwasp/bech32: ^0.0.1
- bitwasp/buffertools: ^0.5.0
- composer/semver: ^1.4.0|^3.2.0
- lastguest/murmurhash: ^2.1
- mdanter/ecc: ^0.5.0|^1.0.0
- phpunit/phpunit: ^9.5
- pleonasm/merkle-tree: 1.0.0
Requires (Dev)
- ext-json: *
- bitwasp/bitcoinconsensus: v3.0.0
- bitwasp/secp256k1-php: ^v0.2.0
- nbobtc/bitcoind-php: v2.0.2
- squizlabs/php_codesniffer: ^2.0.0
Suggests
- ext-bitcoinconsensus: The bitcoinconsensus library for safest possible script verification
- ext-secp256k1: The secp256k1 library for fast and safe elliptic curve operations
This package is not auto-updated.
Last update: 2024-12-17 13:33:52 UTC
README
This repository contains an implementation of Bitcoin using mostly pure PHP.
Warning: This library does not support 32-bit installs of PHP. Please also note that composer is the only supported installation method.
Installation
You can install this library via Composer: composer require bitwasp/bitcoin
Contributing
All contributions are welcome. Please see [this page] before you get started
Documentation
Check out the beginnings of the documentation for the library: [Introduction]
Presently supported:
- Blocks, headers, and merkle blocks and bloom filters
- P2SH & Segregated witness scripts
- An adaptable elliptic-curve library, using [PhpEcc] by default, or libsecp256k1 if the bindings are found
- Support for building, parsing, signing/validating transactions
- Deterministic signatures (RFC6979)
- BIP32 and electrum (older type I) deterministic key algorithms
- BIP39, and the older electrum seed format.
- ScriptFactory for common input/output types, parser, interpreter, and classifiers
- Supports bindings to libbitcoinconsensus
- Bindings to Stratum (electrum) servers
Other projects
- buffertools-php - Toolkit for working with binary data in PHP
- ext-secp256k1 - PHP bindings to libsecp256k1
- ext-bitcoinconsensus - PHP bindings to libbitcoinconsensus
- bitcoin-p2p-php - PHP implementation of bitcoin P2P messaging using reactphp
- stratum-php - PHP implementation of the stratum protocol using reactphp
- electrum-discovery-php - Electrum server discovery (over IRC) using reactphp
- node-php - A toy project (really just for fun) a full node using bitcoin-p2p-php
- bip70-php - A BIP70 (payment requests) implementation for PHP
Supporters
This library is a 100% open source project. We do not receive any funding from the industry, nor provide paid support or development of features. That said, we are grateful for our supporters who provide free access for open source projects:
Thanks to JetBrains for supporting the project through sponsoring some All Products Packs within their Free Open Source License program.