为了更好的融入本公司的开发环境中,我需要对区块链的相关内容进行必要的学习,这个是第一期

0当前所了解的

目前我所知道的区块链知识不多,知道这个是从中本聪的比特币创造的一个概念。
区块链技术是一种去中性化的加密货币的交易平台。大家的交易行为会被其他的点
所知晓。区块链的块是一个一个串联的,每一个块需要人为的制造。每次制造出一个
块,制造它的人会获得奖励。奖励通常是一些加密货币。以太坊是一个更完善的基于
比特币的去中性化平台。目前大概只知道这些,现在开始看网上文档学习

1什么是区块链

这边用的是这里的文档
https://cloud.tencent.com/developer/article/1532748

以下是摘抄和注解

先看下区块链的定义:
狭义来讲,区块链是一种按照时间顺序将数据区块以链条的方式组合成特
定数据结构, 并以密码学方式保证的不可篡改和不可伪造的去中心化共享
总账
(Decentralized shared ledger),能够安全存储简单的、有先后关系
的、能在系统内验证的数据。
广义的区块链技术则是利用加密链式区块结构来验证与存储数据、利用分布
式节点共识算法来生成和更新数据、利用自动化脚本代码(智能合约)来编程
和操作数据的一种全新的去中心化基础架构与分布式计算范式

上面的文字毕竟太过学院派了,如果用一句话来概括,区块链其实就是一种 数据结构
区块链的作用自然也就不言而喻了:组织并存储数据
比特币就是应用这种技术制作的数字货币。

每个区块包含个部分:

区块头(Block Header):记录当前区块的特征值(里面存放的内容我们稍后再说)
区块体(Block Body):存放的数据

所以,区块就是一种存放数据的东西,可以近似的理解为链表中的节点

把许多区块链接在一起就形成了区块链

区块链的头叫创世区块,前一个区块称为后一个区块的父区块,反之称为子区块

2如何链接的呢

通过父区块的哈希 (hash)值建立链接的。

哈希就是计算机可以对任意内容,计算出长度相同的特征值
区块的哈希长度是256位的二进制数

推论1:每个区块的哈希都是不一样的,可以通过哈希唯一标识区块
推论2:如果区块的内容变了,它的哈希一定会改变

每个区块的区块头上会存放上个区块的哈希值

不同的区块链有不同的哈希值计算方法

3为什么需要区块链

因为社会意义巨大,区块链本质上是一种解决信任问题,降低信任成本的技术方案,
目的就是去中性化

4如何操作区块链

上文说过比特币就是应用区块链技术制作的数字货币,这里的话我们就以比特币交易
为例来看看区块链具体是如何操作的。在介绍流程前,我们先来了解一个概
念:节点/矿工

4.1挖矿
什么是挖矿?每增加一笔交易,形成一个区块的过程,就是所谓的挖矿

4.2广播
我们想要新增一笔交易(在区块链中新增一个区块)我们需要广播到整个区块链网络中,
让所有节点都承认这条记录,那么要如何操作呢

5区块链的广播机制

5.1

节点A收到一个区块,对其进行验证并将其广播给其附近的区块;
5.2

节点B收到inv消息后,如果他之前没有接受过这个区块,则向节点A发送一个getdata
消息;
5.3

节点A收到getdata消息后,就会把区块和交际记录的具体消息发送给节点b
5.4

此时节点B也就收到了一个区块,重复1,2,3操作给附近的区块

记录
一旦A节点新增一条记录并广播到网络中,网络中的其他节点如B,C,D等都会在自己的小
本本上新怎这条记录,一旦记录,之后就不可撤销,且不能随意销毁。

6区块链的不可修改

因为如果我这边要进行修改,那我得把我包括这次记录的后面所有记录都修改
并且还要把别人的账本包括这次和以后的所有记录都修改,这是很难实现的

7区块链的奖励机制

这边会用比特币作为例子
为什么要挖矿?
矿工把每十分钟产生的交易打包到一个区块中,一旦生成区块成功,矿工就会收到
两种形式的奖励,出块奖励和手续费,奖励过程是程序自动完成的

出块奖励
为了鼓励矿工的服务,对于其所记录和确认的交易,系统为矿工提供25个比特币作
为奖励。(这个奖励数量,系统设定每4年减半)

手续费
交易双方为了交易被区块链尽早记录会提供给矿工一笔交易费用作为激励。

谁来发行货币

既然我可以收到比特币奖励,那货币究竟是怎么发行出来的?出块奖励是系统
生成新币的唯一方式。只有最快的人才有可能获得生产这个区块的权利。
奖励只有一份

共识机制
简单的说,共识机制就是区块信息达成全网一致共识的机制,可以保证最新区块被
被准确添加至区块链,节点存储的区块链信息一致不分叉甚至可以抵御恶意攻击

pow机制
1.节点监听全网数据记录,通过基本合法性验证的数据记录将进行暂存;
2.节点消耗自身算力尝试不同的随机数(nonce),进行指定的哈希计算,
并不断重复该过程直到找到合理的随机数,这一过程被称为“挖矿”
3.找到合理的随机数后,生成区块信息(块头+块身);
4.节点对外部广播出新产生的区块,其他节点验证通过后,连接至区块链中,主链
高度加一,然后所有节点切换至新区块后继续进行下一轮挖矿。

只有当51%的矿工一起更改才能完成一次篡改

8什么是区块链质押

质押不是基于工作量证明的手段获取收益的,
基于权益证明和代理权益证明的数字货币会采用这种方式去挖矿。

这种挖矿方法中,区块链系统中的节点不需要太高的算力,只要质押一定
数量的代币,运行一段时间后就可以产生新的货币,而产生的新货币就是
通过质押得到的收益。和银行利息很像。

质押是否安全
数字货币的所有权是通过私钥决定的,只要私钥不泄露。币还是安全的

一般来说,质押操作有以下两种情况:
一是通过官方钱包,去中心化的钱包来质押。私钥不会泄露,币是安全的

另一种情况就是把币放到中心化的钱包或矿池,在这种情况下,如果对
方出了问题,你的币可能会损失

9Lp流动性

一些词汇:
流动性,指各项资产的数量分布情况
流动性池子,指各种资产所对应的资金池
lp流动性提供者,指向流动性池内添加对应资产的用户
Order Book,订单簿,中心化交易所的做市方式
滑点,指下单价格和最后成交价的差额比例
AMM,自动做市商

流动性挖矿是一种通过质押加密货币,来获取更多加密货币的方法。他是
去中心化金融中的一种新趋势,能够让加密货币投资者充分发挥其加密资
产的作用并获得较高的收益回报,并且任何人都可以参与这个生态系统。
简单的说,这意味着锁定加密货币即可获得奖励。

流动性挖矿为什么很火?

首先我们要理解什么是中心化金融(DeFi)。

DeFi产品基于公链和智能合约机制,致力于提供不可篡改,无须许可的的开放
式服务。而基于Defi领域的流动性挖矿所提供的新型挖矿模式,不但可以吸引
用户投入资金,也能够提升该协议的流动性。只需要向流动池中注入资金就能
获得较高的流动性回报,加上人人均可参与,这也就是为什么流动性挖矿越来
越火的原因。

10AMM

在AMM模式中,流动性由LP来提供。LP将自有资产按比例存入池子中为
交易提供流动性,这个池子称为流动性池。当交易者进行交易时,实
际上是与流动性池进行交易,交易价格由AMM模型根据参数自动生成。

自动做市商即AMM,它能根据简单的定价自动算法计算出买卖价格,我们
可以把它想象为一个进行买卖交易的机器人。他解决了传统交易所过度
到DEX(去中性化交易所)中出现的成本和效率问题。

先了解下中心化交易所的做市模式

在传统的交易所中做市,不管是股市还是加密资产交易所,采用的都
是订单薄模式。订单薄记录着买卖双方对资产的报价情况。在Order
Book中有两个角色,第一个是做市商,即挂单者,也叫Maker;另一个
交易者,即吃单者,也叫Taker

专业的做市商(Maker)会同时在交易所的买卖两个方向挂单,并且根
据市场的波动性调整报价,为交易所提供流动性。简单来说做市商就
是提供报价和流动性的人

在做市行为中,挂单的资产数量称为流动性,提供资产的人称为流动
性提供者
。LP提供流动性后,还需要为资产提供一个价格,这样才算
是完成做市。通常情况下,流动性与价格的提供者都是同一个人。如
果一个交易所没有做市商做市,或者很少做市商,交易者想要交易就
会面临没有流动性的情况。缺乏流动性就意味着会造成高滑点交易,
即交易者最终成交价格与看到的价格有很大差距,这会导致整个市场
交易积极性不高。为了提高交易的流动性,中心化交易所通常会吸引
做市商来进行做市操作。

在中心化交易所做市除了有一定难度和门槛问题外,中心化交易所还
一手掌管着用户的资产和数据存储,不仅会暴露个人隐私,交易和代
币的流通也存在不够透明的问题。

AMM模式的交易所

在AMM模式中,流动性由LP来提供。LP将自有资产按比例存入池子中为
交易提供流动性
这个池子称为流动性池。当交易者进行交易时,实
际上是与流动性池进行交易,交易价格由AMM模型根据参数自动生成

流动性池可以分为三类:恒定资产比例池,两种资产比例在50/50;
合资产池
,支持3种及以上资产;加权池,多种资产比例。恒定资产比
例池最常见,比如BTC/USD,ETH/USD。

流动性挖矿是如何进行的?

流动性挖矿的运行与流动性提供者(LP)及流动资金池有着密切的关系:
流动性提供者为流动资金池提供资金以获得流动性代币LP token),
流动资金池为市场提供动力并产生手续费用,再按照LP token份额占比支
付奖励给流动性提供者,如此反复进行。

11如何获得流动性挖矿收益?

用户存入资产到池中就能获得奖励代币(流动性代币),池中只要有人
交易就会产生费用,并按照指定的奖励规则进行代币分配,这些都是
动性挖矿收益

而流动性挖矿的收益计算则沿用了传统市场中常用的度量标准:年化利率
(APR)和年化收益比率(APY)。需要注意:流动性挖矿市场竞争激烈,
收益变化波动大,无论使用哪一种计算方式,显示的结果只是一个估值,
仅做参考。

在去中心化交易所中,AMM模式是由LP来提供流动性

LP提供流动后获得相应的LP Token,相当于一种存款凭证。用户根据
自己资金比例所分得的交易手续费会累积到LP Token的价值中,有些
平台还提供平台原生代币的奖励。用户提供流动性获得收益的行为被
称为流动性挖矿

有了流动性之后还不够,要完成做市交易还需要提供报价,那么AMM是
如何生成价格的呢?

不同AMM模型,他们的价格计算共识也有所不同,大致可以分为恒定乘
积做市商
(cpmm)、恒定和做市商(csmm)、恒定平均值做市商(cmmm)等几类。目前普及类较高的是恒定乘积做市商。
x*y=k,x、y分别代表流动池中两种资产的数量,他们的乘积是恒定的常数k。当代币x供给增加时,y代币的供给就必
须减少,反之亦然。当当价格变动越来越大时,两端会接近无穷大。

AMM的自动化模式使得做市操作变得非常简单,并且在去中心化的背景
下其监管面非常小,提供流动性也很便捷,任何用户都可以以任何资
金量参与。流动性挖矿奖励也激励了用户提供流动性,提供良好的闭
环。

不过,AMM模型也没有达到完美程度。它存在一些局限性