To make those who not familiar with C++ to understand the algorithms.

2 Answers 2


Forum user and Armory client developer etotheipi put together a few nice images covering some aspects of the Bitcoin protocol, mostly related to transaction construction and verification; see this forum thread.

Other than that, though, most of the documentation is in code only. If you're comfortable with another language, you could try looking at BitcoinJ, a Java implementation of Bitcoin (client node functionality only), BitcoinSharp, a C# port of BitcoinJ, CBitcoin, a C99 Bitcoin library (also partial), Bitcoin-Ruby, BitcoinJS, and/or PyWallet.

In the end, though, currently the only complete reference implementation of Bitcoin is the original C++ code, so biting the bullet might be the only option.


Although it does not speak directly to programmers. The Khan academy has got a great set of conceptual videos about bitcoin internals


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.