HTTPS数字证书验证论述
1 概述
网络请求方式通常分为两种,分别是HTTP请求和HTTPS请求,其中HTTP的传输属于明文传输,在传输的过程中容易被人截取并且偷窥其中的内容,而HTTPS是一种在HTTP的基础上加了SSL/TLS层(安全套接层)的安全的超文本传输协议,其传输的内容是通过加密得到的,所以说是一种安全的传输
2 加密算法
说到加密算法,先来了解一下两种常用的加密方式,分别是对称加密和非对称加密:
1.对称加密:加密使用的秘钥和解密使用的秘钥是相同的,也就是说加密和解密都使用同一个秘钥,加密算法是公开的,秘钥是加密者和解密者绝对保密的
2.非对称加密:加密使用的秘钥和解密使用的秘钥是不相同的,HTTPS在数字证书验证的时候,采用的RSA密码体制就是一种非对称加密
RSA是一种公钥密码体制,现在使用非常广泛,这个密码体制分为三部分,公钥、私钥、加密算法,其中公钥和加密算法是公布的,私钥是自己保密的。这种机制最大的特点是,通过公钥加密的密文只有对应的私钥才能解密,同样通过私钥加密的密文也只有对应的公钥才能解密。下面我们将会讲到HTTPS是如何通过RSA这种密码体制去验证身份的
3 数字证书
数字证书是Https实现安全传输的基础,它是由权威的CA机构颁发的,证书的主要内容有:公钥(Public Key)、ISSUER(证书的发布机构)、Subject(证书持有者)、证书有效期、签名算法、指纹及指纹算法
在网络中,要想实现自己的数据能够安全地传输,就必须向权威的CA机构申请数字证书,有了数字证书就相当于有了一把安全秘钥,这里先认识一下证书是长啥样的,之后再解析证书是如何进行安全认证的
下面是CSDN博客的证书内容:
可以看到公钥是一串很长的2048 Bits的字符串,同时也可以看到<使用者>的内容包含了csdn.net网址,在后面验证URL链接是否正确的时候用到,还有颁发者、有效期、签名算法等等。当然还有指纹及指纹算法等其他内容,我们滚动到下面看看另一个截图
上面展示了CSDN网站的CA证书内容,颁发者是GeoTrust,它就是传说中的权威的CA机构了。这里特别说明一下,CA机构除了给别人颁发证书以外,它也有自己的证书,这个证书是机构自己颁发给自己的,为了区分我们称它为根证书,根证书也有自己的公钥和私钥,在本文中我们称之为根公钥和根私钥,根公钥和加密算法是对外公布的,而根私钥是CA机构自己绝对保密的。这个根证书在验证证书的过程中起着核心的作用
哪里可以看到机构的根证书呢?
在受信任的根证书颁发机构中我们看到一系列的CA机构,如上面CSDN的证书的颁发者GeoTrust机构也在其中,这些权威机构的根证书都是浏览器预先嵌入到其系统中的,点开看看GeoTrust的根证书,可以发现颁发者和使用者都是一样的,其中里面的公钥就是根公钥,在验证数字证书的时候非常关键
4 证书的指纹和签名
在解析数字证书的验证之前,先来解析一下什么是指纹和数字签名?
在上面的CSDN的证书中可以看到有一个叫指纹的字符串,指纹可以理解为证书身份的唯一代表,是用来保证证书的完整性的,确保证书没有被修改过。证书在发布之前,CA机构对证书的内容用指纹算法(一般是sha1或sha256)计算得到一个hash值,这个hash值就是指纹。
(为什么用hash值作为证书的身份代表呢?首先,hash值具有不可逆性,也就是说无法通过hash值得出原来的信息内容;其次,hash值具有唯一性,即hash计算可以保证不同的内容一定得到不同的hash值)
签名是在信息后面加上的一段数字串,可以证明该信息有没有被修改过。数字证书在发布的时候,CA机构将证书的指纹和指纹算法通过自己的私钥加密得到的就是证书的签名了
先简单阐述一下证书的指纹和签名的作用,我们在验证证书的时候,首 先通过机构的根公钥去解密证书的签名,解密成功的话会得到证书的指纹和指纹算法,指纹是一个hash值,它代表着证书的原始内容,此时再通过指纹算法计算证书内容得到另外一个hash值,如果这两个hash值相同,则代表证书没有被篡改过,否则就是被篡改了
5 证书的验证
假设这是一个浏览器的HTTPS请求
**一:**首先浏览器通过URL网址去请求服务端,服务端接收到请求后,就会给浏览器发送一个自己的CA数字证书
**二:**浏览器接收到证书以后,就要开始进行验证工作了。首先从证书中得知证书的颁发机构,然后从浏览器系统中去寻找此颁发机构的根证书。上面我们也看到,世界上权威CA机构的根证书都是预先嵌入到浏览器中的,如果在浏览器系中没有找到对应的根证书,就代表此机构不是受信任的,那么就会警告无法确认证书的真假,比如以前打开12360网站就会提示,现在不会了
如果我们找到了证书颁发机构的根证书,那么就从根证书中取得那个根公钥,用根公钥去解密此证书的数字签名,成功解密的话就得到证书的指纹和指纹算法,指纹是证书内容通过指纹算法计算得到的一个hash值,这里我们称之为h1,h1代表证书的原始内容;然后用指纹算法对当前接收到的证书内容再进行一次hash计算得到另一个值h2,h2则代表当前证书的内容,如果此时h1和h2是相等的,就代表证书没有被修改过。如果证书被篡改过,h2和h1是不可能相同的,因为hash值具有唯一性,不同内容通过hash计算得到的值是不可能相同的
有人说假如证书上的指纹是不法分子伪造的,伪造是没有用的,因为你伪造的指纹不可能用CA机构的根私钥去加密(根私钥是CA机构绝对保密的),伪造者只能拿自己的秘钥去加密这个伪造的指纹,但当我们拿机构的根公钥去解密伪造指纹的时候是不可能成功的(加密内容只能由一对公钥私钥解密)
在证书没有被修改过的基础上,再检查证书上的使用者的URL(比如csdn.net)和我们请求的URL是否相等,如果相等,那么就可以证明当前浏览器链接的网址也是正确的,而不是一些钓鱼网之类的
但如果浏览器的连接被某个中间人截取了,中间人也可以发一个由权威的CA机构颁发的证书给浏览器,然后也可以通过证书没有被篡改的验证,但是在证书没有被篡改的前提下,通过对比证书上的URL和我们请求的URL是否相同,我们还是可以判断当前证书是不是服务器发的证书。可以这么理解,因为URL具有唯一性,所以中间人的证书的上的URL和我们的证书的URL是不可能相同的,如果中间人修改了自己证书上的URL,那么就通过不了证书没有被篡改的验证,所以中间人的证书也是欺骗不了我们的
到这里我们认证了三点信息:
-
证书是否为受信任的权威机构颁发的
-
证书是否被篡改
-
证书是否为服务器发过来的,而不是第三方发的
**三:**基于上面的三点信息认证都没有问题的情况下,下一步我们有一个重要的任务就是,如何将一个对称加密算法的秘钥安全地发给服务器
首先随机生成一个字符串S作为我们的秘钥,然后通过证书公钥加密成密文,将密文发送给服务器。因为此密文是用公钥加密的,这是一个非对称加密,我们知道,这个密文只有私钥的持有者才能进行解密,在这里私钥的持有者当然是服务器了,所以说任何第三方截取到密文也是没用的,因为没有对应的私钥无法解密得到我们的密文
还有一个关键步骤,发送密文的时候也会对消息内容进行签名操作。签名上面讲解过,就是对密文内容进行hash计算得到的hash值再通过公钥或私钥加密得到的一段数字串,这个签名和消息内容一起发送出去。接收方收到消息以后,通过私钥或公钥解析出密文和签名的hash值,同时也会对接收的消息内容进行同样的hash计算得到另一个hash值,比对两个hash值是否相同来判断消息有没有被篡改过
**四:**通过了上面的步骤以后,此时客户端和服务端都持有了对称加密算法的同一个秘钥,然后兄弟俩就可以愉快地安全通信了
6 总结
数字证书的验证有两个重要的步骤,第一是客户端验证服务器发的数字证书有没有被篡改,以及没有被篡改的证书是否为服务器发的证书,而不是任何第三方假冒服务器发的证书;第二是客户端将对称加密算法的秘钥安全地发送给服务器。这两步都完成以后,整个HTTPS的数字证书的验证就算是成功了。
相关文章:
![](https://img-blog.csdnimg.cn/direct/65bd1abb97b14ef5b8e2a3c7b3277333.png)
HTTPS数字证书验证论述
1 概述 网络请求方式通常分为两种,分别是HTTP请求和HTTPS请求,其中HTTP的传输属于明文传输,在传输的过程中容易被人截取并且偷窥其中的内容,而HTTPS是一种在HTTP的基础上加了SSL/TLS层(安全套接层)的安全的…...
![](https://www.ngui.cc/images/no-images.jpg)
【高考志愿】地质资源与地质工程
目录 一、专业概述 1.1 专业定义 1.2 主要课程 1.3 专业培养目标 二、就业前景和考研方向 三、工作特点和挑战 四、如何培养核心竞争力 五、 地质资源与地质工程专业排名 六、结语 关于高考志愿选择地质资源与地质工程专业,以下是一些详细的介绍和参考信息…...
![](https://img-blog.csdnimg.cn/direct/6813bbf53b504f9eb53f8d962266903c.png)
全网最佳硕士研究生复试简历模板
硕士研究生复试简历模板 ✨ 简介 提供了一个适用于国内硕士研究生复试的个人简历模板。该模板通过统一的“样式”形成规范的Word格式,是目前研究生复试的最佳简历模板之一。模板使用“华文中宋”字体,如您的电脑中未安装此字体,请提前安装。…...
![](https://img-blog.csdnimg.cn/direct/43a91889a6d5429e92c1ae86f7f660bd.png)
Rocky Linux 9 系统OpenSSH CVE-2024-6387 漏洞修复
Rocky Linux 9系统 OpenSSH CVE-2024-6387 漏洞修复 1、漏洞修复2、修复思路3、修复方案3.1、方案一3.2、方案二 4、总结5、参考 1、漏洞修复 CVE-2024-6387:regreSSHion:OpenSSH 服务器中的远程代码执行(RCE),至少在…...
![](https://img-blog.csdnimg.cn/direct/362cf63b53354b409a141d4e287e8d90.png)
Sping源码(九)—— Bean的初始化(非懒加载)—mergeBeanDefinitionPostProcessor
序言 前几篇文章详细介绍了Spring中实例化Bean的各种方式,其中包括采用FactoryBean的方式创建对象、使用反射创建对象、自定义BeanFactoryPostProcessor以及构造器方式创建对象。 创建对象 这里再来简单回顾一下对象的创建,不知道大家有没有这样一个疑…...
![](https://img-blog.csdnimg.cn/direct/8fbf4b746c9a4e6c85b880b66926bed4.png)
labview技巧——AMC框架安装
AMC工具包的核心概念是队列,队列是一种先进先出(FIFO,First In First Out)的数据结构,适用于处理并发和异步任务。在LabVIEW中,队列可以用于在不同VI之间传递数据,确保消息的有序处理࿰…...
![](https://img-blog.csdnimg.cn/img_convert/216b2e32c89f0adea7e7d686cdd85eb0.webp?x-oss-process=image/format,png)
解锁分布式云多集群统一监控的云上最佳实践
作者:在峰 引言 在当今数字化转型加速的时代,随着混合云、多云多集群环境等技术被众多企业广泛应用,分布式云架构已成为众多企业和组织推动业务创新、实现弹性扩展的首选,分布式云容器平台 ACK One(Distributed Clou…...
![](https://www.ngui.cc/images/no-images.jpg)
学会拥抱Python六剑客,提高编程效率
在Python语言中,有六个强大的工具,它们被称为"Python六剑客"。而Python六剑客指的是Python中常用的六种功能强大且灵活的工具,它们分别是“切片(Slicing),推导列表(List Comprehensio…...
![](https://www.ngui.cc/images/no-images.jpg)
mysql 根据当前时间筛选某个时间范围内的数据
1.根据天数筛选 SELECT * FROM coupons WHERE NOW() BETWEEN start_time AND end_time; 在这个查询中,NOW()函数返回当前的日期和时间。BETWEEN操作符用于检查NOW()返回的当前时间是否在start_time和end_time之间(包括这两个时间)。 注意&a…...
![](https://www.ngui.cc/images/no-images.jpg)
Linux 常用指令详解
Linux 是一个强大而灵活的操作系统,掌握常用的 Linux 指令是使用和管理 Linux 系统的基础。本文将介绍一些常用的 Linux 指令,并附上 Vim 和 g 的常用指令说明,帮助你更好地进行开发和操作。 1. 基本文件操作指令 1.1 显示目录内容 ls常用…...
![](https://img-blog.csdnimg.cn/direct/c21469203bcd4578b6bdf5b10e1c3252.jpeg#pic_center)
【简单讲解下npm常用命令】
🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共…...
![](https://www.ngui.cc/images/no-images.jpg)
Header Location重定向机制解析与应用
Header Location重定向机制解析与应用 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将深入探讨HTTP中的Header Location重定向机制,以及在…...
![](https://img-blog.csdnimg.cn/img_convert/8241f0100d0307cece79818d21a1e657.png)
硅纪元AI应用推荐 | 国产创作引擎即梦AI助力创作者探索创作新境界
“硅纪元AI应用推荐”栏目,为您精选最新、最实用的人工智能应用,无论您是AI发烧友还是新手,都能在这里找到提升生活和工作的利器。与我们一起探索AI的无限可能,开启智慧新时代! 在人工智能快速发展的今天,各…...
![](https://www.ngui.cc/images/no-images.jpg)
使用TableGeneration生成已标注的表格数据用于表格识别
利用 TableGeneration 生成多样化表格数据 TableGeneration 简介环境准备chrome浏览器(Linux下推荐)火狐浏览器(Mac下推荐) 生成表格生成表格 参数说明结论 在数据生成和处理领域,表格数据的生成是一个常见需求,尤其是在机器学习和数据分析领域。今天&am…...
![](https://img-blog.csdnimg.cn/img_convert/31f964b40e10e781878085a310ec05b3.png)
赛目科技三度递表:净利率及资产回报率不断下滑,经营成本越来越高
《港湾商业观察》施子夫 5月29日,北京赛目科技股份有限公司(以下简称,赛目科技)第三次递表港交所,公司拟主板上市,独家保荐机构为光银国际。 公开信息显示,赛目科技此前曾于2022年12月&#x…...
![](https://img-blog.csdnimg.cn/direct/95ed46010e3b4fd3958377a87c5e7597.gif)
【QT】概述|对象树模型|两种控件模式|信号和槽|lambda
目录 什么是QT 特点 QT程序 main函数 QT按钮 纯代码模式 图形化模式 对象树模型 信号和槽 连接与断开 自动连接 断开连接 信号的发射 lambda表达式 基本语法 捕获列表 Lambda表达式用于信号与槽的连接 例如 什么是QT Qt是一个跨平台的C图形用户界面应用…...
![](https://www.ngui.cc/images/no-images.jpg)
Java中的安全编码实践与防御技巧
Java中的安全编码实践与防御技巧 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将探讨Java中的安全编码实践与防御技巧,这对于开发人员来说…...
![](https://www.ngui.cc/images/no-images.jpg)
linux 常用的命令、文件路径、其他工具或软件包
命令 sudo apt dist-upgrade 解决显示 暂不升级、未被升级dd if/dev/zero of./rootfs.img bs1G count6 制作一个 6G 的空白镜像。bs 是块字节数,count 是 bs 的个数。dd if./rootfs.img of/dev/sdc2 bs512 烧录 rootfs.img 镜像到 /dev/sdc2。bs 是 512 个字节&…...
![](https://img-blog.csdnimg.cn/direct/1fe08f8316d5442ca2c6f8f91001e388.png)
00 如何根据规律在变化中求发展?
你好,我是周大壮。目前,我已在搜索推荐等算法技术领域从事研发近 10 年,做过诸多流量分发领域的算法技术工作。 如今任 58 同城的算法架构师、技术委员会人工智能分会委员、58 本地服务事业群算法策略部负责人,我主要负责 58 集团…...
![](https://www.ngui.cc/images/no-images.jpg)
UUID和自增ID做主键到底哪个好?
UUID(通用唯一识别码) 优点: 全局唯一性:由不同算法生成,确保全球范围内的唯一性,避免主键冲突。不可预测性:随机生成,难以被猜测,适合保密性应用。分布式应用࿱…...
![](https://www.ngui.cc/images/no-images.jpg)
FW SystemUI Keyguard解析(二)
文章目录 CTS之Keyguard Menu事件处理 CTS之Keyguard Menu事件处理 事件触发点: NotificationShadeWindowViewController.dispatchKeyEvent 设置setInteractionEventHandler回调之后通过NotificationShadeWindowView 触发 调用到return mService.onMenuPressed(); public cla…...
![](https://img-blog.csdnimg.cn/direct/0ff5c55848cd45a6ac07c041a1f96746.png)
MySQL之备份与恢复(二)
备份与恢复 定义恢复需求 如果一切正常,那么永远也不需要考虑恢复。但是,一旦需要恢复,只有世界上最好的备份系统是没用的,还需要一个强大的恢复系统。 不幸的是,让备份系统平滑工作比构造良好的恢复过程和工具更容易…...
![](https://img-blog.csdnimg.cn/direct/ae0d26ed3e2e4e3aa79719da49dcbb48.png)
MySQL:保护数据库
保护数据库 1. 用户1.1 创建用户1.2 查看用户1.3 删除用户1.4 修改密码 2. 权限2.1 授予权限2.2 查看权限2.3 撤销权限 之前都是介绍本地数据库而你自己就是数据库的唯一用户,所以不必考虑安全问题。但实际业务中数据库大多放在服务器里,你必须妥善处理好…...
![](https://img-blog.csdnimg.cn/direct/39ff065f5d164957ad8dde048c1dffb7.png)
不是大厂云用不起,而是五洛云更有性价比
明月代维的一个客户的大厂云境外云服务器再有几天就到期了,续费提醒那是提前一周准时到来,但是看到客户发来的续费价格截图,我是真的没忍住。这不就是在杀熟吗?就这配置续费竟然如此昂贵?说实话这个客户的服务器代维是…...
![](https://img-blog.csdnimg.cn/direct/ef57f3e9042341e0aac95ce7259ae303.png#pic_center)
C++初学者指南-3.自定义类型(第一部分)-异常
C初学者指南-3.自定义类型(第一部分)-异常 文章目录 C初学者指南-3.自定义类型(第一部分)-异常简介什么是异常?第一个示例用途:报告违反规则的行为异常的替代方案标准库异常处理 问题和保证资源泄露使用 RAII 避免内存泄漏!析构函数:不要让异…...
![](https://img-blog.csdnimg.cn/direct/5174965946b749c298784753fb3b00ba.png)
学会python——用python编写一个电子时钟(python实例十七)
目录 1.认识Python 2.环境与工具 2.1 python环境 2.2 Visual Studio Code编译 3.电子时钟程序 3.1 代码构思 3.2代码实例 3.3运行结果 4.总结 1.认识Python Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的可读性…...
![](https://img-blog.csdnimg.cn/direct/c6c3668ee1ee46bba67a9cc6c3f8098b.png)
elementui中@click短时间内多次触发,@click重复点击,做不允许重复点击处理
click快速点击,发生多次触发 2.代码示例: //html<el-button :loading"submitLoading" type"primary" click"submitForm">确 定</el-button>data() {return {submitLoading:false,}}//方法/** 提交按钮 */sub…...
![](https://img-blog.csdnimg.cn/direct/bed8463545f84d0190cd4a0950181358.png#pic_center)
助力游戏实现应用内运营闭环,融云游戏社交方案升级!
通信能力在所有应用场景都是必备组件,这源于社交属性带给应用的增长神话。 在游戏场景,玩家从少数核心向大众用户泛化扩展的过程,就是游戏深度融合社交能力的过程。 从单机到联机,游戏乐趣的升级 1996 年,游戏界顶流…...
![](https://img-blog.csdnimg.cn/direct/5dbad955894b41cb85bbf30484b58463.png)
守护创新之魂:源代码防泄漏的终极策略
在信息化快速发展的今天,企业的核心机密数据,尤其是源代码,成为了企业竞争力的关键所在。然而,源代码的泄露风险也随之增加,给企业的安全和发展带来了巨大威胁。在这样的背景下,SDC沙盒作为一种创新的源代码…...
![](https://img-blog.csdnimg.cn/direct/2263f759e4004780a6d4f5bf8c428355.png)
Halcon 基于分水岭的目标分割
一 分水岭 1 分水岭介绍 传统的分水岭分割方法,是一种基于拓扑理论的数学形态学的分割方法,其基本思想是把图像看作是地质学上的拓扑地貌,图像中每一像素的灰度值表示该点的海拔高度,每一个局部极小值及其周边区域称为集水盆地&…...
![](https://img-blog.csdnimg.cn/direct/e9d24ba0fc5c41b7a71f569f1bc63ad9.png)
PHP 面向对象编程(OOP)入门指南
面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,通过使用对象来设计和组织代码。PHP作为一种广泛使用的服务器端脚本语言,支持面向对象编程。本文将介绍PHP面向对象编程的基本概念和用法࿰…...
![](https://img-blog.csdnimg.cn/direct/11c060aedac0418f88377863a7fde057.png)
Django学习第三天
python manage.py runserver 使用以上的命令启动项目 实现新建用户数据功能 views.py文件代码 from django.shortcuts import render, redirect from app01 import models# Create your views here. def depart_list(request):""" 部门列表 ""&qu…...
![](https://img-blog.csdnimg.cn/direct/6b467c3227b64bf0915d9dbbe465c8b9.png)
Vue3实现点击按钮实现文字变色
1.动态样式实现 1.1核心代码解释: class"power-station-perspective-item-text": 为这个 span 元素添加了一个 CSS 类,以便对其样式进行定义。 click"clickItem(item.id)": 这是一个 Vue 事件绑定。当用户点…...
![](https://www.ngui.cc/images/no-images.jpg)
深入理解Vue生命周期钩子函数
深入理解Vue生命周期钩子函数 Vue.js 是一款流行的前端框架,通过其强大的响应式数据绑定和组件化的开发方式,使得前端开发变得更加简单和高效。在Vue应用中,每个组件都有其生命周期,这些生命周期钩子函数允许开发者在不同阶段执行…...
![](https://img-blog.csdnimg.cn/direct/35fc72bda897410c9eaec5e3320e7b8a.png)
Linux-gdb
目录 1.-g 生成含有debug信息的可执行文件 2.gdb开始以及gdb中的常用执行指令 3.断点的本质用法 4.快速跳出函数体 5.其他 1.-g 生成含有debug信息的可执行文件 2.gdb开始以及gdb中的常用执行指令 3.断点的本质用法 断点的本质是帮助我们缩小出问题的范围 比如,…...
![](https://www.ngui.cc/images/no-images.jpg)
Oracle分析表和索引(analyze)
分析表 analyze table tablename compute statistics; 分析索引 analyze index indexname compute statistics; 该语句生成的统计信息会更新user_tables这个视图的统计信息,分析的结果被Oracle用于基于成本的优化生成更好的查询计划 对于使用CBO(Cost-Base Optimization)很有好…...
![](https://img-blog.csdnimg.cn/direct/22619bf763704fbaa9490e435b81ec3a.png)
MyBatis踩坑记录-多表关联字段相同,字段数据覆盖问题
MyBatis踩坑记录-多表关联字段相同,字段数据覆盖问题 1. 背景描述2. 实体记录3. 错误映射3.1 造成的影响 4. 解决办法4.1 修改映射文件 5. 修复后的效果5.1 返回的数据5.2 正确展示 7. end ~ 1. 背景描述 现有一下业务,单个任务下可能会有多个子任务&am…...
![](https://img-blog.csdnimg.cn/direct/0a5bdf0564754f119ee3a8eadee65dbc.png)
昇思25天学习打卡营第6天|数据变换 Transforms
学习目标:熟练掌握数据变换操作 熟悉mindspore.dataset.transforms接口 实践掌握常用变换 昇思大模型平台学习心得记录: 一、关于mindspore.dataset.transforms 1.1 变换 mindspore.dataset.transforms.Compose将多个数据增强操作组合使用。 mindspo…...
![](https://img-blog.csdnimg.cn/direct/0a3bac530bba4b28b2e37c1603a92468.png)
在线JSON可视化工具--改进
先前发布了JSON格式化可视化在线工具,提供图形化界面显示结构关系功能,并提供JSON快速格式化、JSON压缩、快捷复制、下载导出、对存在语法错误的地方能明确显示,而且还支持全屏,极大扩大视野区域。 在线JSON格式化可视化工具 但…...
![](https://img-blog.csdnimg.cn/direct/73f44c0ed5704cc284a1cae674da9398.png#pic_center)
探讨命令模式及其应用
目录 命令模式命令模式结构命令模式适用场景命令模式优缺点练手题目题目描述输入描述输出描述题解 命令模式 命令模式是一种行为设计模式, 它可将请求转换为一个包含与请求相关的所有信息的独立对象。 该转换让你能根据不同的请求将方法参数化、 延迟请求执行或将其…...
![](https://img-blog.csdnimg.cn/direct/4a3218ac34494e5a8803feda6a557d02.png)
1、音视频解封装流程---解复用
对于一个视频文件(mp4格式/flv格式),audio_pkt或者video_pkt是其最基本的数据单元,即视频文件是由独立的视频编码包或者音频编码包组成的。 解复用就是从视频文件中把视频包/音频包单独读取出来保存成独立文件,那么如何得知packet是视频包还是…...
![](https://www.ngui.cc/images/no-images.jpg)
centos7升级gcc到7.3.0
1、下载gcc-7.3.0源码 wget ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz 2、解压gcc-7.3.0 tar -xvf gcc-7.3.0.tar.gz3、安装依赖 cd gcc-7.3.0 ./contrib/download_prerequisites ./contrib/download_prerequisites会下载对应的依赖包,如果下载不了的话&a…...
![](https://img-blog.csdnimg.cn/direct/79e45fcee3834b9aa182c1295fa7034a.png)
系统运维面试题总结(网络基础类)
系统运维面试题总结(网络基础类) 网络基础类第七层:应用层第六层:表示层第五层:会话层第四层:传输层第三层:网络层第二层:数据链路层第一层:物理层 类似面试题1、TCP/IP四…...
![](https://img-blog.csdnimg.cn/direct/8d8d004b8dc549068299d24ae1f1ec6c.png)
PO模式登录测试
项目实践 登陆项目测试 get_driver import page from selenium import webdriverclass GetDriver:driver Noneclassmethoddef get_driver(cls):if cls.driver is None:cls.driver webdriver.Edge()cls.driver.maximize_window()cls.driver.get(page.url)return cls.drivercl…...
![](https://img-blog.csdnimg.cn/direct/1aceb94c490847db867d435ed142eef5.png)
X86 +PC104+支持WinCE5.0,WinCE6.0,DOS,WinXP, QNX等操作系统,工业控制数据采集核心模块板卡定制
CPU 模块 是一款基于RDC 3306的SOM Express模块。RDC 3306这款X86架构的CPU是一款性能高、稳定性强的处理器。 它是一款灵活精巧的主板(尺寸为91.8mm68.6mm),可以灵活的运用于用户的底板,节约开发成本。模块的接插件使用插针形式…...
![](https://img-blog.csdnimg.cn/direct/470d98a4e2aa4befb5e99fa0bc7b05bb.jpeg)
视频监控汇聚和融合平台的特点、功能、接入方式、应用场景
目录 一、产品概述 二、主要特点 1、多协议支持 2、高度集成与兼容性 3、高性能与可扩展性 4、智能化分析 5、安全可靠 三、功能概述 1. 视频接入与汇聚 2. 视频存储与回放 3. 实时监控与预警 4. 信息共享与联动 5. 远程管理与控制 四、接入方式 1、直接接入 2…...
![](https://img-blog.csdnimg.cn/direct/cef12af812614640865e999d34d7a7eb.jpeg)
实习总结 --- 其他业务
一. 回归测试:回归测试与测新是对应的,当需求准入交付测试的时候首先要进行的就是测新,也就是对新功能对测试,一般是在sim环境下测试的;当测新通过后才会进行回归测试,回归测试的目的是为了保证老功能的正确…...
![](https://img-blog.csdnimg.cn/direct/7b620dff8ddd48bd9becfd1c8ee17e9a.png)
2024年上半年典型网络攻击事件汇总
文章目录 前言一、Ivanti VPN 的0 Day攻击(2024年1月)二、微软公司高管账户泄露攻击(2024年1月)三、Change Healthcare网络攻击(2024年2月)四、ConnectWise ScreenConnect漏洞利用攻击(2024年2月)五、XZ Utils软件供应链攻击(2024年3月)六、AT&T数据泄露攻击(20…...
![](https://img-blog.csdnimg.cn/direct/eab049a5789240459be0527b6b9a2346.jpeg)
Ozon、美客多补单测评黑科技:打造无懈可击的自养号补单环境
不管哪个跨境平台的风控都会做升级,相对的补单技术也需要进行相应的做升级,风控升级后,自己养号补单需要注意以下技术问题,以确保补单的稳定性和安全性: 一、物理环境 1. 硬件参数伪装:平台已经开始通过I…...
![](https://www.ngui.cc/images/no-images.jpg)
ES报错:解决too_many_clauses: maxClauseCount is set to 1024 报错问题
解决too_many_clauses: maxClauseCount is set to 1024 报错问题 问题场景报错信息问题分析解决1. 优化查询2. 增加maxClauseCount3. 改用其他查询类型修改后的查询示例 问题场景 查询语句:查询clcNo分类号包含分类O的所有文档 {"match_phrase_prefix":…...
![](https://img-blog.csdnimg.cn/direct/a15266cfced9488eb9ed832fab6a856f.jpeg)
2024年中国陶瓷轴承用氮化硅粉体市场发展现状及重点竞争企业研究
2024年中国陶瓷轴承用氮化硅粉体市场发展现状及重点竞争企业研究 氮化硅是一种硬度高、结构稳定、热膨胀系数小,抗氧化和抗侵蚀性能好的一种的陶瓷材料,可用于制造高性能氮化硅陶瓷结构件、坩埚涂层等。近年来,伴随着机械制造行业进一步向高精…...
![](https://www.ngui.cc/images/no-images.jpg)
Centos使用Docker安装JDK、Redis、Mysql、RabbitMq、Zookeeper
安装JDK8 使用以下查看当前系统是否自带JDKJava -version 未安装则使用以下命令安装及启动 docker pull java:8 docker run --name java --restartalways -d java:8安装Mysql5.7 docker pull mysql:5.7 docker run -p 3306:3306 --name mysql5.7 -e MYSQL_ROOT_PASSWORD12345…...
![](https://www.ngui.cc/images/no-images.jpg)
第四十五章 在 SOAP 消息中使用数据集 - 以 XML 形式查看数据集和架构
文章目录 第四十五章 在 SOAP 消息中使用数据集 - 以 XML 形式查看数据集和架构以 XML 形式查看数据集和架构对 WSDL 的影响 第四十五章 在 SOAP 消息中使用数据集 - 以 XML 形式查看数据集和架构 以 XML 形式查看数据集和架构 扩展 %XML.DataSet 的数据集在具有可用于生成 X…...
![](https://www.ngui.cc/images/no-images.jpg)
Android的悬浮时钟(一)
在Android,如果要悬浮在其他应用上方显示时钟或者其他界面的话是需要申请权限的。 首先在manifest中我们就要写自己要申请的权限SYSTEM_ALERT_WINDOW <uses-permission android:name"android.permission.SYSTEM_ALERT_WINDOW" /> 不同于请求照片或…...
![](https://i-blog.csdnimg.cn/direct/ac31b43bac6341838bb032adcc6f776c.png)
matplotlib下载安装
matplotlib下载安装过程同之前写的pygame很类似。 Pygame下载安装 python官网 1.搜索matplotlib 直接点进去 查看历史版本,因为新版本可能出现与python不匹配问题。 我选择3.6.3版本,因为我安装的python是3.8,可以匹配版本。同时window操…...
![](https://img-blog.csdnimg.cn/img_convert/0e9aaf97637255719384bc6af87ed265.png)
通过容器启动QAnything知识库问答系统
QAnything (Question and Answer based on Anything) 是致力于支持任意格式文件或数据库的本地知识库问答系统,可断网安装使用。目前已支持格式:PDF(pdf),Word(docx),PPT(pptx),XLS(xlsx),Markdown(md)&…...
![](https://www.ngui.cc/images/no-images.jpg)
GfK中国联合上海市眼镜行业协会举办高层论坛:探索眼镜市场机遇共筑视觉健
中国与上海市眼镜行业协会联合主办的 “视界之窗:瞰见全球及中国眼镜市场未来”高层论坛5月16日在上海成功举行。本次论坛汇聚了上海市眼病防治中心视光中心、上海健康医学院医学技术学院等三十余家专业机构和协会专家,以及上海三联有限公司、上海依视路光学有限公司、卡尔蔡司…...
![](https://www.ngui.cc/images/no-images.jpg)
Flutter 中的 RichText 小部件:全面指南
Flutter 中的 RichText 小部件:全面指南 Flutter 是一个流行的跨平台 UI 工具包,它允许开发者使用 Dart 语言来构建高性能、高保真的移动应用。在 Flutter 中,RichText 是一个非常有用的小部件,它允许开发者在同一个文本行中混合…...
![](https://img-blog.csdnimg.cn/direct/3233f3fc70674f299d6e971d92d8b5da.png)
手机投屏技巧:手机怎么投屏到电脑显示屏上?精选6招解决!
手机怎么投屏到电脑显示屏上?出于一些不同的原因,大多数人都希望能将手机投屏到电脑上。其中一个常见的原因是,大家经常会希望在笔记本电脑上共享图片,而无需上传或者登录微信进行文件传输。以及希望不依靠投影仪,就能…...
![](https://www.ngui.cc/images/no-images.jpg)
人工智能和大模型的区别
人工智能(AI)和大模型是两个相关但有区别的概念。理解它们之间的区别有助于更好地掌握现代科技的发展动态。 人工智能(AI) 人工智能(Artificial Intelligence, AI)是一个广义的概念,指的是通过…...
![](https://img-blog.csdnimg.cn/direct/7330a6c1bcaf4a059d799a2d69bec60f.png)
LLM - 模型下载与 git-lfs 安装
目录 一.引言 二.安装 git lfs 1.使用 apt-get 安装 2.使用 Brew 安装 3.LFS 验证 三.总结 一.引言 在 HuggingFace 上下载模型时提供一个 git clone 的指令,执行后可以下载对应模型的模型文件: 但是本机还没有 git lfs 命令: git: lfs is not a git comman…...
![](https://img-blog.csdnimg.cn/direct/054129603ef24345b52c0cc7509e1065.png)
vue 表格表头展示不下,显示。。。;鼠标悬浮展示全部
vue 表格表头展示不下,显示。。。;鼠标悬浮展示全部 <templateslot-scope"scope"slot"header"><span:title"临时证券类型"style"white-space:nowrap">{{ 临时证券类型 }}</span></templa…...