当前位置: 首页 > news >正文

对称加密算法和非对称加密算法

        在这个互联网普及的时代,在不同终端对敏感甚至机密数据进行传输是非常常见的场景,但是如何保证数据传输过程的安全性和高效性是一个值得深入探讨的问题。

为此,伟大的人类研究出了多种加密算法,我们可以大致将其分为两类

  • 对称加密算法

  • 非对称加密算法

为了对上述两类算法进行学习分析,我们将采用以下名词代称:

  • 发送方:即对数据进行加密并进行发送的一方。

  • 接收方:即对加密数据进行接收并解密的一方。

了解了以上内容,那让我们来思考一下,如果让你来进行敏感机密数据的加密传输,你会怎么做?

“那必然是两方同时约定一个密码,然后发送方用这个密码进行加密,再发送出去,然后接收方接收到之后再用这个密码对数据进行解密咯~”

好的,恭喜你~发明出了伟大的对称加密算法!

好了,那让我们来具体了解一下对称加密算法吧~

对称加密算法

1 概念:

即采用单秘钥对数据进行加密的算法,加密和解密使用的都是同一个秘钥

这里说的秘钥,就是我们刚刚提到的双方共同约定的密码~

2.原理:

如上图所示:

  1. 由发送方制定秘钥,而后发送给接收方。

  2. 发送方使用秘钥对数据进行加密,而后将加密数据发送给接收方。

  3. 接收方接收到加密数据后,使用之前收到的秘钥对加密数据进行解密。

3.优点:

这类加密算法的好处显而易见啊

  • 简单

  • 加密计算量小,加密速度快,故而适用于大量数据加密的场景

4.缺点

坏处呢?

  • 不安全

有人可能要疑惑了,那就让我们来详细讲讲不安全在什么地方吧~

主要是两个地方:秘钥的传输秘钥的保管

因为加密和解密使用的都是同一个秘钥,故而对秘钥的传输和保管都至关重要,稍有不慎导致秘钥泄漏那不就GG了吗。

也就是说,对称加密算法的安全性不仅在于算法的复杂性,而且依赖于秘钥的保密性!即使使用强大的对称加密算法,如果密钥被泄露或破解,加密内容就能被轻松解密。

  • 秘钥的传输:指发送方如何安全地将秘钥传递到接受方的问题。

让我们来想想这样一个场景,在远在外地出差的小明有一份重要的机密文件要立马交给小红。由于文件十分机密,为了防止黑客在发送过程中对机密数据进行截取破译篡改,小明就想到了,"我用密码对机密文件进行加密,再发送给小红,这样黑客没有密码就破解不了我的文件了呀~" 小明心想,朕实乃天才呀!好的,聪明的小明就这样兴高采烈地加密完成了,而后立马把加密完成的文件发送给小红,小红很快就收到了加密文件,但此时打开文件的小红可谓是一脸懵逼,怎么还要输密码呀,也妹人告诉我密码啊,这看个毛啊,立马就找到小明说,“这个文件看不了啊,密码呢?”于是乎小明立马就将密码发送给了小红,好了这下子小红终于可以查看机密文件了。

好了,故事讲完了,有人发现这其中的BUG了吗?相信聪明的你肯定想到了,嗯 小明这下子真是加密了个寂寞。

文件是加密了的,密码是泄漏了的,一旦黑客拦截到他发送给小红的密码,这不就寄了吗!考虑到了机密文件传输过程的安全性,但是没有考虑到密码传输过程的安全性!

但是,当然了,此处只是举了一个浅显易懂的例子,现实中没有这么蠢的操作哈,一般使用对称加密算法时对秘钥进行传输的时候考虑的因素肯定不止上面这么简单,这也是一个热门的研究方向,感兴趣的同学可以自行学习。

  • 秘钥管理:指秘钥如何在双方进行安全存储和管理的问题。

好了,现在我们假设,上面小故事中的小明没有泄漏秘钥,秘钥很安全地到达了小红这边,那么现在作为秘钥唯二的持有者之一的聪明的小明开始思考了,这个密码这么重要,可不能就直接的存储在我的电脑上,我一定要对这个密码进行二次加密,就像加密那个机密文件一样,对这个密码再进行一次对称加密。于是乎,小明付诸实践,开始行动!

很快问题一出现了,小明对密码1进行对称加密,还要用到一个密码2, 而后又要再用到一个密码3对这个密码2进行对称加密,......反反复复,重复了很多次,小明终于发现了,哇靠,这不是死循环吗!小明懵逼了,算了,就这样吧。

而另一边的小红比较善于思考,她也想到了要对密码进行加密存储,但是她很快就想到了上述小明遇到的问题,且她很快意识到,就算使用对称算法对密码进行加密,那本质上密码每次传输都会暴露啊,所以为了安全性,小明每次传输一个加密文件给她,都要制定一个新的密码,又要对这个密码进行保管(加密),随着密码数量的增加,也不好管理啊,于是乎她很快就否定了用对称加密算法对密码进行加密的方案。

好了,通过上面的小故事,相信大家也对对称加密的缺点了然于心了,那可能就有同学要问了,那如何解决上述小故事中小明和小红遇到的问题呢?

答案呼之欲出,那就是采用非对称加密算法

非对称加密算法

1.概念:

即采用双秘钥对数据进行加密解密的算法,加密和解密使用的是不同的秘钥。

双秘钥指的分别是:公钥和私钥

一般情况下:公钥用于加密,私钥用于解密。

公钥:顾名思义,公开的钥匙,用于加密数据,且公钥一般由私钥生成

私钥:顾名思义,私有的钥匙,用于解密数据

2.原理:

如上图所示:

  1. 由接收方制定私钥并由私钥生成公钥,而后发送给发送方。

  2. 发送方根据接受到的公钥,对数据进行加密,而后再将加密后的数据发送给接受方。

  3. 接收方接收到加密数据后,使用私钥对加密数据进行解密。

3.优点:

(1)解决对称加密算法中的秘钥传输问题:

在这个加密数据传输的过程中,用于解密的私钥始终是没有在网络中进行传输的,也就是不涉及对称加密中秘钥传输的安全性问题,所以也就解决了对称加密中的问题一

(2)解决对称加密算法中的秘钥管理问题:

接下来,我们来分析一下,非对称加密是如何解决对称加密的问题二:秘钥管理的。

在上面的小故事中,小明对秘钥的保管采用的是对称加密,这样的秘钥管理方案的问题在于:

  1. 不安全:必须保证保护加密密钥的密钥(通常称为"密钥加密密钥")的安全性。如果该密钥泄露,那么整个加密体系的安全性就遭到破坏。

  2. 多层密钥管理:如果在系统中使用多个对称密钥进行不同数据的加密,就必须管理每个加密密钥的保护和存储。而一旦这些密钥本身也被加密存储,那么每个密钥的加密密钥也需要得到保护,导致需要管理多个层级的密钥。

所以秘钥的保管方案绝对不能采用对称加密算法,那采用非对称加密算法究竟是如何解决问题二:秘钥管理的呢?

假设现在小明和小红采用的是非对称加密算法进行加密数据传输,也就是说,私钥只在小红(接收方)这边持有,整个过程如下:

  1. 由小红制定一个私钥并据此生成一个公钥,将公钥发送给小明(发送方),

  2. 小明使用公钥对数据进行加密,而后将加密后的数据发送给小红,

  3. 小红再使用私钥对加密数据进行解密。

可以看到,上述整个过程中,用于解密的私钥都是没有暴露在传输过程中的,只有小红有,所有就只有小红(接收方)这边需要考虑秘钥保管的问题了,是不是就已经加强了安全性。

再者,由于私钥本身是只有小红持有的,以后小明和小红再进行机密文件的传输时也就不用再制定新的私钥和公钥了,只复用这一对秘钥即可。也就解决了多层秘钥管理的问题,小红只需要考虑对持有的私钥的保管即可。

若进一步的,小红对私钥的保管采用非对称加密算法,那就更安全了。

4.缺点:

  • 算法复杂

  • 计算效率较低,加密和解密的效率都很低

5.不一般情况下的非对称算法:

公钥用于解密数据,私钥用于加密数据

这种情况通常用于验证数据的完整性和来源,最经典的例子就是数字签名。例如:一个软件公司对其发布的一个应用生成一个对应的数字签名,以供消费者验证这个软件是正版的。

数据签名的基本流程如下:

  1. 软件公司对其应用进行一个哈希运算得到一串哈希值,而后使用私钥对这串哈希值进行加密,且公开公钥,与应用一起打包上市。

  2. 消费者此时在一个应用市场下载到了这个软件,就可以通过软件公司公开的公钥对数字签名进行解密,得到应用的哈希值。

  3. 而后对下载的应用进行哈希运算,得到现在应用的哈希值,将第2步中获得的哈希值与此哈希值进行对比

  4. 若一致,则应用数据完整且是正版的

  5. 若不一致,则说明应用数据可能被篡改过,不是正版软件。

总结

        通过上述的一系列分析,我们可以了解到,对称加密算法与非对称加密算法各有好坏,对称加密虽然没那么安全但效率高,非对称加密虽然安全性高但低效,所以在现实生活中我们一般会采用对称加密和非对称加密结合的方式进行数据的加密传输。

相关文章:

对称加密算法和非对称加密算法

在这个互联网普及的时代,在不同终端对敏感甚至机密数据进行传输是非常常见的场景,但是如何保证数据传输过程的安全性和高效性是一个值得深入探讨的问题。 为此,伟大的人类研究出了多种加密算法,我们可以大致将其分为两类&#xf…...

工程数字建造管理系统平台有哪些?好的数字建造管理系统推荐

一、什么是工程数字建造管理系统平台? 工程数字建造管理系统平台是一种集成了先进信息技术(如云计算、大数据、物联网等)的综合性管理工具,它旨在通过数字化手段提升工程建造全过程的管理效率和决策水平。这一平台不仅覆盖了工程…...

CMake ERROR: arm-none-eabi-gcc is not able to compile a simple test program.

用 cmake 构建 STM32 工程问题【已解决】 环境信息 os: ubuntu22.04gcc: arm-none-eabi-gcc (Arm GNU Toolchain 13.2.rel1 (Build arm-13.7)) 13.2.1 20231009cmake: cmake version 3.22.1ninja: 1.10.1 问题 log [main] 正在配置项目: Olidy [driver] 删除 /home/pomegr…...

容器主机CPU使用率突增问题一则

关键词 LINUX、文件系统crontab 、mlocate根目录使用率 There are many things that can not be broken! 如果觉得本文对你有帮助,欢迎点赞、收藏、评论! 一、问题现象 业务一台容器服务器,近期经常收到cpu不定期抖动告警&#x…...

CTFshow【命令执行】web29-web40 做题笔记

web29----过滤关键字 正则匹配,过滤flag,可以使用通配符绕过 先查看目录 使用通配符?查看flag 点击查看源代码 web30---过滤函数和关键字 看到过滤了system执行系统命令和flag,php关键字 找一个与其功能差不多的执行函数passthr…...

L2正则化:优化模型的平滑之道

常见的正则化方法1. **L1正则化(Lasso)**1.1基本原理1.2特点1.3数学推导1.4参数更新1.5选择合适的正则化系数1.6优点1.7缺点1.8实际应用中的注意事项1.9示例 2. **L2正则化(Ridge)**L2正则化的定义L2正则化如何防止过拟合1. **限制…...

Golang 的 GMP 调度机制常见问题及解答

文章目录 Golang GMP 调度模型详解常见问题基础概念1. GMP 各组件的作用是什么?2. 为什么 Go 需要自己的调度器?3. GOMAXPROCS 的作用是什么? 调度流程4. Goroutine 如何被调度到 M 上执行?5. 系统调用会阻塞整个线程吗&#xff1…...

使用VSCODE导致CPU占用率过高的处理方法

1:cpptools 原因:原因是C/C会在全局搜索文件,可以快速进行跳转;当打开的文件过大,全局搜索文件会占用大量CPU; 处理方法: 1:每次只打开小文件夹; 2:打开大文…...

17--华为防火墙智能选路全解:网络世界的智能导航系统

华为防火墙智能选路全解:网络世界的智能导航系统 开篇故事:快递小哥的烦恼与网络世界的相似性 想象你是个快递站站长,每天要处理来自全国各地的包裹。突然某天遇到: 🚚 双11爆仓:如何把包裹最快送到客户手…...

CSS-BFC(块级格式化上下文)

一、BFC 的本质理解(快递仓库比喻) 想象一个快递分拣仓库(BFC容器),这个仓库有特殊的规则: 仓库内的包裹(内部元素)摆放不影响其他仓库包裹必须整齐堆叠,不能越界不同仓…...

Java 大视界 -- Java 大数据在智慧港口集装箱调度与物流效率提升中的应用创新(159)

💖亲爱的朋友们,热烈欢迎来到 青云交的博客!能与诸位在此相逢,我倍感荣幸。在这飞速更迭的时代,我们都渴望一方心灵净土,而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识,也…...

ZygoPlanner:一种基于图形的三阶段框架,用于颧骨种植体植入的最佳术前规划|文献速递-医学影像人工智能进展

Title 题目 ZygoPlanner: A three-stage graphics-based framework for optimal preoperative planning of zygomatic implant placement ZygoPlanner:一种基于图形的三阶段框架,用于颧骨种植体植入的最佳术前规划 01 文献速递介绍 1.1 研究背景 颧…...

【2.项目管理】2.4 Gannt图【甘特图】

甘特图(Gantt)深度解析与实践指南 📊 一、甘特图基础模板 项目进度表示例 工作编号工作名称持续时间(月)项目进度(周)1需求分析3▓▓▓░░░░░░░2设计建模3░▓▓▓░░░░░░3编码开发3.5░░░▓▓▓▓░░…...

python学习笔记(1)

为什么要学python 目前在研究网站的搭建,想通过python搭建一个我的世界资源买卖的平台,然后就开始研究python了,其实这不是我第一次研究python了,之前学的都不咋样,现在温故而知新,好好研究一下python。 Python的变量 在此之前先简单的介绍一下变量,给第一次接触的小…...

刚刚整理实测可用的股票数据API接口集合推荐:同花顺、雅虎API、智兔数服、聚合数据等Python量化分析各项数据全面丰富

在金融科技高速发展的今天,股票API接口已成为开发者、量化交易者和金融从业者的核心工具之一。它通过标准化的数据接口,帮助用户快速获取实时或历史市场数据,为投资决策、策略回测和金融应用开发提供支持。本文将深入解析股票API的核心功能、…...

2025 年吉林省燃气企业从业人员考试:实用备考攻略与考试提分要点​

2025 年吉林省燃气企业从业人员考试报名通过吉林燃气行业管理系统。报名资料包含企业的环保达标证明(燃气行业涉及环保要求)、个人的岗位任职证明等。实用备考攻略是,关注吉林在燃气分布式能源系统建设方面的进展,结合《燃气冷热电…...

dubbo http流量接入dubbo后端服务

简介 dubbo协议是基于TCP的二进制私有协议,更适合作为后端微服务间的高效RPC通信协议,也导致dubbo协议对于前端流量接入不是很友好。在dubo框架中,有两种方式可以解决这个问题: 多协议发布【推荐】,为dubbo协议服务暴…...

自动驾驶04:点云预处理03

点云组帧 感知算法人员在完成点云的运动畸变补偿后,会发现一个问题:激光雷达发送的点云数据包中的点云数量其实非常少,完全无法用来进行后续感知和定位层面的处理工作。 此时,感知算法人员就需要对这些数据包进行点云组帧的处理…...

小程序中过滤苹果设备中的表情(即 emoji)

在小程序中过滤苹果设备中的表情(即 emoji),通常需要考虑以下几个方面:识别 emoji、处理用户输入、以及在显示或存储时进行过滤。以下是具体的实现思路和步骤: 1. 理解苹果中的表情(Emoji) 苹果…...

软件性能测试中的“假阳性”陷阱

软件性能测试中的“假阳性”陷阱主要表现为错误警报频繁、资源浪费严重、测试可信度降低。其中,错误警报频繁是最常见且最严重的问题之一,“假阳性”现象会导致开发团队在解决不存在的问题上花费大量时间。据行业调查显示,超过30%的性能优化成…...

现代优雅品牌杂志包装徽标设计衬线英文字体安装包 Relish – Aesthetic Font

CS Relish – 美学字体:优雅与现代简约的结合 永恒的现代 Serif 字体 CS Relish 是一种现代衬线字体,将极简主义美学与精致精致融为一体。凭借其时尚、干净的字体和平衡的结构,它给人一种优雅和现代的印象。这款字体专为那些欣赏微妙和优雅的…...

《Oracle服务进程精准管控指南:23c/11g双版本内存优化实战》 ——附自动化脚本开发全攻略

正在学习或者是使用 Oracle 数据库的小伙伴,是不是对于那个一直启动且及其占用内存的后台进程感到烦躁呢?而且即使是手动去开关也显得即为麻烦,所以基于我之前所学习到的方法,我在此重新整理,让大家动动手指就能完成开…...

《寒门枭雄传》章回目录与核心故事设计(36回)

《寒门枭雄传》章回目录与核心故事设计(36回) 主线:寒门崛起→权力异化→制度轮回 核心冲突:个人奋斗 vs 制度性压迫 第一卷京口草鞋摊的野望(第1-12回) 主题:寒门之困始于生存,终…...

C语言学习笔记(抱佛脚版)

毕业一年,发现记性是真的差,每次想起之前的知识总是想不全,看别人写的资料也懵懵懂懂。于是我索性自己再学一遍,并且记录一下。希望对你们也有所帮助。 正片开始! 前面的什么if for都不难理解,嵌套的话也…...

DeepSeek-V3-0324 模型发布:开源 AI 性能再攀高峰,推理与编码能力逼近顶级闭源模型

2025 年 3 月 24 日,国内 AI 公司深度求索(DeepSeek)悄然推出 V3 模型的升级版本 DeepSeek-V3-0324。尽管此次更新并非市场期待的 V4 或 R2 版本,但其在推理速度、编码能力、数学推理及开源生态上的突破,仍迅速引发全球…...

清晰易懂的Cursor实现AI编程从安装到实战TodoList开发

一、Cursor简介与安装部署 什么是Cursor? Cursor是一款基于AI的智能代码编辑器,它集成了强大的AI编程助手功能,能够通过自然语言交互帮助开发者生成、优化和调试代码。与传统的代码编辑器不同,Cursor可以理解你的编程意图&#…...

(二) 深入了解AVFoundation - 播放:AVFoundation 播放基础入门

引言 AVFoundation 是 Apple 提供的强大多媒体框架,支持音视频播放、录制、处理等功能。在 iOS 开发中,AVFoundation 是实现视频播放的核心技术之一。 本篇文章将简单介绍如何使用 AVPlayer、AVPlayerItem 和 AVPlayerLayer 进行视频播放,并…...

重磅推出稳联技术Profinet转CANopen网关智能工厂解决方案!

重磅推出稳联技术Profinet转CANopen网关智能工厂解决方案! 稳联技术Profinet转CANopen网关应运而生——它如同一座智能桥梁☺,打通两大主流工业协议,让异构网络无缝互联,助您释放设备潜力,实现真正的“万物互联”&…...

【问题解决】Linux安装conda修改~/.bashrc配置文件后,root 用户下显示 -bash-4.2#

问题描述 在Linux安装conda下的python环境时候,修改了~/.bashrc文件,修改完成后,再次进入服务器后,登录时候显示的不是正常的[rootlocalhost ~]#,而是-bash-4.2# 原因分析: 网上原因有:/root下…...

关于deepseek

DeepSeek:领先的人工智能研究与创新公司 公司简介 DeepSeek(深度求索)是一家专注于人工智能(AI)技术研发的创新公司,致力于推动大模型、自然语言处理(NLP)、机器学习(M…...

EtherCAT转ProfiNet协议转换网关构建西门子PLC与海克斯康机器人的冗余通信链路

一、案例背景 某电子制造企业的5G通信模块组装线,采用西门子S7-1200PLC(ProfiNet主站)进行产线调度,而精密组装工序由3台海克斯康工业机器人(EtherCAT从站)完成。由于协议差异,机器人动作与PLC…...

李宏毅机器学习笔记(1)—机器学习基本概念+深度学习基本概念

机器学习基本概念 1、获取模型 步骤 1.1、假定未知函数 带未知参数的函数 1.2、定义损失函数 真实值:label MAE MSE 几率分布,cross-entropy? 1.3、优化 单独考虑一个参数 让损失函数最小,找导数为零的点 单独考虑w,w…...

RAG生成中的多文档动态融合及去重加权策略探讨

目录 RAG生成中的多文档动态融合及去重加权策略探讨 一、RAG生成概述 二、多文档动态融合策略 1. 拼接与分段编码 2. 独立编码与后续融合 3. 基于查询的动态加权 三、检索结果的去重与加权策略 1. 去重策略 2. 加权策略 四、实践中的挑战与思考 五、结语 RAG生成中的…...

对匿名认证的理解

概述:在 Spring Security 中,** 匿名认证(Anonymous Authentication)** 是一种特殊的认证机制,用于处理未提供有效凭证的请求。 匿名认证的本质 目的:允许未认证用户访问特定资源。原理: 当请求…...

leetcoed0044. 通配符匹配 hard

1 题目:通配符匹配 官方难度:难 给你一个输入字符串 (s) 和一个字符模式 ( p ) ,请你实现一个支持 ‘?’ 和 ‘*’ 匹配规则的通配符匹配: ‘?’ 可以匹配任何单个字符。 ‘*’ 可以匹配任意字符序列(包括空字符序…...

航拍数据集汇总,覆盖车辆/船舶检测/物体评估/城市景观……

随着无人机的普及化和计算机视觉技术的迅猛发展,无人机航拍作为一种创新的摄影方式,正以前所未有的速度走进大众视野。它打破了传统拍摄的局限,为我们开启了「上帝视角」。航拍硬件性能逐渐逼近物理极限,算法优化的难度也日益增大…...

【SECS】初识SECS协议

【SECS】初识SECS协议 基本知识流和功能函数数量官方文件中缩写标注正常是不是都是主机向设备端?对数据信息中第1字节第1-2位官网介绍 S1F1双向指令说明测试H发起端E发起端 参考资料 基本知识 SECS(SEMI Equipment Communications Standard)即半导体设…...

RL基础以及AlphaGo、AlphaGo Zero原理

RL基础 Q价值函数和状态价值函数 Action-Value function: Q ( s , a ) Q(s, a) Q(s,a)是agent在状态s下执行某一个动作(如向上走),所获得的及时奖励和未来折扣的累计奖励 State-Value function: V ( s ) V(s) V(s)是…...

Android R adb remount 调用流程

目的:调查adb remount 与adb shell进去后执行remount的差异 调试方法:添加log编译adbd,替换system\apex\com.android.adbd\bin\adbd 一、调查adb remount实现 关键代码:system\core\adb\daemon\services.cpp unique_fd daemon_service_to…...

uvm sequence

UVM Sequence 是验证环境中生成和控制事务(Transaction)流的核心机制,它通过动态生成、随机化和调度事务,实现灵活多样的测试场景。以下是Sequence的详细解析: Sequence 的核心作用 事务流生成:通过 uvm_s…...

Java 代理(一) 静态代理

学习代理的设计模式的时候,经常碰到的一个经典场景就是想统计某个方法的执行时间。 1 静态代理模式的产生 需求1. 统计方法执行时间 统计方法执行时间,在很多API/性能监控中都有这个需求。 下面以简单的计算器为例子,计算加法耗时。代码如下…...

《初级社会工作者》考试题,附答案解析

一、单项选择题(共 60 题,每题 1 分) 1. 社会工作者在社区中开展针对留守儿童的支持小组活动,发现一名儿童因父母长期外出务工而产生严重的分离焦虑。此时,社会工作者应首先采取的介入策略是( &#xff09…...

网盘解析工具1.3.0,修改了一些bug,建议更新到此版本

最近问题反馈比较多,本来想着周末再更新了来着,但是账号黑的实在太快了。排查了下应该是某度网盘的一个接口缺少了一些参数,导致一直进黑名单。所幸参数不难找,新版本已经修复了,建议大家赶紧更新到1.3.0版本&#xff…...

Multi-Stage Progressive Image Restoration论文阅读

摘要 图像复原任务在恢复图像时需要在空间细节与高层语境化信息之间取得复杂的平衡。本文提出了一种新颖的协同设计方法,能够最优地平衡这些竞争目标。我们的核心方案是一种多阶段架构,通过逐步学习退化输入的复原函数,将整体恢复过程分解为…...

了解图像质量评价指标PSNR

一、PSNR是什么 1.1 定义与数学公式 峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)是数字图像处理领域最经典的客观质量评价指标之一。其核心思想是通过计算原始图像与失真图像之间的均方误差(MSE)来衡量失真程度&am…...

C++概述

1 什么是面向对象】 概念上来说:就是以对象(具体的变量)为导向的编程思路 专注于:一个对象具体能实现哪些过程(哪些功能) 面向对象 n * 面向过程 结论:面向对象需要做的事情 1:我们要想清楚,我们现在需要编写一个…...

axios文件下载使用后端传递的名称

java后端通过HttpServletResponse 返回文件流 在Content-Disposition中插入文件名 一定要设置Access-Control-Expose-Headers,代表跨域该Content-Disposition返回Header可读,如果没有,前端是取不到Content-Disposition的,可以在统…...

如何让 history 记录命令执行时间?Linux/macOS 终端时间戳设置指南

引言:你真的会用 history 吗? 有没有遇到过这样的情况:你想回顾某个重要命令的执行记录,却发现 history 只列出了命令序号和内容,根本没有时间戳?这在运维排查、故障分析、甚至审计时都会带来极大的不便。 想象一下,你在服务器上误删了某个文件,但不知道具体是几点执…...

使用LLaMAFactory微调Qwen大模型

一、环境配置与工具安装 1. 硬件要求 GPU:至少1块NVIDIA GPU(推荐RTX 4090/A100/H100,显存≥16GB)。内存:≥64GB系统内存。存储:≥100GB硬盘空间用于模型与数据集存储。2. 软件依赖 Python 3.8+:需安装CUDA支持的PyTorch版本(如torch==2.0.1+cu117)。 依赖库:通过以…...

CSS3:现代Web设计的魔法卷轴

一、布局革命:从平面到多维空间 1.1 Grid布局的次元突破 星际战舰布局系统 .galaxy {display: grid;grid-template-areas: "nav nav nav""sidebar content ads""footer footer footer";grid-template-rows: 80px 1fr 120p…...