BTC#: Bitcoin in C#


In this BTC# series of posts I’m going to work my way through Jimmy Song’s new book, Programming Bitcoin. I’ve been programming professionally in C# since 2001. It’s my native tongue and I’ll be translating the book’s Python into C# as I go.


Get the book: O’Reilly / Amazon / GitHub.


Start at the Very Beginning

Modular Arithmetic

Big Numbers Are Big

Big Integers in C#

Finite Fields in C#

Elliptic Curves

Elliptic Curve Point Addition

Elliptic Curves over Finite Fields

The Bitcoin Curve

Digital Signatures

Digital Signature Code


SEC Serialisation

DER Serialisation

Base 58 Encoded Addresses

Transaction Objects

Script Parsing

The Stack

Stack Machine Operations

Spending with Combined Scripts

Verifying Transactions


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s