求科普区块链,作为一个外行人看百度也看不大懂,知道他的应用场景和优势,但是实在不知道这个区块链是个什么东西,怎么实现的?可否用外行业能理解的方式解释一下? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Zoemiao
V2EX    区块链

求科普区块链,作为一个外行人看百度也看不大懂,知道他的应用场景和优势,但是实在不知道这个区块链是个什么东西,怎么实现的?可否用外行业能理解的方式解释一下?

  •  
  •   Zoemiao 2016-09-19 10:53:29 +08:00 5110 次点击
    这是一个创建于 3316 天前的主题,其中的信息可能已经有所发展或是发生改变。
    求科普区块链,作为一个外行人看百度也看不大懂,知道他的应用场景和优势,但是实在不知道这个区块链是个什么东西,怎么实现的?可否用外行业能理解的方式解释一下?
    去中心,信息真实,去伪,怎么做到的?有没有可以解释明白的
    第 1 条附言    2016-09-19 20:05:01 +08:00
    补充:我今天深入研究了一下,目前了解到:区块链是用某种机制,实现信息的更新迭代,因为所有人都有备份,所以想更改是很困难的。正如 5 楼的回答,我才知道,原来很多投票问题还没解决哦。但是,这个所有人,像我这种人,也可以参与区块链的数据写入嘛?还是说任何一个人都可以参与?
    另外,怎么去中心化的呀?有人给我解释过,端对端,那么端对端的实现,背后也需要有人做出来端呀。如果别人端对端交易,那现在很多金融机构在研究区块链,有什么收益呢?
    25 条回复    2016-09-22 16:05:27 +08:00
    jyf007
        1
    jyf007  
       2016-09-19 12:11:46 +08:00 via Android
    我也不知道,我觉得就像票上打孔
    am241
        2
    am241  
       2016-09-19 12:18:31 +08:00 via Android
    分布式,迭代的签名机制
    douyingxin
        3
    douyingxin  
       2016-09-19 12:32:46 +08:00
    细胞分裂
    powtop
        4
    powtop  
       2016-09-19 12:58:43 +08:00
    去中心化的分布式账本数据库
    h4x3rotab
        5
    h4x3rotab  
       2016-09-19 13:26:44 +08:00 via iPhone   3
    想要简单的讲明白区块链还是不容易的。原因在于很多区块链的问题,比如 lz 提到的去中心化、去伪等,在比特币中都不是靠区块链本身实现的。

    区块链本身就是一个分布式的只读日志,每个人用自己的公约来识别身份,用私钥签名证明数据所属权。所有的人(或者说大多数人)都要时刻验证新加入到区块链的数据是否有效,进行共识投票。达成共识的人会把数据写入区块链并对整个链做哈希,区块链就被延长了。机制要确保大多数人达成共识,这样区块链就可以运作。

    区块链的好处在于:参与者在验证新数据的时候不需要扫描整个区块链,只需要根据上一个块的哈希就可以快速验证。在分布式系统中每次都验证全部数据是不可行的,所以区块链本质上提高了效率。

    这个流程非常简单,但有许多没解决的问题,关键在于如何在延长区块链的时候达成共识:谁可以参与共识流程?如果每个人都可以随意参与,如何决定每个用户的投票权?假设每个用户都拥有同样的投票权,如何防止敌人伪造出大量僵尸用户?

    如果参与的人不是固定的,那么为了解决这个问题就产生了 POW 和 POS 两种机制来分配投票决定权,其中 POS 就是比特币采用的方式,以此衍生出来了整套生态。

    如果参与者是固定的,分配投票权不是问题了,但如何确定参与者就是另一个问题,除非继续中心化的分配身份,比如采用类似 CA 的机制。同时为了保证投票不被一方垄断,还要仔细设计投票机制,确保投票权分配合理,让参与者互相制衡。此处的关键就是,每个用户为了确保自身的利益都要保证其他参与者不作弊。

    因为区块链的哈希特征,每个参与者都必须在最后的一个块上继续延长,保证了区块链的只读。所以理论上所有的数据都被公示,不可能发生通过篡改实现的作弊。所以问题的关键就在于写入区块链的共识过程了。解决了以上问题,区块链就基本可以很好的运作了。
    czheo
        6
    czheo  
       2016-09-19 14:15:34 +08:00
    区块链的世界博大精深, lz 的问题有点宽泛,可以写好几章书。最好说说你的理解,然后把你的问题问问清楚,想理解到什么程度。
    longdanie
        7
    longdanie  
       2016-09-19 14:56:03 +08:00 via Android
    有没有科普书籍可以系统的了解?最好是用人话,哪怕是英美人话!
    Zoemiao
        8
    Zoemiao  
    OP
       2016-09-19 20:03:54 +08:00
    @czheo 我今天深入研究了一下,目前了解到:区块链是用某种机制,实现信息的更新迭代,因为所有人都有备份,所以想更改是很困难的。正如 5 楼的回答,我才知道,原来很多投票问题还没解决哦。但是,这个所有人,像我这种人,也可以参与区块链的数据写入嘛?还是说任何一个人都可以参与?
    另外,怎么去中心化的呀?有人给我解释过,端对端,那么端对端的实现,背后也需要有人做出来端呀。如果别人端对端交易,那现在很多金融机构在研究区块链,有什么收益呢?
    Zoemiao
        9
    Zoemiao  
    OP
       2016-09-19 20:05:33 +08:00
    @douyingxin 好抽象。。。
    Zoemiao
        10
    Zoemiao  
    OP
       2016-09-19 20:05:47 +08:00
    @am241 什么是签名机制。。。
    Zoemiao
        11
    Zoemiao  
    OP
       2016-09-19 20:06:03 +08:00
    @powtop 你说的这个大概可以看明白。。。
    Zoemiao
        12
    Zoemiao  
    OP
       2016-09-19 20:06:57 +08:00
    @h4x3rotab 大神!!!那么大神,现在那么多金融机构和银行在研究区块链,带来的收益是什么呢?降低成本嘛?不是去中心化了嘛?还要机构何用?
    Zoemiao
        13
    Zoemiao  
    OP
       2016-09-19 20:07:57 +08:00
    @longdanie 我看到了个帖子,讲的蛮详细的,你瞅瞅。 http://tech.163.com/16/0604/21/BOOFNRFK00097U7V.html
    czheo
        14
    czheo  
       2016-09-19 20:13:46 +08:00
    @h4x3rotab 比特币难道不是 PoW ?
    cctvsmg
        15
    cctvsmg  
       2016-09-19 20:14:41 +08:00
    v2ex 这里太水了,要了解去巴比特不好么
    czheo
        16
    czheo  
       2016-09-19 20:47:18 +08:00   2
    @Zoemiao 区块链发明之初是比特币用来存储账本信息的数据结构。因为其他区块链都是从这里衍生出来的,私下开发的区块链可以各种各样,所以我们假设在比特币语境下讨论区块链比较方便。

    谁能写区块链?“能”可以指权利也可以指能力。在比特币的网络里,任何人都有“权”参与数据写入,但是大多数人没有“能力”写入数据。写入数据的工作是“矿工”进行的,这是矿工之间的竞赛,只有计算最快的矿工才有能力真正写数据。

    怎么去中心?去中心指的是因为人手一份数据的备份,每个人可以像 BT 下载一样从别人的电脑上下载到他们的备份来对照。比如你下载到 10 个人的备份里,其中 9 个人是一样的, 1 个是不一样的,你就可以相信这 1 个人的备份有问题。这样某个中央集权的个人或机构就很难”擅自“篡改区块链了。
    你可以把它理解成 BT 下载,你说的“端”就是类似 BT 下载客户端的软件,也就是比特币的客户端。除了能下载别人的数据,还能通过数字签名技术验证真伪。

    金融机构为什么研究区块链?区块链是一种可编程的分布式记账方式,应用可能性很多。比如可以用它来记录黄金所有权,买卖黄金就不需要运来运去了,更重要的是你不能“超卖”,因为所有记录都在区块链上,别人很容易查出(术语叫 double spending )。又比如可以用它作为金融机构之间的结算手段,和上一个例子类似,无论用货币还是黄金结算,运来运去多麻烦,如果记录在某个银行的账目上,你怎么信任这个银行?而且还有手续费。区块链作为一个分布式的记账方式,就可以代替这个中间记账的银行,我们把结算的账目记录在区块链上就不用中间人了。
    h4x3rotab
        17
    h4x3rotab  
       2016-09-19 21:53:55 +08:00 via iPhone
    @czheo 笔误,比特币是 POW
    Gothack
        18
    Gothack  
       2016-09-19 22:02:23 +08:00 via iPhone
    反正我看了好多地方也不是太明白。。。
    yeasy
        19
    yeasy  
       2016-09-19 23:19:35 +08:00
    可以翻翻《区块链技术指南》: https://github.com/yeasy/blockchain_guide
    sudo123
        20
    sudo123  
       2016-09-19 23:26:43 +08:00
    可以翻翻《区块链:从数字货币到信用社会》: http://item.jd.com/11939087.html
    Zoemiao
        21
    Zoemiao  
    OP
       2016-09-20 11:49:25 +08:00
    @czheo 感谢大神,我再研究一下,因为是外行,所以看得还是挺累的!!
    Zoemiao
        22
    Zoemiao  
    OP
       2016-09-20 11:49:50 +08:00
    @yeasy 谢谢~~
    Zoemiao
        23
    Zoemiao  
    OP
       2016-09-20 11:50:02 +08:00
    @sudo123 谢谢!!
    czheo
        24
    czheo  
       2016-09-21 20:52:57 +08:00   2
    @Zoemiao 真正要了解比特币/区块链圈子里很多说的东西,确实涉及到太多技术细节。与其去了解区块链的技术细节,建议你先从现实角度入手可能比较好理解。建议可以从银行角度理解的,当然这只是一个切入的角度而已,希望可能也能帮助你理解。

    1. 银行的问题
    仔细想想,现在的银行其实挺愚蠢。比如有 100w 的存款,除了 7 %的储备金, 93w 存款是可以拿来放贷的。而银行的放贷手段非常低劣,他不会告知存款人存款减少,而只会告知贷款人存款增加。

    假设,世界上一共两个人, A 和 B 。 A 存了 100 块, B 没有钱。银行理论上可以把总存款其中的 93 块钱贷款给 B ,而不需要告知 A 。也就是说如果 B 拿到 93 块的贷款后, A 去看自己的帐户余额还是 100 块钱。如果它们都把钱拿出来话,市场上实际流通的钱就变成了 193 块。要知道起初只有 100 块钱。

    当这些钱流入市场,所有人银行户头上的钱就变多了,于是银行又可以继续从这 193 块里面拿出 93%的钱贷款。于是滚雪球。。。

    虽然这是一个极端例子,但现实情况和这个类似。所以你会发现全世界所有的货币长期来看都在通胀,因为国家不但持续不断印钱,银行也在不断放贷款。像 B 这样能拿到贷款的,就会从中获利;如果钱存着不动,那就会不断稀释直到毫无价值。

    总之,如果什么都不做,我们的财富一直都在慢慢流失到那些 B 这样的人手里。

    按照人类现在的文明程度,如果贫富差距均衡一些,穷人应该不会这么苦。现在的货币体系,让那些可以拿到贷款的有钱人满满从穷人身上抽油水。

    2. 比特币
    比特币的总量是写在代码里的。所以,
    第一是不通胀。总量不可变,除非比特币网络上大多数人同意修改总量。所以通胀变得难度很大,而不是现在由各国政府和银行找些砖家拍脑袋说了算,所有规则的改动需要比特币网络上的计算机“投票”决定,就少了上述富人偷穷人钱的问题。
    第二是消除中间人。因为只需要比特币网络就能转账,不需要银行机构了。把银行这种可以通过货币发行和贷款控制财富流向的机构架空。比特币的网络来代替银行的职能,可以类比政府民主化的过程,这是金融的民主化。
    其他可能性不展开了。。。

    3. 比特币如何代替银行职能
    对个人来说,银行主要作用就是转账。其实就是银行数据库管理的一堆账号上面数字改一改的事情。
    比特币把银行的帐本数据库像 BT 下载的文件一样分布在网络上很多电脑里,所有这些数据库相互更新保持一致。
    比如 A 要转账到 B , A 可以在连接到比特币网络上任何一台电脑上面发送这个消息,网络上的电脑会认证 A 的身份,通过了身份认证就把数据库里的数据改掉。
    比特币是怎么做到这些的呢?那你可以继续去了解那些技术细节。
    这里说说“区块链”,就是比特币用来存储这些转账信息的技术,你理解成数据库也行, Excel 也行。只是它不是用表格形式存储的,而是链条一样存数据的。

    4. 区块链(blockchain)
    区块链,关键词是“链”(chain),是一系列"交易"(transaction)信息的链。
    类似于记录了钱从 A 帐户-》 B 帐户-》 C 帐户-》。。。。的历史转账信息。
    这些交易信息,被保存在一个一个的“区块”(Block)里面。
    而“区块”有按照先后顺序链接成区块 1-》区块 2-》区块 3.。。。这样的形式。
    为什么这么设计呢?技术上的原因,涉及到计算机如何投票啊,怎么做到安全啊,怎么决定交易信息的时序啊,如何快速查找历史交易记录啊等等问题。程序的世界估计你也不太了解,以后有机会慢慢体会吧。
    不过你可以大概看看区块链长成什么样,有个感性认识:
    http://dataconomy.com/wp-content/uploads/2015/10/bitcoin-block-chain-small.png

    5. 有啥卵用?
    区块链最早是用来存比特币交易信息的技术,后来银行那些人发现还能用来存其他的信息也不错,可能可以比一些现有的操作手段高明。具体也就是我之前说的那些例子,你以后在慢慢体会吧。

    写的有点长,希望能帮助到你能大概了解区块链是个什么东西了。
    Zoemiao
        25
    Zoemiao  
    OP
       2016-09-22 16:05:27 +08:00
    @czheo 大神!!!三跪九叩!!!有所了解了!谢谢大神!
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2541 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 11:56 PVG 19:56 LAX 04:56 JFK 07:56
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86