首页 > 其他分享 >Blockchain 理论基础

Blockchain 理论基础

时间:2023-06-01 15:36:15浏览次数:25  
标签:Web Layer Blockchain 理论 基础 网络 中心化 区块 分布式

1.区块链理论基础

区块链, 是技术.
本质上是一个分布式账本系统, 需要通过共识机制来确保网络中的节点对账本数据的状态达成一致, 以实现去中心化和安全性

起源

	2008年, 雷曼兄弟倒闭. 后两周
	中本聪, 论文<比特币: 点对点的电子现金系统>
	区块链技术, 就是点对点的解决方案

4大核心技术:

分布式存储
	区块
		数据结构
		在区块链上, 包括交易在内的区块, 都存储在一个链表结构中.
		每个区块都包含前一区块的哈希值, 确保所有区块都按顺序排列, 且信息不可修改
	分布式网络
		网络结构及存储方式
		区块链网络由许多节点组成, 每个节点都可读写数据.
		保证数据的复制和分散, 防止中心化攻击并提高网络安全性.
共识机制
	协调一致
	常见25种
	是保障分布式记帐的重要组成部分
	原因, 因为分布式网络中, 没有中央权威. 因此, 需要决策机制促使参与者达成一致
加密算法
	完整性, 安全性
	使用密码哈希函数确保每个区块都是不可更改篡改的, 从而保护信息的完整性
智能合约
	实现复杂逻辑
	可执行的协议, 于区块链上开发应用程序和自动化业务流程.
	确保数据和业务的真实性, 和自动执行, 减小中介花费.
其他部分
	P2P协议
		通信方式
		点对点进行通信, 没有单个中心节点被攻击的风险, 加强网络的去中心化.

分层概念:

G1

	Layer1(底层协议层)
		数据结构
		加密算法
		P2P网络
		共识算法
	Layer2
		闪电网络
		状态通道
	Layer3
		智能合约
		DApps

科研学术(3大层, 7小层)

layer0 (物理层,OSI模型)

		硬件模型(物,数,网,传)

layer 1(协议层)

		数据层(Data Layer)
		网络层(Network Layer)
		共识层(Consensus Layer)
		激励层(Actuator Layer)

layer 2(应用层)

		合约层(Contract Layer)
		应用层(Application Layer)

Why:
拜占庭将军问题
将军与将军距离远, 通信不方便.
军队中有叛徒, 需要推进整体进度
区块链技术解决的是信用问题.
安全性:
掌握全部节点的51%以上, 才可修改网络数据

相关概念

Web 3.0

Web 1.0

	万维网时代, World Wide Web
		用户只能读, 无法写
		中心化管理, 内容由服务提供商提供
		特点: 没有互动, 相当于看电视. 受制于硬件条件.
		时代背景: 硬件少, 计算资源少.

Web 2.0

	类似Wiki的知识和内容的平台, 应用, 网站
		用户可以读, 可以写
		中心化管理, 内容主要由普通成员丰富, 但由服务提供商进行统一管理
		特点:服务提供商不仅掌握自己创建的数据, 在掌握用户产生的数据, 可根据用户数据, 对其定制, 获取利益. 容易形成垄断
		时代背景: 计算机资源多, 数据存储成本低. 

Web 3.0

	类似磁力链, 种子
		用户可读, 可写, 同时也作为服务的一部分存在
		分布式管理, 内容由普通成员丰富, 管理由协议制定. 社区由最开始的算法与合约维持.
		特点: 去中心化, 开放性, 独立, 匿名,安全
		时代背景:计算设备多, 节点更多.  基于BlockChain区块链技术成熟. 无需第三方, 

挖矿

学习了区块链的基础理论之后, 了解了共识机制.
就明白了, 所谓的挖矿不过是在区块链技术1.0时代下.
对于layer1中, 共识协议(PoW)与激励协议下产生的一种活动.
一旦换了一个区块链, 其中的共识协议发生了变化, 不再是PoW, 那么, 挖矿活动就不再存在意义

标签:Web,Layer,Blockchain,理论,基础,网络,中心化,区块,分布式
From: https://www.cnblogs.com/jrri/p/17449151.html

相关文章

  • Blockchain 钱包
    钱包的必要性钱包是区块链中在应用层生成的一个工具.现在通常使用钱包,作为使用区块链资源的一个身份验证方式.所以,通常了解区块链的时候,会先生成一个或几个钱包,然后进行其他的操作生成一个钱包通常,初级使用者在学习区块链的时候,可以先生成一个热钱包.一般来说,......
  • Solidity基础
    Solidity基础RemixIDERemixIDE通常使用网页端:RemixSolidity中文文档:https://learnblockchain.cn/docs/solidity/Solidity基础:源文件布局声明许可证标识符://SPDX-License-Identifier:MIT用来标明代码的开源与否,开源许可如何声明编译指示:pragmasolidity......
  • 2-1-1python语法基础--基础-数据类型-数字
    列举布尔值为False的常见值?1,布尔型,False表示False,其他为True2,整数和浮点数,0表示False,其他为True3,字符串和类字符串类型(包括bytes和unicode),空字符串表示False,其他为True4,序列类型(包括tuple,list,dict,set等),空表示False,非空表示True5,None永远表示False浮点数保留两位小数,并做四......
  • SaltStack介绍——SaltStack是一种新的基础设施管理方法开发软件,简单易部署,可伸缩的
    SaltStack介绍和架构解析简介SaltStack是一种新的基础设施管理方法开发软件,简单易部署,可伸缩的足以管理成千上万的服务器,和足够快的速度控制,与他们交流,以毫秒为单位。SaltStack提供了一个动态基础设施通信总线用于编排,远程执行、配置管理等等。SaltStack项目于2011年启动,年......
  • 考古笔记10:网络地址转换NAT(1)-基础
    NAT的概念相关1、概念   NAT:网络地址转换实现将内网私有IP地址转换为公网IP地址 解决公网IP地址数目不足的问题 可保护内网IP地址的私密性,起到一定的安全性 还可实现企业内多个私有IP网段重叠问题2、NAT分类静态NAT:唯一的私有IP------映射------唯一的公网IP(映射关系确......
  • Java零基础学习方法总结
    系统的整理了我自学Java的学习方法,希望对大家自学Java有帮助~首先,需要一套系统完整的学习教程,这里推荐可以到b站,我看的动力节点老杜的Java基础课,现在更新了最新版Java17的,可直接看最新版,小白无脑入,详细且全面学习地址:https://www.bilibili.com/video/BV1ig4y1c7kPJava小白学习方法......
  • 基于RxJava2+Retrofit2精心打造的Android基础框架
    XSnow基于RxJava2+Retrofit2精心打造的Android基础框架,包含网络、上传、下载、缓存、事件总线、权限管理、数据库、图片加载、UI模块,基本都是项目中必用功能,每个模块充分解耦,可自由拓展。XSnow,X:未知一切,取其通用之意;Snow:雪,取其纯净之意。该框架通用纯净,只依赖公共核心库。项目依赖:c......
  • 【博学谷学习记录】超强总结,用心分享 | shell基础
    【博学谷IT技术支持】一、shell简介shell是一种编写脚本程序的语言,常用于linux,shell是解释型语言,相对于其他的语言更加好学,它的语法和结构也比较简单通过编写脚本,能显著的提高开发的效率二、shell的基础知识每个sh文件都有这个开头,是指此脚本使用/bin/bash来解释执行#!/......
  • 【python基础】复杂数据类型-列表类型(增删改查)
    1.初识列表(list)列表由一系列按特定顺序排列的数据元素组成。可以将任何类型数据元素加入列表中,其中的数据元素之间没有任何关系。鉴于列表通常包含多个数据元素,给列表指定一个表示复数的名称是个不错的选择。在python中,用方括号[]来表示列表,并用逗号来分隔其中的数据元素。编写......
  • 【博学谷学习记录】超强总结,用心分享 | hbase基础操作
    【博学谷IT技术支持】HBase的介绍HBase是一个高可靠性、高性能、面向列、可伸缩的分布式操作系统。它是建立在HDFS之上的数据库系统,HBase是不支持SQL的,没有表关系,也无法join,不支持事务。HBase是基于google发布BigTable这篇论文而产生的,基于HDFS,数据最终存储时是在HDFS上,必......