电子公文交换系统设计 ——基于商用密码标准的密码模块的应用
文章目录
- 《密码系统设计》实验
- 实验项目
- 实验四 密码模块的应用
- 实践要求(40 分)
《密码系统设计》实验
实验项目
实验序号 | 实验名称 | 实验学时数 | 实验目的 | 实验内容 | 实验类型 | 学生学习预期成果 |
---|---|---|---|---|---|---|
实验四 | 密码模块的应用 | 6 | 基于商用密码标准的密码模块的应用 | 对电子公文系统等密码系统进行威胁建模,安全性分析和安全性设计。 | 综合性 | 1.系统采用B/S,或者C/S架构,参考《GM∕T 0054-2018 信息系统密码应用基本要求》和《GB/T 39786-2021《信息安全技术 信息系统密码应用基本要求》》 2.设计实现的系统管理功能要简单易用; 3.用户管理采用“三员”管理; 4.设计实现的密钥管理功能应覆盖密钥的全生命周期; |
实验四 密码模块的应用
实践要求(40 分)
- 完成电子公文交换系统,系统功能,(15 分)
mindmaproot((电子公文系统))发文公文起草公文查看发文审核(审核员)公文发送公文查询收文公文签收公文查看公文处理公文查询系统管理组织单位用户管理操作员(科员)审核员(科长,处长):至少有一级审核功能系统管理员:至少管理用户账号,组织单位功能安全保密管理员:至少有权限管理功能,密钥管理功能安全审计员:至少有日志查看功能权限设置(安全保密管理员)系统日志数据字典(选做)
- 总体要求
- 项目类型必须是B/S或C/S架构
- 项目程序设计语言可以是C,Python,Rust等
- 三员制度是指将系统管理员、安全保密管理员和安全审计员三个角色分离,分别负责系统运行、安全保密和安全管理,相互制约,共同保障信息系统安全。三员职责
- 系统管理员
- 负责信息系统的日常维护、故障处理和升级更新。
- 确保系统正常运行,对系统资源进行合理分配。
- 负责用户账号的创建、修改和删除。
- 定期备份重要数据,确保数据安全。
- 安全保密管理员
- 负责制定和实施安全保密策略,确保信息系统安全。
- 对用户进行安全意识培训,提高用户安全防范能力。
- 监控网络安全状况,发现异常情况及时处理。
- 负责信息系统安全事件的应急响应和处理。
- 安全审计员
- 负责对信息系统进行安全审计,评估安全风险。
- 监督系统管理员和安全保密管理员的工作,确保其履行职责。
- 对信息系统安全事件进行调查,提出整改建议。
- 黄金法则(5 分 )
- 身份鉴别:口令不能存,数据库要保存加盐的SM3Hash值
- 访问控制:操作员,审核员,安全三员的权限设置
- 安全审计:至少完成日志查询功能
- 密码(15 分)
- 算法:SM2,SM3,SM4,推荐使用 Key
- 密钥管理:所有私钥,对称算法密钥等不能明存
- 系统量化评估(5分)
- 按照商用密码应用安全性评估量化评估规则,计算自己系统的得分,只计算应用和数据安全。
- 提交要求:
- 提交实践过程Markdown和转化的PDF文件
- 代码,文档托管到gitee或github等,推荐 gitclone
- 记录实验过程中遇到的问题,解决过程,反思等内容,用于后面实验报告
首先配置环境
环境
操作系统 Windows 11 ,运行环境 Python 3.12.8
额外的第三方库
pip3 install filetype
pip3 install django-sslserver
pip3 install gmssl
pip3 install secrets
pip3 install PyPDF2
http启动方法
python manage.py runsslserver
--certificate D:\ProgramData\Anaconda3\Lib\site-packages\sslserver\certs\development.crt
--key D:\ProgramData\Anaconda3\Lib\site-packages\sslserver\certs\development.key
环境配置时遇到的问题 在安装 secrets库 的时候,因为python3库中自带了secrets的库
所以步骤中命令pip3 install secrets其实被识别为安装一个外部的secrets库
因此该步骤会报错。
但是因为自带secrets库。所以可以跳过此步骤。
C:\Users\wzy>pip3 install filetype
Defaulting to user installation because normal site-packages is not writeable
Collecting filetypeDownloading filetype-1.2.0-py2.py3-none-any.whl.metadata (6.5 kB)
Downloading filetype-1.2.0-py2.py3-none-any.whl (19 kB)
Installing collected packages: filetypeWARNING: The script filetype.exe is installed in 'C:\Users\wzy\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\Scripts' which is not on PATH.Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed filetype-1.2.0C:\Users\wzy>pip3 install django-sslserver
Defaulting to user installation because normal site-packages is not writeable
Collecting django-sslserverDownloading django_sslserver-0.22-py3-none-any.whl.metadata (1.1 kB)
Collecting Django>=1.8 (from django-sslserver)Downloading Django-5.1.4-py3-none-any.whl.metadata (4.2 kB)
Collecting asgiref<4,>=3.8.1 (from Django>=1.8->django-sslserver)Downloading asgiref-3.8.1-py3-none-any.whl.metadata (9.3 kB)
Collecting sqlparse>=0.3.1 (from Django>=1.8->django-sslserver)Downloading sqlparse-0.5.2-py3-none-any.whl.metadata (3.9 kB)
Requirement already satisfied: tzdata in c:\users\wzy\appdata\local\packages\pythonsoftwarefoundation.python.3.12_qbz5n2kfra8p0\localcache\local-packages\python312\site-packages (from Django>=1.8->django-sslserver) (2024.1)
Downloading django_sslserver-0.22-py3-none-any.whl (10 kB)
Downloading Django-5.1.4-py3-none-any.whl (8.3 MB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.3/8.3 MB 87.8 kB/s eta 0:00:00
Downloading asgiref-3.8.1-py3-none-any.whl (23 kB)
Downloading sqlparse-0.5.2-py3-none-any.whl (44 kB)
Installing collected packages: sqlparse, asgiref, Django, django-sslserverWARNING: The script sqlformat.exe is installed in 'C:\Users\wzy\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\Scripts' which is not on PATH.Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.WARNING: The script django-admin.exe is installed in 'C:\Users\wzy\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\Scripts' which is not on PATH.Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed Django-5.1.4 asgiref-3.8.1 django-sslserver-0.22 sqlparse-0.5.2C:\Users\wzy>pip3 install django-sslserver
Defaulting to user installation because normal site-packages is not writeable
Collecting django-sslserverDownloading django_sslserver-0.22-py3-none-any.whl.metadata (1.1 kB)
Collecting Django>=1.8 (from django-sslserver)Downloading Django-5.1.4-py3-none-any.whl.metadata (4.2 kB)
Collecting asgiref<4,>=3.8.1 (from Django>=1.8->django-sslserver)Downloading asgiref-3.8.1-py3-none-any.whl.metadata (9.3 kB)
Collecting sqlparse>=0.3.1 (from Django>=1.8->django-sslserver)Downloading sqlparse-0.5.2-py3-none-any.whl.metadata (3.9 kB)
Requirement already satisfied: tzdata in c:\users\wzy\appdata\local\packages\pythonsoftwarefoundation.python.3.12_qbz5n2kfra8p0\localcache\local-packages\python312\site-packages (from Django>=1.8->django-sslserver) (2024.1)
Downloading django_sslserver-0.22-py3-none-any.whl (10 kB)
Downloading Django-5.1.4-py3-none-any.whl (8.3 MB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.3/8.3 MB 87.8 kB/s eta 0:00:00
Downloading asgiref-3.8.1-py3-none-any.whl (23 kB)
Downloading sqlparse-0.5.2-py3-none-any.whl (44 kB)
Installing collected packages: sqlparse, asgiref, Django, django-sslserverWARNING: The script sqlformat.exe is installed in 'C:\Users\wzy\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\Scripts' which is not on PATH.Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.WARNING: The script django-admin.exe is installed in 'C:\Users\wzy\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\Scripts' which is not on PATH.Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed Django-5.1.4 asgiref-3.8.1 django-sslserver-0.22 sqlparse-0.5.2C:\Users\wzy>pip3 install PyPDF2
Defaulting to user installation because normal site-packages is not writeable
Collecting PyPDF2Downloading pypdf2-3.0.1-py3-none-any.whl.metadata (6.8 kB)
Downloading pypdf2-3.0.1-py3-none-any.whl (232 kB)
Installing collected packages: PyPDF2
Successfully installed PyPDF2-3.0.1
虚拟环境中
使用以下命令与选项运行
python manage.py runsslserver --certificate D:\Desktop\Document-transmission-master\.venv\Lib\site-packages\sslserver\certs\development.crt --key D:\Desktop\Document-transmission-master\.venv\Lib\site-packages\sslserver\certs\development.key
处理完成后
D:\Document-transmission-master\Document-transmission-master>.\.venv\Scripts\activate
(.venv) D:\Document-transmission-master\Document-transmission-master>
python manage.py makemigrations captcha
System check identified some issues:WARNINGS:
user.MyUser: (models.W042) Auto-created primary key used when not defining a primary key type, by default 'django.db.models.AutoField'.HINT: Configure the DEFAULT_AUTO_FIELD setting or the UserConfig.default_auto_field attribute to point to a subclass of AutoField, e.g. 'django.db.models.BigAutoField'.
No changes detected in app 'captcha'
(.venv) PS D:\Desktop\Document-transmission-master> python manage.py migrate
System check identified some issues:WARNINGS:
user.MyUser: (models.W042) Auto-created primary key used when not defining a primary key type, by default 'django.db.models.AutoField'.HINT: Configure the DEFAULT_AUTO_FIELD setting or the UserConfig.default_auto_field attribute to point to a subclass of AutoField, e.g. 'django.db.models.BigAutoField'.
Operations to perform:Apply all migrations: admin, auth, captcha, contenttypes, index, sessions, user
Running migrations:Applying contenttypes.0001_initial... OKApplying contenttypes.0002_remove_content_type_name... OKApplying auth.0001_initial... OKApplying auth.0002_alter_permission_name_max_length... OKApplying auth.0003_alter_user_email_max_length... OKApplying auth.0004_alter_user_username_opts... OKApplying auth.0005_alter_user_last_login_null... OKApplying auth.0006_require_contenttypes_0002... OKApplying auth.0007_alter_validators_add_error_messages... OKApplying auth.0008_alter_user_username_max_length... OKApplying auth.0009_alter_user_last_name_max_length... OKApplying auth.0010_alter_group_name_max_length... OKApplying auth.0011_update_proxy_permissions... OKApplying user.0001_initial... OKApplying admin.0001_initial... OKApplying admin.0002_logentry_remove_auto_add... OKApplying admin.0003_logentry_add_action_flag_choices... OKApplying auth.0012_alter_user_first_name_max_length... OKApplying captcha.0001_initial... OKApplying captcha.0002_alter_captchastore_id... OKApplying index.0001_initial... OKApplying index.0002_auto_20210601_1010... OKApplying index.0003_document_type... OKApplying index.0004_document_lyrics... OKApplying index.0005_auto_20210602_0952... OKApplying index.0006_auto_20210602_0953... OKApplying index.0007_document_key... OKApplying index.0008_auto_20210605_1920... OKApplying sessions.0001_initial... OKApplying user.0002_auto_20210605_1743... OKApplying user.0003_alter_myuser_first_name... OK
功能介绍
电子公文传输系统网站分为网站首页、公文列表、公文在线观看、公文批改、公文搜索和用户管理
安全性措施有:
-
身份认证(用户名-口令)
- 对口令做了加盐的sha-256哈希保护用户的个人隐私
-
访问控制(只能访问不大于自己密级的文件)
- 低密级的用户的页面中不存在高密级的文件
- 低密级的用户试图通过路由猜测文件的位置会被返回失败并记录日志
-
防御跨站脚本攻击(XSS)
- 转义特殊字符来防御XSS攻击:<转义为<, >转义为>, ’转义为' “转义为" ,& 转义为&
-
防御跨站点请求伪造(CSRF)
- 通过检查每一个 POST 请求中的密文来实现。这保证恶意用户不能“复现”一个表单并用 POST 提交到你的网页,并让一个已登录用户无意中提交该表单。恶意用户必须知道特定于用户的密文(使用 cookie)
-
防御 SQL 注入
- 查询的 SQL 代码与查询的参数是分开定义的。参数可能来自用户从而不安全,因此它们由底层数据库引擎进行转义。
-
防御访问劫持
- 在框架或 iframe 中加载资源。如果响应包含值为 SAMEORIGIN 的头, 那么只有当请求来自同一个网站时,浏览器才会在框架中加载资源
-
SSL/HTTPS
- 恶意用户不能在客户端和服务器之间嗅探验证资格或其他信息
-
Host 头部验证
- 当 DEBUG为True 和 ALLOWED_HOSTS 为空时,主机将根据 [‘.localhost’, ‘127.0.0.1’, ‘[::1]’] 进行验证,防止非预期的访问
-
Referrer 策略
- 保护用户隐私
-
会话安全
- 要求一个被部署的网页应让不受信任的用户不能访问任何子域
-
文件加密传输
-
用非对称密钥(SM2)保护对称密钥,再用对称密钥实现对文件的加解密
-
文件安全性校验
-
检查文件二进制格式,防止PE文件冒名传输 实现的功能有:
-
用户注册登录
-
文件在线查看
-
文件上传、下载
-
文件批改
-
项目支持参照博客园的一篇学长学姐的博客
相关文章:
电子公文交换系统设计 ——基于商用密码标准的密码模块的应用
文章目录 《密码系统设计》实验实验项目实验四 密码模块的应用实践要求(40 分) 《密码系统设计》实验 实验项目 实验序号实验名称实验学时数实验目的实验内容实验类型学生学习预期成果实验四密码模块的应用6基于商用密码标准的密码模块的应用对电子公文…...
java抽象类
目录 一.抽象类 1.什么是抽象类 2.抽象类特点 (1)抽象类不能直接实例化对象 (2)可以包含抽象方法和具体方法 (3)可以有构造方法 (4)抽象类必须被继承,并且继承后子类要重写父类中的抽象方法,否则子类也是抽象类,必须要使用 abstract 修…...
渤海证券基于互联网环境的漏洞主动防护方案探索与实践
来源:中国金融电脑 作者:渤海证券股份有限公司信息技术总部 刘洋 伴随互联网业务的蓬勃发展,证券行业成为黑客进行网络攻击的重要目标之一,网络攻击的形式也变得愈发多样且复杂。网络攻击如同悬于行业之上的达摩克利斯之剑&…...
ClouderaManager 集群搭建
前提:服务器之前做过域名映射、免密登录 ClouderaManager 集群 1. 组件分布规划 服务器服务器h1zk、hdfs(dn)、yarn(nm)、spark、kafka、flumeh2hdfs(nn-standy)、yarn(rm-active)、sparkh3hdfs(nn-active)、yarn(rm-standy)、hive、sparkh4zk、hdfs(dn)、yarn(n…...
Nginx部署PHP服务端跨域以及跨域携带cookie
🤵 作者:coderYYY 🧑 个人简介:前端程序媛,目前主攻web前端,后端辅助,其他技术知识也会偶尔分享🍀欢迎和我一起交流!🚀(评论和私信一般会回!!) 👉 个人专栏推荐:《前端项目教程以及代码》 ✨一、前言 前端技术栈Vue+后端技术栈PHP+Mysql鉴权以及存储信息用…...
流量转发利器之Burpsuite概述(1)
目录 一、Burpsuite Burp Suite Spider 的主要特点: 在 Burp Suite 中使用 Spider: Spider 的用例: 限制: 声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章 声明:本文主要用作技…...
【优选算法 二分查找】二分查找算法入门详解:二分查找小专题
x 的平方根 题目解析 算法原理 解法一: 暴力解法 如果要求一个数(x)的平方根,可以从 0 往后枚举,直到有一个数(a),a^2<x,(a1)^2>x,a即为所求; 解法二:二分查找 …...
LeetCode—56. 合并区间(中等)
题目描述: 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 示例1: 输入&#x…...
SHELL----正则表达式
一、文本搜索工具——grep grep -参数 条件 文件名 其中参数有以下: -i 忽略大小写 -c 统计匹配的行数 -v 取反,不显示匹配的行 -w 匹配单词 -E 等价于 egrep ,即启用扩展正则表达式 -n 显示行号 -rl 将指定目录内的文件打…...
web斗地主游戏实现指北
前后端通信 作为一个即时多人游戏,不论是即时聊天还是更新玩家状态,都需要服务端有主动推送功能,或者客户端轮询。轮询的时间间隔可能导致游玩体验差,因为不即时更新,而且请求数量太多可能会打崩服务器。 建议在cs间…...
ES(elasticsearch)整合Spring boot使用实例
1.1通过docker安装es详细教程参考 docker部署elasticsearch(内涵集群部署的compose文件)-CSDN博客 2.1创建MySQL数据库,通过sql命令进行表的创建与数据的写入(sql命令如下) /*Navicat Premium Data TransferSource Server : localSo…...
创建简单的 PL/pgSQL 存储过程
文章目录 创建简单的 PL/pgSQL 存储过程CREATE OR REPLACE FUNCTIONadd_two_numbers(a integer, b integer)RETURNS integerAS$$ ... $$函数体LANGUAGE plpgsql 创建带有 IN 和 OUT 参数的存储过程创建修改数据的存储过程创建带有异常处理的复杂存储过程 在 PostgreSQL 中&…...
前端路径“@/“的使用和配置
环境:vitets 需要安装types/node npm install types/node --save-dev在tsconfig.json中添加 如果有tsconfig.app.json和tsconfig.node.json文件,则在app.json中添加 "compilerOptions": {"baseUrl":".","paths&q…...
彻底理解ThreadLocal的应用场景和底层实现
一.概念 定义: ThreadLocal 是 Java 中所提供的线程本地存储机制,可以利用该机制将数据缓存在某个线程内部,该线程可以在任意时刻、任意方法中获取缓存的数据。 其实是可以通过调用 Set() 方法往里面存入值,存入的值是每个线程互…...
机器学习(5)无监督模型之降维PCA算法
主成分分析(Principal Component Analysis, PCA) 是一种经典的无监督学习算法,主要用于数据降维、特征提取和数据可视化。它通过线性变换将数据从原始空间映射到一个新的空间,使得数据的方差最大化,从而实现降维。PCA …...
React 组件中 State 的定义、使用及正确更新方式
🌈个人主页:前端青山 🔥系列专栏:React篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来React篇专栏内容React 组件中 State 的定义、使用及正确更新方式 前言 在 React 应用开发中,state …...
18 设计模式之迭代器模式(书籍遍历案例)
一、什么是迭代器模式 迭代器模式(Iterator Pattern)是一种行为型设计模式,允许客户端通过统一的接口顺序访问一个集合对象中的元素,而无需暴露集合对象的内部实现。这个模式主要用于访问聚合对象(如集合、数组等&…...
Springboot3介绍
一、Springboot3简介: https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started.html?spmwolai.workspace.0.0.68b62306Q6jtTw#getting-started.introducing-spring-boot 无论使用XML、注解、Java配置类还是他们的混合用法,配置文件过于…...
【Leetcode Top 100】23. 合并 K 个升序链表
问题背景 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 数据约束 k l i s t s . l e n g t h k lists.length klists.length 0 ≤ k ≤ 1 0 4 0 \le k \le 10^4 0≤k≤104 0 ≤ l i s t s […...
显存和GPU之间的通信;GPUDirect P2P,NVLink,NCCL;聚合通信和点对点通信
目录 显存和GPU之间的分配 显存和GPU之间的通信 原语是什么,简单举例说明 GPUDirect P2P,NVLink,NCCL的全称及解释 聚合通信和点对点通信 聚合通信(Collective Communication) 点对点通信(Point-to-Point Communication) 为什么使用GPUDirect P2P,NVLink,NCCL…...
2412d,d的7月会议
原文 总结 卡斯滕 Carsten说,Decard一直在大量试验WebAssembly.他们一直在把d运行时挖出来,直到它工作.他们在浏览器中运行了一些库函数,并试了不同虚机. 他们在移动方面遇见了很多问题,因为不同芯片按不同方式工作.他们想让他们的整个SDK在WASM上运行,但可能需要一年时间才…...
vue框架
以下是一个简单的基于Vue框架的日历组件示例: <template><div class"calendar"><div class"header"><button click"prevMonth"><</button><h2>{{ currentMonth }}</h2><button cli…...
Django drf基于APIView 快速使用
1. 注册 # settings.pyINSTALLED_APPS [,rest_framework, ]2. 路由 from django.urls import pathurlpatterns [path(task/, views.TaskAPIView.as_view()) ]3. 视图 from rest_framework.views import APIView from rest_framework.response import Responseclass TaskAPIV…...
git commit -m “Add user login feature“
当然,这条命令是 Git 中用来提交更改的基本命令,其中包含了一些注释来解释命令的各个部分。下面是对这条命令的详细解释: git commit -m "-m指的是message,git要求每次提交都需要写一下日志"git commit: 这…...
mac: docker : Command not found解决
描述: 安装docker但是docker命令显示Command not found 分析: mac没有配置对应的环境变量 解决方案: 打开配置文件: vim ~/.zshrc写docker环境变量: export PATH"/Applications/Docker.app/Contents/Resources/bin:$PATH"保存退出: esc,输入wq,按enter 配置文…...
深入解析 HTML Input 元素:构建交互性表单的核心
🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…...
Docker--Docker Registry(镜像仓库)
什么是Docker Registry? 镜像仓库(Docker Registry)是Docker生态系统中用于存储、管理和分发Docker镜像的关键组件。 镜像仓库主要负责存储Docker镜像,这些镜像包含了应用程序及其相关的依赖项和配置,是构建和运行Doc…...
Linux 统信UOS 设置程序“桌面快捷方式”与“开机自启动”
最近在统信uos系统 arm64架构上进行QT程序的开发,基本开发完毕后,开始着手准备程序的开机自启动模块,因为一般来说,程序在客户现场使用都是需要开机自启的。 然后在百度海淘,很少有这类相关的博客介绍,有一…...
React开发高级篇 - React Hooks以及自定义Hooks实现思路
Hooks介绍 Hooks是react16.8以后新增的钩子API; 目的:增加代码的可复用性,逻辑性,弥补无状态组件没有生命周期,没有数据管理状态state的缺陷。 为什么要使用Hooks? 开发友好,可扩展性强&#…...
shell条件测试
一.命令执行结果判定 && 在命令执行后如果没有任何报错时会执行符号后面的动作 || 在命令执行后如果命令有报错会执行符号后的动作 示例: [rootqingdeng shell3]# sh sl.sh /mnt/file is not exist no二.条件判断方法 在 shell 程序中,用户可…...
嵌入式蓝桥杯学习5 定时中断实现按键
Cubemx配置 打开cubemx。 前面的配置与前文一样,这里主要配置基本定时器的定时功能。 1.在Timer中点击TIM6,勾选activated。配置Parameter Settings中的预分频器(PSC)和计数器(auto-reload Register) 补…...
Linux下进程地址空间
文章目录 1. 进程地址空间分布2. 为什么要有进程地址空间一、主要功能二、重要特性三、应用场景四、与TLB的交互 3. 进程具有独立性 以x86(32位)为例子 1. 进程地址空间分布 进程地址空间,本质是一个描述进程可视范围的大小。 地址空间本质是一个内核数据结构,类似…...
基于SpringBoot的养老院管理系统的设计与实现
一、前言 随着人口老龄化的加剧,养老院作为老年人养老的重要场所,其管理的高效性和科学性显得尤为重要。传统的养老院管理方式多依赖人工操作,存在信息记录不及时、不准确,管理流程繁琐,资源调配困难等问题。利用信息技…...
GA-Kmeans-Transformer-GRU时序聚类+状态识别组合模型,创新发文无忧!
GA-Kmeans-Transformer-GRU时序聚类状态识别组合模型,创新发文无忧! 目录 GA-Kmeans-Transformer-GRU时序聚类状态识别组合模型,创新发文无忧!效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.GA-Kmeans-Transformer-GRU时…...
Hadoop单机搭建手册
hadoop搭建安装指导手册,包含hadoop-3.1.1、hive-3.1.0、zookeeper-3.4.6、hbase-2.3.0、spark-3.3.0等组件版本。文档详细21页,附带所有软件包。笔者发现很多人对于如何快速高效的单机搭建不太清楚,所以笔者整理了这个文档,希望可…...
【射频IC进阶实践教程】2.6 LNA版图设计及DRC/LVS验证
射频集成电路的版图设计非常关键,他对寄生参数非常敏感,需要使其最小化。还需要注意相互耦合的方式本次课程主要介绍射频IC的一些相关布局和连线方面的考虑。 一、版图设计 1. 版图的元件布局 首先打开对应的原理图 点击进行版图设计 由于已经有做好的…...
mac下载安装jdk
背景 长时间不折腾mac全部忘记 特此记录 安装 1.下载jdk 根据需要下载对应的jdk 我直接 下载到/Applicatiions目录 https://www.oracle.com/java/technologies/downloads/#java8-mac 2.解压 cd /Applicatiions tar -zxvf jdk-8u431-macosx-x64.tar.gz 3.配置环境 …...
【uniapp】swiper切换时,v-for重新渲染页面导致文字在视觉上的拉扯问题
问题描述 先用v-for渲染了几个列表,但这几个列表是占同一个位置的,只是通过切换swiper来显示哪个列表显示,也就是为了优化页面切换时候,没有根据swiper的current再更新v-for的数据,但现在就有个问题,怎么隐…...
shell自动显示当前git的branch
效果简介: 1. 如果没在git仓库,显示无变化 2. 如果在git仓库,显示当前分支 实现方法: 在~/.bashrc 里添加: function git_branch { test -d .git && branch"git branch | grep "^\*" | sed…...
使用 Acme.sh 自动生成和续签免费 SSL 证书(含通配符支持)
Acme.sh 是一个开源的脚本,能够从 ZeroSSL、Let’s Encrypt 等证书颁发机构(CA)获取免费的 HTTPS 证书。该脚本特别简单易用,并且支持多种验证方式。下面将详细介绍使用 Acme.sh 生成、安装和更新证书的各个步骤。 Github地址 使用…...
【JAVA】Java高级:Spring框架与Java EE—Web开发基础(Servlet、JSP)
Java作为一种广泛使用的编程语言,提供了强大的Web开发框架和技术,其中Servlet和JSP(JavaServer Pages)是构建动态Web应用的基础。了解这些技术对于任何想要深入Java Web开发的程序员来说都是必不可少的。 一、Web开发的重要性 动…...
pytorch生成对抗网络
# 生成对抗网络 import os import torch import torchvision import torch.nn as nn from torchvision import transforms from torchvision.utils import save_image # Device configuration device torch.device(cuda if torch.cuda.is_available() else cpu) # 超参数 late…...
flask简易版的后端服务创建接口(python)
1.pip install安装Flask和CORS 2.创建http_server.py文件,内容如下 """ ============================ 简易版的后端服务 ============================ """ from flask import Flask, request, jsonify from flask_cors import CORS app = F…...
gitlab 生成并设置 ssh key
一、介绍 🎯 本文主要介绍 SSH Key 的生成方法,以及如何在GitLab上添加SSH Key。GitLab 使用SSH协议与Git 进行安全通信。当您使用 SSH密钥 对 GitLab远程服务器进行身份验证时,您不需要每次都提供您的用户名和密码。SSH使用两个密钥&#x…...
ssh远程升级Ubuntu20.04到Ubuntu 22.04
ssh远程升级Ubuntu20.04到Ubuntu 22.04 陈拓 2024/10/16-2024/10/26 1. 简介 本文介绍了如何通过ssh将Ubuntu系统从20.04升级到22.04。 在进行系统升级之前,建议备份重要数据,以防升级过程中出现问题。 2. 更新当前系统 硬件系统架构 当前操作系统版…...
Qt开源控件:图像查看器工具V1.1
一、项目概述 本项目是一款基于 Qt 框架 开发的 图像查看工具,可以显示带坐标轴的图像,并实时获取图像中任意像素点的坐标和颜色信息。工具具有图像缩放、动态坐标轴绘制、鼠标交互等功能,使用起来方便直观。 二、功能亮点 1. 图像加载与显…...
【WRF-Urban】SLUCM新增空间分布城市冠层参数及人为热排放AHF代码详解(下)
目录 详细解释更改文件内容4 运行模块(run):README.namelist5 输出模块(share):share/module_check_a_mundo.Fshare/output_wrf.F参考SLUCM新增空间分布城市冠层参数及人为热排放AHF代码详解的前两部分内容可参见-【WRF-Urban】SLUCM新增空间分布城市冠层参数及人为热排放A…...
【C#】新建窗体文件,Form、UserControl
从用途、功能性和架构方面进行描述。 1. 继承自 Form 的窗体(通常是窗口): 在 C# 中,Form 是用于创建应用程序的主窗口或对话框窗口的类。当您继承自 Form 时,您创建的是一个完整的窗口,可以显示内容、与…...
优化SEO策略掌握长尾关键词的力量
内容概要 在数字营销领域,SEO(搜索引擎优化)是帮助网站获得更多流量的关键。然而,随着在线竞争的加剧,单纯依赖短尾关键词已难以满足用户的搜索需求。这时,长尾关键词的引入便显得尤为重要。长尾关键词通常…...
MySQL分页查询
分页查询: 数据记录条数过多的时候,需要分页来显示。 语法: select 查询字段 from 表名 where ....等等前面学过的所有写法 limit offset(开始记录索引,是从0开始的),size(要取出的条数)&…...