首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

区块链介绍

最近区块链概念持续升温,很多区块链相关的概念股价格暴涨,而区块链主要落地应用-比特币之前价格一度突破10w人民币/个,虽然后续价格有所回落,但是仍然不改其高价位的现状。那么区块链究竟是什么,比特币究竟是基于什么原理实现的,我们用区块链究竟可以做什么,本文将浅抒愚见,希望能够实现抛砖引玉的效果,并鼓励各位同仁一起学习和研究区块链

什么是区块链

从字面理解,区块链包含了两个概念:区块、链。也就是说,区块链本身是由一个个区块(Block)组成,而不同节点链接在一起构建的网络,就是区块链。

首先,区块链的主要作用是储存信息。任何需要保存的信息,都可以写入区块链,也可以从里面读取,所以它是数据库。

其次,任何人都可以架设服务器,加入区块链网络,成为一个节点。区块链的世界里面,没有中心节点,每个节点都是平等的,都保存着整个数据库。你可以向任何一个节点,写入/读取数据,因为所有节点最后都会同步,保证区块链一致。

每个区块包含两个部分。

区块头(Head):记录当前区块的元信息

区块体(Body):实际数据

区块头包含了当前区块的多项元信息。

生成时间

实际数据(即区块体)的 Hash

上一个区块的 Hash

...

所谓 Hash 就是计算机可以对任意内容,计算出一个长度相同的特征值。区块链的 Hash 长度是256位,这就是说,不管原始内容是什么,最后都会计算出一个256位的二进制数字。而且可以保证,只要原始内容不同,对应的 Hash 一定是不同的。

举例来说,字符串123的 Hash 是a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0(十六进制),转成二进制就是256位,而且只有123能得到这个 Hash。

因此,就有两个重要的推论。

推论1:每个区块的 Hash 都是不一样的,可以通过 Hash 标识区块。

推论2:如果区块的内容变了,它的 Hash 一定会改变。

区块与 Hash 是一一对应的,每个区块的 Hash 都是针对"区块头"(Head)计算的。

Hash = SHA256(区块头)

上面就是区块 Hash 的计算公式,Hash 由区块头唯一决定,SHA256是区块链的 Hash 算法。

前面说过,区块头包含很多内容,其中有当前区块体的 Hash(注意是"区块体"的 Hash,而不是整个区块),还有上一个区块的 Hash。这意味着,如果当前区块的内容变了,或者上一个区块的 Hash 变了,一定会引起当前区块的 Hash 改变。

这一点对区块链有重大意义。如果有人修改了一个区块,该区块的 Hash 就变了。为了让后面的区块还能连到它,该人必须同时修改后面所有的区块,否则被改掉的区块就脱离区块链了。由于后面要提到的原因,Hash 的计算很耗时,同时修改多个区块几乎不可能发生,除非有人掌握了全网51%以上的计算能力。

正是通过这种联动机制,区块链保证了自身的可靠性,数据一旦写入,就无法被篡改。这就像历史一样,发生了就是发生了,从此再无法改变。

而区块链百度百科的解释如下:区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。

看似抽象的概念,其实有几个关键词汇需要关注:

分布式数据存储

点对点传输

共识机制

加密算法

首先,分布式数据存储比较好理解,就是一个存储系统,通过网络使用集群中的每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散的存储在企业的各个角落。也就是说,区块链的数据分散存储于不同的数据节点之上。

然后是点对点传输,它有一个更有名的英文缩写“P2P”。区块链使用点对点传输,目的是去中心化,点对点网络本身是一个平等网络,没有服务器/客户端概念,只有平等的同级节点。因此区块链的分布式系统本身也是一个平级网络,各个节点间互相平等。

之后是共识机制,这是区块链的重要概念,也是区块链事务达成分布式的共识算法。由于区块链的点对点网络下存在较高的网络延迟,各个节点所观察到的事务先后顺序不可能完全一致。因此区块链系统需要设计一种机制对在差不多时间内发生的事务的先后顺序进行共识。这种对一个时间窗口内的事务的先后顺序达成共识的算法被称为“共识机制”。

而加密算法,则值得就是区块链中使用的信息加密算法,而区块链的信息加密算法主要包括哈希函数和非对称加密两部分。哈希函数目前主要有SHA家族算法、MD5、SCRYPT、RIPEMD、WHIRLPOOL、CUCKOO HASH、HAVAL、Tiger、LYRA2、Equihash、Hashimoto、Dagger、Ethash(以太坊目前Pow机制下的算法)等多种算法,还有其中算法的串联和并联使用。由于商业应用一般都不考虑挖矿问题和更注重性能问题,Elwin更推荐大家采用常用的SHA256算法为主。而非对称加密部分,主要有非对称加密算法包括RSA、DSA、椭圆曲线算法等,区块链一般使用椭圆曲线算法,包括ECDSA和SCHNORR,还有国密算法(SM2椭圆曲线公钥密码算法、SM3密码杂凑算法、SM4分组密码算法),其中,比特币使用的签名算法是ECDSA,而Schnorr签名的验证速度比ECDSA签名的快,而且这种签名体积可以更小,还原生地支持多重签名。而区块链的加密算法也会带来一定的弊端,就是信息处理效率下降。因此也可以看出,区块链更注重的是信息的安全,而不是追求分布式并发形态下的高效率。

区块链应用场景浅析

本文仅立足于德塔现有业务,浅析区块链未来可能在公司内部落地的业务场景。至于虚拟货币等目前因为暂时没有业务场景,所以暂时不在本文讨论范围内。

应用场景

基于区块链的学信系统

学生学信是目前教育行业一个典型区块链落地场景,基于区块链的特点,将学生的学籍、奖励、处分、成绩、消费、心理健康、体育、修读课程、等级考试等所有相关信息都存入区块链,并构建一个“教育主管部门节点-多个高校节点-企业服务节点-学生/毕业生服务节点”结构的学信区块链。在此区块链中,企业、学生、学校、教育主管部门都可以平等的查询学生学信信息,并且只有背书节点可以进行修改。而以往学生篡改成绩、伪造证书等行为在此场景下将会无所遁形,彻底消除。

基于区块链的病例档案系统

此场景来源于保险业务一个需求,即将所有医院作为区块链的各个节点,而病人的病例信息将会存储区块链,而当病人购买保险时,保险公司会提前向区块链发起数据查询申请,查询被保人的病例历史,进而分析当前被保人是否可以购买相应保险,甚至可以通过病例进行大数据分析建模,分析病人罹患各种疾病的大致概率,进而对保费进行分析调整。

每年保险公司在这方面损失较大,而目前只能通过人工管理,因此区块链可以最大程度降低保险公司这类业务的风险。

引用参考

http://www.sohu.com/a/162764647_673573

http://www.ruanyifeng.com/blog/2017/12/blockchain-tutorial.html

http://blog.csdn.net/elwingao/article/details/53173213

《浅谈大数据第一期》

德塔 | 专家团队

干货 | 共41篇

版权所有©️德塔大数据研究院

转载请注明出处

DaaS慧报(有温度的大数据报告)

大数据落地方案

大数据思想

主编:林帅兵|德塔大数据研究院院长

责任编辑:孙一欣

责任美编:彭 琦

德塔大数据研究院专家团队

师文轩|德塔大学名誉校长

李智博/董旭/李宝环/王凤君/孙一欣/林帅兵 ……

欢迎在下方留言,“塔塔”会在第一时间回复您!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180221B05WEW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券