区块链(blockchain)是当下的热门话题,新闻媒体纷纷报道,声称它将创造未来。不过,来这里炒币的人很多。我不知道区块链是什么,有什么特别之处,也没有兴趣去了解。那么区块链到底是什么?一、区块链的本质区块链的本质是什么?总之,区块链本质上是一个去中心化的分布式账本数据库。首先,区块链的主要作用是存储信息。你可以将你需要保存的信息写入区块链,也可以从中读取。其次,任何人都可以架设服务器,加入区块链网络,成为节点。一旦加入,该节点与所有其他节点享有完全相同的权利和义务,也就是说,每个节点都是平等的。你可以对任意一个节点进行读写操作,全球所有节点都会按照一定的机制依次完成同步,从而使区块链网络中所有节点的数据完全一致。二、区块链的特点——去中心化区块链最重要的特点就是去中心化。要理解去中心化,首先要知道什么是中心化。什么是中心化?比如你在淘宝上买东西,即使你付款了,资金也不会到卖家那里,而是到支付宝那里。只有当您确认收货后,资金才会从支付宝转入卖家账户。也就是说,本来就是买卖双方的交易,只是中间多了一个第三方支付宝。这就是去中心化,支付宝是中心。这样一来,去中心化就很明显了,即不需要第三方,买卖双方直接进行交易。区块链就是这样,区块链没有管理员,它是去中心化的。其他数据库有管理员,区块链没有。但是,没有管理员,任何人都可以向其中写入数据。如何保证数据可信?被坏人改了怎么办?请继续阅读。3.区块链的组成区块链是由区块组成的。块与数据库记录非常相似。每次写入数据时,都会创建一个块。每个区块包含两个内容:区块头和区块体。区块头:记录本区块的特征,包括时间戳、上一个区块的Hash、区块体的Hash等。区块体:存储的信息,即实际数据。这里,还有一个问题,什么是哈希?所谓“哈希”,就是计算机可以为任何内容计算出一个长度相同的特征值。区块链的哈希长度为256位,也就是说无论原始内容是什么,黑客都会计算出一个256位的二进制数。并且可以保证只要原始内容不同,对应的hash一定不同。比如字符串123的hash是a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0(十六进制),二进制是256位,只有123才能得到这个hash。(理论上其他字符串也有可能得到这个hash,但是概率极低,可以近似认为是不可能的。)也可以说每个区块的Hash都不一样,每个Hash对应一个区块。如果区块发生变化,则该区块对应的哈希也会发生变化。4、哈希的不变性区块和哈希是一一对应的,每个区块的哈希都是为“区块头”计算的。也就是说,将区块头的特征值按顺序连接在一起,形成一个很长的字符串,然后对这个字符串进行哈希计算。Hash=SHA256(区块头)以上是区块哈希的计算公式,SHA256是区块链的哈希算法。请注意,此公式仅包含区块头,不包含区块体。也就是说,哈希是由区块头唯一确定的。前面说过,区块头包含很多内容,包括当前区块体的哈希,以及上一个区块的哈希。这意味着如果当前块体的内容发生变化,或者前一个块的哈希值发生变化,那么肯定会导致当前块的哈希值发生变化。这对区块链很重要。如果有人修改了一个块,该块的哈希值就会改变。为了让后面的区块连接到它(因为下一个区块包含前一个区块的哈希值),这个人必须依次修改所有后续的区块,否则被更改的区块将被冲出区块链。由于后文提到的原因,哈希的计算非常耗时,短时间内修改多个区块几乎是不可能的,除非有人掌握了全网51%以上的算力。正是通过这种联动机制,区块链保证了自身的可靠性,数据一旦写入,就无法被篡改。这就像历史一样,已经发生的就是已经发生的,从此无法改变。这样可以确保安全。5.总结作为一个非托管的分布式数据库,区块链从2009年开始运行,没有出现过大的问题。这证明它有效。但是,为了保证数据的可靠性,区块链也有其自身的价格。一是效率。等待数据写入区块链至少需要十分钟,所有节点同步数据需要更多时间;另一个是能源消耗。区块的产生需要矿工进行无数无意义的计算。非常耗能。因此,区块链的适用场景目前其实非常有限。但区块链是互联网金融的底层技术架构。未来区块链的发展可以带动互联网金融的发展。那么让我们期待区块链给我们带来更智能、更实时、更惠普的未来金融吧!第二篇《区块链入门教程第二期:挖矿》已经发了,有兴趣的朋友可以自行阅读!
