• 比特币区块链学习笔记


    前言

    比特币从诞生到现在已经有十几年了,对它印象很深的是,很多早期比特币玩家赚的盆满钵满,同时也经常看到区块链比特币的新闻,一直对比特币区块链模棱两可,这次花了些时间深入了解,学习资料大部分来源于公众号「白话区块链」零基础入门系列,感谢分享。

    比特币与区块链

    比特币底层基于区块链技术,区块链技术因比特币而诞生,可以这么理解:比特币是区块链技术应用之一,目前为止也是使用最广泛最出名的一个。

    比特币

    比特币2009年由中本聪开发以及运营,比特币就是通过某种机制产生的代币,总共只有2100万枚。

    比特币具有匿名、不可更改、不能伪造的特点,在某些行业流行了起来,比如xi钱。它是怎么做到的呢?答案是通过区块链技术。

    区块链

    什么是区块链技术?

    专业且烧脑的解释:

    区块链是一种按照时间顺序将数据区块以顺序相连接、并以密码学方式保证的不可篡改和不可伪造的分布式数据库(账本也是数据库的一种)。它具有不可篡改、防伪、可追溯等特性。

    区块链的核心

    分布式、去中心化的区块链如何进行维护?

    记账(写数据块)需要一个大家都认可的规则,即“怎样记账才是有效”,而这个大家认可的规则就是区块链的共识机制。

    记账获得的奖励就是代币,比如比特币。

    不夸张地说,共识机制是区块链的灵魂。

    目前为止,区块链三种主流的共识机制是:PoW、PoS、DPoS。

    • PoW

    工作量证明机制 (Proof of Work)

    工作量证明机制,就是用工作量结果来证明贡献大小,再根据贡献大小确定记账权和奖励。

    这个证明过程,是依赖计算机进行数学运算进行的。

    PoW的优点:完全去中心化,公平公正,不需要中心化的管理机构,用户(即节点)之间实现了公平竞争,谁先解出题目,谁就获得相应收益。

    Po的缺点:其主要缺点是浪费能源。

    • PoS

    权益证明机制(Proof-of-Stake)

    权益证明机制,即拥有越多股权,就可以获得更多奖励。

    这里的股权是指你持有的数字货币的数量和时间,根据它来分配权益,类似股票的分红制度。你持有的币越多,持有的时间越长,即币龄(币龄=持币数*持币时间)越大,就能拿到越多的分红,也就有更大的记账权利。

    PoS的优点有三个:一是耗能少,不需要像工作量证明机制一样,耗费大量的能源。二是作恶成本高昂,想要攻击网络的话,必须要有51%的币龄,这个难度就很大了,不但需要大量的币,还要持有足够长的时间;三是达成共识的时间短,网络环境好的话,可实现毫秒级速度。

    PoS的缺点有两个,一是持币趋于集中化,因为持有的币越多,时间越长,分配的收益越大,获得的币越多,使币过于集中;另一个是流动性变差,持币有收益分配,就没有动力去套现,会屯币不动,开启躺赚模式,导致币的流动性变差。

    • DPoS

    委托权益证明机制

    DPoS委托权益证明机制,是在PoS基础上优化而来的,通过投票选举的方式,选出生产者,代表他们履行权利和义务,而不是用算力来决定。如果生产者不称职,随时可能会被投票出局。投票的权重和分配的收益,都是按照持有的加密货币数量占总量的百分比来计算的,51%的股东的投票结果是不可逆且有约束力的。

    DPoS和股份制公司类似,普通的股民不能进董事会,要通过投票选举代表来组成董事会,用每个人手上的数字货币计算权重,再根据权重投票选举出能代表他们权益的人,代理记账。

    DPoS的优点是,记账节点数量少,协作高效,记账效率高。其缺点是减弱了去中心化的程度,由选出的代表进行记账,存在一定的中心化控制。

    区块链类型

    公有链、联盟链和私有链它们本质的区别是准入机制不同,换句话说,区块链账本公开程度决定了它是公有链、联盟链还是私有链。

    • 公有链(Public Blockchain)

    公有链是指任何人都能参与的区块链。公有链是去中心化程度最高的区块链,不受机构控制,整个账本对所有人公开透明。任何人都能在公有链上查询交易、发送交易、参与记账。加入公有链不需要任何人授权,可以自由加入或者离开,所以公有链又称为非许可链。

    公有链记账有延时高,成本高、效率低的特点。

    • 私有链(Private Blockchain)

    和公有链的账本对所有人公开透明和人人皆可记账的情况相反,私有链是指区块链记账权限仅在一个人或者一个机构手里,并且参与记账的权限由机构内部制定,读取权限可以对方开放也可以任意程度地限制。

    私有链有记账速度快,没有记账成本,隐私性高等优点。

    • 联盟链(Consortium Blockchain)

    联盟链的账本的公开程度,介于公有链和私有链之间。联盟链是指多个机构共同管理维护的区块链,参与区块链的节点是事先选定的。联盟链也只对联盟内部成员开放全部或部分功能,链上信息的读取、写入以及记账规则都按照联盟共识来设定。

    和私有链一样,节点加入需要得到授权许可,所以联盟链和私有链都称为许可链。

    联盟链由于节点之间有很好的连接和可信的网络环境,所以联盟链有记账效率高、共识时间短、记账成本低还能兼顾隐私的特点。

    区块链术语

    • 挖矿:争夺区块链记账权,获得代币奖励,这里的矿就是指代币
    • 矿工:参与挖矿的用户(运行中的挖矿程序)

    区块链钱包

    区块链对用户不友好,为了减少使用门槛,很多公司开发了区块链钱包。

    数字钱包:存储区块链资产的钱包。

    数字钱包,虽然门槛降低了很多,但是对于小白用户还是不友好,不了解相关专业术语还是会云里雾里。

    公钥与地址

    公钥=银行账户,地址=银行卡号

    「公钥」就像你的银行账户,「地址」就像你的银行卡号码。

    钱包的「地址」是由「公钥」通过计算得来,就像银行先给你开户,后给你银行卡卡号。

    密码

    密码=银行卡密码

    一个钱包在不同手机上可以用不同的「密码」,彼此相互独立,互不影响。

    私钥

    私钥=银行卡号+银行卡密码

    一个钱包「地址」只有一个私钥且不能修改。

    所以,私钥就相当于是“银行卡号+银行卡密码”,非常重要,一定要妥善保存。

    助记词

    助记词=私钥=银行卡号+银行卡密码

    「助记词」,顾名思义,就是帮助你记录、记忆。

    「助记词」和「私钥」具有同样的功能
    「助记词」只能备份一次,备份后,在钱包中便不会再显示。因此,在备份时一定要抄写下来。

    Keystore

    Keystore+密码=私钥

    在导入钱包时,只要输入「Keystore」 和「密码」,就能进入钱包了。

    「Keystore」可以理解为加密后的「私钥」,和钱包的「密码」有关,钱包的「密码」修改后,「Keystore」也发生相应变化。

    以太坊

    以太坊是基于区块链技术的项目,业内观点:比特币为区块链1.0,那么以太坊是区块链2.0,以太坊最大特点是:提供了区块链基础设施,通过智能合约发行区块链项目非常简单。各种ICO项目如雨后春笋般冒出来,跟它降低了技术门槛有很大的关系。

    以太坊与比特币比较

    比特币是一个分布式的账本,主要的功能是记账。

    以太坊则可以理解为一个分布式计算平台,不仅可以记账,还可以在上面运行程序。

    但与比特币不同的是,以太坊提供了一套图灵完备的脚本语言,也就是说,我们能在以太坊上开发小程序。

    什么是智能合约呢?简单理解,智能合约就是可以自动执行的合同。

    我们可以看到:比特币只是实现了交易记录的不可篡改,有了智能合约的以太坊,才真正做到了去“信任中介”,不需要第三方来做担保。

    我们总结一下,以太坊是天才少年V神开发的一个分布式计算平台,不仅可以记账,还可以在上面运行程序,杀手锏是智能合约功能。

    智能合约

    智能合约本质上也是一种程序,它是基于去中心化网络上的特殊“艺术品”。

    可以看作是电子版的合同,是数字化时代的产物,通过信息化的方式传播和验证,并且在没有第三方中介的情况下,由相应系统自动执行约定内容的一种协议。并且区块链上通过智能合约进行的交易和其它一些约定的执行过程和结果都是可以被追溯和不可逆转的。

    EOS

    EOS被业内认为是区块链3.0,以太坊很强大,但是性能很低,EOS通过降低去中心化达到提高系统性能的目的。

    EOS(Enterprise Operation System),是由Block.one公司主导开发的高性能区块链底层操作系统。

    在介绍什么是以太坊时,我们用过一个比喻:比特币就像当年的大哥大,只有打电话功能;以太坊就像当年的小灵通手机,除了打电话外,还可以运行一些小游戏,比如俄罗斯方块。

    EOS就像是第一代iPhone,除了打电话、运行小游戏外,还支持上网、发电子邮件等商业应用。

    换句话说,EOS可以视为以太坊的升级版。

    区块链应用

    需要用区块链技术来解决的应用,通常有这样的特点:“需要进行数据存储、通常存在多个数据输入源、各参与方没有可信的第三方、写入数据的人通常匿名且各方不需要相互信任、数据有公开验证的需要”。

    • 基于区块链的电子发票
    • 基于区块链的商品溯源

    区块链开发实战

    看理论很枯燥也很容易忘,也有很多点很抽象,看得云里雾里的,最好可以实践一下,初学开发者,可以参考来自「高可用架构」公众号「如何成为一名区块链开发者」系列文章。

    其它

    什么是零知识证明?

    “零知识证明”(Zero-Knowledge Proof),是由S.Goldwasser等人在20世纪80年代初提出的。

    零知识证明必须包括两个方面,一方为证明者,另一方为验证者。证明者试图向验证者证明某个论断是正确的,或者证明者拥有某个知识,却不向验证者透露任何有用的消息。

    在本质上,零知识证明是一种涉及两方或更多方的认证协议。在零知识证明中,个人可以在不泄漏秘密的情况下,证明他知道这个秘密。

    你在互联网上真的没有隐私。

    零知识证明,是改变这一现状的手段之一,它可以为我们带来必要的隐私保护。

    DApp

    DApp,全称是Decentralized Application,去中心化的应用程序。

    运行在以太坊、EOS等区块链上的应用程序,我们就称之为DApp,因为它们是去中心化的应用程序。

    我们手机里的大部分App,是依赖中心化的服务器来运行的。

    DApp则不同,它不需要依赖于中心服务器来运行,用户的数据通过加密后直接存储在区块链链上。

    随着技术的发展,底层区块链性能不断提高,未来会有越来越多、越来越实用、越来越好用的DApp出现。

    稳定币

    稳定币,顾名思义,就是和某个标的保持稳定兑换比例的加密货币。

    稳定币不仅仅是货币的电子化,它还是一种可编程的加密货币,是区块链技术诞生后才有的一个货币类别。

    国家数字货币,又称为法定数字货币,就是一种稳定币。

    后记

    • bi圈一地鸡毛,不要去搞各种bi,否则会输得只剩裤衩
    • 区块链技术还是有很大用处和前景的,但要用在正规项目上
    • 如果想系统学习和了解区块链,推荐《图说区块链》这本书

    参考资料

    【1】区块链开发实战 https://blockgeeks.com/guides/

    【2】区块链究竟是啥? https://mp.weixin.qq.com/s/dYLOSwR8QHi9v8USGeirIA

    【3】区块链入门 https://www.hellobtc.com/ling/qukuailian/528.html

    【4】白话区块链入门连载 https://www.hellobtc.com/z/baihua/

    【5】白话区块链科普https://www.hellobtc.com/kepu.html
    【6】被称为“区块链3.0”的EOS是什么? https://www.hellobtc.com/z/baihua/1276.html

  • 相关阅读:
    hdu 2191 珍惜现在,感恩生活(多重背包)
    《从Paxos到ZooKeeper分布式一致性原理与实践》学习知识导图
    你对ArrayList了解多少?
    JAVA酒店管理系统
    C#酒店管理系统
    C#图书管理系统
    java图书管理系统
    豆瓣高分JAVA书籍,你都读过吗?
    JAVA课程设计----------JAVA学生信息管理系统
    C#学生管理系统
  • 原文地址:https://www.cnblogs.com/wadeyu/p/15852025.html
Copyright © 2020-2023  润新知