• 区块链基本概念学习笔记



    在这里插入图片描述

    区块链产生与发展历史

    在这里插入图片描述

    区块链的场景属性

    在这里插入图片描述

    区块链定义

    区块链是一种点对点传输协议现代密码学共识算法分布式数据存储的新型的应用模型

    区块链的特点

    1.可追溯
    2.不可篡改
    3.去中心化
    4.完整备份:区块链具有完整的分布式存储特性
    5.历史记录:被存储的数据拥有完整的历史记录,可以快速查看,复原
    6.交易广播:一次交易分发给网络中的其他结点,同步进行接收
    。。。

    区块链加密货币的特点

    **1.独立性:**所有货币都是独立存在的
    **2.唯一性:**地址、交易都具有不可重复的唯一性
    **3.匿名性:**账户信息和个人信息没有关联,整个交易过程全程加密
    4.不可伪造

    区块链核心技术

    **1.点对点传输协议:**point to point
    **2.现代密码学:**交易安全(哈希技术)+地址安全(公私钥技术)
    **3.共识算法:**数据一致性
    **4.分布式数据存储:**实现去中心化的重要技术依据

    区块链的核心概念

    1.区块链
    本质:一个分布式账本,通过共识算法来决定谁能抢到当前的记账权。区块链与区块为单位,以区块产生的时间顺序去进行连接
    在这里插入图片描述2.区块

    概念:区块链基本组成单位
    区块头
    1.时间戳
    2.当前区块哈希
    3.父区块哈希
    4.随机数
    5. merkle树
    6.区块号码
    区块体:交易数据
    在这里插入图片描述

    3.分布式数据库
    区块链中的区块数据都存储在每一个结点中,所有结点组成了一个分布式数据库。任何多个结点退出都不会影响数据的完整性。
    4.结点
    运行区块软件的计算机
    分类:
    全结点: 保存了完整的区块链副本,安全性极高,效率不高
    轻结点: 不保存所有区块,需要依赖全结点进行验证交易,效率很高,安全性不高
    挖矿结点: 带有挖矿功能的全结点,专门处理交易的验证。
    5.挖矿
    ①对交易进行验证处理(记账),区块就是通过挖矿产生的。
    穷举随机数算法,生成hash,与目标hash进行比较,成功则说明挖矿成功。
    6.分叉
    ①升级分叉
    1.矿工遵从不同的机制导致分叉
    2.硬分叉:新规则产生区块不允许前项兼容(旧结点无法认可新节点产生的区块)
    3.软分叉:新规则产生区块允许前项兼容(旧结点可以认可新节点产生的区块)
    ②挖矿分叉(多个矿工同时完成工作量证明)
    在这里插入图片描述
    解决方案:不同的矿工跟随链不一样,由于算力不同,必然会出现一条链长一条链短的情况,最后服从长的链。
    7.交易
    概念:一笔资产在参与方之间的转移
    内容:金额,发送者,接受者,交易hash
    双花攻击:复用数字货币的数字特性,可以完成同一币多次支付。
    8.UTXO交易模式
    (unspent transaction output)
    比特币独有的交易模式,也是交易过程中的基本单位,主要避免双花攻击。
    9.hash函数
    将任意长度的数据,通过指定的hash函数,编码为特定长度的字符串。(生成地址,交易验证)
    10.加密算法
    1.对称加密(加密与解密使用同一个秘钥)
    2.非对称加密(加密与解密使用同一对秘钥)
    11.merkle树
    ①可以是二叉树,也可以是多叉树
    ②快速查找交易是否包含在指定区块中:快速校验,归纳数据交易的完整性
    ③区块头只需要保存merkle根的hash值
    ④merkle树支持SPV
    12.P2P网络(point to point)
    ①通过对等网络来分配工作任务的分布式应用架构
    ②在P2P中,所有网络结点是对等的,不存在任何中心化结点,也不存在所谓的层级结构,所以每个节点都要承担验证功能。

    区块链分类

    1.公有链(去中心化特性)
    ①真正意义上的去中心化分布式区块链,任何结点可以随机加入/退出。
    2.私有链(可追溯,不可篡改特性)
    ①部分中心化的区块链,但是有一个中心结点,可以指定参与者。
    3.联盟链
    ①部分中心化的区块链,拥有权限控制的功能。代表:Fabric

    区块链架构特点

    1.去中心化:基于分布式系统,无中心结构
    2.可靠数据化:分布式存储保护数据安全,参与系统结点越多,数据越安全。
    3.开源可编程:区块链提供了灵活的脚本系统,甚至于完善的开发平台,支持用户创建更加高级的应用。
    4.集体维护:区块链中的数据由整个系统所有具有记账功能的结点进行维护
    5.安全可行:现代密码学实现
    6.准匿名性:采用与身份信息无关的hash作为hash地址与交易ID。

    参考资料:哔站up主“学习猿地“系列视频

  • 相关阅读:
    一文搞定Linux信号
    Object.prototype.toString.call()如何理解
    Go语言学习(八)-- Gin入门
    【Windows编程】windows窗口创建过程详解
    linux中du的用法
    python使用PyPDF2包:pdf转doc
    微服务框架 SpringCloud微服务架构 3 Eureka 3.1 提供者与消费者
    基于Python的发票OCR-数字识别的简单实现
    【Linux篇】第十七篇——信号量
    老徐和阿珍的故事:ArrayList和LinkedList的效率到底哪个高?
  • 原文地址:https://blog.csdn.net/qq_45931661/article/details/127695854