区块链学习01

这篇具有很好参考价值的文章主要介绍了区块链学习01。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

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模型也没有达到完美程度。它存在一些局限性文章来源地址https://www.toymoban.com/news/detail-411018.html

到了这里,关于区块链学习01的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【使用go开发区块链】之获取链上数据(01)

    在我们实际开发项目中,很多时候都需要从链上获取区块数据,将数据加工处理后存入到数据库中,本章开始,我们来学习一下如何从链上获取数据(主动拉取)并存储到数据库中 本系列文章 1、【使用go开发区块链】之获取链上数据(01) 2、【使用go开发区块链】之获取链

    2024年01月22日
    浏览(32)
  • 【区块链学习笔记01】BTC-密码学原理-哈希函数

    区块链中最基础的密码学原理就是哈希算法,以下为哈希函数的简单介绍: 哈希函数是一种只只能加密但是不能解密的算法,哈希函数可以将任意长度的信息转化为固定长度的字符串。类似“8b46ec792e943de34605981980751a3c1e008218f77eeb27e474b594f7685019”这样。 当输入相同的值时,得到

    2024年02月03日
    浏览(35)
  • Android音视频开发实战01-环境搭建

    FFmpeg 是一款流行的开源多媒体处理工具,它可以用于转换、编辑、录制和流式传输音视频文件。FFmpeg 具有广泛的应用场景,包括视频编解码、格式转换、裁剪、合并、滤镜等等。官网:https://ffmpeg.org/ FFmpeg 支持各种常见的音视频格式,例如 MP4、AVI、FLV、MOV、AAC、MP3、M4A 等等

    2024年02月10日
    浏览(38)
  • Kubernetes 秘密暴露使大型区块链公司面临风险

    领先的网络安全专家对公开的 Kubernetes 配置表示担忧,这可能会威胁许多组织供应链的安全。 受影响的公司包括两家主要的区块链公司(出于安全原因,其名称已被隐去)以及其他多家财富 500 强公司。 Aqua Security 研究人员报告称,加密的 Kubernetes 配置数据已上传到公共存储

    2024年02月04日
    浏览(26)
  • arduino esp-01s开发环境配置(备忘)

    很久没玩arduino了,前天一个网友提了一个问题要我帮忙,结果电脑重新做了系统,又要重新设置环境,结果忘记了,做个备忘,省得以后又要重新研究。 1、附加开发板管理器网址:http://arduino.esp8266.com/stable/package_esp8266com_index.json 位置:文件-首选项 如图:  2、开发板选择。

    2023年04月24日
    浏览(25)
  • Minecraft 1.19.2 Forge模组开发 01.Idea开发环境配置

    我们本次来进行Minecraft 1.19.2 模组开发环境配置教程的介绍。 1.首先我们需要下载模组开发包: 1.19.2Forge MDK下载官网 找到Mdk的按钮点击并下载即可。 你也可以通过百度网盘下载该Mdk,下载链接附文末。 2.下载后解压该开发包,并用Idea打开: 之后等待系统自动构建环境: 出现

    2024年02月16日
    浏览(25)
  • Minecraft 1.20.x Forge模组开发 01.Idea开发环境配置

    我们本次来进行Minecraft 1.20.x 模组开发环境配置教程的介绍。 效果演示 效果演示 效果演示 1.首先我们需要下载Java17和1.20模组开发包: Java17下载官网 1.20.xForge MDK下载官网 找到Mdk的按钮点击并下载即可。 2.下载后解压该开发包,并用Idea打开: 之后等待系统自动构建环境: 出现

    2024年02月16日
    浏览(31)
  • 【C语言基础】01环境安装 Windows下的CLion开发环境的安装

    资源:放在评论区中 把压缩包拖拽到C盘根目录,一键解压压缩包,得到文件夹mingw64 点击CLion.exe,运行安装程序 路径为默认安装,如需更改,注意路径中不要带有中文. Installation Options 全部勾选 选择我想要之后重启电脑 点击CLion,进入内部设置 点击下方continue 继续 存放在D盘,不要有中

    2024年02月01日
    浏览(37)
  • 【手写数据库toadb】01 开发数据库内核准备阶段-开发环境准备

    ​ 专栏内容 : 手写数据库toadb 本专栏主要介绍如何从零开发,开发的步骤,以及开发过程中的涉及的原理,遇到的问题等,让大家能跟上并且可以一起开发,让每个需要的人成为参与者。 本专栏会定期更新,对应的代码也会定期更新,每个阶段的代码会打上tag,方便阶段学

    2024年01月22日
    浏览(37)
  • 招聘!区块链安全行业头部公司!岗位多 各职级均有

    工作职责 1、负责对接区块链开发客户,审计代码并为其提供安全保障,包括智能合约、协议及Dapp; 2、参与公司内部安全工具的开发和创建,使其遵循良好的工程实践以帮助优化安全服务; 3、进行安全技术研究,并于技术社区平台或相关会议上发表成果; 4、建立并优化团

    2024年02月05日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包