Skip to content

xcrash/NBitcoin

 
 

Repository files navigation

#NBitcoin

NBitcoin is the most complete and faithful Bitcoin implementation for the .NET platform.

#How to use ? With nuget :

Install-Package NBitcoin

Go on the nuget website for more information.

The packages supports the following Portable profile :

  • net45
  • portable-net45+win+wpa81+Xamarin.iOS10+MonoAndroid10+MonoTouch10
  • portable-net45+win+wpa81+wp80+Xamarin.iOS10+MonoAndroid10+MonoTouch10
  • portable-net45+MonoAndroid1

To complile it by yourself, you just have to git clone, open the project and hit the compile button on visual studio. How to get started ? Check out this article on CodeProject to do some basic crypto operations.

##Description Why is it a big deal ? Because you can run it and debug into it without any linux-voodoo-setup to make bitcoin running. Visual studio express for free, XUnit and you are up to go.

  • A TransactionBuilder supporting Stealth, Open Asset, and all standard transactions
  • Full port of the test suite of bitcoin core with their own data
  • Full script evaluation and parsing
  • RPC Client
  • SPV Wallet implementation with sample
  • Mnemonic code for generating deterministic keys (BIP 39), credits to Thasshiznets
  • Payment Protocol (BIP 70)
  • Payment URL (BIP 21,BIP 72)
  • Two Factor keys (BIP 38)
  • Stealth Address (Also on codeproject)
  • Recognize standard script and permit to create them
  • Object model faithful to the C++ API but with C# goodness
  • Simpler API (here is how to generate a key and get the address : new Key().PubKey.Address.ToString())
  • Bloom filter, partial merkle tree
  • Serialization of Blocks, Transactions, Script
  • Signing/verification with private keys, support compact signature for prooving ownership
  • Hierarchical Deterministic Wallets (BIP 32)

I ported directly from the C++, except the OpenSSL part where I'm using BouncyCaslte instead. (BitcoinJ helped me a lot on the implementation) I also ported OpenSSL bugs (you can't believe how much time it took me) ;)

Please, use the code to explore/learn/debug/play/sharing/create the licence is MIT, so you should be good to go. This is the simple way and most complete way to see the internal of bitcoin without going to C++ madness.

Useful doc :

Bitcoin address : 15sYbVpRh6dyWycZMwPdxJWD4xbfxReeHe

if you want to contact me : http://nicolas-dorier.com/Contact will do the rest by email :)

##Useful link : Visual studio express : http://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx

About

Bitcoin implementation for the .NET platform

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%