Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >想写一本给C#程序员看的区块链书籍

想写一本给C#程序员看的区块链书籍

作者头像
申龙斌
发布于 2019-06-19 10:05:22
发布于 2019-06-19 10:05:22
1K00
代码可运行
举报
运行总次数:0
代码可运行

刚接触区块链的新人会被一大堆新概念吓倒:

比特币地址、区块、区块高度、去中心化、算力、确认数、难度调整、挖矿、矿工、矿池、哈希、分叉、工作量证明、双重支付、私钥、公钥、交易、交易手续费、钱包等等

普通人在短时间内很难理解这些概念,但程序员们相当有优势,他们有计算机理论知识,理解这些概念相对容易一些。

2017年10月,我写了一本电子书《区块链生存训练v1.0》,尝试用简单的语言、形象的类比让从未接触过区块链的小白,能够逐个理解一个又一个的新概念,从而慢慢地进入到区块链的世界。

2018年2月底,我与几位朋友一起将书的内容升级到2.0版本,现在已经放在网上公开下载。

下载链接:

https://pan.baidu.com/s/1QmENCssdW1z69C98hdoIeA

提取码: vggd

随着研究区块链内部原理的深入,一直以来我想写一本给程序员看的区块链书籍,尝试用C#代码说话,当出现一个新概念的时候,我尽可能地给出一些源代码,通过分析和跟踪源程序,你可以更深刻地把握比特币和区块链的基本原理。

内容准备发在掘金小册上,定价69元,小册的名字暂定《用C#代码准确理解区块链的20多个基本概念》,如果哪位朋友有更好的名字,也欢迎留言。

小册的大纲(可能会调整):

  1. 开篇及比特币钱包Bitcoin Core准备
  2. 最最基本的概念 -- 区块(Block)及区块高度(Block Height)
  3. 可分割性及公开性 -- 可用的API一大堆
  4. 创世区块(Genesis Block) -- 找出中本聪留下的那句话
  5. 稀缺性 -- 为什么比2100万个少那么一点点?
  6. 私钥(Private Key)、公钥及比特币地址(Bitcoin Address) -- 地址重合了?
  7. WIF与助记词 -- 私钥记不住怎么办?
  8. 哈希(HASH)及SHA256 -- 可以搞一个装逼的抽奖程序
  9. 数字签名(Digital Signature) -- 如何证明你就是中本聪?
  10. 交易(Transaction) -- 上亿的资金转移只需200个字节?
  11. 交易手续费(Transaction Fees) -- 小心别给矿工送钱
  12. 钱包软件(Wallet) -- 全节点数据已经超过200GB
  13. Bitcoin Core的API -- 可以控制钱包和交易的每一处细节
  14. 去中心化(Decenteralization) -- 全世界的全节点钱包软件如何分布的?
  15. 工作量证明Pow、矿工(Miner)与矿池(Mining Pool)
  16. 创币交易(Coinbase Transaction) -- 你也拥有了铸币权?
  17. 计算目标与难度系数difficulty -- 如何每两周就调整一次难度?
  18. 算力、哈希速率(Hash Rate) -- 看看你的机器与比特币矿机相关有多大?
  19. 交易确认数 -- 为什么需要6次确认?
  20. 未花费交易输出(UTXO) -- 全世界有多少人拥有超过1个BTC?
  21. OP_RETURN誓言墙(不可篡改性) -- 你敢把情书写在区块链上吗?
  22. HD钱包 -- 分层确定性钱包是个什么鬼?
  23. 比特币的脚本体系 -- 为什么用逆波兰表示法的基于堆栈的语言?
  24. 交易的二进制表示 -- 如果你有足够的耐心,手算也可以生成一笔正确的交易
  25. 重放攻击(Replay Attack) -- 夺走别人的币?
  26. 区块和交易信息的一次全面解读
  27. 未来已来,只是尚未流行

适宜人群

本书的预期读者是没有任何区块链知识的C#程序员,当然,如果你已经是一名智能合约的开发者,本书对你也会有所帮助,通过书中丰富的C#源代码,可以让你更准确地理解比特币和区块链中的各种概念。

如果你不是一名程序员,本书可能不适合你,建议你先阅读《区块链生存训练》的1.0或2.0版本的电子书或者其它入门书籍。

阅读之后,你可以掌握比特币和区块链的20多个基本概念,关键的是你可以用程序生成比特币地址、进行消息签名、生成交易、设置交易手续费、在区块链上刻字,甚至自己写个钱包软件等等,还为下一步进行以太坊智能合约编程打下坚实的基础。

你需要准备

Windows 7 / 10(64位)电脑一台

Visual Studio 2015或2017开发环境(C#)

安装好Bitcoin Core钱包软件

书的大部分素材都已经写好了,只是源代码的整理的工作量还相当大。

如果你是C#程序员,且对本书感兴趣,欢迎参与内测。

微信联系我:SLOFSLB

为了证明你是一名C#程序员,请告诉我下面这段代码的输出结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
string url = "https://blockchain.info/block-height/0?format=json";string block = GetUrl(url);
JObject o = JObject.Parse(block);string script = (string)o.SelectToken("blocks[0].tx[0].inputs[0].script");
byte[] bs = new byte[script.Length / 2];for (int i = 0; i < script.Length; i += 2){    bs[i / 2] = Convert.ToByte(script.Substring(i, 2), 16);}string text = Encoding.ASCII.GetString(bs);Console.WriteLine(text);

--- END ---

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 申龙斌的程序人生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
想活在未来,快来区块链生存训练
今天比特币价格突破2万大关,很多人听到此消息后全当作泡沫或高级传销,没有开启绿灯思维。而有少许人则去快速学习区块链的相关知识,去探寻它背后的本质规律。每一个新技术的出现都会颠覆许多已有的认知,唯有快速
申龙斌
2018/03/06
7050
想活在未来,快来区块链生存训练
在区块链上表白——使用C#将一句话放入比特币的区块链上
最近在看区块链和比特币的知识,顺便简单研究了一下BitCoin的脚本语言,发现OP_RETURN这个命令可以在后面放入自己想说的内容,很多侧链啊,公证之类就是利用了这个特性,可以把一句话,或者一个哈希值放在这个命令后面,于是我也想试一试,看看能不能成功。
深蓝studyzy
2022/06/16
8880
在区块链上表白——使用C#将一句话放入比特币的区块链上
连基础概念都不学习有多么可怕
进入猫友圈已经有一阵子了,现在这个小密圈的进场费竟然高达3000元了,圈子里经常会有区块链的最新信息,但经常也会发现大量小白的提问。 类似上述的问题充斥了小密圈,许多人连钱包、私钥、公钥、地址、提现、
申龙斌
2018/03/06
9110
连基础概念都不学习有多么可怕
比特币核心技术解读
在上一篇文章《区块链基础知识与关键技术》里对区块链的基础知识和关键技术进行了梳理,而比特币是区块链最典型的应用,本文将对比特币核心技术进行解读,如有错漏,欢迎交流指正。
pseudoyu
2023/04/11
1.2K0
比特币核心技术解读
人才稀缺的区块链,程序员转型入门必看这四项技能
本文着重从区块链的基本概念、运行机制、相关技术和开源项目及工具四个方面进行介绍。 作者 | 卿苏德 区块链(BlockChain),是区块(Block)和链(Chain)的直译,其数据结构如图1所示,
区块链大本营
2018/05/10
1.6K0
区块链系列教程之:比特币的困境
比特币网络是中本聪作为一个实验性的网络提出来并运行的。没想到的是这一个实验性质的网络,居然成了现在虚拟货币世界的龙头老大。这个结局估计是中本聪本人都没有想到过的。
程序那些事
2020/07/08
5860
区块链系列教程之:比特币的困境
【区块链底层】-“激励层-激励机制”
目前对区块链的研究大多是针对共识层(共识算法研究)、合约层(智能和约编写,且大多也是用solidity编写以太坊部署)、加密层(对非对称加密研究偏多),网络层数据层和激励层的研究较少。
帆说区块链
2022/04/27
2.6K0
【区块链底层】-“激励层-激励机制”
区块链交易机制
随着区块链技术的不断发展,人们对于它的认识也越来越深刻,而区块链交易机制作为区块链技术的重要组成部分其对于区块链技术的应用和发展具有重要意义,本文将详细介绍区块链交易机制的概念、特点以及其在实际应用中的作用,希望能够为读者深入了解区块链技术提供帮助。
Al1ex
2023/08/10
7860
区块链交易机制
基于区块链的...
DeFi(Decentralized Finance),即去中心化金融,是2019年区块链应用发展 最迅猛的一个领域。在以太坊区块链上那些最成功的DApp,例如MakerDAO/DAI、Compound、0x 以及下面我们要介绍的那些,其目标都是颠覆传统的金融服务系统,促进一个全新的数字 经济时代的到来,让每个人都可以获得极大的经济自由度。本文将介绍DeFi的作用、 优势、演化历史、dApp架构等有关DeFi的重要概念,可以帮助你快速了解2019年区块链 的热门概念:DeFi。
用户1408045
2019/05/22
1.6K0
交易被堵?试试这几种办法
12月初的时候,比特币价格爆涨,我并没有打算卖出,而且把币转到冷钱包,准备领BTG糖果给自己发个年终奖。行情太好也很烦人,比特币的交易费也是高得让人无法接受,转到冷钱包的交易就花了我0.0027 BTC,为了安全地领取糖果,这几百元也就忍了。 但另外一件发币的事情就有点让人发狂了,因为以前说起过《金炜搞了一件大事》,现在联合挖矿的规模不断扩大,每10天要给200多人发币,工作量可不轻。金老板整天要处理场地、机器、供电等事务,不堪重负,把发币的重任交给我来办。 我写的C#发币程序已经更新到了2.2版本,基
申龙斌
2018/03/06
1.1K0
交易被堵?试试这几种办法
疯狂暴涨曾破 2 万美元的比特币,到底是怎么一回事?
2017 年对比特币来说,是极为疯狂的一年。年初,一枚比特币的价格不到 1,000 美元。在 11 月价格持续突破 8,000、9,000 和 10,000 美元大关。 在 12 月 17 日,在有些比特币交易市场,价格突破 20,000 美元大关!!! 今天推荐一篇介绍比特币入门的文章~ 作者:阮一峰 www.ruanyifeng.com/blog/2018/01/bitcoin-tutorial.html 比特币(bitcoin)诞生于 2008 年的一篇论文。 一个署名为中本聪的人,提出了革命性的
企鹅号小编
2018/02/07
7720
疯狂暴涨曾破 2 万美元的比特币,到底是怎么一回事?
区块链的革新——DAG及其应用
最准确的报道,最理性的分析,最深刻的解读 目前大多数的数字货币都是基于区块链技术。然而数字加密货币发展到现在,已经有了3代的更新。 第一代,区块链+PoW。 第二代,区块链+PoS。 第三代,DAG(有向无环图,属于数学中的图论部分)。 第一代的数字货币以比特币、莱特币、以太坊(大都会分叉之前)等为典型,都是基于区块链技术,交易的确认通过工作量来证明(PoW),也就是通过挖矿的方式来实现。 第二代的数字货币以升级后的以太坊(大都会分叉之后)为典型,同样基于区块链技术,但是工作证明采取权益证明的方式(PoS)
企鹅号小编
2018/01/22
1.7K0
区块链的革新——DAG及其应用
目前对区块链最通俗易懂的解释…
这应该是目前对区块链最通俗易懂的解释了... 区块链如何运作的? 下面这篇文翻译自”How Does the Blockchain Work?”全文。作者Michele D'Aliessi用通俗易懂的
企鹅号小编
2018/02/11
1.7K0
目前对区块链最通俗易懂的解释…
区块链=活在未来?
稿件由路可比特整理自《区块链生存训练》 「导读」 介绍完区块链中的十多个概念 还是总结一下吧 你也一定很期待 ▍区块链的自组织体系 区块链中的十多个概念,用一张图把这些概念串一遍,大家可以看到区块链是一个多因素相互制衡的反馈系统,这也是我们被其精妙的设计所迷住的一个主要原因。 区块链的自组织体系图 图的顶部是区块链,就是一个全世界共同维护的公开大账本,一个区块就是子账本,用区块高度来定位,我们生活在社会中,存在着大量商业往来,就有交易的需求,也就是价值转移的需求。但我们大量的个体之间互相并不认识,我
企鹅号小编
2018/01/11
1.2K0
区块链=活在未来?
区块链前世今生
作者:陶海军,腾讯通讯充值与彩票业务部高级工程师。 引言: 谈起区块链前世今生,我们不得不先说一下比特币。因为比特币和区块链如鱼水之间一样有着太多的关系。 比特币的起源 2008年,一位化名为中
腾讯大讲堂
2017/10/27
2.8K0
区块链前世今生
BRC-20 引发比特币网络剧烈波动,有哪些不可忽视的争议和风险?
BRC-20 对于比特币网络带来的剧烈波动,已引发了不少比特币主义者的强烈不满。除了比特币纯粹派对 BRC-20 鼓励中心化的批判外,也不乏技术派对其安全问题的多重警示。
小将
2023/05/12
4720
BRC-20 引发比特币网络剧烈波动,有哪些不可忽视的争议和风险?
区块链 | 一文了解比特币的挖矿、矿机—《区块链历史链条》3
区块链从15年火到18年,但是你却对区块链一知半解,小编特打造《区块链历史链条》,将抽象的区块链概念由抽象化解释为形象化,供君参考。 21比特币的数字签名 比特币的数字签名,就是只有比特币转账中转出的人才能生成的,一段防伪造的字符串。通过验证该数字串,一方面证明该交易是转出方本人发起的,另一方面证明交易信息在传输中没有被更改。数字签名由数字摘要和非对称加密技术组成。首先通过数字摘要技术把交易信息缩短成固定长度的字符串,然后用自己的私钥对摘要进行加密,形成数字签名。完成后,需要将完整交易信息和
码神联盟
2018/04/03
3.4K0
USDT PHP开发包OmniTool简介
OmniTool开发包适用于为PHP应用快速增加对Omni Layer/USDT数字资产的支持能力,即支持使用自有Omni Layer节点的应用场景,也支持基于第三方API服务和离线裸交易的轻量级部署场景。下载地址:omni/usdt php开发包 。
用户1408045
2019/06/11
2.4K0
USDT PHP开发包OmniTool简介
比特币和区块链的技术原理概述
•中本聪创世白皮书:"Bitcoin: A peer-to-peer electronic cash system,”(2008).【1】
Radar3
2020/06/19
1.5K0
你会感谢我今天的决定吗?区块链刻字服务开张了
这几天区块链的世界里全是重头戏,本来要在11月15日分叉的比特币突然取消SegWit2X计划,让屯BTC等着分糖果的人们一脚踏空;很快又有传言某人要坚定不移地实施SegWit2X,将分叉进行到底;BTG(BitCoin Gold)要让比特币回归去中心化,实现“一CPU一投票权”的中本聪初衷,在11月13日会发布防重放攻击的钱包软件。 前几天写《Bitcoin Core与Bitcoin ABC两个打架?》这篇文章时,BCC(国外称BCH)价格为3900元,因BTC迟迟不扩容堵得要死,大家转而支持BCC,价
申龙斌
2018/03/06
2K0
你会感谢我今天的决定吗?区块链刻字服务开张了
相关推荐
想活在未来,快来区块链生存训练
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验