Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
BitCoin perl implementation
Perl
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
test
var
README
base58.pm
bitcoin.pl
data.pm
ecdsa.pm
event.pm
logger.pm
main.pm
net.pm
ripemd160.pm
script.pm
serialize.pm
util.pm
web.pm

README

!!! use branch "broken", it's much more advanced !!!

About
=====
BitCoin implemented in perl, meant to be portable.

Usage:
    perl bitcoin.pl

It's in the development state, so everything can be changed.

Features:
- web interface
- data stored in sql via DBI (sqlite by default)
- blockchain download
- chain branches

Todo:
- much more testing
- add web auth with roles
- add key management and money transfer
- full networking and multiple connections
- getwork rpc for miners
- fix serialize.pm for "32-bit perl"

License
=======
Do what you want license

Bitcoin wire protocol
=====================
version (...)
	+ hello
getaddr ()
	+ get addresses of last 5 days
addr ({CAddress})
	+ new address announce 
getblocks (CBlockLocator, uint256)
	- asnwered with "inv"
getdata ({CInv})
	+ get blocks, answered with "block" and maybe last with "inv"
block (CBlock)
	+ requested block
tx (CTransaction)
	+ new tx announce
inv ({CInv})
	+ new hash of tx/block announce
checkorder (uint256, CWalletTx)
	- direct request for pubkey, answered with "reply"
submitorder (uint256, CWalletTx)
	- new?
reply (uint256 hashReply, int, ...)
	- reply
ping ()
	+ ping
subscribe (int, int)
	? only sent, never processed

see https://en.bitcoin.it/wiki/Protocol_specification
Something went wrong with that request. Please try again.