密码学_加密
目录
密码学
01 密码基础进制与计量
02 加解密基操 替换 移位 编码
编码
置换
移位
加解密强度
03 对称加密算法(私钥)
工作过程
缺陷
对称加密算法列举?
DES
DES算法架构
DES分组加密公式
DES中ECB-CBC两种加密方式
3DES
由于DES密钥太短,后来就有了3DES
缺点:3des很安全,加密效率不高,语言视频加密不适用
AES
非常大特点:扩展性
优点:替代3des ,加密效率高,合适语音视频
RC系列
用的比较广的RC4 流加密算法
轻量级算法
IDEA
软件实现的效率快des2倍
Blowfish
也是一个轻量级算法
国密算法
04 非对称加密算法(公钥)
公钥私钥一起用才能实现加解密功能
工作过程
公钥密码系统应用
RSA全能,DH交换,DSA只能签名。
DH
DH会话:解决前面这么把密钥给你问题
工作过程
RSA
慢(加密一般不用RSA)
其它公钥算法
05 数字签名(私钥签名)
06 数字证书与CA
作用:证明公钥是你的
07 哈希Hash与HMAC
哈希核对文件有没有被修改
HMAC(加盐)
在原文基础是加一个key
08 对称与非对称加密算法的完美融合
项目案例
09 密码学原理总结
密码学
01 密码基础进制与计量
ipv4 点分十进制
ipv6 十六进制
最小单位 0101比特流
存储最小单位 字节
02 加解密基操 替换 移位 编码
加密 = 加密算法+密钥
置换=替换
移位=移位
编码
编码规则
128个字符 2^7 = 我们可以把7个二进制数编码成一个ASCII码的这样一个编码
64个字符 2^5 = 我们可以把7个二进制数编码成一个BASE64的这样一个编码
base64编码问题:歧义 太相近混淆去掉6个字符
base58编码
------------------------------------------------加解密基本思想------------------------------------
置换
置换=双方先约定(对照规则) 具有规律性容易破解
移位
移位=不改变内容改变顺序 具有规律性容易破解
现代密码学设计基本原理:算法公开 + 关注密钥解决安全性保密性。
加解密强度
常识上:密钥越短加解密越快
03 对称加密算法(私钥)
工作过程
缺陷
对称加密非常大的一个缺陷:怎么去把你的密钥告诉给对方? 防止窃听 10W个人呢?
对称加密算法列举?
DES
des=块加密算法 ——>1G 拆分成几块加密
密钥56位太短很容易被当今电脑破解
DES算法架构
置换=替换(A改成G)
交换=移位(打乱顺序ABC CBA)
我们只需要知道
输入64位明文信息 块加密
中间运用到了置换和移位的操作 重复16轮
DES分组加密公式
左边32位
48位 (经过一个Expand函数扩展到)
密钥 +(经过一个S-Box函数移位)
32密文 (经过一个P-Box函数压缩32)
DES中ECB-CBC两种加密方式
EBC方式容易被攻击
统计学攻击(猜): 英文出现最多字母是E 汉语出现最多字母是的。我发送一堆信息统计密文出现最多的字母是x,就能知道x是E或者是的。 根据频率第二多的是什么统计就能分析出明文密文对应关系
尝试攻击(猜):我发送一堆东西,123 用此算法 得到M
456 用此算法 得到N
以后我看到M就知道密码是123
部分解密:解密其中某一个块。相同的块都知道了。
EBC方式安全一点
首先:加了个生成初始随机向量 IV ,我们的块+由这个生成随机的IV= 一个密文
安全?:由于这个随机值每次都不一样。
123(即使你是)(由于随机值是1)
M (输出)
下次再加密
123 (随机值是2)
N (输出)
此时 统计学攻击 尝试攻击都没有用了
由于明文+随机向量IV=密文,又作为下次的随机向量。链式结构。
下次:上次密文+下一个明文=密文 #保障了加密的安全 现在用的是CBC ECB几乎不用
DES是56位密钥,密钥太短不安全,要用的话得经常去修改密码,防止被暴力破解
DES的算法底层是比较安全的现在已经用了几十年了 只能够被暴力破解,if你要破解这个算法的话最少要进行2^55次方暴力破解次数(因为一共有2^56次方种密钥按照暴力破解运气有50%(相当于除以2)——>2^56 / 2 = 2^55
这个DES(CBC)算法本身是比较安全的,有比DES密钥更长的比如不对称加密算法中WEP108但这个算法本身有漏洞所以破解起来比DES56还要快。
所以DES算法肯定是安全的。
但是DES有一个问题。DES算法因为有一个密钥。我们要提供一个安全的信道给别人密钥。
困难:我有密钥,我加完密之后,怎么把密钥给你。
3DES
由于DES密钥太短,后来就有了3DES
密钥长度放大3倍
56x3=168位
缺点:3des很安全,加密效率不高,语言视频加密不适用
AES
1997发布用来替代DES的算法,DES56太短,随着计算机发展早期56不安全。开始寻找新的算法
为了解决3des的效率问题。
AES(高级加密算法),合适用户高速的网络并且适合在硬件上去实现加密。
非常大特点:扩展性
aes密钥是可以变的既可以是128(4倍)也可以是192(6倍)256位(8倍)(并且还能以32位区间去扩展:32的倍数)。我们的des56 3des168。
即使将来量子力学出现了,我的密码可以给你扩展成2^10 2^20....这样子计算机破解太困难了
作为替代3des加密技术,软硬件运行效率比较高。
优点:替代3des ,加密效率高,合适语音视频
aes用的非常多。要了解。特别是aes加密算法的应用。无线和语音视频加密。
RC系列
后来又有了RC系列
用的比较广的RC4 流加密算法
它不是基于块的,是基于比特流的。
des 1G分块 64 64 64 64
rc 1G基于流 010101整个加密
无线里面WEP WPA认证都是用的RC4 WPA2-AES
轻量级算法
RC算法对硬件的要求特别低,相当于是一个轻量级加密算法,出现时间晚,运行速度快des
#速度快,对硬件要求低(物联网:芯片内存CPU耗电比较低合适这种轻量级加密算法)
IDEA
用的比较少,听的比较少。
分组长度也是64 64 64 64
密钥长度128
软件实现的效率快des2倍
Blowfish
也是一个轻量级算法
合适小芯片这类空间小的
特别是在以后互联网普及之后,前端一些传感器一些很小的嵌入式芯片空间内存电量比较少更合适
这种轻量级加密算法。
需要的空间不到5kb
des aes加密算法比较耗内存。更合适在电脑手机上去跑。不合适在轻量级终端去跑。
国密算法
国内加密算法
SM1 SM2(这些加密的产品不允许被出口)
04 非对称加密算法(公钥)
私钥加密公钥解,公钥加密私钥解
公钥私钥一起用才能实现加解密功能
工作过程
我:用你的公钥加密 你:私钥解密
应用:用户私钥“数字签名”,我确定是不是他签的“用他的公钥去解一下”能解开就是他签的。
单向过程
私钥可以推出公钥,公钥不能推回私钥
公钥密码系统应用
RSA全能,DH交换,DSA只能签名。
DH
DH会话:解决前面这么把密钥给你问题
不会被中间人截获,或者截获了也看不懂。
工作过程
分成两步
第一步(上):算法生成一对密钥 4个密钥。把公钥发给对方 私钥自己保存
第二步(下):自己私钥 对方发过来的公钥 生成一个key
底层数学保证两边key相同
这样Bob发送密文,Alice这边通过DH算法就能知道使用什么key。这样就实现了密钥交换
也就是通过交互公钥就实现了密钥的交换
底层数学:作用保证key相等
可行之处:在两端产生相同的密钥, 外人是抓不到的
RSA
使用非常多
慢(加密一般不用RSA)
主要用于:数字签名和密钥交换 (加密散列、密钥)
私钥都存在本地的话 没有通过网络传送 过程安全
公钥加密密文
私钥加密数字签名(可以理解为 证明私人签名 私钥)
密码学的最底层都是数学问题
其它公钥算法
ECC比特币加密算法就是这个
05 数字签名(私钥签名)
底层还是基于公钥密码学算法
认证:对方私钥加密 对方公钥解密成功 则证明是对方发的
抗抵赖:用你公钥解开,肯定用你私钥加密的。你发过这个消息不能否认。
数字签名类比RSA这个原理
数字签名
哈希算法是无论明文多大都能生成定长的摘要 对这个摘要进行签名(密文加本人签名一并发送)
核心:你私钥签名,你公钥解开签名 证明就是你发的。
为什么用哈希对摘要签名? 不对明文签名? 明文太大非常慢
这个图其实有点问题,明文加密用的不是对方公钥(用的不是非对称加密算法)(用的是对称加密算法key),真实项目是对称非对称一起来用。
06 数字证书与CA
问题:确定是对方的公钥?假如发过来公钥是冒充的客户。
作用:证明公钥是你的
怎么证明你是你
权威机构颁发一个证书 CA #私钥签名
公安局颁发一个证书 身份证 #公安局印章
数字证书格式
07 哈希Hash与HMAC
什么是哈希? 就是将一段数据转化成一段定长的数据
不可逆性(单向): 1比特 ----> 128 但不可能128 ——>1比特
无碰撞性 :哈希值几乎唯一
雪崩效应:123明文改一个 哈希后全部变没有规律可言
应用:下载软件。验证哈希值 软件完整性
密码保存。哈希后保存在系统中(MD5)
单向,不能通过哈希值推出密码。
彩虹表 既MD5数据库也就是MD5破解网站(其实就是123哈希后记住生成一堆常见密码对照表形成数据库 猜出来的) 而不是通过逆向算法找出来的
存哈希密码也有一定风险,密码强度不够高还是彩虹得到。
怎么复杂一点: 创建时间 密码 一起哈希存
哈希核对文件有没有被修改
HMAC(加盐)
hmac=盐+哈希 类比
在原文基础是加一个key
也就是不是纯粹的哈希 而是在哈希前面加一个key
123+X 生成一个HMAC
为什么两边不用123哈希验证? 假如我在中间截获哈希码(拿去彩虹表攻击)#也就是网站破解
#碰撞破解
密码+加一个随机数哈希的话 没有这个随机数算不出来。
哈希hash和hmac一定要理解非常非常重要
08 对称与非对称加密算法的完美融合
对称加密算法有几个问题 密钥怎么安全传递对端(分发),10W人怎么做密钥存储管理,对称加密算法不支持数字签名。
对称加密算法缺点 加密速度太慢
项目案例
发送方 3步操作
1 明文哈希摘要签名
2 明文/签名/公钥key(或者数字签名)/ 大数据打包后随机数密钥KEY加密
3 KEY加密传输 #过程安全私钥是存人家本地的
数字证书存的就是公钥,私钥是签名。
接收方 3步操作
1
2
3
09 密码学原理总结
私钥不需要在网络上传输。传输的是公钥。
验证对方发的 数字签名
验证篡改 比对哈希
可以理解为,签名就是一个加密的过程 。也密钥问题
验证签名就是解密
数字签名引发一个非常重要的概念 证书 CA
怎么证明公钥是你的 数字证书
PKI公钥管理体现 生成 颁发等等
相关文章:
密码学_加密
目录 密码学 01 密码基础进制与计量 02 加解密基操 替换 移位 编码 编码 置换 移位 加解密强度 03 对称加密算法(私钥) 工作过程 缺陷 对称加密算法列举? DES DES算法架构 DES分组加密公式 DES中ECB-CBC两种加密方式 3DES 由于DES密钥太短…...
w317汽车维修预约服务系统设计与实现
🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹赠送计算机毕业设计600个选题excel文…...
云盘系统设计
需求背景 网盘面向大量C端用户 1000w用户 DAU 20% 每天10次 QPS: 1000w * 0.2 * 10 / 100k 500 峰值估计:500 * 5 2500 功能需求 支持上传,下载,多端共同在线编辑,数据冲突处理 非功能需求 1.latency 20s左右 2.可用性与…...
西电雨课堂《知识产权法》课后作业答案
目录 第 1 章 1.1 课后作业 1.2 课后作业 第 2 章 2.1 课后作业 2.2 课后作业 2.3 课后作业 2.4 课后作业 2.5 课后作业 2.6 课后作业 2.7 课后作业 2.8 课后作业 2.9 课后作业 2.10 课后作业 第 3 章 3.1 课后作业 3.2 课后作业 3.3 课后作业 3…...
通信协议记录仪-产品规格书
以下是为 通信协议记录仪(ProtoLogger Pro) 的详细产品规格书,覆盖 技术细节、场景需求、竞品差异化,确保可作为产品开发、市场营销及竞品分析的核心依据。 通信协议记录仪产品规格书 产品名称:ProtoLogger Pro(中文名称:蹲守…...
订单系统冷热分离方案:优化性能与降低存储成本
随着时间推移,订单数据不断积累。在电商平台或者服务型应用中,订单数据是核心数据之一。然而,随着数据量的增长,如何高效存储、管理和查询这些数据成为了系统架构设计的重要问题。在大多数情况下,订单数据的处理不仅涉…...
数据结构学习笔记
第 1 章 绪论 【考纲内容】 (一)数据结构的基本概念 (二)算法的基本概念 算法的时间复杂度和空间复杂度 【知识框架】 【复习提示】 本章内容是数据结构概述,并不在考研大纲中。读者可通过对本章的学习,初步…...
读懂 Vue3 路由:从入门到实战
在构建现代化单页应用(SPA)时,Vue3 凭借其简洁高效的特性成为众多开发者的首选。 而 Vue3 路由(Vue Router)则是 Vue3 生态中不可或缺的一部分,它就像是单页应用的 “导航地图”,帮助用户在不同…...
Aws S3上传优化
上传大约 3.4GB 的 JSON 文件,zip算法压缩后约为 395MB,上传至 S3 效率优化,有一些优化方案可以提高上传速率。下面是几种可能的优化方式,包括选择压缩算法、调整上传方式、以及其他可能的方案。 方案 1. 选择更好的压缩算法 压…...
Python 数据智能实战 (8):基于LLM的个性化营销文案
写在前面 —— 告别群发轰炸,拥抱精准沟通:用 LLM 为你的用户量身定制营销信息 在前面的篇章中,我们学习了如何利用 LLM 增强用户理解(智能分群)、挖掘商品关联(语义购物篮)、提升预测精度(融合文本特征的流失预警)。我们不断地从数据中提取更深层次的洞察。 然而,…...
html:table表格
表格代码示例: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> <body><!-- 标准表格。 --><table border"5"cellspacing&qu…...
2.maven 手动安装 jar包
1.背景 有的时候,maven仓库无法下载,可以手动安装。本文以pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar为例。 2.预先准备 下载文件到本地指定位置。 2.1.安装pom mvn install:install-file \-Dfile/home/wind/tmp/pentaho-aggdesigner-5.1.5-jh…...
C++ unordered_set unordered_map
上篇文章我们讲解了哈希表的实现,这节尝试使用哈希表来封装unordered_set/map 1. unordered_set/map的框架 封装的过程实际上与set/map类似,在unordered_set/map层传递一个仿函数,用于取出key值 由于我们平常使用的都是unordered_set/map&…...
第37课 绘制原理图——放置离页连接符
什么是离页连接符? 前边我们介绍了网络标签(Net Lable),可以让两根导线“隔空相连”,使原理图更加清爽简洁。 但是网络标签的使用也具有一定的局限性,对于两张不同Sheet上的导线,网络标签就不…...
< 自用文 Texas style Smoker > 美式德克萨斯烟熏炉 从设计到实现 (第一部分:烹饪室与燃烧室)
原因: 没钱还馋! 但有手艺。 预计目标: 常见的两种偏置式烟熏炉(Offset Smoker) 左边边是标准偏置式(Standard Offset),右边是反向流动式(Reverse Flow Offset&#x…...
【现代深度学习技术】现代循环神经网络03:深度循环神经网络
【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈PyTorch深度学习 ⌋ ⌋ ⌋ 深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重…...
AimRT从入门到精通 - 03Channel发布者和订阅者
刚接触AimRT的小伙伴可能会疑惑,这个Channel和RPC(后面讲的)到底是什么呢? 但是当我们接触了之后,就会发现,其本质类似ROS的Topic通信!(其本质基于发布订阅模型) 接下来…...
MySQL初阶:数据库基础,数据库和表操作,数据库中的数据类型
1.数据库基础 数据库是一个客户端——服务器结构的程序。 服务器是真正的主体,负责保存和管理数据,数据都存储在硬盘上 数据库处理的主要内容是数据的存储,查找,修改,排序,统计等。 关系型数据库&#…...
AI 驱动的智能交通系统:从拥堵到流畅的未来出行
最近研学过程中发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击链接跳转到网站人工智能及编程语言学习教程。读者们可以通过里面的文章详细了解一下人工智能及其编程等教程和学习方法。下面开始对正文内容的…...
Python清空Word段落样式的方法
在 Python 中,你可以使用 python-docx 库来操作 Word 文档,包括清空段落样式。以下是几种清空段落样式的方法: 方法一:直接设置段落样式为"Normal" from docx import Documentdoc Document(your_document.docx) # 打…...
[javaEE]网络编程
目录 socket对tcp ServerSocket ServerSocket 构造方法: ServerSocket 方法: socket 实现回显服务器和客户端 由于我们之前已经写多了socket对udq的实现,所以我们这节,主要将重心放在Tcp之上 socket对tcp ServerS…...
组件通信-mitt
mitt:与消息订阅与发布(pubsub)功能类似,可以实现任意组件间通信。 第一步:安装mitt npm i mitt 第二步:新建文件:src\utils\emitter.ts // 引入mitt import mitt from "mitt"; //调…...
微软发布了最新的开源推理模型套件“Phi-4-Reasoning
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
Socat 用法详解:网络安全中的瑞士军刀
Socat 用法详解:网络安全中的强大工具 引言 socat(SOcket CAT)是一款功能强大的命令行工具,被誉为“网络瑞士军刀”,广泛应用于数据传输、端口转发和网络调试等场景。它支持多种协议和数据通道(如文件、管…...
精益数据分析(36/126):SaaS商业模式的指标动态与实践案例
精益数据分析(36/126):SaaS商业模式的指标动态与实践案例 在创业与数据分析的学习道路上,我们不断探索各种商业模式的核心要点。今天,依旧怀揣着和大家共同进步的想法,深入研读《精益数据分析》中SaaS商业…...
2.LED灯的控制和按键检测
目录 STM32F103的GPIO口 GPIO口的作用 GPIO口的工作模式 input输入检测 -- 向内检测 output控制输出 -- 向外输出 寄存器 寄存器地址的确定 配置GPIO口的工作模式 时钟的开启和关闭 软件编程驱动 LED 灯 硬件 软件 软件编程驱动 KEY 按键 硬件 软件 按键消抖 代码 STM32F…...
架构师面试(三十八):注册中心架构模式
题目 在微服务系统中,当服务达到一定数量时,通常需要引入【注册中心】组件,以方便服务发现。 大家有没有思考过,注册中心存在的最根本的原因是什么呢?注册中心在企业中的最佳实践是怎样的?注册中心的服务…...
Go-web开发之帖子功能
帖子功能 route.go r.Use(middleware.JWTAuthMiddleware()){r.POST("/post", controller.CreatePostHandler)r.GET("/post/:id", controller.GetPostDetailHandler)}post.go 定义帖子结构 type Post struct {Id int64 json:"id" …...
MYSQL-设计表
一.范式 数据库的范式是⼀组规则。在设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数 据库,这些不同的规范要求被称为不同的范式。 关系数据库有六种范式:第⼀范式(1NF)、第⼆范式(…...
动态思维——AI与思维模型【91】
一、定义 动态思维思维模型是一种强调在思考问题和分析情况时,充分考虑到事物的变化性、发展性和相互关联性,不局限于静态的、孤立的视角,而是以发展变化的眼光看待事物,能够根据不同时间、环境和条件的变化,灵活调整…...
文献阅读篇#7:5月一区好文阅读,BFA-YOLO,用于建筑信息建模!(下)
期刊简介:《Advanced Engineering Informatics》创刊于2002年,由Elsevier Ltd出版商出版,出版周期Quarterly。该刊已被SCIE数据库收录,在中科院最新升级版分区表中,该刊分区信息为大类学科工程技术1区,2023…...
【Linux网络编程】http协议的状态码,常见请求方法以及cookie-session
本文专栏:Linux网络编程 目录 一,状态码 重定向状态码 1,永久重定向(301 Moved Permanently) 2,临时重定向(302 Found) 二,常见请求方法 1,HTTP常见Hea…...
ARM 指令集(ubuntu环境学习)第六章:ARM 编程技巧与优化策略
在本章中,我们将介绍一些在 ARM 架构上编写高效代码的技巧和常见优化策略,帮助您在嵌入式系统中获得更低延迟、更高吞吐和更低功耗。 6.1 寄存器利用与最小化内存访问 多用寄存器 ARM 通用寄存器(r0–r12)数量充足,尽量将临时变量保留在寄存器中,减少对内存的读写。 避免…...
柔性超声耦合剂的选择与设计-可穿戴式柔性超声耦合剂面临的难题
柔性PZT压电薄膜:破解可穿戴式超声耦合剂难题的关键材料! 随着可穿戴技术的快速发展,超声设备正朝着轻量化、柔性化和高集成度方向演进。在医学诊断、健康监测和智能穿戴领域,可穿戴式超声设备因其无创、实时、动态成像等优势受到…...
XCTF-pwn(二)
guess_num 看一下文件信息 利用gets函数将seed[0]给覆盖掉 距离0x20 我们需要输入十次随机数产生的值 写一个c程序先预判当seed是a的时候产生的随机数分别是多少 payload from pwn import* from ctypes import* context.log_leveldebugrremote("61.147.171.105", 6…...
AI外挂RAG:大模型时代的检索增强生成技术
目录 引言 一、RAG是什么? 二、RAG为什么会出现? 三、RAG的工作原理 四、RAG的技术优势 五、RAG的应用场景 六、RAG对AI行业的影响 七、RAG面临的挑战 引言 在人工智能领域,大型语言模型(LLM)如ChatGPT、DeepSe…...
SpringTask
Spring Task是Spring框架提供的任务调度工具,可以按照约定的时间自动执行某个代码逻辑 应用场景:信用卡每月还款提醒、火车票售票系统处理未支付订单 fixedDelay:上一次任务执行完成后多长时间(ms)执行下一次任务 fixe…...
Sphinx 文档图片点击放大
文章目录 问题描述解决方案步骤 1:创建 JavaScript 文件步骤 2:编写 JavaScript 代码步骤 3:更新 Sphinx 配置 高级定制为所有图片添加点击功能添加缩放控制 总结 在使用 Sphinx 生成技术文档时,我们经常需要在文档中嵌入截图和示…...
菜鸟之路Day29一一MySQL之DDL
菜鸟之路Day29一一MySQL之DDL 作者:blue 时间:2025.5.2 文章目录 菜鸟之路Day29一一MySQL之DDL0.概述1.DDL之数据库操作1.1查询1.2创建1.3使用1.4删除 2.DDL之表操作2.1创建表2.2数据类型2.3查询表2.4修改表结构2.5删除表 0.概述 文章内容学习自黑马程…...
架构师面试(三十七):监控系统架构模式
题目 监控是在产品生命周期的运维环节,能对产品的关键指标数据进行【实时跟踪】并对异常数据进行【实时报警】。 一句话描述,监控系统可以帮我们【主动预防和发现】业务系统中的问题。 我们常说,监控系统是 “粮草”,业务系统是…...
【Redis】Hash哈希
文章目录 注意个问题hset命令(核心)hget命令(核心)hexists命令hdel命令hkeys和hvals命令hgetall和hmget命令hlen命令hsetnx命令hincrby命令哈希命令小结哈希编码方式使用场景1.关系型数据表保存用户的信息Redis三种缓存方式对比1.…...
【SpringBoot】Spring中事务的实现:声明式事务@Transactional、编程式事务
1. 准备工作 1.1 在MySQL数据库中创建相应的表 用户注册的例子进行演示事务操作,索引需要一个用户信息表 (1)创建数据库 -- 创建数据库 DROP DATABASE IF EXISTS trans_test; CREATE DATABASE trans_test DEFAULT CHARACTER SET utf8mb4;…...
从零开始讲DDR(9)——AXI 接口MIG 使用(2)
一、前言 在之前的文章中,我们介绍了官方DDR MIG AXI接口的例程的整体框架,在本文中,我们将着重介绍例程中关于数据产生,及驱动到AXI接口的相关逻辑实现。 二、data_gen 在例程中,有ddr4_v2_2_8_data_gen这样一个文件…...
组件通信-props
props 是使用频率最高的一种通信方式,父>子 子>父 父传子:属性值 是非函数子传父:属性值 是函数 父组件 <script setup lang"ts"> import { ref } from vue import Child from ./Child.vue const car ref(奥迪) c…...
纯原生Java实现:获取整个项目中指定接口所有的实现类
不使用第三方,不使用属性文件,不指定包名,获取整个系统中某一个接口所有的实现类,纯Java实现 /*** 类查找器,用于扫描类路径中的所有类,并找出指定类的实现类。* 该类通过递归扫描类路径下的所有 .class 文件…...
反射机制补充
不同对象实例的地址不同 在 Java 里,每当使用 new 关键字创建一个对象时,JVM 会在堆内存中为该对象分配一块新的内存空间,每个对象实例都有自己独立的内存地址。所以不同的对象实例,其内存地址是不同的。 以下是一个简单示例&am…...
计算机视觉的未来发展趋势
计算机视觉的未来发展趋势主要集中在以下几个方面: 1. 自监督学习与少样本学习 自监督学习:通过从无标签的数据中提取有用特征,克服对大量标注数据的依赖。2025年,基于大规模图像数据的自监督预训练模型将更加成熟,能…...
轻量级网页版视频播放器
用deepseek开发的轻量级,网页版视频播放器 可以选择本地文件 可以播放、暂停、全屏、有进度条和时间进度 代码如下: 新建.txt文本文档,把代码复制粘贴进去,把.txt文档后缀名改为.html,用浏览器打开即可使用 <!DO…...
18. LangChain分布式任务调度:大规模应用的性能优化
引言:从单机到万级并发的进化 2025年某全球客服系统通过LangChain分布式改造,成功应对黑五期间每秒12,000次的咨询请求。本文将基于LangChain的分布式架构,详解如何实现AI任务的自动扩缩容与智能调度。 一、分布式系统核心指标 1.1 性能基准…...
C/C++工程师使用 DeepSeek
一、使用 DeepSeek 生成 C/C 代码 在 C/C 开发中,很多时候需要编写一些常见功能的代码,如排序算法、文件读写操作、数据结构的实现等。借助 DeepSeek,工程师只需用自然语言清晰描述需求,它就能依据大量的代码数据和深度学习算法&a…...