Bitcoin Forum

Local => Кодеры => Topic started by: fsb4000 on January 16, 2015, 04:10:50 PM



Title: Интересная книжка
Post by: fsb4000 on January 16, 2015, 04:10:50 PM
Первая часть: https://aois.blob.core.windows.net/public/Blockchain%20Programming%20in%20CSharp.pdf

Вторая часть доступна на сайте за 0.004 BTC  :D
Сайт: http://blockchainprogramming.azurewebsites.net/


Title: О, спасибо!
Post by: ish on January 17, 2015, 07:53:18 AM
Полезное на первых 10-ти страницах:

Quote
some lecture that you can use to complete this book
- Mastering Bitcoin of Andreas M. Antonopoulos
- The articles I wrote on CodeProject (you can find them in the Readme of the github page of NBitcoin)
- And the reference https://bitcoin.org/en/developer-guide

Once in possession of this book, you are free to share and adapt, as specified in the Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0).

Страницы 13-15 - как создать ключи при помощи библиотеки NBitcoin

Quote
using NBitcoin;

var k = new Key(); // создать закрытый ключ
var pubKey = k.PubKey; // получить открытый ключ
KeyId hash = pubKey.Hash; // сформировать часть биткоин-адреса, независимую от сети
BitcoinAddress a = hash.GetAddress(Network.Main); // var a=hash.ScriptPubKey;
Script s = a.ScriptPubKey; // скрипт с опкодами и всё такое
BitcoinSecret WIF=k.GetBitcoinSecret(Network.Main); // WIF format - key in BASE58 encoding

it is possible to get the address from the Script and Network
var s = new Script("OP_DUP OP_HASH160 ff77ae0a6f61fedd8d...");
BitcoinAddress a = s.GetDestinationAddress(Network.Main);

Страница 16 - как распечатать транзакцию

Страница 20 - как создать транзакцию

Quote
var blockr = new BlockrTransactionRepository();
Transaction fundingTransaction = blockr.Get("0B948B0...");
var payment = new Transaction();
payment.Inputs.Add(new TxIn(), {prevOut = new OutPoint(fundingTransaction.GetHash(),1) });
payment.Outputs.Add(...); // адрес получателя
payment.Outputs.Add(...); // адрес для сдачи
payment.Outputs.Add(...); // сопроводительный текст
payment.Sign(paymentSecret, false);

Страница 23 - как отправить через узел
Quote
using (var n = Node.ConnectToLocal(Network.Main))
{
    n.VersionHandshake();
    n.SendMessage(new InvPayload(InventoryType.MSG_TX), payment.Hash);
    n.SendMessage(new TxPayload(payment));
    Thread.Sleep(500);
} // close connection in Dispose();

Страницы 27-30
Хранение закрытого ключа в зашифрованном (при помощи пароля) формате,
делегирование генерирования ключа

Страницы 31-35
Создание иерархии ключей (HD wallet) (это фича эллиптической криптографии)

Страницы 36-39
StealthPubKey (DarkWallet)

Страницы 40-48
Другие типы транзакций: MultiSig, PayToScriptHash

дальше только заголовки разделов до конца документа


Title: Re: Интересная книжка
Post by: n00by on January 20, 2015, 07:13:00 PM
книга книгой, а сама библия где?
а упс, нашел Install-Package NBitcoin


Title: Re: Интересная книжка
Post by: micax1 on February 02, 2015, 02:33:14 PM
есть у кого вторая часть?


Title: Re: Интересная книжка
Post by: OdinCoin on February 04, 2015, 08:38:19 PM
Книга стоящая! Как бы перевести ее красиво.. ???