A minimal full bitcoin node in F#

Standard

Bitcoin is a decentralized network with many nodes. If a node downloads the entire blockchain (list of all transactions on the network) it is said to be a full node. An alternative full node bitcoin implementation in F# has been released. The source code is on GitHub.

This project is under development and currently in alpha stage. Do not use this code in production when real funds are at stake. Generally speaking, writing a fully compliant bitcoin node is extremely hard – some think impossible. The Bitcoin project is experimental and grew organically. As a result, the Satoshi client is the de-factor standard. By far the most used client on the network, it dictates what should be accepted and what should be rejected. Even the slighest deviation can cause a fork and potential loss of funds. It should go without saying

It implements all the consensus rules including the bugs that are now included in the blockchain since the genesis of Bitcoin. Bitcoin F# has fully validated the existing mainnet blockchain and passes all the integration tests including large reorg tests. It is also the only implementation in a functional language and comes under 2.5 kLOC, making it the smallest client too.

Source:
https://github.com/bitcoinfs/bitcoinfs
https://bitcointalk.org/index.php?topic=931831.0

One Comment

Leave a Reply