农企新闻网

一个产品经理的区块链学习指南(一)

发布者:何熙
导读最近一年,我不断在关注基于区块链技术的加密数字货币——比方「比特币」、「以太坊」等,并且我以为虽然「加密数字货币」能够由于会要挟(各国)央行的位置而无法发扬更大的作用,但是其底层的支持技术(区块链)能够会改动互联网的形状(至多关于互金范畴来说)。所以一年来我不断在和我司的顺序员小哥探索学习区块链技术,我将在之后的文章里逐渐整理和分享基于「以太坊」(Ethereum)的公有区块链网络,完成智能合约的

最近一年,我不断在关注基于区块链技术的加密数字货币——比方「比特币」、「以太坊」等,并且我以为虽然「加密数字货币」能够由于会要挟(各国)央行的位置而无法发扬更大的作用,但是其底层的支持技术(区块链)能够会改动互联网的形状(至多关于互金范畴来说)。

所以一年来我不断在和我司的顺序员小哥探索学习区块链技术,我将在之后的文章里逐渐整理和分享基于「以太坊」(Ethereum)的公有区块链网络,完成智能合约的笔记。但是我想说的是,这并不是一个给顺序员小哥来看的开发文章,而是希望可以让一个产品经理对区块链技术有所理解。由于这个系列不会特别深化的去讲其中的编程原理,更多是一些根底性的概念。

什么是区块链?

说到区块链,我们普通都会想到以「比特币」为代表的加密数字货币。所以我们就经过「比特币」网络是如何任务的来了解区块链。就目前的金融状况而言,我们假如停止转账需求找到一个可以信任的第三方(比方银行或第三方领取公司),由这些可信任的第三方来确保买卖的无效性,但可信任第三方的存在在一定水平上添加了买卖的本钱。而基于加密数字货币可以在买卖中摒弃可信任的第三方,让恣意两人直接的买卖成为能够。

比特币买卖如何停止

有一个很著名的 Alice 与 Bob 的转账故事来讲清楚比特币买卖的运转进程,我就将其简化一下,留意斜体字局部:

一个产品经理的区块链学习指南(一)

  1. Alice 想将一些钱( 假定是1 btc)转账给 Bob。
  2. Alice 经过基于 P2P 技术(这里的 P2P 可不是网络借贷,而是点对点网络,就是快播用的那个技术)的比特币网络向 Bob 发起比特币转账。这里他们必需想网络提供基于密码学(非对称加密算法)的加密证明(也就是密钥)来证明他们的身份。
  3. Alice 与 Bob 的买卖记载会被记载在一个「区块」(「block」)中,并且这个「区块」会被告诉给比特币网络中其它的节点停止确认。
  4. 在比特币网络中的其它节点经过计算一个「难计算、易验证」的数学成绩来完成验证。节点验证的动机是由于转账手续费以及在验证进程中新发生的比特币作为找到新块的奖励。在比特币网络中,块的验证被称为「挖矿」。
  5. 比特币网络中的每个节点都将会保存之前验证过的一切这些买卖的账本正本(散布式记账):同周期内的买卖组成「区块」,依照工夫顺序区块会连成链,即「区块链」,从而构成「买卖」——>「区块」——>「区块链」的三层构造。
  6. 一旦网络中有一个节点处理了之前提到的「难计算、易验证」的数学成绩,买卖即被确认。新失掉确实认的「区块」就会被处理成绩的节点添加到这个区块链中,并向网络内其它节点播送。
  7. 接上去,网络内的其它节点将验证处理成绩的节点的播送(数学成绩),并达成共识,即买卖成功,并且各节点都曾经收到。一旦达成共识,每个节点都将更新各自的买卖记载正本。
  8. 这时分,区块链的特性开端展示,由于「账本正本」会存在于网络中的每一个节点,实际上任何记载都是地下的、不可修正的。试图伪造的买卖将无法经过网络内节点的验证,其构成的「区块」将被舍弃。
  9. 当完成以上一切步骤后,Alice 的比特币账户余额将增加1 btc,Bob 的余额中讲添加 1 btc.

上边说到了几个词语,需求解释一下:

点对点网络(P2P 网络)

P2P 网络并不是一个新呈现的技术,又叫「对等网络」。在这个网络环境中,没有中心效劳器,依托用户群交流信息。每个参与者的位置处于对等位置,并没有主从之分。每个参与者既是效劳的提供者(server),也是效劳的获取这(client)。和我们生活最贴近的就是媒体播放了。下图为 P2P 网络表示图:

一个产品经理的区块链学习指南(一)

非对称加密算法与加密证明

我们都说比特币是匿名的,但是依照上文提到「比特币买卖步骤」,还是需求去证明他们的身份,那么是如何确保「匿名性」的呢?

在比特币网络中,身份(钱包地址)并不是和姓名或许其它的信息对应的,身份(钱包地址)只复杂关联一个依据「非对称加密算法」来随机生成的私有/公有密钥(key)。钱包里的钱属于掌握这个公有密钥(key)并可以运用公有密钥(key) 来确认买卖的人。运用公有密钥(key) 来确认买卖异样不需求姓名或许其他的信息。一个比特币钱包地址就是一个公钥Key,它是一串由数字和字母组成的「乱码」,比方1A2SH4r5z1gufQw7cj9aLunWhYRyTDbRFW

这就要说到「非对称加密算法」,假如直接搬 Wikipedia 上的解说会比拟单调,我们接着举栗子:我用化名写了一本书,这本书十分受欢送。如今有团体冒充我,自称他是真的「张小璋」,我们叫他「小璋 A」一切的东西都是他写的。那我应该如何来证明呢?

这时我们就可以采用「非对称加密算法」来协助我们处理这个成绩:在书籍出版前我应用非对称加密技术生成了一个密钥对(公/私密钥)并将公钥声明在书中,任何人都可以运用公钥来加密我书中的恣意一段文字。谁能将其解密就可以证明谁是这本书的作者。由于「非对称加密算法」公钥用来加密,但只要运用私钥才干够停止解密。「小璋 A」无法对该段文字停止解密,而我可以。这就证明了我是本书的作者,却从未泄漏你的团体身份。当然,假如我丢了私钥或许「小璋 A」经过其他手腕取得了密钥(比方要挟我交出密钥)这不在我们的讨论范围了。

比特币网络并没无限制每个节点生成「钱包地址」的数量,你可以纵情的生成足够过的「钱包地址」从而完成身份匿名的。同时只需求确保正确的密钥来确认买卖,既可以完成比特币网络买卖的验证。

什么是「区块」

上文提到:区块链网络是由「买卖」——>「区块」——>「区块链」的三层构造组成,每个添加到「区块链」上的「区块」都永世记载了买卖的数据。 一个产品经理的区块链学习指南(一)

每个区块链都会包括以下内容:1. 上一个区块链的 hash 散列,既可以完成区块的链衔接也也可以避免窜改。毕竟实际上不同内容但是呈现同一 hash 散列值的能够性比外星人今天入侵地球还要小。2. 随机数,即之前提到的「难计算、易验证」的数学成绩的解。这个随机数可以用来其它节点对买卖停止验证,同时这个随机数关于每一个区块来说都是无独有偶的。3. 买卖记载和工夫戳。

显然,假如没有「随机数」或许「随机数」被其它节点验证是错误的,新的区块将不会被提交到「链」上,因而「挖矿」的进程实质上是在「求数学解」的进程,目前这个进程普通为10分钟。

共识机制及散布式记账

先说「共识机制」,在比特币网络中采用的是 PoW 算法(即任务量证明),复杂来说就是多劳多得。节点(矿工)经过依赖专门的机器(矿机)来停止数学运算取得记账权。谁处理了那个「难计算、易验证」的数学成绩,谁就可以失掉网络上新发生的比特币和 Alice 在转账进程中要付出的买卖费用。同时,取大多数人都曾因不佳的交通状况而迟过到、叫过苦。经济的快速发展带动的是社会各方面的全面提升,但在此过程中,交通的发展却没跟得上前进的步幅,各类交通难题让交管部门伤透脑筋,如何利用AI来解决相关难题已成当务之急。得记账权的节点会向网络中其它的节点宣布新的区块链(旧的区块链加上新的区块)的主张,网络上其它的节点经过反省这个主张(验证随机数)来确认其无效性。

确认完成后(比方7个节点确认,或许10个节点确认),这个主张将会被同步到该网络中一切的网络节点中,同时,该区块链上的一切买卖都可以追溯到第一个「创世」区块。因而买卖是不可窜改的(任何试图窜改买卖的行为会被整个网络上的节点检测到并被由于验证失败而被丢弃)。这也意味着区块链上的数据操作与传统数据库操作不一样:传统数据库我们讲的是「增删改查」,但在区块链互联网电子商务和移动商务消费渠道的普及,使得支付市场将在不久的将来继续呈现更加美好的增长前景。上只要「增改」两项,一旦数据记载你将无法编辑(改)或许删除这条数据。

好了,文字写的也不少了,根本上包括了区块链的根底知识,假如你想更深化的理解,我引荐你读一下中本聪关于比特币机制的论文。(假如你读到这里了,就不要问我中本聪是谁……O(∩_∩)O~)

评论直接回复「比特币论文」,获取下载地址。我把中文版和英文版论文都放到我的网盘里了。

张小璋,大众号:张小璋的碎碎念(ID:SylvainZhang)。野蛮生长的产品经理,专注于互联网金融范畴。