Hello,区块链

大家好,我是雷布斯。

区块链作为21世纪最引人瞩目的创新之一,相关技术正以其去中心化、透明性和安全性等特点,重新定义着我们对于数据交换、信息存储和价值传递的认知。

无论是金融领域的颠覆,还是供应链管理的革新,区块链都以其独特的方式在各行各业展现出巨大的潜力。

那么区块链到底是什么呢?

相信如果你能读完这篇文章,就会得到答案。


“If you can't explain it simply, you don't understand it well enough.”,如爱因斯坦所言,如果我讲的不够简洁,亦或者你不能理解,那一定是我对它没有理解透彻,请留言告知,我会斟酌后加以改进。

零、前言

1. 本次分享将会涉及

  • 什么是区块链及分类
  • 区块链是如何工作的
  • JS 演示区块链特性
  • 区块链的发展和思考

一、区块链是什么?

1. 起源

区块链起源于比特币。

2008年金融危机全面爆发。2008年11月1日,一位自称中本聪(Satoshi Nakamoto)的人发表了《比特币:一种点对点的电子现金系统》一文 ,这标志着比特币的诞生。两个月后理论步入实践,2009年1月3日第一个序号为0的创世区块诞生。几天后2009年1月9日出现序号为1的区块,并与序号为0的创世区块相连接形成了链,标志着区块链的诞生。—— 百度百科

2. 几个名词解释

2.1 白皮书

比特币白皮书即2008年中本聪发表的论文《比特币:一种点对点的电子现金系统》,阐述了基于P2P网络技术、加密技术、时间戳技术、区块链技术等的电子现金系统的构架理念。

2.2 中本聪

中本聪真实身份,至今是个迷。

中本聪于2008年发表了一篇名为《比特币:一种点对点式的电子现金系统》(Bitcoin: A Peer-to-Peer Electronic Cash System)的论文,描述了一种被他称为“比特币”的电子货币及其算法。

中本聪英文名全程:Satoshi Nakamoto,埃隆·马斯克2022年在推特指出SAMSUNG(三星)、TOSHIBA(东芝)、NAKAMICHI(中道)、MOTOROLA(摩托罗拉)中的SA、TOSHI和NAKA、MOTO组合而成。

2.3 去中心化

如果说中心化是集权,那么去中心化就是分权。

如果在互联网范围内谈论去中心化,可以把早期的门户网站的“你听我说”的广播模式看作是中心化的,而“人人都有小喇叭”的自媒体模式就是去中心化的。

生活中的类似场景是 Peer Review(同行评审)。一个在线课堂中,由以前的老师一人批改作业,改成互不认识的3位同学之间,相互评分。

2.4 区块链

和锁链、项链没什么区别,区块链也是一种“链条”,只是它连接的不是铁环或者珍珠,而是一个又一个的区块。最初,区块就是用来记录一条条的交易信息的。

本质上,区块链是一种去中心化分布式账本数据库

举例子

幼儿园组织春游,小朋友排队前行,老师让每位小朋友记住前面的是谁,结束后回来站队,只要有一个同学报错了前面的名字,那就证明小朋友队列不正确。

2.5 SHA-256

SHA是英文Secure Hash Algorithm的简称,即“安全哈希算法”。

它是一些列哈希函数的统称。SHA-256 则特指其中一种哈希值固定长度为二进制256位的算法。

如果将《红楼梦》的内容作为输入,通过SHA-256算法进行计算的话,我们将得到一个256位长度的字符串输出,而这个字符串对于《红楼梦》内容而言,它具有唯一性。哪怕我们仅仅改动《红楼梦》中的一个标点符号,输出的字符串将完全不同。

2.6 挖矿

虚拟货币的一种生产过程。

挖矿就是用计算机cpu和显卡运行某种特别算法,计算出符合其特定规则的一个解,这个解就是一个虚拟数字货币。

其本质上就是生成一个新的区块,然后将新生成的区块和原本的区块加密打包在一起,也就形成了所谓的加密数字货币,在这个过程中,维护虚拟货币平台会给出一些虚拟货币的奖励

3. 几个区别

3.1 区块链和比特币

  • 区块链是比特币的底层技术
  • 比特币是基于区块链技术的第一个应用
  • 区块链分为公有链、私有链和联盟链,比特币属于公有链

3.2 区块链和以太坊

  • 区块链是以太坊的基础,以太坊是一个建立在区块链上的平台,可以用来创建和部署分布式应用程序和新的加密货币。
  • 区块链是一种分布式数据库,它以块的形式存储数据,每个块都是由一系列交易组成的。
  • 以太坊(Ethereum)是一种基于区块链的开放式软件平台,它使用智能合约来实现分布式应用程序(dApps)
  • 以太坊是第一个实现智能合约功能的区块链项目,但是以太坊并不是区块链的唯一平台,还有Hyperledger、Uniswap等。

二、区块链的分类

1. 私有链

私有链也称为内部链,由单一一家公司搭建的区块链,隶属于公司内部。

它的开放程度很低,数据的写入、修改权限仅在少数人/组织手中,属于私有机构单中心网络。目前很多大型的公司集团都在开发自己的私链,它可以用于企业管理、财务审计,银行清结算等。

举例子

QQ空间,访问别人的空间后,会留下一条“小明访问了你的空间”,如果想删除自己访问记录,就要充值黄钻。

如果是私有链,想要删除这个访问记录,就很麻烦了,这条记录被记录在每个区块上。最后只能尴尬的在区块中增加一条信息“小明没有访问过你的空间”😓

2. 联盟链

由多个互相信任的组织共同参与,彼此间具有良好的合作关系。

联盟链的开放程度介于公有链和私有链之间,写入、修改权限仍掌握在多个互信组织手中,被视为是部分去中心化的区块链。

联盟链的参与方彼此信任程度高,验证效率快,交易成本较公链大大下降,同时数据的部分隐私又能得到很好的保护。联盟链上的信息与资源,只有该联盟的成员才可以共享。

举例子

相邻的咖啡店和面包店。

两家店实现积分互换,共同搭建一条“积分链”。每一条面包和每一杯咖啡的交易都被记录到区块保存到链上。由于交易账本是有咖啡店和面包店共享,所以当咖啡店想要修改账本,写入不存在的交易,就会和面包店手里的账本冲突,就会被发现。

3. 公有链

公有链是在实际应用中开放程度最高的一类区块链。

公链的参与权限没有硬性要求,任何个人、组织都可以自由的加入和退出。公链上的所有数据记录公开、透明,任何人都能参与共识过程,公链被认为是不受机构控制,完全去中心化的区块链,最典型的公链代表就是比特币系统

举例子

一场唱歌选秀大赛。有三种评审方法,对应的就是三种区块链:

  1. 私有链:一家主办方组成一个内部评审团。
  2. 联盟链:利益相关的主办方、协办方和赞助商等组成联合评审团。? 3. 公有链:决赛开启场外观众短信投票,评审人变成了无从得知身份的大众参与者。

三、区块链是如何工作的?

1. 单个区块

1.1 Data

以比特币为例

单个区块中存储了:

  • 卖家信息
  • 买家信息
  • 比特币交易数量

1.2 Hash

  • 可以理解成一个指纹
  • 绝对唯一的
  • 包含了一个区块的所有内容

1.3 Hash of previous block

前一个区块的 hash 值,使区块可以形成链接,并保证了区块链的安全。

2. 多个区块组成链接

通常称第一个区块为创世区块(Genesis Block)

3. 不能随意篡改区块

当我们篡改区块时,如上图,修改2号区块时,区块对应的 hash 也会重新计算新的值,hash 被修改,这样会导致2号后面的2号区块变得非法,因为3号区块的 previous hash 和 2号区块的 hash 不一致了。

所以,修改一个区块会使得其后面所有链接的区块都变得非法

问题来了

那我把2号和2号后面的区块对应 hash 全部篡改,不就“以假乱真”了吗?

当前计算机的运算速度,是完全可以做到的,每秒计算成千上万的 hash 值。所以完全可以做到篡改一个区块,并重新计算其他区块的 hash 值,这样被篡改的区块就变得合法了。

所以为了减少这种风险,出现了一个新的技术:工作量证明(Proof of Work)

4. PoW和P2P网络

  • 区块链采用的是一种叫 Peer-to-Peer 的网络,并且所有人都可以加入。
  • 当有人加入这个网络时,TA会得到整个区块链的拷贝。
  • 这些人就算是达成了“共识”,他们认为哪些是合法以及那些是非法的区块。
  • 当有人篡改一个区块链,TA需要篡改区块链上的所有区块,重新完成每个区块的工作量证明(Proof of Work),并控制区块链上超过50%的用户,只有这样你篡改的区块才能得到所有人的认可。
  • 以上篡改动作几乎是不可能的。

四、用JavaScript 实现简单的区块链

const SHA256 = require('crypto-js/sha256')

class Block {
    constructor(index, timestamp, data, previousHash = '') {
        this.index = index;
        this.timestamp = timestamp;
        this.data = data;
        this.previousHash = previousHash;
        this.hash = '';
    }

    calculateHash () {
        return SHA256(this.index + this.previousHash + this.timestamp + JSON.stringify(this.data)).toString();
    }
}

class BlockChain {
    constructor() {
        this.chain = [this.createGenesisBlock()];
    }

    createGenesisBlock() {
        return new Block(0'2023.05.30', {loveCar'Zeekr 001'}, "0")
    }

    getLatestBlock() {
        return this.chain[this.chain.length - 1];
    }

    addBlock(newBlock) {
        newBlock.previousHash = this.getLatestBlock().hash;
        newBlock.hash = newBlock.calculateHash();
        this.chain.push(newBlock);
    }

    // 检测区块链是否有效
    isChainValid() {
        for (let i = 1; i < this.chain.length; i++) {
            const currentBlock = this.chain[i];
            const previousBlock = this.chain[i - 1];

            if (currentBlock.hash !== currentBlock.calculateHash()) {
                return false;
            }
    
            if (currentBlock.previousHash !== previousBlock.hash) {
                return false
            }
        }
        return true;
    }
}

let GenesisCoin = new BlockChain();
GenesisCoin.addBlock(new Block(1'2000.01.01', { loveCar'BMW 325Li' }));
GenesisCoin.addBlock(new Block(2'2020.01.02', { loveCar'Aston Martin DBX' }));

// console.log(JSON.stringify(GenesisCoin, null, 4))

console.log('is chain valid? ' + GenesisCoin.isChainValid())

// 篡改了区块链的数据后,再看下是否有效
GenesisCoin.chain[1].data = {loveCar'Mercedes Benz S'}

console.log('is chain still valid ? ' + GenesisCoin.isChainValid())

五、发展与展望

国内

  • 2016年10月

2016年10月18日,由工业和信息化部信息化和软件服务业司以及国标委指导下,中国区块链技术和产业发展论坛编写的《中国区块链技术和应用发展白皮书(2016)》正式亮相,区块链技术终于迎来了第一个官方指导文件。

  • 2016年12月

在《“十三五”国家信息化规划》中,首次将区块链列为国家级信息化规划内容。

  • 2019年10月

2019年10月24日,在中央政治局第十八次集体学习时,习近平总书记强调,“把区块链作为核心技术自主创新的重要突破口,加快推动区块链技术和产业创新发展”。

  • 2019年11月

2019年11月22日,国家互联网金融风险专项整治小组办公室表示:区块链的内涵很丰富,并不等于虚拟货币。所有打着区块链旗号关于虚拟货币的推广宣传活动都是违法违规的。

  • 2023年3月

2023年3月30日,全国医保电子票据区块链应用启动仪式在浙江省杭州市举行。医保电子票据区块链应用是全国统一医保信息平台建设的重要组成部分。医保电子票据和区块链技术全领域、全流程应用将为医疗费用零星报销业务操作规范化、标准化和智能化提供强大的技术支撑,实现即时生成、传送、储存和报销全程“上链盖戳”。

  • 2023年4月

香港Web3.0协会正式成立,同时迎来香港Web3嘉年华和数字经济峰会。

  • 2023年5月

2023年5月31日,《区块链和分布式记账技术参考架构》国家标准正式发布。这是我国首个获批发布的区块链技术领域国家标准。

  • 未来

未来还有很长的路要走。

海外

  • 2010年5月

2010年5月18日中午12点35分20秒,一个网名为拉斯洛(Laszlo,本名Laszlo Hanyecz)的程序员,在Bitcoin Forum论坛发了一个用10000比特币换取两块披萨的求助帖。

5月22日,在经历了4天的等待后,拉斯洛在当天下午5点17分发出了一个交易成功的帖子:

我只想报告我成功交易了10000比特币用于披萨,感谢jercos(本名Jeremy Sturdivant)!

至此,这项以10000枚比特币来换取披萨的壮举,最终在经历4天零4小时42分后,被宣告结束。

由于这笔著名的交易,5月22日被称为“比特币披萨节”。

  • 2013年8月

德国政府确认比特币货币地位,同年11月,美国参议院听证会也确定了比特币合法性。

  • 2015年9月

R3联盟(一个联盟链)成立,高盛银行、美国银行、花旗银行等数十家金融机构加入。

  • 2022年5月

2022年5月,LUNA币暴雷。同年9月,韩国一家法院对加密货币生态系统Terraform Labs的创始人权道亨(Do Kwon)发出了逮捕令,他创办的稳定币2022年年早些时候损失了400亿美元市值,引发了一场全球加密货币崩溃,令投资者损失惨重。

  • 2022年11月

2022年11月,新加坡金融科技节上,新加坡金融管理局(MAS,下称“新加坡金管局”)局长拉维-梅农(Ravi Menon)表示,新加坡希望成为数字资产中心(a hub for digital assets)。金融科技节举办期间,新加坡数字资产和去中心化金融的首个行业试点上线。

六、思考

1. 去信任化

区块链是为了增强信任,但本质是去信任化。

人与人的信任是脆弱的。区块链希望打造一种基于数学的完全全真的事实。

2. 代码即法律(code in law)

编程秩序和社会契约

3. 数据革命

去中心化后,数据身份和数据主权问题。

4. 新世界秩序

如何走向更高效的信息社会。

最后

最后,给我们的辅导服务打个广告。