60

区块链初学者指南

 6 years ago
source link: https://www.oschina.net/translate/a-beginners-guide-to-blockchain?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

区块链初学者指南 已翻译 100%

oschina 投递于 2018/01/08 16:23 (共 7 段, 翻译完成于 01-09)
阅读 6063
8
161826_PRMJ_2896879.png

我并不明白为什么人们会觉得要理解区块链会有点难,而我也想知道为什么自己并没有。那是在 2013 年,我第一次听说有比特币这个东西(是的,知道的太晚啦)。我穷得连一个都买不起,看到这儿你也许已经对此文无爱了。后来,我想要去了解一下它所依赖的底层技术,也就区块链。 不过因为太忙了,所以迟迟没有开始(那就并不存在什么 开始不开始了)。

161907_UhxM_2896879.png
翻译于 2018/01/08 20:40

那么这个 “区块链”到底是什么呢?

其实是两个东西:一个是区块一个是链。说玄虚一点,就是一链子的区块。因为它是存在于计算机中的东西,所以我们可以厘定它的一个物理形态是啥样子的,就是数字信息被分成一个一个区块然后把这些区块链接起来。举个例子,下图中的方块,每一个都表示一个国家,而且每一个都包含了对应国家的城市名称。

161920_FM6L_2896879.png

等等,其实还有更多东西来着。这里的每一个方块都一个叫做哈希的东西。一个哈希就是一串字符 (比如 “1hi515AHA5H” )。哈希是根据方块里面所包含的信息来得到的。 U.S.A 的方块拥有 New York, Los Angeles, 还有 Chicago 这几个城市,所以它的哈希就是像 “NYLAC” 的东西了 (技术上其实远非如此,但你理会精要就行了)。

161935_DyRK_2896879.png

每一个接续的方块都会包含前一个方块的哈希,所以这个就是(强制性的)将它们绑到一起的纽带。如果有人擅自篡改了第一个方块,加入了城市 Boston,那么新的哈希就会是 “NYLACB”,然而后面接续的 India 这个方块已经存着的哈希还是 “NYLAC”,这种不匹配就会把链条打断。所以哈希的目的就是确保没有人可以篡改区块。

翻译于 2018/01/08 20:52

那如果有人修改了一个方块的内容,然后把后面的接续方块的哈希也一并更新会如何呢? 这也是有可能的,不过有一件事情我还没有告诉你。区块链的数据并不只是存在于仅仅一台计算机里面。一台计算机里面的区块链数据并不能骗到人,因为它会被复制到网络中每一个用户的计算机里面去。如果你加入了一个区块链网络,那么你的计算机就会去下载这些区块数据,如果有人篡改了他拥有的版本,整个网络也会考虑占多数的人的计算机上所拥有的版本才是正确的。

还有一件事,在一个区块链网络中,不仅是数据,就连整个系统的程序都被复制到了所有的电脑中。大多数互联网应用都是集中化的,比如 Facebook,它的数据和程序都被放在了它的服务器上,你的计算机会从 Facebook 的服务器上获取到你一个人需要知道的信息。但在区块链的世界里,就没有存在于中心的东西,它依赖的是用户的计算机来容纳自己的程序。是的,这就意味着,如果整个区块链网络中的每一台电脑都关机了,那么这个区块链系统就死翘翘了。

翻译于 2018/01/08 21:05

公共区块链

161954_Pyuu_2896879.png

这是不是就意味着区块链系统其实就是由一群心怀善意自愿让他们的计算机保持运行的人来组成的呢? 还有这些防篡改的区块是用来干嘛的呢?

区块链网络的功效不胜枚举。比特币是一种数据货币和一个支付系统。它所有的防篡改区块中所保存的就是全部交易的分类账。那些贡献了他们自己的计算机的人被称为矿工。系统会给他们提供比特币作为奖励。

Ethereum 有意向附加功能。它可以承载你的代码,从头开始发展出一个区块链系统,而要构建一个属于你自己的系统也许会非常地困难(记住这得看有人为你牺牲他们的计算机运行能力才行哦)。Ethereum 就维护着这些耗损巨大的运算能力,而你则需要为这些计算消耗买单。

区块链应用并不非得是支付系统或者加密货币。它可以任何东西,像是一个社交网络,一个像 LiveEdu 这样的学习平台,等等。

翻译于 2018/01/08 21:18

私有区块链

162009_zPjV_2896879.png

Bitcoin, Ethereum 等等这些都是公共区块链的例子,任何人都可以成为其中的一分子。那如果我们想要有一个私有的区块链网络该如何呢?有些人想要一个私有的区块链是想干嘛呢?那就来瞧瞧下面的故事吧。

Mark 和 Sara

Mark 已经五个月没交房租了,当 Sara 找他要的时候,他就说晚点会给她。她付不起律师费,而法院强制执行诉讼就需要8个月甚至一年,所以唯一的选择就是去说服 Mark。

Joe 的生意

Joe 是一个商人,他经常要跟不同的公司做生意。几个月之前他和一家零售商签了一份合同,尽管合同条款都已经履约了,可零售商确拒绝付款。这帮人利用法律制度中的漏洞来游说 Joe,想以此达到少付钱的目的。Joe 在这以前就是有这方面经验的,在某些情况下,他会找法院求助,但这样做所耗费的时间和金钱却要损失他自己的利润。

我们该如何帮助 Sara 和 Joe 呢?

我们是不是能在其它地方解决这个问题呢? 在 Sara 遇到的这种情况中,我们需要让 Mark  按月支付房租,这其实就是一个基于时间的触发机制。你的日历程序使用这样的触发器来给你提供预设事件的通知。

在 Joe 遇到的场景中,一旦合约中的条款都满足了,当事人就得付款,这其实就是一个基于条件的触发机制。你想想上次从 Amazon 买电子书的时候,是不是得先确认付款了,Amazon 才会把电子书发给你?

重点是,计算机程序会始终如一的执行诸如此类的指令。当你点击着这篇文章,向下滚动,诸如这类的操作,它也会照着执行不误。为了能帮助到 Sara ,我们需要将合同的条款转变成代码。

翻译于 2018/01/08 21:37

Sara 和 Mark 之间所订立的智能合同的伪代码

If today’s date is 30th and rent is not paid then
Transfer $500 from Mark’s account to Sara’s account

可是我们在哪儿部署这些代码呢? 它就应该被部署到所有参与者的计算机上。Sara 的还有 Mark 的银行都会是这一个私有区块链网络的一部分。Joe 和 Sara 会签署一份编码的协议(也就是智能合同),然后这份协议会被分发到网络中去,Mark 的和 Sara 的银行都会有一份拷贝。在每个月的 30 号,当时钟跳动到 12 点整,协议好的金额就会从 Mark 的账户转移到 Sara 的账户上去。Joe 也开始使用智能合同来强制让他的客户支付协议好的货款。

Sara 高兴了,因为她再也不用去烦心 Mark 会不会如约付房租了。Joe 也高兴,因为他也不用找法院要说法了,省下这些精力,他可以继续发展自己的生意了。

私有区块链只限于业务中涉及到的相关各方,因此 Joe 不会是 Sara 和 Mark 所属区块链网络的一部分。

翻译于 2018/01/08 21:49
162053_k0wF_2896879.png

现在你对此已经有点概念了,也许应该尝试一下 edX 上的课程(免费的哦),它会教你怎么在区块链上构建应用。

翻译于 2018/01/08 21:51
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

评论(34)

kchr
2018/01/19 17:16

引用来自“kchr”的评论

补充一下,在理想中,期货交易所,和股票交易所,也可以完全在区块链上运行。上证、深证、证监会,都会直接失业。

实际当中,谁先死就不知道了

引用来自“cswcsw”的评论

交易速度太慢,不用用于实时交易啊

引用来自“kchr”的评论

用不了说明区块链这方面有缺陷,那就不要用区块链呗。股票和期货的实时交易,本身历史很短。以前都是用电话人工下单,也没见怎样。

反过来想,股票交易要那么实时干什么?方便程序化交易造成大崩盘?本来就应该鼓励长期持股,价值投资。美国的交易所现在要引入一定的延迟,不允许高频。

我以前写了一个高频交易程序,几千块本钱,在比特币交易所,平均每天刷出几百万的成交量,赚百来块钱(当时没有手续费)。这对生态其实没什么好处。

引用来自“cswcsw”的评论

交易者肯定是希望能够实时交易的吧,不能实时交易没优势啊,包括比特币和现实货币的交易

引用来自“kchr”的评论

我说不必要实时交易,是指区块链上的股票系统。比特币和人民币之间的交易,其实和区块链无关,是交易平台的数据库负责记录,和最终清算。我的高频交易程序运行 3 年,赚了一些比特币,但只是最后卖出提现那一次,记录到银行的帐上。

引用来自“cswcsw”的评论

😏 那这交易跟区块链技术完全没关系啊,还是采用传统的中心化的交易方式
引用前面那位说的:

这里面其实是两个问题。1个是区块链上自动执行的问题,另一个是信息上链的可信性问题。第二个问题用区块链技术不能解决,也不是区块链应该干的。区块链只能干上了链的东西的传递、存储,至于上链信息的保真,等其他技术来补充吧。
cswcsw
2018/01/19 17:03

引用来自“kchr”的评论

当前经济和金融的很多概念、模式和形态,都是极度变态、极度扭曲的。没必要当成金科玉律。哪一天系统大崩溃,这一切的始作俑者美国,和苏联那样分裂成几十个小国,也不奇怪。

引用来自“cswcsw”的评论

能说说现有经济和金融哪些概念、模式和形态有问题么?一起交流一下?

引用来自“kchr”的评论

这些说起来大多数是个人偏好问题,容易引起争议,就算了。
讨论下呗,当作思想碰撞好啦,现有的理论确实不一定是正确的,也是从实践中总结出来的
cswcsw
2018/01/19 17:02

引用来自“kchr”的评论

补充一下,在理想中,期货交易所,和股票交易所,也可以完全在区块链上运行。上证、深证、证监会,都会直接失业。

实际当中,谁先死就不知道了

引用来自“cswcsw”的评论

交易速度太慢,不用用于实时交易啊

引用来自“kchr”的评论

用不了说明区块链这方面有缺陷,那就不要用区块链呗。股票和期货的实时交易,本身历史很短。以前都是用电话人工下单,也没见怎样。

反过来想,股票交易要那么实时干什么?方便程序化交易造成大崩盘?本来就应该鼓励长期持股,价值投资。美国的交易所现在要引入一定的延迟,不允许高频。

我以前写了一个高频交易程序,几千块本钱,在比特币交易所,平均每天刷出几百万的成交量,赚百来块钱(当时没有手续费)。这对生态其实没什么好处。

引用来自“cswcsw”的评论

交易者肯定是希望能够实时交易的吧,不能实时交易没优势啊,包括比特币和现实货币的交易

引用来自“kchr”的评论

我说不必要实时交易,是指区块链上的股票系统。比特币和人民币之间的交易,其实和区块链无关,是交易平台的数据库负责记录,和最终清算。我的高频交易程序运行 3 年,赚了一些比特币,但只是最后卖出提现那一次,记录到银行的帐上。
😏 那这交易跟区块链技术完全没关系啊,还是采用传统的中心化的交易方式
cswcsw
2018/01/19 17:00

引用来自“cswcsw”的评论

Mark和零售商账户里没钱我想知道怎么自动付费?😏

引用来自“kchr”的评论

它这里有个假设,就是交易双方都有区块链资产,简化来说就是 “有币”,假如叫游戏币 “GameCoin”。

假定货物价格 30 GameCoin,Mark 有 100 个 GameCoin (Mark可以通过密码学方法证明)

订立合同的时候,就可以把 Mark 的 30 个币冻结(即 Mark 从此只能动用 70 个币)。

我们在淘宝买东西,买家把钱打到支付宝(相当于冻结,钱在支付宝手里),然后卖家发货。为了防止支付宝
把你的钱拿去生利息、放高利贷、卷钱跑路,就必须由银监会用各种方法监管。

有人认为,数学比人可靠,就发明了区块链,来取代了支付宝(所谓可信第三方)的功能,以及银监会的功能。
如果这东西成功,支付宝和银行就可以消失了。

常见问题
Q1 : 我现在没币,怎么交易?

A1 : 挖,或者找矿工买

Q2 : 听起来挺扯得,先用钱买币,再用币买货,为啥不直接用钱买货?你吃饱了撑的?

A2 : 传说中区块链的远景是,所有交易都在链上执行,钱逐步废弃
有点类似,从现金过渡到纯微信支付,以后敢说马花藤坏话,马花藤停你的帐号,没钱买不到水,一个
星期就渴死了。

Q3 : 3 天前订合同的时候,商定收 30 个币,当时价格 100,总值 3000 人民币;今天合同执行时,已经
跌到 0.1 元,只值 3 人民币,我不是亏死啦?

A3 : 长远来看,如果区块链的远景真的实现,所有交易都在链上执行,钱逐步废弃。那时一切以 GameCoin
定价,就无所谓涨跌

短期来说,可以来点金融手段,用这个合同做抵押,在 3000 位置买做空期权。这样就确保价格涨跌
不会影响到你。

这个类似于进出口企业,对美元汇率做对冲的,来避免汇率变化的风险。

Q4 : 这东西能成功吗?

A4 : 也许有万亿分之一的可能吧

引用来自“cswcsw”的评论

😏 我想知道怎么支持信用交易?不支持信用交易怎么可能取代现有货币?现有的货币其实都是信用货币,早就不是黄金的代金券了啊

引用来自“kchr”的评论

金砖可以用来砸人脑袋,纸币可以烧了取暖,信用卡可以用来开门锁,这些有实体的东西,多少都有些实际用途。

基于区块链的货币系统,它就是一串没有任何实际用途的密码学数字,所有意义(也就是它的信用)都是人为赋予的,非常接近理想中的纯信用交易啊。

再就是,比特币的官网说得明明白白,它的目标是模拟黄金,根本不是要取代货币。

但无论你怎么解释,大多数智障还是被假新闻骗得团团转,无法可想

引用来自“cswcsw”的评论

呃,我想你没理解我的意思,信用交易的意思是说我拿我未来的钱来做交易。
而且你上面A3不是目标也是要取代现有货币么?

引用来自“kchr”的评论

当前区块链的目标,不是解决你说的这种情况。当前的货币(人民币或者美元)也不负责“拿我未来的钱来做交易”啊。那是借贷机构的功能。

当然,可以考虑这样一种可能性,如果有一种房产区块链,证明你有一栋房子,那也许你能够在链上,和另一个人签订一个合同,把你的房产抵押出一定数量的币 ... ...

能不能做到,我也不清楚了。
那就中心化了,跟区块链的去中心化背道而驰,肯定做不到
kchr
2018/01/19 16:53

引用来自“kchr”的评论

当前经济和金融的很多概念、模式和形态,都是极度变态、极度扭曲的。没必要当成金科玉律。哪一天系统大崩溃,这一切的始作俑者美国,和苏联那样分裂成几十个小国,也不奇怪。

引用来自“cswcsw”的评论

能说说现有经济和金融哪些概念、模式和形态有问题么?一起交流一下?
这些说起来大多数是个人偏好问题,容易引起争议,就算了。
kchr
2018/01/19 16:51

引用来自“kchr”的评论

补充一下,在理想中,期货交易所,和股票交易所,也可以完全在区块链上运行。上证、深证、证监会,都会直接失业。

实际当中,谁先死就不知道了

引用来自“cswcsw”的评论

交易速度太慢,不用用于实时交易啊

引用来自“kchr”的评论

用不了说明区块链这方面有缺陷,那就不要用区块链呗。股票和期货的实时交易,本身历史很短。以前都是用电话人工下单,也没见怎样。

反过来想,股票交易要那么实时干什么?方便程序化交易造成大崩盘?本来就应该鼓励长期持股,价值投资。美国的交易所现在要引入一定的延迟,不允许高频。

我以前写了一个高频交易程序,几千块本钱,在比特币交易所,平均每天刷出几百万的成交量,赚百来块钱(当时没有手续费)。这对生态其实没什么好处。

引用来自“cswcsw”的评论

交易者肯定是希望能够实时交易的吧,不能实时交易没优势啊,包括比特币和现实货币的交易
我说不必要实时交易,是指区块链上的股票系统。比特币和人民币之间的交易,其实和区块链无关,是交易平台的数据库负责记录,和最终清算。我的高频交易程序运行 3 年,赚了一些比特币,但只是最后卖出提现那一次,记录到银行的帐上。
kchr
2018/01/19 16:47

引用来自“cswcsw”的评论

Mark和零售商账户里没钱我想知道怎么自动付费?😏

引用来自“kchr”的评论

它这里有个假设,就是交易双方都有区块链资产,简化来说就是 “有币”,假如叫游戏币 “GameCoin”。

假定货物价格 30 GameCoin,Mark 有 100 个 GameCoin (Mark可以通过密码学方法证明)

订立合同的时候,就可以把 Mark 的 30 个币冻结(即 Mark 从此只能动用 70 个币)。

我们在淘宝买东西,买家把钱打到支付宝(相当于冻结,钱在支付宝手里),然后卖家发货。为了防止支付宝
把你的钱拿去生利息、放高利贷、卷钱跑路,就必须由银监会用各种方法监管。

有人认为,数学比人可靠,就发明了区块链,来取代了支付宝(所谓可信第三方)的功能,以及银监会的功能。
如果这东西成功,支付宝和银行就可以消失了。

常见问题
Q1 : 我现在没币,怎么交易?

A1 : 挖,或者找矿工买

Q2 : 听起来挺扯得,先用钱买币,再用币买货,为啥不直接用钱买货?你吃饱了撑的?

A2 : 传说中区块链的远景是,所有交易都在链上执行,钱逐步废弃
有点类似,从现金过渡到纯微信支付,以后敢说马花藤坏话,马花藤停你的帐号,没钱买不到水,一个
星期就渴死了。

Q3 : 3 天前订合同的时候,商定收 30 个币,当时价格 100,总值 3000 人民币;今天合同执行时,已经
跌到 0.1 元,只值 3 人民币,我不是亏死啦?

A3 : 长远来看,如果区块链的远景真的实现,所有交易都在链上执行,钱逐步废弃。那时一切以 GameCoin
定价,就无所谓涨跌

短期来说,可以来点金融手段,用这个合同做抵押,在 3000 位置买做空期权。这样就确保价格涨跌
不会影响到你。

这个类似于进出口企业,对美元汇率做对冲的,来避免汇率变化的风险。

Q4 : 这东西能成功吗?

A4 : 也许有万亿分之一的可能吧

引用来自“cswcsw”的评论

😏 我想知道怎么支持信用交易?不支持信用交易怎么可能取代现有货币?现有的货币其实都是信用货币,早就不是黄金的代金券了啊

引用来自“kchr”的评论

金砖可以用来砸人脑袋,纸币可以烧了取暖,信用卡可以用来开门锁,这些有实体的东西,多少都有些实际用途。

基于区块链的货币系统,它就是一串没有任何实际用途的密码学数字,所有意义(也就是它的信用)都是人为赋予的,非常接近理想中的纯信用交易啊。

再就是,比特币的官网说得明明白白,它的目标是模拟黄金,根本不是要取代货币。

但无论你怎么解释,大多数智障还是被假新闻骗得团团转,无法可想

引用来自“cswcsw”的评论

呃,我想你没理解我的意思,信用交易的意思是说我拿我未来的钱来做交易。
而且你上面A3不是目标也是要取代现有货币么?
当前区块链的目标,不是解决你说的这种情况。当前的货币(人民币或者美元)也不负责“拿我未来的钱来做交易”啊。那是借贷机构的功能。

当然,可以考虑这样一种可能性,如果有一种房产区块链,证明你有一栋房子,那也许你能够在链上,和另一个人签订一个合同,把你的房产抵押出一定数量的币 ... ...

能不能做到,我也不清楚了。
cswcsw
2018/01/19 16:39

引用来自“kchr”的评论

当前经济和金融的很多概念、模式和形态,都是极度变态、极度扭曲的。没必要当成金科玉律。哪一天系统大崩溃,这一切的始作俑者美国,和苏联那样分裂成几十个小国,也不奇怪。
能说说现有经济和金融哪些概念、模式和形态有问题么?一起交流一下?
cswcsw
2018/01/19 16:36

引用来自“kchr”的评论

补充一下,在理想中,期货交易所,和股票交易所,也可以完全在区块链上运行。上证、深证、证监会,都会直接失业。

实际当中,谁先死就不知道了

引用来自“cswcsw”的评论

交易速度太慢,不用用于实时交易啊

引用来自“kchr”的评论

用不了说明区块链这方面有缺陷,那就不要用区块链呗。股票和期货的实时交易,本身历史很短。以前都是用电话人工下单,也没见怎样。

反过来想,股票交易要那么实时干什么?方便程序化交易造成大崩盘?本来就应该鼓励长期持股,价值投资。美国的交易所现在要引入一定的延迟,不允许高频。

我以前写了一个高频交易程序,几千块本钱,在比特币交易所,平均每天刷出几百万的成交量,赚百来块钱(当时没有手续费)。这对生态其实没什么好处。
交易者肯定是希望能够实时交易的吧,不能实时交易没优势啊,包括比特币和现实货币的交易
cswcsw
2018/01/19 16:34

引用来自“cswcsw”的评论

Mark和零售商账户里没钱我想知道怎么自动付费?😏

引用来自“kchr”的评论

它这里有个假设,就是交易双方都有区块链资产,简化来说就是 “有币”,假如叫游戏币 “GameCoin”。

假定货物价格 30 GameCoin,Mark 有 100 个 GameCoin (Mark可以通过密码学方法证明)

订立合同的时候,就可以把 Mark 的 30 个币冻结(即 Mark 从此只能动用 70 个币)。

我们在淘宝买东西,买家把钱打到支付宝(相当于冻结,钱在支付宝手里),然后卖家发货。为了防止支付宝
把你的钱拿去生利息、放高利贷、卷钱跑路,就必须由银监会用各种方法监管。

有人认为,数学比人可靠,就发明了区块链,来取代了支付宝(所谓可信第三方)的功能,以及银监会的功能。
如果这东西成功,支付宝和银行就可以消失了。

常见问题
Q1 : 我现在没币,怎么交易?

A1 : 挖,或者找矿工买

Q2 : 听起来挺扯得,先用钱买币,再用币买货,为啥不直接用钱买货?你吃饱了撑的?

A2 : 传说中区块链的远景是,所有交易都在链上执行,钱逐步废弃
有点类似,从现金过渡到纯微信支付,以后敢说马花藤坏话,马花藤停你的帐号,没钱买不到水,一个
星期就渴死了。

Q3 : 3 天前订合同的时候,商定收 30 个币,当时价格 100,总值 3000 人民币;今天合同执行时,已经
跌到 0.1 元,只值 3 人民币,我不是亏死啦?

A3 : 长远来看,如果区块链的远景真的实现,所有交易都在链上执行,钱逐步废弃。那时一切以 GameCoin
定价,就无所谓涨跌

短期来说,可以来点金融手段,用这个合同做抵押,在 3000 位置买做空期权。这样就确保价格涨跌
不会影响到你。

这个类似于进出口企业,对美元汇率做对冲的,来避免汇率变化的风险。

Q4 : 这东西能成功吗?

A4 : 也许有万亿分之一的可能吧

引用来自“cswcsw”的评论

😏 我想知道怎么支持信用交易?不支持信用交易怎么可能取代现有货币?现有的货币其实都是信用货币,早就不是黄金的代金券了啊

引用来自“kchr”的评论

金砖可以用来砸人脑袋,纸币可以烧了取暖,信用卡可以用来开门锁,这些有实体的东西,多少都有些实际用途。

基于区块链的货币系统,它就是一串没有任何实际用途的密码学数字,所有意义(也就是它的信用)都是人为赋予的,非常接近理想中的纯信用交易啊。

再就是,比特币的官网说得明明白白,它的目标是模拟黄金,根本不是要取代货币。

但无论你怎么解释,大多数智障还是被假新闻骗得团团转,无法可想
呃,我想你没理解我的意思,信用交易的意思是说我拿我未来的钱来做交易。
而且你上面A3不是目标也是要取代现有货币么?
0/1000

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK