Source code URL:
https://github.com/jgarzik/picocoin/I'd like to announce another bitcoin implementation, which is really two useful pieces in one:
libccoin - a bitcoin library, written in C
picocoin - A lightweight, C-based
SPV bitcoin wallet client
libccoin supports all key network datastructures (block, transaction, etc.), script parsing and validation, transaction and block validation, a "headers-only" or full block database, and many other features essential to any bitcoin client. libccoin passes all key encoding, script and transaction tests available in the Satoshi reference bitcoin client.
picocoin is much more under construction. When complete, it will be a very low resource, command line / JSON-driven bitcoin wallet. Advanced security features
already implemented include required wallet encryption,
fork-based process separation of P2P networking and wallet (and chroot/SELinux jailing coming soon), something that the reference Satoshi client does not even support.
Status:
Alpha quality, developer release. Passes reference client base58/script/transaction tests, but is still a developer-only preview.Feature list:
- Liberal Mit/X11 free software license
- A full-feature bitcoin support library. The library will not be limited to "what picocoin needs."
- Supports all core data structures and network messages
- Full script implementation
- Passes hundreds of available reference client tests
- Supports multiple block chains: main or testnet3
- Very low resource usage (cpu, disk, and memory)
- Small codebase (both source code and compiled object)
- Fast. Loads all block headers in under 2 seconds.
- Supports advanced thin-client features such as bloom filtering, an upcoming proposal that will reduce client bandwidth usage.
- Works on big endian machines, as well as little endian machines
- Multi-platform: Linux, Mac OSX, BSD are working. Windows support in progress.
- Library works on Windows. picocoin will work on Windows with some modifications, but be a bit less secure than other platforms due to lack of fork.
- Improved security: fork-based process separation firewall between networking and wallet code -- your wallet is never directly exposed to the network.
- Follows the philosophy of "do, not hype." This library is already far more secure and capable than other libraries hyped as the "future of bitcoin" by their authors.
Code contributions are welcome (see github URL above).
Comments are welcome.
Donations are welcome too (see signature).