Giter Site home page Giter Site logo

tianmingyun / masterbitcoin2cn Goto Github PK

View Code? Open in Web Editor NEW
1.7K 71.0 459.0 1.54 MB

《精通比特币》第二版 区块链研习社 云天明联合出品。本书更名《精通区块链编程第二版》已由机械工业出版社出版,京东有售。

masterbitcoin2cn's Introduction

郎咸平说过:比特币白给我都不要

巴菲特:比特币是泡沫,不是一种能够生产价值的资产

紫色的股:为什么说比特币是典型的泡沫

......

也有人说,区块链是最伟大的发明,堪比互联网。

到底比特币是什么?如何判断?难道我们能做的就是人云亦云?

如何能有自己的独立判断?

每个人都有自己的“全知遮蔽”,就像每个人都看不见自己的后脑勺一样。在自己的视野内,在自己的舒适区,如鱼得水,但是就是这种感觉最容易让自己以为“自己以为的”就是客观事实。

正确的态度是研究搞懂,之后才有资格做判断。

这本书就能帮助您全面了解比特币,而且有助于理解其他数字货币。

本书翻译过程中得到了higer(区块链研习社社长)的支持和鼓励,特此致谢。

本书部分段落内容参考摘录了《精通比特币》知笔墨版本,在此特别声明并致谢。

本书附录A比特币白皮书,其中附录A-1全文引自【巴比特】 ,附录A-2全文引自【李笑来英中文对照版】。在此特别声明并致谢。

以下朋友对本书做出巨大贡献:

菜菜子:翻译了英文版序言,第二版更新说明,词汇表,附录2交易脚本语言操作符,常量和符号等章节

柴春燕和格林怪物:联合翻译附录隔离见证部分

Robbie_英语翻译:第4章审核校对

吴迪:第5章,第9章审核校对

格林怪物:第6章审核校对

阿龙:第7章,第11章审核校对

阮立志和冯锦炜:第10章审核校对

琳:第12章审核校对

黄豆:封面封底扉页以及其他内容设计

特别感谢赵斌锋,在本书最后出版前校对过程中付出了巨大的努力,修正了一些瑕疵。

由于时间原因和个人水平能力原因,初稿中有许多格式和理解翻译错误。以上各位朋友在审核校过程中修正了初稿中许多错误,甚至部分章节兼职了翻译工作,在此表示致歉和感谢。

即便如此,当前版本还可能存在部分错误,欢迎读者在github上提交勘误,也可以发至邮箱:[email protected]

乔延宏 2017.11.11

*** 正版书购买链接***

本书经过多方努力,历时一年,终于付梓,欢迎购买正版图书。京东购买链接:

https://item.jd.com/12620946.html

*** 2019年下半年校对说明 ***

2019年10月开始到2019年12月底,对github上的第二版进行了一次全面的校对,更新了下面的内容:

1、格式方面:增加章节名称。所有“提示”,“警告”,“注意”等全部改为引用。引用章节增加链接和中文括号。

2、图片:图片未做翻译,链接全部改用英文版链接。

3、与英文版内容同步更新至2019年9月。修正部分章节的明确错误,翻译不准确,表达琐碎之处。增加了可执行文件的源代码。

4、增加比特币白皮书的李笑来翻译版本,附其他版本链接。

乔延宏 2019.12.22

*** 2020年上半年校对说明 ***

2020年7月跟随原版进行了更新。主要内容有:

1、删除失效链接;

2、增加2020年5月减半相关内容;

3、删除染色币(Colored Coin)相关内容;

4、更新附录部分内容;

5、更新目录。

乔延宏 2020.7.30

鸣谢:

区块链研习社

Mastering Bitcoin - Second Edition 版权说明

The tags, second_edition_print_1 and second_edition_print2, correspond to the first (June 8th, 2017) and second (July 20th, 2017) print of Mastering Bitcoin (Second Edition), as published by O'Reilly Media.

Creative Commons License

Mastering Bitcoin - Second Edition by Andreas M. Antonopoulos LLC is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

masterbitcoin2cn's People

Contributors

bczhc avatar ben-29 avatar cychai avatar gdwwl avatar hotbroker avatar iridiumcao avatar jialinpeng avatar kfihihc avatar kigawas avatar mattjin avatar mazeboy avatar roronazorozhang avatar tianmingyun avatar trekkidefi avatar wendylinlin avatar whiteath avatar yingang avatar ytf4425 avatar zacksleo avatar zeb-blockchain avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

masterbitcoin2cn's Issues

第7章最后问题答案探宝

  • 为什么律师可以随时通过在解锁脚本中选择FALSE来兑换第三个执行路径?
  • 在UTXO开采后分别有多少个执行路径可以使用5,35与105天?
  • 如果律师失去钥匙,资金是否流失? 如果91天过去了,你的答案是否会改变?
  • 合作伙伴如何每隔29天或89天“重置”一次,以防止律师获得资金?
  • 为什么这个脚本中的一些CHECKSIG操作码有VERIFY后缀,而其他的没有?

第一个问题:律师可以随时通过在解锁脚本中选择FALSE来兑换第三个执行路径。第三个执行路径是,2-3签名通不过,90天还没有到,前面两个都是FALSE,就自然到了第三个执行路径了。
第二个问题:我算出来是5个路径。
第三个问题:如果三个合伙人钥匙丢了,然后律师的钥匙也丢了,资金是不是取不出来了?我的答案是没法解锁,取不出来。
第四个问题:合伙人有2个解锁,然后重新签名加锁,这样就相当于重置了。
第五个问题:就看后面还有没有接执行路径。

7.2的翻译问题

At this time, standard multisignature scripts are limited to at most 3 listed public keys, meaning you can do anything from a 1-of-1 to a 3-of-3 multisignature or any combination within that range.
The limitation to 3 listed keys might be lifted by the time this book is published, so check the IsStandard() function to see what is currently accepted by the network. Note that the limit of 3 keys applies only to standard (also known as "bare") multisignature scripts, not to multisignature scripts wrapped in a Pay-to-Script-Hash (P2SH) script. P2SH multisignature scripts are limited to 15 keys, allowing for up to 15-of-15 multisignature. We will learn about P2SH in Pay-to-Script-Hash (P2SH).
当前,标准多重签名脚本限制在最多3个公钥,这意味着你可以使用1-1到3-3多重签名,或这个范围的任意组合。3这个数量限制可能会改变,所以,检查IsStandard()函数,看看网络当前接受的是什么值。
注意,限制3只应用于标准签名脚本,而不应用于P2SH脚本中包装的多重签名脚本。P2SH签名脚本限制为15个密钥,允许最多15-15多重签名。我们将在后面学习P2SH。

7.3的翻译问题

2 <Mohammed's Public Key> 5 CHECKMULTISIG

应该是:
2 <Mohammed's Public Key> 5 CHECKMULTISIG

第7章翻译问题较多

第7章翻译问题较多,请仔细检查一下。
后三分之一“Segregated Witness”没有翻译。

12.6.3制造无需信任的通道

Emma同时建立了资金和
退款交易。她签署资金交易,但不传送给任何人。Emma只将退款交易传送给Fabian,并获得他的签名。

Fabian在没有收到"资金交易"的情况先, 先签名了"退款交易". 但是这个"退款交易"的资金来源是"资金交易",
Fabian怎么样确保这第一笔"退款交易"使用的资金来源是对的?
如果Emma和Fabian之间有多条通道,会不会误窜,被攻击?

12.6.4 少翻译一行

翻译文章缺少的上文:

现在我们介绍这个方案的最后一个要素:一个撤销密钥,允许被欺诈的一方通过占有通道的所有余额来惩罚骗子。

这里缺少了撤销密钥的生成方式!

原文参考:
https://github.com/bitcoinbook/bitcoinbook/blob/develop/ch12.asciidoc

The revocation key is composed of two secrets, each half generated independently by each channel participant. It is similar to a 2-of-2 multisig, but constructed using elliptic curve arithmetic, so that both parties know the revocation public key but each party knows only half the revocation secret key.

如果缺少了这一段文字,那么 "撤销密钥"的生成方式变成了由读者来推理,我起码推理了两三个小时,各种场景,全部都是有问题,有漏洞,一看原文,是你们的文章少翻译一行.

请求你们审核修改一下,不要让别的热爱比特币的读者走了弯路,谢谢!

Hi~请问有没有兴趣来W3c.Group区块链技术社区创建您的专属小组?

您可以做什么:在W3c.Group社区创建小组,转发或输出和区块链技术相关的内容,和加入小组的成员关注者进行互动。

这样做的价值:帮助更多的开发者学习区块链技术,同时提升您的社区知名度,对您感兴趣的开发者或潜在合作者、投资人能主动找到您。

官网以及介绍:https://w3c.group/about

W3c.Group正在冷启动,欢迎通过社区内私信或微信联系瓦工,了解并成为W3c.Group核心共建者

5.1.3的翻译问题

5.1.3 分层确定性钱包(HD Wallets (BIP-32/BIP-44))

The second advantage of HD wallets is that users can create a sequence of public keys without having access to the corresponding private keys. This allows HD wallets to be used on an insecure server or in a receive-only capacity, issuing a different public key for each transaction. The public keys do not need to be preloaded or derived in advance, yet the server doesn’t have the private keys that can spend the funds.
原翻译:
HD钱包的第二个好处就是它可以允许使用者去建立一个公共密钥的序列而不需要访问相对应的私钥。这可允许HD钱包在不安全的服务器中使用或者在每笔交易中发行不同的公共钥匙。公共钥匙不需要被预先加载或者提前衍生,而在服务器中不需要可用来支付的私钥。

应该是:
HD钱包的第二个好处是,用户可以创建一系列公钥,而不需要访问对应的私钥。这样,HD钱包就能用在不安全的服务器上,或者用在接收环境中,它为每个交易发布一个不同的公钥。这个公钥不需要预先加载或衍生出来,服务器也没有可用于来支付的私钥。

请问矿工或其它人会窃取用户的解锁脚本吗?

如果A要转给B比特币,A提供了自己的解锁脚本。C用解锁脚本验证通过了,就把A->B这个交易修改成了A->C,并打包成功。反正解锁脚本只会有A的信息,是不会有B的任何信息的,我造了假也没人知道。
我是哪里在理解的时候出了问题,谢谢

关于“加密货币”这一名词

我认为“加密货币”应该修改为“密码货币”,虽然网上大部分资料也是选择将“Cryptocurrency”翻译成了“加密货币”,但在比特币中密码学的应用只涉及到了哈希函数(单向的杂凑函数)和数字签名(签名和验证两部分)两种技术,跟加密解密没有任何关系。

英文版中提到使用公钥密码并不是用来加密,而是用于生成数字签名:

Why is asymmetric cryptography used in bitcoin? It’s not used to “encrypt” (make secret) the transactions. Rather, the useful property of asymmetric cryptography is the ability to generate digital signatures.

同样英文中的哈希函数即hash仅仅表示混杂、拼凑的意思,也就是说哈希函数只是一个把字符串序列给打乱并生成没有规律的结果的一个函数,也不涉及到加密。(stackoverflow上的解释:https://stackoverflow.com/questions/326699/difference-between-hashing-a-password-and-encrypting-it)

英文版全书中包含encrypt的部分,除了对通讯网络的加密之外,只有BIP-38为了保护私钥涉及到了加密,所以比特币本身没有使用到任何加密技术,应该称之为“密码货币”。

glossary 哈希锁里面似乎有个错别字

哈希锁:

哈希锁是限制一个输出花费的限制对象,其作用一直持续到指定数据片段公开透露。哈希锁有一个有用的属性,那就是一旦任意一个哈希锁被公开打开,其他任何安全使用相同密钥的哈希锁也可以被打开。这使得可能创建多个被同意哈希锁限制的输出,这些支出将在同一时间被花费。

"同意哈希锁限制的输出" 这个里面的同意是不是应该是“同一”?

有没有想法完善中文版的精通比特币的内容

中英版的精通比特币文档都看了,发现很多书里并未有的内容。

例如:
1.没有新的地址格式(隔离见证方面,最好有个列表显示)
2.没说清楚签名类型和应用场景
3.没有新的区块结构说明(隔离见证方面,最好有个图表示出来)
4.隔离见证板块说的不够清楚
5.比特币攻击等问题,例如自私挖矿,延展性攻击方式及原理等都没提到

其他类似的问题还有很多,这些就不只是翻译的问题了,因为英文版也没有提到,我这边可以提供技术与文档的输出。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.