【25软考网工】第六章(2)信息加密技术
博客主页:
christine-rr-CSDN博客
专栏主页:
软考中级网络工程师笔记
大家好,我是christine-rr !目前《软考中级网络工程师》专栏已经更新二十多篇文章了,每篇笔记都包含详细的知识点,希望能帮助到你!
今天的笔记是主要是《密码学》的内容,是网络安全的专业的基础,大家可以查看我的专栏:密码学 ,目前只发了五篇文章,但是结合本节理解相关概念!
目录
一、密码学基本概念
1. 现代密码理论
2. 经典加密技术
3. 现代加密技术
二、对称密码
1. 对称密码特点
2. 对称密码的优点和缺点
3. 常见的对称密钥加密算法
1)DES
2)3DES
3)IDEA
4)AES
5)RC4/5
4. 应用案例
1)例题#DES密钥长度
2)例题#三重DES加密过程
3)例题#AES分组长度
三、公钥密码
1. 公钥密码特点
1)公钥密码体制的优缺点
2. 常见的非对称加密算法
四、密码分类
1. 例题#RSA安全性依赖问题
五、混合密码
六、国产加密算法SM系列
1. 国密算法
2. 应用案例
1)例题#国产密码分组加密
2)例题#商用密码算法体系摘要算法
3)例题#公民法人可用何算法
4)例题#国密标识密码用户私钥来源
七、知识小结
一、密码学基本概念
此小节内容可结合之前的文章一起学习
密码学基础——密码学相关概念
1. 现代密码理论
- 核心原则:信息安全的核心是密码技术,研究数据加密的科学称为密码学(Cryptography)
- Kerckhoffs原则:现代密码体制安全性仅依赖于密钥保密,而非算法保密。算法可公开,但密钥需严格保密。
- 无条件安全:当密文中没有足够信息确定对应明文时称为无条件安全(理论上不可破解)。目前几乎所有密码体制在无限制条件下都可被破解,破解难度取决于计算资源
2. 经典加密技术
- 替换加密:
- 也叫代换、替代
- 原理:用字母替换另一个字母(如Caesar密码:D替换a,E替换b)
- 弱点:保留明文顺序,可通过自然语言统计特性(如字母频率)破译
- 示例:英文高频字母e,中文高频字"的";凯撒密码就是一种简单的代换密码,它将明文中的每个字母按照字母表顺序向后移动一定的位数来得到密文。
- 换位加密:
- 也叫置换
- 原理:按规律重排字母顺序(如123变为132)
- 示例:栅栏密码就是将明文按照一定的规则分组,然后将每组中的字符顺序打乱重新排列得到密文。
- 一次性填充:
- 流程:明文转位串(例如ASCII码)→选择等长随机位串作密钥→按位异或得密文
- 特点:需配合ASCII编码或分组填充(如64位分组)
3. 现代加密技术
- 基础方法:仍采用替换和换位,但算法更复杂、密钥更简单
- 增强手段:
- 加入随机冗余信息防伪造(随机数)
- 加入时间控制信息防重放攻击(时间戳)
- 实现方式:可通过硬件芯片电路实现,效率高于纯CPU运算
二、对称密码
想了解更多关于DES和AES算法的实现,可以看我之前的文章:
密码学基础——DES算法_des算法非线性操作-CSDN博客
密码学基础——AES算法-CSDN博客
1. 对称密码特点
- 别名:单钥密码
- 核心特征:加密解密使用相同密钥(如密钥"123")
- 工作流程:明文→密钥加密→密文→同一密钥解密→明文
2. 对称密码的优点和缺点
- 三大优点:
- 加解密速度快
- 密文紧凑(10T明文加密后仍约10T,不会有太大膨胀)
- 使用长密钥时难破解
- 三大缺点:
- 密钥分发困哪:需安全传输密钥(不能与密文同信道传输)
- 密钥管理困难:没两个节点之间要进行通信就给有一个密钥,n个节点需n(n−1)/2个密钥(指数级增长)
- 无法源认证:任何持有密钥者均可解密
3. 常见的对称密钥加密算法
算法 | 解释 | 特点 |
DES | Data Encryption Standard,数据加密标准。 | 分组长度64位,密钥长度64位, |
3DES | 三重DES(TDEA),使用DES对明文进行“加密-解密-加密”操作。 加密:K1加密→K2解密→K3加密 解密:K3解密→K2加密→K1解密 一般K1和K3是相同的密钥。 | 密钥长度112位 |
IDEA | International Data Encryption Algorithm,国际数据加密算法, | 明文和密文分组都是64位,密钥 |
AES | Advanced Encryption Standard,高级加密标准。 | 分组长度128位,支持128,192 |
RC4/5 | 流加密算法,用于WIFI。加密速度快,可达到DES的10倍。 | 分组和密钥长度都可变 |
1)DES
- 数据加密标准
- 技术:采用移位+替换
- 参数:
- 分组长度64位
- 密钥长度64位(有效56位+8位校验)
- 特点:速度快,密钥易产生
补充知识(可跳过):
- 扩散:指将明文的统计特性散布到密文中去,使得明文的每一位影响密文中的许多位,从而使密文的统计特性与明文的统计特性无关。实现方式是使得密文中每一位由明文中多位产生。在 DES 中,通过多次迭代的置换和异或操作来实现扩散。例如,在每一轮迭代中,数据会经过置换操作,将不同位置的比特进行交换,使得明文的影响逐渐扩散到整个密文。
- 混淆:是指将密钥和明文之间的关系变得复杂,使得从密文和密钥中难以推出明文的统计特性。DES 通过 S 盒的非线性代换以及密钥与数据的混合操作来实现混淆。S 盒的非线性特性使得输入和输出之间的关系非常复杂,难以通过分析输出得到输入的信息。同时,密钥与数据的异或操作也增加了密钥和明文之间的混淆程度。
2)3DES
- 原理:三重DES(加密-解密-加密)
- 加密:K1加密→K2解密→K3加密
- 解密:K3解密→K2加密→K1解密
- 密钥:通常K1=K3,密钥长度112位(56×2)
3)IDEA
- 国际数据加密算法
- 参数:
- 分组长度64位
- 密钥长度128位
- 应用:用于PGP系统
4)AES
- 高级加密标准
-
常常将AES算法称为Rijndael算法,严格地讲,Rijndael算法和AES算法并不完全一样,因为Rijndael算法是数据块长度和加密密钥长度都可变的迭代分组加密算法,其数据块和密钥的长度可以是128位、192位和256位。尽管如此,在实际应用中二者一般被认为是相同的。
- 特点:
- 可通过硬件实现
- 速度与3DES相当但更安全
- 参数:
- 分组长度固定128位
- 密钥长度可变(128/192/256位)
5)RC4/5
- 类型:流加密算法
- 应用:早期WIFI加密
- 特点:
- 速度达DES的10倍
- 分组和密钥长度可变
- 安全性较低(现多被AES替代)
4. 应用案例
1)例题#DES密钥长度
- 关键点:3DES密钥长度=56×2=112位(非168位)
- 答案:C
2)例题#三重DES加密过程
- 流程:必须遵循"加-解-加"顺序(K1→K2→K1)
- 答案:B(①③④)
3)例题#AES分组长度
- 要点:AES分组长度固定128位(密钥长度可变)
- 错误选项:A(声称分组长度可变)
- 答案:A
三、公钥密码
1. 公钥密码特点
- 别名: 又称非对称加密、双钥密码,加密和解密使用不同密钥
- 密钥组成: 每个实体拥有公钥(公开)和私钥(私密保存)
1)公钥密码体制的优缺点
- 优点:
- 密钥分发简单: 公钥公开,无需安全传输通道
- 密钥保管量少: N个用户只需保存N个公钥和1个私钥
- 支持数字签名:支持数字签名和身份认证
- 缺点:
- 速度慢: 计算量大,速度慢(如RSA需512/1024位密钥),仅适合加密128-160bit小数据
- 膨胀率高: 加密后数据体积显著增大(如10T→100T)
- 应用场景:
- 保密通信: 公钥加密→私钥解密
- 数字签名: 私钥签名→公钥验证
2. 常见的非对称加密算法
- RSA: 基于大整数分解困难问题,密钥512/1024位,计算量大但难破解
- 其他算法:基于离散对数求解困难问题
- Elgamal/ECC(椭圆曲线算法)
- 背包算法/Rabin/DH
- 核心考点: 需区分算法基于的数学难题(RSA→大整数分解,其余→离散对数)
四、密码分类
- 对称加密:
- 分组加密: DES/3DES/AES/IDEA,按固定长度分组处理
- 流加密: RC4/RC5,实时加密不分组
- 非对称加密:
- 基于大整数因子分解困难问题(RSA)
- 基于离散对数求解困难问题(ECC/DH/Elgamal)
- 哈希算法/散列函数/摘要函数:
- 生成的固定长度的输出值
- MD5/SHA/SM3(国产)
1. 例题#RSA安全性依赖问题
- 审题关键: 明确RSA的数学基础
- 选项分析:
- A. 大整数分解(正确)
- D. 离散对数(适用于ECC/DH)
- 记忆技巧: "RSA分解,其他离散"
- 答案: A
五、混合密码
- 设计思想: 结合对称加密(高效)和非对称加密(安全分发)
- 工作流程:
- 发送方
- 发送方用对称密钥加密明文
- 用接收方公钥加密对称密钥(形成数字信封)
- 接收方
- 接收方私钥解密获得对称密钥
- 用对称密钥解密密文
- 发送方
- 优势: 既解决大数据加密效率问题,又保证密钥安全传输
六、国产加密算法SM系列
1. 国密算法
密码法分类:
- 核心密码/普通密码: 国家秘密专用(非商用)
- 商用密码: 公民/法人可用(SM系列)
算法名称 | 算法特征描述 |
SM1 | 对称加密,分组长度和密销长度都为128比特 |
SM2 | 非对称加密,用于公钥加密算法、密钥交换协议、数字签名算法(椭圆曲线问题) |
SM3 | 杂凑算法(哈希),分组512位,输出杂凑值长度为256位 |
SM4 | 对称加密,分组长度和密钥长度都为128比特 |
SM9 | 标识密码算法,支持公钥加密、密钥交换、数字签名等安全功能 |
算法速记:
- 对称加密:SM1/SM4(分组和密钥:128bit)
- 非对称加密:SM2(ECC)/SM9(标识密码算法,支持公钥加密、密钥交换、数字签名等按摩器功能)
- 哈希算法/杂凑算法:SM3(分组512→输出256bit)
SM2优势:非对称密码, 较RSA算法的密码复杂度高、密钥更短(256bit)、速度更快、更安全
- SM2-1椭圆曲线数字签名算法,用于数字签名
- SM2-2椭圆曲线密钥交换协议,用于密钥协商
- SM2-3椭圆曲线公钥加密算法,用于数据加密
SM4特性: 分组对称密码算法,主要用于数据加密,
- 分组长度和密钥长度均为128比特
- 加密算法和密钥拓展算法均采用32轮非线性迭代
- 以字(32bit)为单位运算
- 每一次迭代运算均为一轮比那换函数F
2. 应用案例
1)例题#国产密码分组加密
- 关键点: 分组加密属于对称加密SM1,SM4
- 排除法: SM2/SM9非对称,SM3哈希
- 答案: C(SM4)
2)例题#商用密码算法体系摘要算法
- 术语对应: 摘要算法=哈希算法
- 答案: B(SM3)
3)例题#公民法人可用何算法
- 易错点: "普通密码"属于国家秘密
- 答案: D(商用密码)
4)例题#国密标识密码用户私钥来源
- 生成流程:
- KGC生成主密钥对
- 用户提交标识(如邮箱)
- KGC用主私钥+标识计算用户私钥
- 答案: C(KGC)
七、知识小结
知识点 | 核心内容 | 考试重点/易混淆点 | 难度系数 |
密码学基本概念 | 信息安全的核心是密码技术,密码学基于数学原理 | 卡尔霍夫原则:密码体制安全性依赖密钥保密而非算法保密 | ⭐⭐ |
无条件安全密码体制 | 密文中无足够信息解密明文时称为无条件安全 | 几乎所有密码体制理论上都可破解,依赖计算资源 | ⭐⭐⭐ |
经典加密技术 | 替换(如凯撒密码)、换位、一次性填充 | 替换加密易被统计特性破解(如字母频率分析) | ⭐⭐ |
现代加密技术 | 仍基于替换和换位,但算法更复杂,加入随机冗余和时间戳 | 硬件电路实现加速加解密 | ⭐⭐⭐ |
对称密码 | 加解密使用相同密钥(如DES、AES) | 优点:速度快、密文紧凑、安全; 缺点:密钥分发与管理困难 | ⭐⭐⭐⭐ |
DES算法 | 64位分组,56位有效密钥长度 | 3DES密钥长度=56×2=112位(非168位),操作流程为“加-解-加” | ⭐⭐⭐⭐ |
AES算法 | 分组长度128位,密钥长度可变(128/192/256位) | 分组长度固定,密钥长度可变(易混淆点) | ⭐⭐⭐ |
非对称密码 | 加解密使用不同密钥 RSA:基于大整数因子求救困难 ECC:基于离散对数求解困难 | 优点:密钥分发方便、适用于数字签名和身份认证; 缺点:计算量大、速度慢、数据膨胀率高 | ⭐⭐⭐⭐ |
RSA算法 | 基于大整数因式分解问题,密钥长度512/1024/2048位 | 安全性依赖大整数分解困难性(高频考点) | ⭐⭐⭐⭐ |
混合密码系统 | 对称加密数据+非对称加密密钥(数字信封) | 结合两者优点,解决密钥分发与效率问题 | ⭐⭐⭐ |
国密算法分类 | 核心/普通密码(国家秘密) 商用密码SM系列(民用) | SM1/SM4:对称; SM2/SM9:非对称; SM3:哈希 | ⭐⭐⭐⭐ |
SM2算法 | 基于椭圆曲线(ECC),支持加密/密钥交换/签名 | 对比RSA:复杂度高、速度快、更安全 | ⭐⭐⭐ |
SM3算法 | 哈希算法,输出256位摘要 | 用于数据完整性校验(高频考点) | ⭐⭐ |
SM4算法 | 对称分组加密,128位密钥/分组长度,32轮迭代 | 国产标准,适用于数据加密场景 | ⭐⭐⭐ |
相关文章:
【25软考网工】第六章(2)信息加密技术
博客主页: christine-rr-CSDN博客 专栏主页: 软考中级网络工程师笔记 大家好,我是christine-rr !目前《软考中级网络工程师》专栏已经更新二十多篇文章了,每篇笔记都包含详细的知识点,希望能帮助到你!…...
LeetCode 热题 100 138. 随机链表的复制
LeetCode 热题 100 | 138. 随机链表的复制 大家好,今天我们来解决一道经典的链表问题——随机链表的复制。这道题在 LeetCode 上被标记为中等难度,要求深拷贝一个带有随机指针的链表。 问题描述 给你一个长度为 n 的链表,每个节点包含一个额…...
差动讯号(3)弱耦合与强耦合
各位在设计高速差动对时,除了阻抗之外,可能还会被问到一个问题,P与N之间的间距要多少? 在差动讯号(2):奇模与偶模一文中,我们已经知道差动对两线间距会影响其特性阻抗,且…...
强化学习系列:深度强化学习和DQN
1. 往期回顾 介绍了强化学习的基本概念和基本原理 介绍了基于动态规划的传统强化学习——价值迭代、策略迭代 介绍了在无模型的环境下,基于时序差分的表格型强化学习——Q-learning、SARSA 这些传统的方法都有各自的局限性,能适用的范围有限…...
AlimaLinux设置静态IP
通过nmcli命令来操作 步骤 1:确认当前活动的网络接口名称 首先,需要确认当前系统中可用的网络接口名称。可以使用以下命令查看: nmcli device步骤 2:修改配置以匹配正确的接口名称 sudo nmcli connection modify ens160 ipv4.…...
神经网络极简入门技术分享
1. 引言 神经网络是深度学习的基础,其设计灵感来源于人脑神经元的结构和工作方式。尽管现代神经网络已经变得异常复杂,但其核心原理却相对简单易懂。本报告旨在通过剖析神经网络的最基本单元——神经元,帮助初学者理解神经网络的工作原理。 …...
使用定时器监视当前PID 如果当前程序关闭 UI_Core.exe 也随之自动关闭实现方法
使用定时器监视当前PID 如果当前程序关闭 UI_Core.exe 也随之自动关闭实现方法 描述: C20 QT6.9 VS2022 中使用QProcess::startDetached(“UI_Core.exe”, QStringList(), QString(), &UI_Manage_pid);是启动目标程序 能否同时告诉目标程序当前宿主程序的PID,在UI_CORE.EX…...
SpringCloud之Ribbon基础认识-服务负载均衡
0、Ribbon基本认识 Spring Cloud Ribbon 是基于 Netflix Ribbon 实现的一套客户端 负载均衡的工具。 Ribbon 主要功能是提供客户端负载均衡算法和服务调用 Ribbon 客户端组件提供一系列完善的配置项如连接超时,重试等。 Ribbon 会基于某种规则(如简单…...
leetcode0829. 连续整数求和-hard
1 题目: 连续整数求和 官方标定难度:难 给定一个正整数 n,返回 连续正整数满足所有数字之和为 n 的组数 。 示例 1: 输入: n 5 输出: 2 解释: 5 2 3,共有两组连续整数([5],[2,3])求和后为 5。 示例 2: 输入: n 9 输出: …...
Python-77:古生物DNA序列血缘分析
问题描述 小U是一位古生物学家,正在研究不同物种之间的血缘关系。为了分析两种古生物的血缘远近,她需要比较它们的DNA序列。DNA由四种核苷酸A、C、G、T组成,并且可能通过三种方式发生变异:添加一个核苷酸、删除一个核苷酸或替换一…...
数据结构算法习题通关:树遍历 / 哈夫曼 / 拓扑 / 哈希 / Dijkstra 全解析
已知一棵二叉树先序遍历和中序遍历分别为 ABDEGCFH 和 DBGEACHF,请画出这个二叉树的逻辑结构并写出后序遍历的序列。 先序遍历:ABDEGCFH 中序遍历:DBGEACHF 先序遍历看出根为A,左子树DBGE,右子树CHF A的左子树 再…...
使用lldb查看Rust不同类型的结构
目录 前言 正文 标量类型 复合类型——元组 复合类型——数组 函数 &str struct 可变数组vec Iter String Box Rc Arc RefCell Mutex RwLock Channel 总结 前言 笔者发现这个lldb挺好玩的,可以查看不同类型的结构,虽然这好像是C的东…...
M0的基础篇之PWM学习
一、困惑 上一节课就是单纯的之配置了一个基础的定时器进行计数,计到一定的数值也就是到了一定的时间就进入中断,执行中断里面的任务,也就是一个最基础的定时的功能 这一节课的定时器产生了一个pwm波。也就是我们可以改变里面高电平的持续时间…...
win10-启动django项目时报错
前提 win10系统下已经安装了pip 和django(因为搜报错解决办法的时候,有博客说先检查下django有没有安装),另外也没有安装anaconda,没有用虚拟环境 报错如下 在pycharm执行新建app的命令python mange.py startapp app02…...
coze工作流完成行业调研报告
一、coze 是什么? Coze是由字节跳动推出的新一代AI应用开发平台,定位是零代码或低代码的AI开发平台,也被称为字节跳动版的GPTs ,国内版名为“扣子”。 Coze有国内版和国外版两个版本。国内版网址为http://www.coze.cn ÿ…...
为什么有了BST了,还要红黑树,红黑树有什么优点
BST(二叉搜索树)和红黑树都是常见的树形数据结构,但红黑树在某些方面对BST进行了优化,主要解决了BST在特定情况下可能出现的性能问题。以下是红黑树的核心优点及其存在的必要性: BST的局限性 BST的时间复杂度与树的高…...
【Linux基础】网络相关命令
目录 netstat命令 1.1 命令介绍 1.2 命令格式 1.3 常用选项 1.4 常用命令实例 1.4.1 显示所有TCP连接 1.4.2 查看路由表 1.4.3 实时监控网络接口流量 1.4.4 查看监听中的端口以及关联进程 ping命令 2.1 命令介绍 2.2 命令格式 2.3 常用选项 2.4 常用示例 ifconfi…...
DB4S:一个开源跨平台的SQLite数据库管理工具
DB Browser for SQLite(DB4S)是一款开源、跨平台的 SQLite 数据库管理工具,用于创建、浏览和编辑 SQLite 以及 SQLCipher 数据库文件。 功能特性 DB4S 提供了一个电子表格风格的数据库管理界面,以及一个 SQL 查询工具。DB4S 支持…...
多个python环境下,pip安装无法成功解决方案
问题 使用pip install xxx,安装过程很顺利且无任何报错,但是一旦在python中import xxx时,仍然提示xxx不存在。 解决方案 首先排除掉xxx包命名是否正确—— 这个非本文重点。 当已经确认xxx包命名正确,且常规通过pip install 即…...
人脸真假检测:SVM 与 ResNet18 的实战对比
在人工智能蓬勃发展的当下,人脸相关技术广泛应用于安防、金融、娱乐等诸多领域。然而,随着人脸合成技术的日益成熟,人脸真假检测成为保障这些应用安全的关键环节。本文将深入探讨基于支持向量机(SVM)结合局部二值模式&…...
求数组中的两数之和--暴力/哈希表
暴力法太好用了hhhhhhhhhhhhhhhhhhh我好爱鹅鹅鹅鹅鹅鹅呃呃呃呃呃呃呃呃呃呃 #include <iostream> #include <vector> using namespace std; int main(){ int n,target; cin>>n>>target; vector<int> nums(n); for(int i0;i<n;i){ cin>>…...
Go多服务项目结构优化:为何每个服务单独设置internal目录?
文章目录 Go多服务项目结构优化:为何每个服务单独设置internal目录?背景什么是 Go 的 internal 机制?传统根 internal 目录的局限为什么要每个服务单独设置 internal ?推荐结构示例 总结 Go多服务项目结构优化:为何每个…...
Wallcraft 3.53.0 | 提供高质量动态4D壁纸,解锁高级版,无广告干扰
Wallcraft是一款专注于提供高质量、原创壁纸的应用程序,特别是其特色的动态4D壁纸。这款应用程序不仅提供了大量免费的4K超高清壁纸和炫酷背景,还特别推出了带有视差效果的动态超高清4K壁纸及视频壁纸。用户可以根据个人喜好选择并设置这些壁纸作为手机屏…...
akshare爬虫限制,pywencai频繁升级个人做量化,稳定数据源和券商的选择
做量化,数据和交易接口是策略和自动化交易的基石,而稳定的数据和快人一步的交易接口是个人做量化的催化剂。 之前写过一篇文章:个人做量化常用的数据,多以爬虫为主,最近akshare爬虫限制,pywencai频繁升级。…...
leetcode504.七进制数
标签:进制转换 机试真题 给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。 示例 1: 输入: num 100 输出: "202" 示例 2: 输入: num -7 输出: "-10" 思路:求n进制就是循环取余数,…...
OpenAI 结构改革:迈向民主化 AI 的新篇章
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
Satori:元动作 + 内建搜索机制,让大模型实现超级推理能力
Satori:元动作 内建搜索机制,让大模型实现超级推理能力 论文大纲一、背景:LLM 推理增强的三类方法1. 基于大规模监督微调(SFT)的推理增强2. 借助外部机制在推理时进行搜索 (RLHF / 多模型 / 工具)3. 现有局限性总结 二…...
Python序列化的学习笔记
1. Npy&Numpy O4-mini-Cursor:如果.npy文件里包含了「Python对象」而非纯数值数组时,就必须在加载时加上allow_pickleTrue。...
如何修改进程优先级?
文章目录 1. 摘要2. 命令实现2.1 使用 renice(调整普通进程的优先级)2.2 使用 chrt(调整实时进程的优先级) 3. 代码实现 1. 摘要 在实际开发中,我们经常会遇到创建进程的场景,但是往往并不关心它的优先级…...
java命令行打包class为jar并运行
1.创建无包名类: 2.添加依赖jackson 3.引用依赖包 4.命令编译class文件 生成命令: javac -d out -classpath lib/jackson-core-2.13.3.jar:lib/jackson-annotations-2.13.3.jar:lib/jackson-databind-2.13.3.jar src/UdpServer.java 编译生成class文件如下 <...
JAVA自动装箱拆箱
引言 Java 中的**装箱(Boxing)和拆箱(Unboxing)**是自动类型转换的机制,用于在基本数据类型(如 int、long 等)和其对应的包装类(如 Integer、Long 等)之间进行转换。这种…...
Linux系统之----模拟实现shell
在前面一个阶段的学习中,我们已经学习了环境变量、进程控制等等一系列知识,也许有人会问,学这个东西有啥用?那么,今天我就和大家一起综合运用一下这些知识,模拟实现下shell! 首先我们来看一看我…...
Doris和Clickhouse对比
目录 一、Doris和Clickhouse对比**1. 底层架构****Doris****ClickHouse** **2. 运行原理****Doris****ClickHouse** **3. 使用场景****Doris****ClickHouse** **4. 优缺点对比****总结** 二、MPP架构和Shared-Nothing 架构对比**1. 什么是 MPP 架构?****定义****特点…...
思考:(linux) tmux 超级终端快速入门的宏观思维
tmux 工具集合 GitHub - rothgar/awesome-tmux: A list of awesome resources for tmux 要点: 习惯性思维的变换与宿主机之间的双向复制、粘贴手动备份全部窗口,以及还原自定义窗格提示信息TPM 插件的安装思想别名 在有些场景里,可能无法…...
JavaScript基础-全局作用域
在JavaScript中,理解不同种类的作用域是掌握这门语言的关键之一。作用域决定了变量和函数的可访问性(即可见性和生命周期)。其中,全局作用域是最基本也是最宽泛的作用域类型。本文将深入探讨全局作用域的概念、特点及其使用时需要…...
【MCAL】TC397+EB-tresos之I2c配置实战(同步、异步)
I2C总线是Philips公司在八十年代初推出的一种串行、半双工的总线,主要用于近距离、低速的芯片之间的通信。本篇文章首先从理论讲起,介绍了英飞凌TC3x系列芯片对应MCAL中对I2C驱动的定义与介绍,建议读者在阅读本篇文章之前对I2C有个简单的认识…...
电网拓扑分析:原理与应用
在现代电力系统中,电网拓扑分析是一项至关重要的技术,它为电力系统的安全、稳定和高效运行提供了坚实的基础。电网拓扑描述了电力系统中各元件(如发电机、变压器、输电线路、负荷等)之间的连接关系,通过拓扑分析&#…...
leetcode-hot-100(哈希)
写在前面 这部分官方标记为哈希,下面的代码使用的都是 C 进行实现,说到 C 中的哈希,需要了解一下 C 中的 hashtable(std::unordered_map或std::unordered_set)。 std::unordered_map std::unordered_map 是一个存储…...
音频类网站或者资讯总结
我爱音频网: 我爱音频网 - 我们只谈音频,丰富的TWS真无线蓝牙耳机拆解报告 (52audio.com) 其他更多资讯 音频行业全品类深度剖析,2024市场趋势解读汇总-EDN 电子技术设计 (ednchina.com)...
优选算法——前缀和
目录 1. 数组的中心下标 2. 除自身以外数组的乘积 3. 和为k的子数组 4. 和可被K整除的子数组 5. 连续数组 6. 矩阵区域和 1. 数组的中心下标 题目链接:724. 寻找数组的中心下标 - 力扣(LeetCode) 题目展示: 题目分析&am…...
VScode密钥(公钥,私钥)实现免密登录【很细,很全,附带一些没免密登录成功的一些解决方法】
一、 生成SSH密钥对 ssh-keygen 或者 ssh-keygen -t rsa -b 4096区别:-t rsa可以明确表示生成的是 RSA 类型的密钥-b参数将密钥长度设置为 4096 位默认:2048 位密钥不指定-t参数,ssh -keygen默认也可能生成 RSA 密钥【确保本机安装ssh&#…...
MySQL进阶篇2_SQL优化、锁
文章目录 1 SQL优化1.1插入数据优化1.2主键优化页分裂页合并主键设计原则 1.3order by设计优化1.4group by设计优化小理解 1.5limit设计优化顺序IO和随机IO小疑惑 1.6count设计优化1.7update优化关于隐式事务事务的DML操作 锁全局锁表级锁表锁元数据锁意向锁 行级锁锁的释放条件…...
Yocto项目实战经验总结:从入门到高级的全面概览
本文面向开发者和实际项目经验者,分享经过大量实战积累的 Yocto 项目工程经验和基础技巧。本文简明但精彩,应用和观察相结合,充分适合做为全面进阶 Yocto 项目开发的实用指南。 一、入门理解:Yocto 是什么?规划如何开始…...
关于web3
主流看法,集合当前网络上的大部分资料的看法? 基于区块链运行的交易系统?面向的交易市场是基于世界的,由于将整个世界的交易联系起来,所以底层区块链就类似于一个非常大的分布式系统,由于需要在各个地区都…...
以影像为笔,劳润智在世界舞台上书写艺术之路
在光影交织中,摄影师劳润智的镜头仿佛能穿透喧嚣,捕捉人类情感最细腻的脉动。从疫情下洛杉矶裁缝日常的温馨瞬间,到象征自由与解脱的飞鸟影像,再到探索时间与空间交错的抽象作品,每一幅作品都展现了他对艺术的深度追求与对生活的温柔洞察。 劳润智的作品为他赢得了多个国际奖项…...
2025python学习笔记
一.Python语言基础入门 第一章 01.初识Python Python的起源: 1989年,为了打发圣诞节假期,Gudio van Rossum吉多范罗苏姆(龟叔)决心开发一个新的解释程序(Python维形)1991年,第一个…...
数学相关使用笔记
1、样本标准差计算步骤整理 1. 基础数据 数据样本:[44.530, 44.023, 43.837, 44.213, 44.498] 样本量:n5 2. 计算步骤 (1) 求均值 总和 44.53044.02343.83744.21344.498 221.101 均值 221.101/5 44.2202 (2) 求平方差 ① (44.530-44.2202) 0.3…...
0.环境初始化
容器化部署 Nginx 前端文件在 html\hmdp 下,挂载到 /usr/share/nginx/html 下 所以要求 nginx.conf : root /usr/share/nginx/html; index index.html; 反向代理:proxy_pass http://host.docker.internal:8081; listen 80; 因为容器内端…...
数仓-范式建模、维度建模、雪花模型、星型模型对比及其适用范围
1. 范式建模 定义 范式建模是一种基于关系型数据库设计的建模方法,遵循数据库的范式规则(如第一范式、第二范式、第三范式等),通过消除数据冗余、规范化字段和表结构来优化存储。数据被分解为多个表,通过外键关系进行…...
批量导出docker镜像
#!/bin/bash # 创建备份目录 BACKUP_DIR"docker_images_single_backup" mkdir -p "$BACKUP_DIR" # 遍历所有镜像 docker images --format "{{.Repository}}:{{.Tag}} {{.ID}}" | while read -r line; do # 提取镜像名称和ID REPO_TAG$(echo …...