汽车网络信息安全-ISO/SAE 21434解析(下)
目录
第十二~十四章 - 后开发阶段
1. 十二章节 - 生产
2. 十三章节 - 运营与维护
网络安全事件响应
更新
3. 十四章节 - 结束网络安全支持和停用
结束网络安全支持
报废
第十五章 - TARA分析方法
1. 概述
2. 资产识别
3. 威胁场景识别
4. 影响评级
5. 攻击路径分析
6. 攻击可行性等级
7. 风险确定
8. 风险处置决策
第十二~十四章 - 后开发阶段
第12章 生产,第13章 运营与维护和第14章 结束网络安全支持和停用被统称为“后开发阶段(Post-development)”这三章的内容相对较少,在这里合为一篇进行解读
1. 十二章节 - 生产
应创建一个生产控制计划,将网络安全要求应用于后期开发。
生产控制计划应包括:
a) 适用于开发后的网络安全要求的步骤顺序。
b) 生产工具和设备。
c) 防止在生产过程中发生未经授权的改变的网络安全控制;以及
d) 确认开发后的网络安全要求得到满足的方法。
生产计划应得到执行。
2. 十三章节 - 运营与维护
网络安全事件响应
对于每个网络安全事件,应制定网络安全事件应对计划,其中包括:
a) 补救行动。
b) 沟通计划。(沟通计划的创建可以涉及到内部相关方,如营销或公共关系、产品开发团队、法律、客户关系、质量管理、采购。 )
c) 为补救行动分配的责任。
负责的人可以有:
- 受影响项目或部件的专业知识,包括遗留项目和部件。
- 组织知识(如:业务流程、通信、采购、法律);和/或 - 决策权。
d) 记录与网络安全事件有关的新的网络安全信息的程序;
- 受影响的组件。
- 相关事件和漏洞。
- 法证数据,如数据日志、崩溃传感器数据;和/或 - 终端用户投诉。
e) 一种确定进展的方法。
f) 关闭网络安全事件响应的标准;以及
g) 采取行动关闭。
应执行网络安全事件应对计划。
更新
车辆内的更新和更新相关能力应根据21434标准进行开发。
3. 十四章节 - 结束网络安全支持和停用
结束网络安全支持
应建立一个过程,以便在组织决定结束对某一功能项或组件的网络安全支持时向客户进行沟通。
注释1:这些沟通可以根据供应商和客户之间的合同要求进行处理。
注释2:与车主的沟通可以通过公告的方式进行。
报废
应提供与报废有关的开发后的网络安全要求。
注释:与这些要求有关的适当文件(如说明、用户手册)可以使退役时在网络安全方面的工作得以进行。
第十五章 - TARA分析方法
1. 概述
威胁分析和风险评估 (Threat analysis and risk assessment methods, 后文简称TARA)通过识别整车/系统的网络安全资产,分析其的潜在安全威胁,综合考虑威胁攻击可行性、危害影响等因素,识别出整车/系统可能存在的风险,并确定其风险等级,为网络安全正向开发、安全漏洞修复提供依据。
TARA是以往的整车开发中没有的一项活动,因此是网络安全开发的一项主要的增量工作,TARA可在车辆的全生命周期的各个阶段进行,例如在概念识别整车的网络安全风险,作为整车网络安全概念的输入,或者在后开发阶段对漏洞进行分析,确定漏洞的风险等级,指导后续的漏洞处置。
在发布版的21434中,把TARA分析的方法论放在了第15章中进行介绍。TARA主要分为七个步骤
- 资产识别
- 威胁场景识别
- 影响评级
- 攻击路径分析
- 攻击可行性等级
- 风险确定
- 风险处置决策
建议根据如下流程图来进行TARA分析:
Item definition
图加文字描述:
1. 事项的边界item boundary: 用架构图,整个系统描述一下,绘制出来,加一个框,语言描述,什么在框里面,什么在框外面,接口是什么
2. 功能:分析的对象有哪些功能,用例,执行哪些活动,这个活动既可能是整车活动,也可能是考虑到整个生命周期的活动
3. 初始架构:数据流
文字描述:
1.运行环境
2. 约束:功能,技术,法规的约束
3. 假设:帮助我们的报告聚焦于那些有效的攻击和有效的防护上,那些没有必要的就以假设型式删除
假设不是一次写完的,随着攻击路径的分析,会发现还有其他的攻击路径,攻击形式,但是可能性不高,不用分析,就可以回过头来,加个assumption
Cybersecurity claim:公司需要的承诺,监控
2. 资产识别
资产是被识别出的需要被保护的任何数据,功能或者资源,分析对象的不同,资产也会有所不同。
资产可分为实体资产、数据资产(包括ECU固件、通讯数据、用户隐私数据、安全算法等)。识别资产所带有的网络安全属性(Cybersecurity Properties)得到带有网络安全属性的资产,进一步可分析其潜在的损害场景(Damage Scenarios,DS)。
STRIDE模型
首字母 | 威胁 | 安全属性 | 描述 | 对应安全措施 |
---|---|---|---|---|
S | Spoofing欺骗 | Authenticity真实性 | 攻击者通过伪造身份来欺骗用户或系统。 | 身份验证 |
T | Tampering篡改 | Integrity完整性 | 完整性确保某些数据(例如,消息或存储的数据)没有以任何方式改变。 | 数字签名 |
R | Repudiation否认 | Non-repudiation 不可抵赖 | 攻击者否认自己的行为。 | 日志,数字证书 |
I | Information Disclosure 信息泄露 | Confidentiality 机密性 | 机密性确保只有经过授权的实体才能读取数据,因此明确禁止未经授权的实体窃听,例如,受限制的信息 | 加密 |
D | Denial of Service 拒绝服务 | Availability可用性 | 攻击者使系统或服务不可用。 | 备份、冗余 |
E | Elevation of Privilege 提升权限 | Authorization授权 | 授权确保特定实体、功能或数据只能由授权用户或实体使用权。 攻击者获得超出其权限的访问权限。 | 访问控制,权限管理 |
输出:
-
带有网络安全属性的资产
-
分析其潜在的损害场景(Damage Scenarios,DS)
损害场景 = 破坏资产X的安全属性Y后可能导致的损害
1. 非预期的行为
2. 在什么条件情况下
3. 和什么资产属性相关
3. 威胁场景识别
威胁场景是资产被破坏的原因,同时也是损害场景的原因。
威胁场景 = 何种方式破坏资产X的安全属性Y
4. 影响评级
对于影响等级的评定可从以下四个评判因子:Safety 安全、Financial 财产、Operational 操作、Privacy 隐私(S、F、O、P)来评定DS的危害影响。每个评判因子评级分为四档:Severe 严重的、Major 重大的、Moderate 中等的、Negligible 微不足道的。
Impact Level | Safety | Financial | Operability | Privacy |
Decription | Decription | Decription | Decription | |
Severe | S3: 威胁生命的伤害(生存不确定),致命的伤害 | 经济损失导致的灾难性后果,受影响的道路使用者可能无法克服。 | 操作上的损坏导致了车辆核心功能的丧失或受损。 例子1 车辆不工作或显示出核心功能的意外行为,如启用跛行回家模式或自主驾驶到一个非预期的地点。 | 隐私的损害导致了对道路使用者的重大甚至不可逆转的影响。 有关道路使用者的信息是高度敏感的,很容易与PII主体联系起来。 |
Major | S2: 严重和有生命危险的伤害(可能存活)。 | 经济损失导致了受影响的道路使用者能够克服的实质性后果。 | 操作上的损坏导致一个重要的车辆功能的损失或损害。 例2 驾驶员的严重烦扰。 | 隐私损害导致对道路使用者的严重影响。 有关道路使用者的信息是 a) 高度敏感且难以与PII主体相联系;或 b) 敏感且容易与PII主体相联系. |
Moderate | S1: 轻度和中度受伤 | 经济损失导致不便的后果,受影响的道路使用者将能够用有限的资源来克服。 | 操作上的损坏导致车辆功能的部分退化。例子3 用户满意度受到负面影响。 | 隐私损害导致道路使用者不方便的后果。 有关该道路使用者的信息是 a) 敏感但很难与PII主体联系起来;或 b) 不敏感,但容易与PII主体相联系。 |
Negligible | S0: 没有受伤 | 经济损失导致没有影响,后果可忽略不计或与道路使用者无关。 | 操作上的损坏导致车辆功能的无损或不可察觉的损害。 | 隐私损害没有导致任何影响或,可忽略不计的后果或与道路使用者无关。 有关该道路使用者的信息不敏感,且难以与PII主体相联系. |
5. 攻击路径分析
攻击树分析
Top down approaches: 是目前的产品是新开发,很多输入信息都没有的情况下适用的方法
Bottom up approach:需要我们目前对组件,攻击模式是清楚的情况下。比如已经知道item内部有一个漏洞,关于这个漏洞我们可以一步一步分析到根节点
6. 攻击可行性等级
攻击潜力方法对攻击路径实现的难易程度评估分为四个等级:High、Medium、Low、Very Low,主要从以下五个角度考虑:
-
经历时长(Elapsed Time),指基于专家知识来识别漏洞到最后利用漏洞所花费的时间;
-
专业知识(Specialist Expertise),指攻击者的能力包括技能、经验等;(小白;需要一定的专业知识;专家;多个专家)
-
对象或组件的知识(Knowledge of the Item or Component),指攻击者对于对象和组件所需要的信息;(从网站上就能获取了解到攻破知识;有一些限制信息;保密信息;严格保密信息)
-
窗口期(Window of Opportunity),指能够成功攻击的条件因素;(什么时候可以攻击)
-
设备(Equipment),指攻击者发现漏洞或执行攻击所需要的工具。(标准设备;专业设备;定制;多个定制)
Parameters | Description | Enumerate | Explain | More Comments or Example |
Elapsed Time | The elapsed time parameter includes the time to identify a vulnerability and develop and (successfully) apply an exploit. Therefore, this rating is based on the state of expert knowledge at the time of rating | ≤1 day | Identifying vulnerabilities, developing and attacking successfully takes a very short time | 识别漏洞、开发和攻击成功需要极短的时间 |
≤1 week | A relatively short period of time to identify vulnerabilities, develop and attack successfully | 识别漏洞、开发和攻击成功需要比较短的时间 | ||
≤1 month | Several months to identify vulnerabilities, develop and attack successfully | 识别漏洞、开发和攻击成功需要几个月的时间 | ||
≤6 months | Longer time to identify vulnerabilities, develop and attack successfully | 识别漏洞、开发和攻击成功需要较长的时间 | ||
>6 months | Identifying vulnerabilities, developing and attacking successfully takes a particularly long time | 识别漏洞、开发和攻击成功需要特别长的时间 | ||
Specialist Expertise | The expertise parameter is related to the capabilities of the attacker, relative to their skill and experience | Layman | Layman is unknowledgeable compared to experts or proficient persons, with no particular expertise; Examples may include persons who can only follow simple instructions that come with the available tools to mount simple attacks, but not capable of making progresses himself/herself if the instructions or the tools do not work as expected. | 没有专业知识,涉猎较浅。如:只会遵从可用工具或设备附带的简单的指导书的知道而去进行简单的攻击的工程师,一旦指导书或工具未按照预期的进行,就无法开展后续的工作。 |
Proficient | Proficient persons have general knowledge about the security field and are involved in the business, for example, workshop professionals. Proficient persons know about simple and popular attacks. They are capable of mounting attacks, for example, odometer tuning and installing counterfeit parts, by using available tools and if required, are capable of improvising to achieve the desired results. | 具有安全领域的专业知识,并参与过业务,对系统的类型和安全行为比较熟悉,能够发动简单的攻击。如:通过使用可用的工具调整里程表和安装假冒部件 | ||
Expert | Expert is familiar with the underlying algorithms, protocols, hardware, structures, security behaviour, principles and concepts of security employed, techniques and tools for the definition of new attacks, cryptography, classical attacks for the product type, attack methods, etc. implemented in the product or system type | 熟悉底层算法、协议、硬件、结构、安全行为、安全准则并能够使用工具和技术构造新的攻击方法和加密技术等 | ||
Multiple Experts | The level “Multiple Experts” is introduced to allow for a situation, where different fields of expertise are required at an Expert level for distinct steps of an attack. | 对于一个真实完整的攻击过程,攻击链路各节点需涉及多个不同领域的专家水平 | ||
Product Knowledge | The knowledge of the item or component parameter is related to the amount of information the attacker has acquired about the item or component | Public | Available from the product homepage, on the Internet or from information not restricted by a confidentiality agreement | 可以从产品主页、互联网上或无保密协议限制的信息中获得 |
Restricted | Distributed only within the developer, with a signed NDA for the shared parts. For example: documents shared between OEMs and suppliers (requirements, design specifications, etc.) | 仅在开发者内部传播,共享部分签订保密协议。如:OEM和供应商之间共享的文档(需求、设计规范等) | ||
Confidential | Distributed only among specific teams or specific members within the developer. e.g. source code | 仅在开发者内特定团队或特定成员间传播。如:源代码 | ||
Strictly Confidential | Only known to a few members, strictly controlled by core technical and managerial staff, and access to which requires strict control and auditing. e.g., internal documentation describing customer-related calibrations or memory layouts, root keys, signing keys, etc. | 仅有个别成员知晓,严格的控制在核心技术人厌和管理人员的范围内,并且访问需要严格的控制和审计。如:内部文档描述的客户相关标定或内存布局,根密钥、签名密钥等 | ||
Window of Opportunity | The window of opportunity parameter is related to the access conditions (time, type) to successfully perform an attack. It combines access type (e.g. logical and physical) and access duration (e.g. unlimited and limited). Depending on the type of attack this might include discovery of possible targets, access to a target, exploit works on the target, time to perform attack on a target, remaining undiscovered, circumventing detections and cybersecurity controls, etc. | Unlimited | High availability via public/untrusted network without any time limitation (i.e., TOE/asset is always accessible). Logical or remote access without physical presence and time limitation as well as unlimited physical access to the TOE/asset. Examples include wireless or via Internet (e.g., V2X or cellular interfaces). | 攻击可以在任何时刻进行,不需要物理接触或是没有时间限制的远程访问,以及不受限的物理访问。如:通过无线或网络接口访问 |
Easy | High availability and limited time. Logical or remote access without physical presence. | 不需要物理接触的远程访问,以及受限的物理接触。如:进入没有锁门的车辆,访问暴露的物理接口,或是需要 车辆处于静止状态的远程攻击 | ||
Moderate | Low availability of the TOE. Limited physical and/or logical access to the TOE. Physical access to vehicle interior or exterior without using any special tool (e.g., opening the hood to access wires). | 受限的物理访问或本地访问。物理访问不需要使用任何专业工具 | ||
Difficult | Very low availability of the TOE. Physical access required to perform complex disassembly of vehicle parts to access internals to mount an attack on the TOE.” | 找不到适合的攻击窗口(因为需要的时间太长了,或者执行攻击的目标数太多了) | ||
Equipment | The equipment parameter is related to the tools the attacker has available to discover the vulnerability and/or to execute the attack | Standard | An attacker can readily use a "standard" device to identify a vulnerability or attack, which may be part of the TOE itself (e.g., a debugger in an operating system) or may be readily available (e.g., an Internet download, a protocol analyzer, or a simple attack script). Examples include simple OBD diagnostic devices, common IT devices, such as laptops. | 攻击者可以随时使用“标准”设备,以识别漏洞或攻击,这种设备可能是TOE本身的一部分(例如操作系统中的调试器),也可能很容易获得(例如互联网下载、协议分析器或简单的攻击脚本)。例子包括简单的OBD诊断设备,常见的IT设备,如笔记本电脑。 |
Specialized | Devices that are not available to the attacker, easily purchased and relatively simple to operate, such as power analysis tools, complex networks that require hundreds of computers to build, or attack scripts or programs that are more heavily developed, such as in-car communication devices, expensive in-car diagnostic devices; if different steps of an attack require different specialized equipment components, they may be considered custom | 攻击者没有,很容易购买到,并且操作相对简单的设备,如电源分析工具,需数百台电脑搭建的复杂的网络,或开发量较大的攻击脚本或程序,如车内通讯设备,昂贵的车内诊断设备;如果一个攻击的不同步骤需要不同的专门的设备组成,则可将被认为是定制的 | ||
Bespoke | Not available to the attacker, not readily available to the public, requiring customization through, for example, very complex software equipment, or equipment that is stored in strictly restricted conditions because of its specialized nature or its expensive nature | 攻击者没有,不容易为公众使用,需要通过定制,如非常复杂的软件设备,或因为其专业性而存放条件严格受限的设备或及其昂贵的设备。 | ||
Multiple Bespoke | Multiple pieces of equipment need to be customized in order to combine to achieve the attack | 需要定制多个装备,才能组合实现攻击 |
根据以上五个维度的打分,相加得到总分,然后根据攻击可行性等级评定表映射到相应的攻击可行性等级。
7. 风险确定
8. 风险处置决策
对于每一个威胁场景及其风险值,在标准中建议了以下四种决策
1. 消除风险:
简单直接,通过消除风险来源来避免风险,比如直接取消引起风险的活动(既然有风险,老子不干了!)
2. 缓解风险,通过提供网络安全目标和概念来降低风险;
注:通过缓解措施,可以降低风险的等级,或者减少风险发生时的损失,但是风险不会完全消除,还会有残余风险存在。从风险管理的专业角度来讲,残余风险也需要记录到风险跟踪列表中进行持续跟踪;在某些条件下,残余风险又可能发展成很大的风险。
3. 分担风险,购买保险或者与供应商签订风险转移合同;
注:风险的转移,只是在风险发生时第三方以金钱等方式对组织进行一定的补偿,但是风险的责任本身不会被转移,还是在组织中。
4. 保留风险,通过提供关于风险的网络安全声明来保留风险。
注:当缓解或者转移风险的成本可能超出了风险本身造成的损失时,组织就会选择接受风险。(躺平了!)
注:
如果将风险处置决定是2,则应导出至少得出一个车辆网络安全目标。
如果风险处置决定是3或4,则应导出车辆网络安全声明,并提供相应可信服的理由。
其他问题
Cybersecurtiy Goal, Concept, Specification的区别
1. Cybersecurity Properties:C.I.A.
2. Cybersecurity Goals: 举例:保护个人隐私数据的机密性
3. Cybersecurity Concept: 举例:需要把个人数据进行加密
4. Cybersecurity Specification:举例:个人数据用AES128进行加密
TARA的分析是主机厂负责还是供应商:
主机厂:站在整车EE架构考虑,负责整车EE级TARA
供应商: 功能级TARA
第八,九,十章节和十五章节内容的关系
相关文章:
汽车网络信息安全-ISO/SAE 21434解析(下)
目录 第十二~十四章 - 后开发阶段 1. 十二章节 - 生产 2. 十三章节 - 运营与维护 网络安全事件响应 更新 3. 十四章节 - 结束网络安全支持和停用 结束网络安全支持 报废 第十五章 - TARA分析方法 1. 概述 2. 资产识别 3. 威胁场景识别 4. 影响评级 5. 攻击路径分…...
局域网中 Windows 与 Mac 互相远程连接的最佳方案
由于工作需要,经常需要远程连接或登录到几台不同的工作用机上进行操作。 下面基于免费、高体验等基本诉求,简要记录几种不同场景下的实践方案选择,仅供参考。如您有更简单且更优的方案,欢迎一起探讨。 1 远程桌面连接的几种不同…...
Qt调用ffmpeg库录屏并进行UDP组播推流
基于以下参考链接,采用其界面和程序框架,实现实时推送UDP组播视频流,替换原拉流功能 https://blog.csdn.net/u012532263/article/details/102736700 源码在windows(qt-opensource-windows-x86-5.12.9.exe)、ubuntu20.…...
机器学习 - 初学者需要弄懂的一些线性代数的概念
一、单位矩阵 在数学中,单位矩阵是一个方阵,其主对角线上的元素全为1,其余元素全为0。单位矩阵在矩阵乘法中起到类似于数字1在数值乘法中的作用,即任何矩阵与单位矩阵相乘,结果仍为原矩阵本身。 单位矩阵的定义&…...
vscode无法格式化go代码的问题
CTRLshiftp 点击Go:Install/Update Tools 点击全选,OK!...
实验二 数据库的附加/分离、导入/导出与备份/还原
实验二 数据库的附加/分离、导入/导出与备份/还原 一、实验目的 1、理解备份的基本概念,掌握各种备份数据库的方法。 2、掌握如何从备份中还原数据库。 3、掌握数据库中各种数据的导入/导出。 4、掌握数据库的附加与分离,理解数据库的附加与分离的作用。…...
基于Django的个人博客系统的设计与实现
【Django】基于Django的个人博客系统的设计与实现(完整系统源码开发笔记详细部署教程)✅ 目录 一、项目简介二、项目界面展示三、项目视频展示 一、项目简介 系统采用Python作为主要开发语言,结合Django框架构建后端逻辑,并运用J…...
PostgreSQL TRUNCATE TABLE 操作详解
PostgreSQL TRUNCATE TABLE 操作详解 引言 在数据库管理中,经常需要对表进行操作以保持数据的有效性和一致性。TRUNCATE TABLE 是 PostgreSQL 中一种高效删除表内所有记录的方法。本文将详细探讨 PostgreSQL 中 TRUNCATE TABLE 的使用方法、性能优势以及注意事项。 什么是 …...
黑盒/白盒运维监控
运维监控分为黑盒和白盒 黑盒:不深入代码,在系统角度看TPS,延迟等指标 白盒:深入代码分析,通过日志捕捉,以及主动上报告警等来进行监控 黑盒监控: 1. 页面功能:域名是否可访问&…...
日志收集Day007
1.配置ES集群TLS认证: (1)elk101节点生成证书文件 cd /usr/share/elasticsearch ./bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass "" --days 3650 (2)elk101节点为证书文件修改属主和属组 chown elasticsearch:elasticsearch con…...
微信小程序1.1 微信小程序介绍
1.1 微信小程序介绍 内容提要 1.1 什么是微信小程序 1.2 微信小程序的功能 1.3 微信小程序使用场景 1.4 微信小程序能取代App吗 1.5 微信小程序的发展历程 1.6微信小程序带来的机会...
Leetcode 3434. Maximum Frequency After Subarray Operation
Leetcode 3434. Maximum Frequency After Subarray Operation 1. 解题思路2. 代码实现 题目链接:3434. Maximum Frequency After Subarray Operation 1. 解题思路 这一题的话我们只需要考察所有的数 i i i转换为 k k k时所能够形成的最大的值。 而对于这个问题&…...
6. 使用springboot做一个音乐播放器软件项目【1.0版项目完结】附带源码~
#万物OOP 注意: 本项目只实现播放音乐和后台管理系统。 不分享任何音乐歌曲资源。 上一篇文章我们 做了音乐播放器后台的功能。参考地址: https://jsonll.blog.csdn.net/article/details/145214363 这个项目已经好几天也没更新了,因为临近放…...
php twig模板引擎详细使用教程
php twig模板引擎 1. 什么是Twig模板引擎 Twig是一个强大且灵活的PHP模板引擎,它提供了一种更简洁和可扩展的方法来创建PHP应用程序的视图层。Twig模板引擎旨在将设计与业务逻辑分离,并为开发人员提供一种更加清晰和易于维护的方式来构建网页。Twig由S…...
【Java设计模式-7】责任链模式:我是流水线的一员
一、责任链(Chain of Responsibility Patten)模式是个啥? 想象一下,你要请假。你先把请假申请交给了小组长,小组长一看,这事儿他能决定,就直接批了。要是小组长觉得这事儿得往上汇报࿰…...
Spring Boot应用中实现基于JWT的登录拦截器,以保证未登录用户无法访问指定的页面
目录 一、配置拦截器进行登录校验 1. 在config层设置拦截器 2. 实现LoginInterceptor拦截器 3. 创建JWT工具类 4. 在登录时创建JWT并存入Cookie 二、配置JWT依赖和环境 1. 添加JWT依赖 2. 配置JWT环境 本篇博客将为大家介绍了如何在Spring Boot应用中实现基于JWT的登录…...
【2025年数学建模美赛F题】(顶刊论文绘图)模型代码+论文
全球网络犯罪与网络安全政策的多维度分析及效能评估 摘要1 Introduction1.1 Problem Background1.2Restatement of the Problem1.3 Literature Review1.4 Our Work 2 Assumptions and Justifications数据完整性与可靠性假设:法律政策独立性假设:人口统计…...
计算机网络之链路层
本文章目录结构出自于《王道计算机考研 计算机网络_哔哩哔哩_bilibili》 02 数据链路层 在网上看到其他人做了详细的笔记,就不再多余写了,直接参考着学习吧。 1 详解数据链路层-数据链路层的功能【王道计算机网络笔记】_wx63088f6683f8f的技术博客_51C…...
随笔十七、eth0单网卡绑定双ip的问题
在调试语音对讲过程中遇到过一个“奇怪”问题:泰山派作为一端,可以收到对方发来的语音,而对方不能收到泰山派发出的语音。 用wireshark抓包UDP发现,泰山派发送的地址是192.168.1.30,而给泰山派实际设置的静态地址是19…...
coffee销售数据集分析:基于时间趋势分析的实操练习
**文章说明:**对coffee销售数据集的简单分析练习(时间趋势分析练习),主要是为了强化利用python进行数据分析的实操能力。属于个人的练习文章。 **注:**这是我第一次使用md格式编辑博客文章,排版上还是不是很…...
在 Vue 3 中,怎么管理环境变量
在 Vue 3 中,环境变量管理是通过 .env 文件来进行的,利用这些文件可以让开发者根据不同的环境(开发、生产、测试等)配置不同的变量。这一机制由 Vite 构建工具支持,它帮助开发者根据不同的环境需求做出相应配置。 1. …...
shallowRef和shallowReactive的用法以及使用场景和ref和reactive的区别
Vue3 浅层响应式 API 1. ref vs shallowRef 1.1 基本概念 ref: 深层响应式,会递归地将对象的所有属性转换为响应式shallowRef: 浅层响应式,只有 .value 的改变会触发更新,不会递归转换对象的属性 1.2 使用对比 // ref 示例 const deepRe…...
mantisbt添加修改用户密码
文章目录 问题当前版本安装流程创建用户修改密码老的方式探索阶段 问题 不太好改密码啊。貌似必须要域名要发邮件。公司太穷,看不见的东西不关心,只能改源码了。 当前版本 当前mantisbt版本 2.27 php版本 7.4.3 安装流程 (下面流程不是…...
mysql 学习6 DQL语句,对数据库中的表进行 查询 操作
前期准备数据 重新create 一张表 create table emp(id int comment 编号,workno varchar(10) comment 工号,name varchar(10) comment 姓名,gender char comment 性别,ager tinyint unsigned comment 年龄,idcard char(18) comment 身份证号,workaddress varchar(10) c…...
零售业革命:改变行业的顶级物联网用例
mpro5 产品负责人Ruby Whipp表示,技术进步持续重塑零售业,其中物联网(IoT)正引领这一变革潮流。 研究表明,零售商们正在采用物联网解决方案,以提升运营效率并改善顾客体验。这些技术能够监控运营的各个方面…...
云计算的概念与特点:开启数字化时代的新篇章
在当今数字化时代,云计算(Cloud Computing)已经成为推动技术创新和业务转型的核心力量。无论是大型企业、中小型企业,还是个人用户,云计算都为其提供了高效、灵活和经济的解决方案。本文将深入探讨云计算的概念及其核心特点,帮助读者全面了解这一革命性技术。 © ivw…...
第二十一周:Mask R-CNN
Mask R-CNN 摘要Abstract文章信息研究动机Mask RCNNRoIPool与RoIAlign 双线性插值Mask Branch(FCN)其他细节Mask RCNN损失Mask分支预测 网络搭建创新点与不足总结 摘要 本篇博客介绍了Mask R-CNN,这是一种用于实例分割的模型,能够在目标检测的基础上实现…...
特朗普政府将开展新网络攻击
近日,特朗普政府已表态:减少物理战争,网络战将代替,以实现美国的全球优势。 特朗普也指示美国网络司令部可以在没有总统批准的情况下开展更广泛行动,尤其是应对一些突发事件,这其实成为了后续美国通过网络…...
Android Studio:视图绑定的岁月变迁(2/100)
一、博文导读 本文是基于Android Studio真实项目,通过解析源码了解真实应用场景,写文的视角和读者是同步的,想到看到写到,没有上帝视角。 前期回顾,本文是第二期。 private Unbinder mUnbinder; 只是声明了一个 接口…...
【已解决】黑马点评项目Redis版本替换过程的数据迁移
黑马点评项目Redis版本替换过程的数据迁移 【哭哭哭】附近商户中需要用到的GEO功能只在Redis 6.2以上版本生效 如果用的是老版本,美食/KTV的主页能正常返回,但无法显示内容 上次好不容易升到了5.0以上版本,现在又用不了了 Redis 6.2的windo…...
Maven运行任何命令都报错“Internal error: java.lang.ArrayIndexOutOfBoundsException”
今天遇到一个奇怪的问题,在maven工程下运行任何mvn命令都报“Internal error: java.lang.ArrayIndexOutOfBoundsException”错误,具体错误如下: $ mvn install [INFO] Scanning for projects... [ERROR] Internal error: java.lang.ArrayInd…...
电商平台爬虫开发技术分享:多年的实战经验总结
在当今数字化时代,电商平台的数据蕴含着巨大的商业价值。作为一名从事电商平台爬虫开发的工程师,我深知数据抓取的重要性及其技术挑战。经过多年的实践,我积累了一些宝贵的经验,愿意在这里与大家分享,希望能为同行们提…...
大模型训练策略与架构优化实践指南
标题:大模型训练策略与架构优化实践指南 文章信息摘要: 该分析全面探讨了大语言模型训练、架构选择、部署维护等关键环节的优化策略。在训练方面,强调了pre-training、mid-training和post-training的不同定位与目标;在架构选择上…...
DeepSeek-R1 蒸馏模型及如何用 Ollama 在本地运行DeepSeek-R1
在人工智能飞速发展的领域中,大型语言模型(LLMs)的出现可谓是一项重大变革。在这些模型里,DeepSeek - R1 及其蒸馏模型备受瞩目,它们融合了独特的能力与高可用性。今天我们一起聊一下 DeepSeek - R1 蒸馏模型究竟是什么…...
机器学习 ---逻辑回归
逻辑回归是属于机器学习里面的监督学习,它是以回归的思想来解决分类问题的一种非常经典的二分类分类器。由于其训练后的参数有较强的可解释性,在诸多领域中,逻辑回归通常用作 baseline 模型,以方便后期更好的挖掘业务相关信息或提…...
虚幻浏览器插件 UE与JS通信
温馨提示:本节内容需要结合插件Content下的2_Communication和Resources下的sample.html 一起阅读。 1. UE调用JS 1.1 JS脚本实现 该部分共两步: 导入jstote.js脚本实现响应函数并保存到 ue.interface 中 jsfunc 通过json对象传递参数,仅支持函数名小…...
KVM/ARM——基于ARM虚拟化扩展的VMM
1. 前言 ARM架构为了支持虚拟化做了些扩展,称为虚拟化扩展(Virtualization Extensions)。原先为VT-x创建的KVM(Linux-based Kernel Virtual Machine)适配了ARM体系结构,引入了KVM/ARM (the Linux ARM hypervisor)。KVM/ARM没有在hypervisor中引入复杂的…...
池化层Pooling Layer
1. 定义 池化是对特征图进行的一种压缩操作,通过在一个小的局部区域内进行汇总统计,用一个值来代表这个区域的特征信息,常用于卷积神经网络(CNN)中。 2. 作用 提取代表性信息的同时降低特征维度,具有平移…...
为AI聊天工具添加一个知识系统 之63 详细设计 之4:AI操作系统 之2 智能合约
本文要点 要点 AI操作系统处理的是 疑问(信念问题)、缺省(逻辑问题)和异常(不可控因素 ) 而 内核 的三大功能 (资源分配/进程管理/任务调度)以及外围的三类接口( CLI、GUI和表面模型的 运行时…...
代码随想录——二叉树(二)
文章目录 前言二叉树最大深度二叉树的最小深度翻转二叉树对称二叉树完全二叉树的节点个数平衡二叉树二叉树的所有路径左叶子之和找左下角的值路径总和从中序与后序序列构造二叉树最大二叉树合并二叉树二叉搜索树中的搜索验证二叉搜索树二叉搜索树的最小绝对差二叉树中的众数二叉…...
一个基于Python+Appium的手机自动化项目~~
本项目通过PythonAppium实现了抖音手机店铺的自动化询价,可以直接输出excel,并带有详细的LOG输出。 1.excel输出效果: 2. LOG效果: 具体文件内容见GitCode: 项目首页 - douyingoods:一个基于Pythonappium的手机自动化项目,实现了…...
深入剖析SpringBoot启动机制:run()方法详尽解读
摘要 本文深入解析SpringBoot的启动机制,以run()方法为核心,逐步追踪并详细解释其关键步骤。首先探讨run()方法的工作原理,然后深入代码层面分析各个关键环节。文章提供刷新后钩子和启动后任务的代码示例,帮助读者理解SpringBoot源…...
deepseek v1手机端部署
在iPhone上部署DeepSeekR1 1. 安装快捷指令: 打开iPhone上的Safari浏览器,访问[这个链接](https://www.icloud.com/shortcuts/e0bc5445c39d45a78b90e1dc896cd010)下载快捷指令。 下载后,按照提示完成安装。 2. 获取并配置API Key&a…...
idea对jar包内容进行反编译
1.先安装一下这个插件java Bytecode Decompiler 2.找到这个插件的路径,在idea的plugins下面的lib文件夹内:java-decompiler.jar。下面是我自己本地的插件路径,以作参考: D:\dev\utils\idea\IntelliJ IDEA 2020.1.3\plugins\java-d…...
KMP算法原理 JAVA实现
KMP算法原理 JAVA实现 一、什么是KMP算法二、为什么需要KMP算法1. 算法背景1.1 暴力匹配过程1.2 暴力匹配的优劣 2. KMP算法的诞生3. next数组3.1 kmp算法的关键 三、求解KMP 一、什么是KMP算法 实际上KMP只是发明这个算法的三个人的英文名首字母短称,KMP本身无意义…...
利用Redis实现数据缓存
目录 1 为啥要缓存捏? 2 基本流程(以查询商铺信息为例) 3 实现数据库与缓存双写一致 3.1 内存淘汰 3.2 超时剔除(半自动) 3.3 主动更新(手动) 3.3.1 双写方案 3.3.2 读写穿透方案 3.3.…...
基于 RAMS 的数据驱动建模与应用实践:从理论到具体操作
基于 RAMS 的数据驱动建模与应用实践:从理论到具体操作 RAMS(区域大气建模系统)因其模块化设计、高分辨率模拟能力和广泛的应用领域,成为区域大气建模的强大工具。而数据驱动建模技术的崛起,使得 RAMS 的能力得到进一…...
计算机图形学实验练习(实验1.2-4.1AND补充实验12)
实验1.2 OpenGL与着色器编程 1.理论知识 1.1 OpenGL的含义 OpenGL是一种应用程序编程接口(Application Programming Interface,API),它是一种可以对图形硬件设备特性进行访问的软件库。OpenGL最新的4.3版本包含了超过500个不同的命令,可以用于设置所需的对象、图像和操…...
javascript-es6 (一)
作用域(scope) 规定了变量能够被访问的“范围”,离开了这个“范围”变量便不能被访问 局部作用域 函数作用域: 在函数内部声明的变量只能在函数内部被访问,外部无法直接访问 function getSum(){ //函数内部是函数作用…...
uni-app 程序打包 Android apk、安卓夜神模拟器调试运行
1、打包思路 云端打包方案(每天免费次数限制5,最简单,可以先打包尝试一下你的程序打包后是否能用): HBuilderX 发行App-Android云打包 选择Android、使用云端证书、快速安心打包本地打包: HBuilderX …...