车载通信基础 --- 解密公开密钥基础设施(PKI)
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。
老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:
周末洗了一个澡,换了一身衣服,出了门却不知道去哪儿,不知道去找谁,漫无目的走着,大概这就是成年人最深的孤独吧!
旧人不知我近况,新人不知我过往,近况不该旧人知,过往不与新人讲。纵你阅人何其多,再无一人恰似我。
时间不知不觉中,来到新的一年。2024结束,2025开始新的忙碌。成年人的我也不知道去哪里渡自己的灵魂,独自敲击一些文字算是对这段时间做一个记录。
一、前言
公开密钥基础设施(PKI)——网络安全领域的基石
公开密钥基础设施,英文全称为Public Key Infrastructure,简称PKI。这一术语听起来或许有些晦涩难懂,但若简单将其定义为“基于公开密钥机制构建的一套基础设施”,恐怕仍会让许多人感到一头雾水。
在当今数字化时代,网络已深度融入我们生活的方方面面,从日常购物、社交娱乐到重要的商务活动、政务处理,无一不依赖于网络的高效运转。然而,随之而来的网络安全问题也日益凸显,成为我们不得不面对的严峻挑战。在此背景下,一系列安全保障机制应运而生,而PKI正是其中最为核心且关键的一环。
无论你是为了应对考试、准备提案,还是单纯出于好奇,想要深入了解PKI的相关知识,本文都将助你在短短5分钟内,轻松揭开PKI的神秘面纱。
PKI之所以让人觉得难以理解,一方面在于它融合了密码学、网络安全、信息技术等多个领域的前沿技术和专业知识;另一方面,其概念体系庞大而复杂,涉及证书颁发、密钥管理、身份认证、数据加密等多个环节,让人初接触时往往感到无从下手。但实际上,只要理清脉络,PKI并没有想象中那么高深莫测。接下来,就让我们一同踏上这场探索PKI奥秘的旅程吧!
二、PKI的核心是身份证明书的发行
PKI:网络世界的“身份守护者”
在数字浪潮席卷全球的今天,网络已然成为人们生活与工作中不可或缺的一部分。然而,由于网络空间的虚拟性和开放性,身份伪造这一安全隐患也随之而来。想象一下,在网络世界中,大家素未谋面,仅凭一些虚拟信息交流,若无法准确验明对方的真实身份,那网络通信的安全性和可靠性将无从谈起。正因如此,如何在网络上证明“我是谁”,成为了一个亟待解决的关键问题。
而PKI(Public Key Infrastructure,公开密钥基础设施)正是为解决这一问题而生。其核心要义在于发行“身份证明书”,也就是在网络环境中,为每个参与通信的主体赋予一个可验证、可信赖的数字身份标识。
当我们在网络上进行相互通信时,如果能够确认对方的身份证明书,就如同在现实生活中面对面交流时看清了对方的脸,能确保自己是在与正确的人进行沟通。这就好比我们在现实世界中依靠身份证来确认一个人的身份一样,在网络世界里,身份证明书就是我们的“网络身份证”。
但需要注意的是,自己随意制作的身份证明书是不具备可信度的。这就如同在现实生活中,如果公民身份证可以由个人私自制作,那么身份证将失去其应有的权威性和可信度。在网络世界中,我们同样需要一个被广泛认可、值得信赖的发证机关来颁发身份证明书,并且自己要像保管现实中的身份证一样,妥善保管好自己的网络身份证明书。
PKI的三大核心要素
在PKI的体系中,有三大关键要素构成了其稳固的架构:
-> 证明书:这便是我们在网络世界中的“身份证明书”,它承载着用户的身份信息,是确认用户身份的重要依据。
-> 认证机关:它是发行证明书的权威机构,如同现实世界中的派出所,负责审核和颁发身份证明书,确保每一个证明书的真实性和有效性。
-> 证书库:这是一个统一管理证明书的“档案库”,它就像一个巨大的文件系统,将所有的证书集中存放在一起,方便用户查询和获取。
说到底,PKI指的是证明书的制作和分发的一种机制。在这个机制的保障前提下,进行可信赖的网络通信。即安全的网路通信保障机制。
这三个要素相辅相成,共同构成了PKI的主要框架。可以说,PKI本质上就是一种制作和分发证明书的机制。在这一机制的保障下,网络通信得以在安全、可靠的环境中进行,为我们的网络生活筑起了一道坚固的安全防线。
在实际应用中,证明书通常被存放在硬盘或者IC卡里,其文件构造遵循一种名为X.509的协议标准。而认证机关,本质上就是一个运行在网络上的应用程序,负责处理证明书的申请、审核和颁发等流程。至于证书库,虽然从技术角度来说它就是一个文件系统,但在网络环境中,它扮演着集中存储和分发证书的重要角色。用户可以通过下载的方式获取所需的证书,当然,在某些特定场景下,证书也可以直接分发,从而省去了证书库这一中间环节。
三、证明书里面的密钥
证明书里的密钥:身份确认与通信加密的双重保障
在数字通信的舞台上,证明书扮演着至关重要的角色。一旦借助证明书完成了身份确认,通信加密便也能顺理成章地实现。这背后的奥秘就在于,证明书里藏着用于加密的密钥。
想象这样一个场景:你打算与一位自称穿拖鞋的汉子的男士进行网络通信。在通信伊始,穿拖鞋的汉子会通过网络将他的证明书发送给你。这张证明书就如同穿拖鞋的汉子在网络世界中的“身份名片”,通过它,你能够确认对方确实就是穿拖鞋的汉子本人。
接下来,你便可以使用证明书中所包含的密钥,对即将发送给穿拖鞋的汉子的信息进行加密处理。经过加密后的信息,就像被上了一把只有穿拖鞋的汉子才能打开的“数字锁”。而解开这把“锁”的钥匙,就是穿拖鞋的汉子独有的“私人密钥”。
即便在信息传输过程中,被不法分子窃取,由于他们没有穿拖鞋的汉子的私人密钥,所以根本无法解密获取其中的内容。这就如同你寄了一封只有穿拖鞋的汉子才能打开的加密信件,即便信件在途中被他人截获,没有那把专属的“钥匙”,窃取者也只能望“信”兴叹。
只要穿拖鞋的汉子妥善保管好自己的私人密钥,那么即便有人拿到了他的证明书和其中的密钥,也无法进行任何恶意操作。因为用证明书中的密钥加密的内容,唯有穿拖鞋的汉子的私人密钥才能解开。
由此可见,PKI提供的证明书不仅实现了身份确认这一基础功能,还为通信加密提供了有力支持。它就像一位忠诚的守护者,在数字通信的道路上,为我们的信息安全保驾护航,让身份确认与通信加密这两个关键功能得以完美实现。
四、什么是“公开密钥”,什么是“私有密钥”
对于穿拖鞋的汉子而言,只要他牢牢守护好自己的“私有密钥”,使其不被他人窃取,那么即便将“证明书里的密钥”广泛分发,也无需担忧安全问题。这意味着,任何希望与穿拖鞋的汉子进行通信的人,都必须获取穿拖鞋的汉子的证明书,并使用其中包含的“公开密钥”对通信内容进行加密。为了让更多人能够便捷地获取穿拖鞋的汉子的证明书,证书库的存在就显得尤为重要。
在PKI(Public Key Infrastructure,公开密钥基础设施)机制中,放置于“证明书”内的密钥可以自由分发,这一密钥被形象地称为“公开密钥(Public Key)”。与之相对应,由穿拖鞋的汉子本人妥善保管的“私人的密钥”则被称为“私有密钥(Private Key)”。
公开密钥作为证明书的核心组成部分,其分发方式灵活多样,不受限制。无论是将其存储在U盘中传递给他人,放置于网络平台供人自由下载,还是通过电子邮件发送,这些方式都可行。如此一来,人们便能轻松获取公开密钥,进而与穿拖鞋的汉子展开安全、可靠的通信。
“拿什么去信任你?我的证明书”
前文我们了解到,利用证明书中的公开密钥对通信内容进行加密,这一流程已然清晰。然而,一个关键问题也随之而来:PKI所提供的证明书真的值得信赖吗?毕竟,从本质上来说,证明书不过是一份普通的文件。它不像货币那样,具备特殊的材质或物理层面的防伪手段。
这样的担忧并非毫无道理。实际上,认证机关所使用的证书生成器本质上只是一个软件程序。倘若有人获取了这个软件,理论上任何人都有可能发行所谓的“证明书”。这就意味着,在技术层面,伪造证明书并非难事。以一种极端情况为例,假设出现了一份所谓的“穿拖鞋的汉子的证明书”,但其中包含的公开密钥实际上是史提芬的。如此一来,他人发送给穿拖鞋的汉子的信息,史提芬能够轻松解密,而真正的穿拖鞋的汉子却束手无策。
由此可见,认证机关的权威性与可信度至关重要。而这一问题的探讨,实际上已上升至社会基础设施建设的层面。
在众多国家,认证机关的建设通常由政府主导推进,并被视为社会性基础设施的关键组成部分。就如同建设医院、银行、学校等各类社会机构一样,认证机关的构建与运营对于维护社会的正常运转和信息安全起着不可或缺的作用。
五、补充-数字证书的安全性
数字证书:构筑网络安全的坚固防线
在数字化浪潮席卷全球的当下,数字证书作为保障网络安全的关键要素,发挥着举足轻重的作用。它犹如一位忠诚的卫士,凭借一系列强大的功能,为网络通信的安全保驾护航。
1、数字证书的核心功能
身份认证:数字证书依托证书颁发机构(CA)对用户身份进行严谨的验证。这一过程如同为网络世界中的每个用户颁发了一张“数字身份证”,确保通信双方的身份真实可信,让用户在网络交流中能够放心地确认对方的身份。
数据机密性:数字证书巧妙运用公钥加密算法,为数据在传输过程中筑起了一道坚不可摧的屏障。它就像一把神奇的锁,只有拥有正确密钥的接收方才能解开,有效防止数据被未经授权的第三方窃取,保障了数据的隐私性。
数据完整性:借助数字签名技术,数字证书能够确保数据在传输过程中保持原样,不被篡改。一旦数据在传输过程中遭遇恶意修改,数字签名将立即发出警报,让接收方能够及时发现并采取相应措施,确保数据的完整性和准确性。
不可抵赖性:数字证书中包含了证书颁发机构的签名,这一签名如同法律的印章,确保证书的真实性和不可抵赖性。它证明了证书的使用者是经过合法认证的,为网络交易和通信提供了可靠的法律依据,防止用户在事后否认自己的行为。
2、数字证书的安全性保障措施
为了确保数字证书的安全性,需要从多个方面采取有效的措施:
证书颁发机构的可信度:选择信誉良好的证书颁发机构是保证数字证书安全性的基石。证书颁发机构如同数字世界的“公证人”,需要经过严格的审查和认证,具备高度的可信度和安全性。只有经过权威机构认可的证书颁发机构,才能为用户提供可靠的数字证书服务。
密钥的安全管理:数字证书中的公钥和私钥是其安全性的核心。其中,私钥必须严格保密,且只能由证书拥有者持有。私钥一旦泄露,数字证书的安全性将受到严重威胁。因此,用户需要采取多种有效的措施来保护私钥,如使用强密码保护私钥文件、定期更换私钥等,确保私钥的安全。
数字签名的验证:在使用数字证书进行通信时,接收方需要对发送方的数字签名进行严格的验证。这一过程如同对信息的“指纹”进行比对,只有验证通过,才能确保数据的完整性和身份的合法性。合理使用数字签名技术,可以有效防止冒充和篡改等安全风险,为网络通信提供可靠的安全保障。
搁笔分享完毕!
愿你我相信时间的力量
做一个长期主义者
相关文章:
车载通信基础 --- 解密公开密钥基础设施(PKI)
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 周末洗了一个澡,换了一身衣服,出了门却不知道去哪儿,不知道去找谁&am…...
深度强化学习基础 1:以狗狗学习握手为例
强化学习共同框架 在这个狗狗学习握手的场景中,强化学习的各个要素可以这样理解: 状态s(state): 狗狗所处的环境状况,比如主人伸出手掌的姿势、狗狗自身的姿势、周围的环境等。状态s描述了狗狗在特定时刻所感知到的环境信息。 动作a(action): 狗狗可以…...
【Kafka基础】topics命令行操作大全:高级命令解析(2)
1 强制删除主题 /export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --delete \--zookeeper 192.168.10.33:2181 \--topic mytopic \--if-exists 参数说明: --zookeeper:直接连接Zookeeper删除(旧版本方式)--if-exists&…...
【redis】简介及在springboot中的使用
redis简介 基本概念 Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 与MySQL数据库不…...
Windwos的DNS解析命令nslookup
nslookup 解析dns的命令 有两种使用方式,交互式&命令行方式。 交互式 C:\Users\Administrator>nslookup 默认服务器: UnKnown Address: fe80::52f7:edff:fe28:35de> www.baidu.com 服务器: UnKnown Address: fe80::52f7:edff:fe28:35de非权威应答:…...
Vue.js 实现下载模板和导入模板、数据比对功能核心实现。
在前端开发中,数据比对是一个常见需求,尤其在资产管理等场景中。本文将基于 Vue.js 和 Element UI,通过一个简化的代码示例,展示如何实现“新建比对”和“开始比对”功能的核心部分。 一、功能简介 我们将聚焦两个核心功能&…...
通过世界排名第一的免费开源ERP,构建富有弹性的智能供应链
概述 现行供应链模式的结构性弱点凸显了对整个行业进行重塑的必要性。正确策略和支持可以帮助您重塑供应链,降低成本,实现业务转型。开源智造(OSCG)所推出的Odoo免费开源ERP解决方案,将供应链转化为具有快速响应能力的…...
自动驾驶数据闭环中的MLOps实践:Kubernetes、Kubeflow与PyTorch的协同应用
目录 1. 引言 2. 系统架构与技术栈 2.1 Kubernetes:弹性可伸缩的计算资源池 2.2 Kubeflow:端到端的MLOps工作流 2.3 PyTorch分布式训练:高效的模型训练引擎 3. 增强型数据处理技术 3.1 联邦学习聚合 3.2 在线学习更新 3.3 角落案例挖…...
如何在Linux中更改主机名?修改主机最新方法
hostname是一个Linux操作系统的常用功能,允许识别服务器, 这可用于容易地确定两个服务器之间的差异。 除了服务器的个人识别,主机名与大多数网络进程一起使用,其他应用程序也可能依赖于此,本期将指导大家如何在Linux中…...
分盘,内网
分盘 查看创建分区 # 查看磁盘信息(确认目标磁盘,如/dev/sda) lsblkfdisk -l# 启动fdisk工具(需root权限) sudo fdisk /dev/sda# 步骤1:删除旧分区表(谨慎操作!) Comma…...
SQL122 删除索引
alter table examination_info drop index uniq_idx_exam_id; alter table examination_info drop index full_idx_tag; 描述 请删除examination_info表上的唯一索引uniq_idx_exam_id和全文索引full_idx_tag。 后台会通过 SHOW INDEX FROM examination_info 来对比输出结果。…...
【SQL】子查询详解(附例题)
子查询 子查询的表示形式为:(SELECT 语句),它是IN、EXISTS等运算符的运算数,它也出现于FROM子句和VALUES子句。包含子查询的查询叫做嵌套查询。嵌套查询分为相关嵌套查询和不想关嵌套查询 WHERE子句中的子查询 比较运算符 子查询的结果是…...
AI和传统命理的结合
deepseek的火热 也带来了AI命理学的爆火 1. 精准解析:AI加持,数据驱动 通过先进的人工智能算法,我们对海量的传统命理知识进行了深度学习和整合。无论是八字排盘、紫微斗数,还是风水布局、生肖运势,AI都能根据您的个…...
Java设计模式之抽象工厂模式:从入门到架构级实践
设计模式是构建高质量软件的基石,而抽象工厂模式作为创建型模式的代表,不仅解决了对象创建的问题,更在架构设计中扮演着关键角色。本文将从基础到高阶、从单机到分布式,全面剖析抽象工厂模式的应用场景与实战技巧。 一、从问题出发…...
摄像头模块对焦方式的类型
摄像头模块的对焦方式直接影响成像清晰度和使用场景适应性,不同技术各有其优缺点。以下是常见对焦方式及其原理、特点和应用场景的详细说明: 1. 固定对焦(Fixed Focus) 原理:镜头固定在特定距离(…...
九屏图分析法以手机为例
九屏图的两种视角 时间九屏图:关注系统的时间演化(过去、现在、未来),强调技术或产品的生命周期。空间九屏图:关注系统的层次结构(子系统、本系统、超系统࿰…...
【模板】前缀和
链接:【模板】前缀和 题目描述 给定一个长度为n的数组a1,a2,....ana_1, a_2,....a_na1,a2,....an. 接下来有q次查询, 每次查询有两个参数l, r. 对于每个询问, 请输出alal1....ara_la_{l1}....a_ralal1....ar 输入描述: 第一行包含两个整数n和q. 第…...
微信小程序多线程的使用
微信小程序的多线程主要通过 Worker 实现,用于处理复杂计算任务以避免阻塞主线程。以下是完整的使用指南和最佳实践: 一、Worker 核心机制 运行环境隔离 主线程与 Worker 线程内存不共享通信通过 postMessage 完成(数据拷贝而非共享ÿ…...
FPGA设计职位介绍|如何成为一名合格的数字前端设计工程师?
近年来FPGA行业持续升温,随着国产替代浪潮的加快推进,国家对可重构计算、边缘计算、自主可控等领域的扶持力度不断加大,FPGA作为灵活性高、可编程性强的重要芯片种类,在人工智能、通信、工业控制等应用中广受青睐。FPGA人才长期紧…...
Shell 基础
刷题: 思维导图: #include <stdio.h> // 手动定义32位有符号整数的范围 #define INT_MAX 2147483647 #define INT_MIN (-2147483647 - 1) int reverse(int x) { int rev 0; // 初始化反转后的数字为0 while (x ! 0) { // 当x不为0时ÿ…...
软件信息安全性测试如何进行?有哪些注意事项?
随着信息技术的高速发展,软件已经成为我们生活和工作中不可或缺的一部分。然而,随着软件产品的广泛普及,软件信息安全性问题也日益凸显,因此软件信息安全性测试必不可少。那么软件信息安全性测试应如何进行呢?在进行过程中又有哪…...
ragflow开启https访问:浏览器将自签证书添加到受信任的根证书颁发机构 ,当证书过期,还需要添加吗?
核心机制解析 信任链原理: 当您将自签名证书添加到"受信任的根证书颁发机构"后,系统会永久信任该证书的颁发者身份但证书本身的有效期和密钥匹配仍需验证证书更新的两种情况: 相同密钥续期:如果新证书使用相同的密钥对,浏览器通常会保持信任重新生成密钥:如果执…...
ragflow开启https访问:自签证书到期了,如何自动生成新证书
自动生成和更新自签名证书的方案 对于使用公网IP和自签名证书的RagFlow服务,要实现证书的自动生成和更新,可以采用以下方案: 方案一:使用脚本自动更新(推荐) 1. 创建自动更新脚本 在服务器上创建 ./docker/nginx/auto_renew_cert.sh 文件: #!/bin/bash# 证书路径 C…...
LLM面试题八
推荐算法工程师面试题 二分类的分类损失函数? 二分类的分类损失函数一般采用交叉熵(Cross Entropy)损失函数,即CE损失函数。二分类问题的CE损失函数可以写成:其中,y是真实标签,p是预测标签,取值为0或1。 …...
小行星轨道预测是怎么做的?从天文观测到 AI 模型的完整路径
目录 ☄️ 小行星轨道预测是怎么做的?从天文观测到 AI 模型的完整路径 🌌 一、什么是小行星轨道预测? 🔭 二、观测数据从哪里来? 🧮 三、经典动力学方法:数值积分 🤖 四、现代方…...
华为OD机试2025A卷 - 正整数到excel编号之间的转换(Java Python JS C++ C )
最新华为OD机试 真题目录:点击查看目录 华为OD面试真题精选:点击立即查看 题目描述 用过 excel 的都知道excel的列编号是这样的: a b c … z aa ab ac … az ba bb bc … yz za zb zc … zz aaa aab aac … 分别代表以下编号: 1 2 3 … 26 27 28 29 … 52 53 54 55…...
2024年-全国大学生数学建模竞赛(CUMCM)试题速浏、分类及浅析
2024年-全国大学生数学建模竞赛(CUMCM)试题速浏、分类及浅析 全国大学生数学建模竞赛(China Undergraduate Mathematical Contest in Modeling)是国家教委高教司和中国工业与应用数学学会共同主办的面向全国大学生的群众性科技活动,目的在于激…...
Vue3 实现进度条组件
样式如下,代码如下 <script setup> import { computed, defineEmits, defineProps, onMounted, ref, watch } from vue// 定义 props const props defineProps({// 初始百分比initialPercentage: {type: Number,default: 0,}, })// 定义 emits const emits…...
I²S协议概述与信号线说明
IIS协议概述 IS(Inter-IC Sound)协议,又称 IIS(Inter-IC Sound),是一种专门用于数字音频数据传输的串行总线标准,由飞利浦(Philips)公司提出。该协议通常用于微控制器…...
Redis 面经
1、说说什么是 Redis? Redis 是 Remote Dictionary Service 三个单词中加粗字母的组合,是一种基于键值对的 NoSQL 数据库。但比一般的键值对,比如 HashMap 强大的多,Redis 中的 value 支持 string、hash、 list、set、zset、Bitmaps、Hyper…...
设计模式 四、行为设计模式(1)
在设计模式的世界里,23种经典设计模式通常被分为三大类:创建型、结构型和行为型。创建型设计模式关注对象创建的问题,结构性设计模式关注于类或对象的组合和组装的问题,行为型设计模式则主要关注于类或对象之间的交互问题。 行为设…...
Python错误分析与调试
在Python编程的过程中,我们难免会遇到各种各样的错误,而有效地分析和调试这些错误,能让我们的代码快速恢复正常运行,今天就来和大家聊聊Python中错误分析与调试的相关内容。 错误分析 Python中的错误大致可以分为语法错误和逻…...
vue实现大转盘抽奖
用vue实现一个简单的大转盘抽奖案例 大转盘 一 转盘布局 <div class"lucky-wheel-content"><div class"lucky-wheel-prize" :style"wheelStyle" :class"isStart ? animated-icon : "transitionend"onWheelTransitionE…...
《从零搭建Vue3项目实战》(AI辅助搭建Vue3+ElemntPlus后台管理项目)零基础入门系列第二篇:项目创建和初始化
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 《从零搭建Vue3项目实战》(AI辅助…...
yum拒绝连接
YUM 拒绝连接的解决方案 当遇到 yum 无法连接的问题时,通常可以通过更换为更稳定的镜像源来解决问题。以下是具体的解决方法: 更换为阿里云源 如果当前的 yum 配置文件存在问题或网络不稳定,可以尝试将其替换为阿里云的镜像源。 备份原始配…...
信息学奥赛一本通 1861:【10NOIP提高组】关押罪犯 | 洛谷 P1525 [NOIP 2010 提高组] 关押罪犯
【题目链接】 ybt 1861:【10NOIP提高组】关押罪犯 洛谷 P1525 [NOIP 2010 提高组] 关押罪犯 【题目考点】 1. 图论:二分图 2. 二分答案 3. 种类并查集 【解题思路】 解法1:种类并查集 一个囚犯是一个顶点,一个囚犯对可以看…...
代码随想录算法训练营第十一天
LeetCode/卡码网题目: 144. 二叉树的前序遍历94. 二叉树的中序遍历145. 二叉树的后序遍历102. 二叉树的层序遍历107.二叉树的层次遍历II199. 二叉树的右视图637. 二叉树的层平均值429. N 叉树的层序遍历515. 在每个树行中找最大值116. 填充每个节点的下一个右侧节点指针117. 填…...
浅谈进程的就绪状态与挂起状态
就绪状态 进程获得除 CPU 之外的所需资源,一旦得到 CPU 就可以立即运行,不能运行的原因是还是因为 CPU 的资源太少,只能等待分配 CPU 资源。在系统中,处于就绪状态的进程可能有多个,通常是将它们组成一个进程就绪队列…...
37、web前端开发之Vue3保姆教程(一)
一、课程简介 本课程旨在帮助学员从零基础逐步掌握Web前端开发的核心技术,涵盖当前前端开发中的关键工具和框架。课程内容包括: Vue 3:主流前端框架,支持组件化开发和响应式数据管理,帮助学员高效构建现代Web应用。TypeScript:增强版JavaScript,提供静态类型支持,提高…...
cenos7升级gcc 9.3和Qt5.15版本教程
cenos7升级gcc 9.3和Qt5.15版本教程 文章目录 cenos7升级gcc 9.3和Qt5.15版本教程0、背景1、现状2、目标和思路3、升级前环境准备3.1 虚拟机联网配置3.2 镜像设置 4、升级gcc 9.35 升级Qt6 测试验证7 总结 0、背景 之前编码的环境一直是“拿来主义”,拷贝现成的虚拟…...
Scala总结(七)
集合(二) 数组 不可变数组与可变数组的转换 arr1.toBuffer //不可变数组转可变数组 arr2.toArray //可变数组转不可变数组 arr2.toArray 返回结果才是一个不可变数组,arr2 本身没有变化arr1.toBuffer 返回结果才是一个可变数组ÿ…...
linux 使用 usermod 授权 普通用户 属组权限
之前写过这篇文章 linux 普通用户 使用 docker 只不过是使用 root 用户编辑 /etc/group用户所属组文件的方式 今天带来一种 usermod 命令行方式 以下3步,在root用户下操作 第一步,先创建一个普通用户测试使用 useradd miniuser第二步,授权到…...
Redis持久化
Redis持久化 一.认识持久化1.简单介绍2.持久化策略 二.RDB1.快照2."定期"fork 3.RDB演示(1)手动执行save&bgsave触发一次生成快照(2)插入key,不手动执行bgsave(3)执行bgsave后,新旧文件的替换(4)通过配置自动生成rdb快照(5)rdb文件内容被故…...
什么是 k8s 的 Taints(污点) 和 Tolerations(容忍度)
什么是 k8s 的 Taints(污点) 和 Tolerations(容忍度) 在 Kubernetes(K8s)中,Taints(污点)和 Tolerations(容忍度)用于影响 Pod 调度到节点的行为…...
是德科技KEYSIGHT校准件85039B
是德科技KEYSIGHT校准件85039B 是德科技KEYSIGHT校准件85039B 85039B Agilent | 85039B|校准件|网络分析仪校准件|3GHz|75欧|N型 品牌: 安捷伦 | Agilent | 惠普 | HP 主要技术指标 DC to 3GHz frequency range 主要描述 常用型号: 一、频谱分析仪或…...
以UE5第三方插件库为基础,编写自己的第三方库插件,并且能够在运行时复制.dll
首先,创建一个空白的C 项目,创建第三方插件库。如下图所示 编译自己的.Dll 和.lib 库,打开.sln 如下图 ExampleLibrary.h 的代码如下 #if defined _WIN32 || defined _WIN64 #define EXAMPLELIBRARY_IMPORT __declspec(dllimport) #elif d…...
StarRocks执行原理与SQL性能优化策略探索
https://zhuanlan.zhihu.com/p/15707561363 聚合优化实践 -- 通过count group by 优化 count distinct数据倾斜问题 除了前面所说的聚合度会对分组聚合造成比较大的影响外,我们还要考虑一个点,即数据倾斜问题。 背景: 如下为最初的用户计算uv的SQL SE…...
Java全栈面试宝典:JMM内存模型与Spring自动装配深度解析
目录 一、Java内存模型(JMM)核心原理 🔥 问题8:happens-before原则全景解析 JMM内存架构图 happens-before八大规则 线程安全验证案例 🔥 问题9:JMM解决可见性的三大武器 可见性保障机制 volatile双…...
拉普拉斯变换
【硬核】工科生都逃不掉的拉氏变换,居然又炫酷又实用|拉普拉斯变换原理、图解与应用,傅里叶变换进阶,控制理论必修课【喵星考拉】...
JavaScript之Json数据格式
介绍 JavaScript Object Notation, js对象标注法,是轻量级的数据交换格式完全独立于编程语言文本字符集必须用UTF-8格式,必须用“”任何支持的数据类型都可以用JSON表示JS内内置JSON解析JSON本质就是字符串 Json对象和JS对象互相转化 前端…...