区块链关键技术

1. 基础知识

区块链作为综合性技术产物,密码学是其基石技术之一。密码学技术使得区块链具备了不可篡改、消息(身份)验证、存储安全、隐私保护等众多能力和特性。

从技术上来看,主流区块链系统都会使用如下密码学技术:哈希算法,非对称加密算法、数字签名算法、数字证书、对称加密算法。对于一些高阶使用场景,还会使用到可信执行环境(TEE)、同态加密、零知识证明等技术。

2.哈希算法

通过哈希构建区块链的链式结构,实现防篡改

在后一块头部,记录前一个块地址。哈希的正向非常快,逆向非常难。

3.数字签名算法

数字签名的原理,数字签名算法其实是非对称加密算法与哈希算法的结合使用

消息签名的简化过程如下:(原始消息可以理解为智能合约或者交易)

消息验签的简化过程如下:

数字签名在区块链中的用法:

在区块链网络中,每个节点或用户都拥有一对 公私钥。首先利用公钥对交易中附加数字签名进行验证,只有签名验证通过,才能验证该交易在传播过程中的完整性没有被破坏。

4.数字证书

数字证书的概念,指的是在互联网通信过程中,标识通信各方身份信息的一个数字标识。它本质上是一种电子文档,由权威的证书签发机构签发,借助数字签名等密码学手段,在网络上安全、有效第代表真实世界中某种身份。

证书签发过程示意图:

其中CSR(证书请求文件,Certification Signing Request)

1\] [https://www.bilibili.com/video/BV1dM4y1a7g3/?spm_id_from=333.337.search-card.all.click\&vd_source=764fb92530f375edc0ba1c78a8773c7a](https://www.bilibili.com/video/BV1dM4y1a7g3/?spm_id_from=333.337.search-card.all.click&vd_source=764fb92530f375edc0ba1c78a8773c7a "https://www.bilibili.com/video/BV1dM4y1a7g3/?spm_id_from=333.337.search-card.all.click&vd_source=764fb92530f375edc0ba1c78a8773c7a")

相关推荐
Codeking__2 小时前
Redis的value类型及编码方式介绍——hash
redis·算法·哈希算法
CryptoPP2 小时前
对接API库 获取印度股票历史数据
金融·数据挖掘·数据分析·区块链
草莓熊Lotso3 小时前
Linux 2.6 内核 O(1) 调度队列深度解析:为什么它能实现常数时间调度?
linux·运维·服务器·数据结构·人工智能·哈希算法·散列表
CryptoRzz18 小时前
印度尼西亚(IDX)股票数据对接开发
java·后端·websocket·web3·区块链
m0_7263658319 小时前
哈希分分预测系统 打造自适应趋势分析「Python+DeepSeek+PyQt5」
python·qt·哈希算法
DICOM医学影像20 小时前
2. go语言从零实现以太坊客户端-查询区块链账户余额
开发语言·golang·区块链·以太坊·web3.0·hardhat
txinyu的博客1 天前
map和unordered_map的性能对比
开发语言·数据结构·c++·算法·哈希算法·散列表
予枫的编程笔记1 天前
【Java集合】深入浅出 Java HashMap:从链表到红黑树的“进化”之路
java·开发语言·数据结构·人工智能·链表·哈希算法
狙击主力投资工具1 天前
龙头战法的理解
区块链