【软考】系统架构设计师 - 知识扩展 - “区块链技术“

目录

一 简介👑

1 比特币❤️

2 区块链的特点❤️

3 共识算法❤️

二 练习题👑

三 扩展👑

1 哈希算法❤️

2 哈希指针❤️

3 UTXO❤️

4 参考资料❤️

 

一 简介👑

1 比特币❤️

比特币底层采用了区块链技术。
比特币交易在我国定性为非法运用。
比特币采用的就是非对称密码体制。
比特币的所有权是通过私钥和地址来确立的。

2 区块链的特点❤️

(1)去中心化
任意节点的权利和义务都是均等的,不存在中心化的硬件或管理机构。系统中的数据块由整个系统的具体维护功能的节点来共同维护。
区块链是一个分布式账本,一种特殊的分布式数据库。
(2)开放性
区块链上的交易信息是公开的,但是注意账户身份信息是加密的。
(3)自治性
区块链采用基于协商一致的规范和协议使得整个系统中的所有节点能够在去信任的环境自由安全地交换数据。
(4)安全性
数据在多个节点存储了多份,篡改数据得改掉51%节点的数据,这个几乎不可能。
每笔交易都有付款人私钥签名,其他人无法伪造。
(5)匿名性
交易对手无需通过公开身份的方式让对方信任自己。

3 共识算法❤️

f3a0e802870745f1a35e1cd0e05429f5.png

比特币采用了工作量证明(POW)
争夺记账权 = 挖矿
计算出来的账单节点哈希值前13个字符为0,说明符合规则,得到记账权。
有一个节点计算出结果,就会广播消息告知其他节点,其他节点则会更新数据。


计算困难,但是验证很容易。例如:218903=哪两个质数的乘积?答案为457*479

二 练习题👑

(1)2020年

以下关于区块链应用系统中“挖矿”行为的描述中,错误的是()
A. 矿工“挖矿”取得区块链的记账权,同时获得代币奖励
B. “挖矿”本质上是在尝试计算一个Hash碰撞
C. “挖矿”是一种工作量证明机制
D. 可以防止比特币的双花攻击
答案:D


解析:双花可以理解为同一货币花费两次。该问题的解决,依赖于系统中维护的一个数据结构,记录货币的使用情况(是否被花过?被谁花过?)。该数据结构由系统中全体用户共同维护,保证了交易的有效性。该数据结构,便是区块链。


(2)2022年

试题三论区块链技术及应用
区块链作为一种分布式记账技术,目前已经被应用到了资产管理、物联网、医疗管理、政务监管等多个领域。从网络层面来讲,区块链是一个对等网络(Peer to Peer, P2P),网络中的节点地位对等,每个节点都保存完整的账本数据,系统的运行不依赖中心化节点,因此避免了中心化带来的单点故障问题。同时,区块链作为一个拜占庭容错的分布式系统,在存在少量恶意节点情况下可以作为一个整体对外提供稳定的服务。
请国绕‘区块链技术及应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。
2.区块链包含多种核心技术,请简要描述区块链的3种核心技术。
3.具体阐述你参与管理和开发的项目是如何应用区块链技术进行设计与实现。

三 扩展👑

1 哈希算法❤️

(1)哈希算法的特点

单向性。不可逆。
可以根据任意长度的消息计算出固定长度的散列值。
不同的输入就有不同的输出。
算法效率高。


(2)典型的哈希算法
Hash算法中比较著名的是MD系列和SHA系列。
MD5、SHA属于哈希算法,哈希算法的作用为“用于保障信息的完整性,用于防篡改”。

2 哈希指针❤️

普通指针只是保存结构体在内存中的位置,而哈希指针是不仅要保存结构体在内存中的位置,还要保存结构体的哈希值;这样的好处是,通过哈希指针,不仅能够找到结构体的位置,还能知道结构体是否被篡改。


区块链是由一个个区块连接而成,区块链和普通链表的主要区别就在于用哈希指针代替了普通的指针。普通链表如果内容发生了改变,指针不会发生改变,而区块链一旦内容发生了变化,后面区块的哈希指针都会发生变化,类似于多米诺骨牌效应。


区块链的哈希指针能够唯一而精准地识别一个区块,区块链中任意结点通过简单的哈希运算,都可以获得这个区块的哈希指针,计算出的哈希值没有变化就意味着区块链中的信息没有被篡改。

3 UTXO❤️

9f3fa76ffcd148a695e26bee43f6a521.png

4 参考资料❤️

比特币相关知识

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/106076.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3:22、vue-router的使用

import { createRouter, createWebHistory } from vue-router//history模式:createWebHistory //hash模式:createWebHashHistory//vite中的环境变量 import.meta.env.BASE_URL 就是vite.config.js中的base配置项 const router createRouter({history:…

行业报告 | 智慧三角:长三角掀起AI产业热潮

原创 | 文 BFT机器人 产业集群是指在特定地理区域内,一群相关产业相互依存、相互关联、相互支持,形成密集的产业网络和价值链条的现象,这些相关产业可能涵盖整个产业链的不同环节,从原材料供应到产品研发、生产、销售和服务等多个…

使用LambdaQueryWrapper再也不担心字段拼写错误了 [MyBatis-Plus系列] - 第485篇

历史文章(文章累计480) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 E…

释放数据的潜力:用梯度上升法解锁主成分分析(PCA)的神奇

文章目录 🍀引言🍀什么是主成分分析(PCA)?🍀传统PCA vs 梯度上升PCA🍀PCA的优化目标🍀代码实现🍀求解第一主成分🍀求解第二主成分 🍀在sklearn中封…

分类算法系列⑤:决策树

目录 1、认识决策树 2、决策树的概念 3、决策树分类原理 基本原理 数学公式 4、信息熵的作用 5、决策树的划分依据之一:信息增益 5.1、定义与公式 5.2、⭐手动计算案例 5.3、log值逼近 6、决策树的三种算法实现 7、API 8、⭐两个代码案例 8.1、决策树…

过等保三级的好处是什么?谁能简单说说?

虽然国家已经严格落地执行了等保2.0政策,但还有少数小伙伴对于等保政策不是很了解,有小伙伴问过等保三级的好处是什么?谁能简单说说?这里就来一起聊聊。 过等保三级的好处是什么? 好处1、遵循国家法律法规要求&…

【Leetcode-面试经典150题-day22】

目录 97. 交错字符串 97. 交错字符串 题意: 给定三个字符串 s1、s2、s3,请你帮忙验证 s3 是否是由 s1 和 s2 交错 组成的。 两个字符串 s 和 t 交错 的定义与过程如下,其中每个字符串都会被分割成若干 非空 子字符串: s s1 s2 …

【SpringMVC】实现增删改查(附源码)

目录 引言 一、前期准备 1.1.搭建Maven环境 1.2.导入pom.xml依赖 1.3.导入配置文件 ①jdbc.properties ②generatorConfig.xml ③log4j2.xml ④spring-mybatis.xml ⑤spring-context.xml ⑥spring-mvc.xml ⑦修改web.xml文件 二、逆向生成增删改查 2.1.导入相关u…

Docker 入门:如何打包、部署并运行你的应用

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🐅🐾猫头虎建议程序员必备技术栈一览表📖: 🛠️ 全栈技术 Full Stack: &#x1f4da…

基于springboot绩效管理系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

09-JVM垃圾收集底层算法实现

上一篇:08-JVM垃圾收集器详解 1.三色标记 在并发标记的过程中,因为标记期间应用线程还在继续跑,对象间的引用可能发生变化,多标和漏标的情况就有可能发生。 这里我们引入“三色标记”来给大家解释下,把Gcroots可达…

云服务器与内网穿透有什么区别?哪个好用?

云服务器与内网穿透有什么区别,哪个好用?如何在自己公网IP云主机上部署搭建P2P穿透?这里给大家汇总介绍一下,供大家共同学习了解。 云服务器的一些特点: 需要数据上云场景时,通常可以选择使用云服务器。 …