CN117290898A - 一种用于Chiplet芯片系统的安全保护方法 - Google Patents
一种用于Chiplet芯片系统的安全保护方法 Download PDFInfo
- Publication number
- CN117290898A CN117290898A CN202311350721.0A CN202311350721A CN117290898A CN 117290898 A CN117290898 A CN 117290898A CN 202311350721 A CN202311350721 A CN 202311350721A CN 117290898 A CN117290898 A CN 117290898A
- Authority
- CN
- China
- Prior art keywords
- chiplet
- security
- data
- alarm
- central node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000004458 analytical method Methods 0.000 claims abstract description 23
- 238000004891 communication Methods 0.000 claims abstract description 22
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 21
- 238000012544 monitoring process Methods 0.000 claims abstract description 16
- 238000002955 isolation Methods 0.000 claims abstract description 11
- 238000012795 verification Methods 0.000 claims abstract description 11
- 238000003066 decision tree Methods 0.000 claims description 28
- 238000007637 random forest analysis Methods 0.000 claims description 21
- 238000001514 detection method Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 13
- 238000003062 neural network model Methods 0.000 claims description 10
- 210000002569 neuron Anatomy 0.000 claims description 8
- 238000007405 data analysis Methods 0.000 claims description 6
- 230000002159 abnormal effect Effects 0.000 claims description 5
- 230000003542 behavioural effect Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000010354 integration Effects 0.000 abstract description 5
- 239000007771 core particle Substances 0.000 abstract 5
- 241000700605 Viruses Species 0.000 description 10
- 238000003860 storage Methods 0.000 description 9
- 238000012549 training Methods 0.000 description 9
- 238000012351 Integrated analysis Methods 0.000 description 7
- 230000006399 behavior Effects 0.000 description 7
- 239000013598 vector Substances 0.000 description 7
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002265 prevention Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 206010000117 Abnormal behaviour Diseases 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000011895 specific detection Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/76—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种用于Chiplet芯片系统的安全保护方法,属于集成电路技术领域,方法包括:每个Chiplet(芯粒)基于自身状态和自身的输入和输出数据,检测可能的安全事件后将报警信息发送给可信任的中心节点;可信任的中心节点基于可能的安全事件里的类型请求其他芯粒进行验证反馈,使用群体智能算法进行集成和分析;可信任的中心节点确定报警芯粒发生了故障或被攻击后广播隔离命令,其他芯粒在接收到所述隔离命令后停止与该芯粒的所有通信;启动备用芯粒来替代被隔离的芯粒;每个预设周期根据当前的安全环境和/或芯片系统状态,动态地调整芯片系统的安全策略。本发明实现对芯片系统的实时监控和保护,提高了系统的安全性和稳定性。
Description
技术领域
本发明属于集成电路技术领域,尤其涉及一种用于Chiplet芯片系统的安全保护方法。
背景技术
随着半导体技术的不断发展,芯片的设计和制造变得越来越复杂。为了更有效地利用现有的半导体工艺和设计资源,出现了基于Chiplet的芯片设计和制造方法。Chiplet指的是一种模块化的芯片设计方法,每个Chiplet都是一个具有特定功能的独立模块,可以通过高速互连技术将多个Chiplet组合在一起,形成一个具有完整功能的芯片系统。
然而,Chiplet芯片的这种模块化和高度集成的特性,也带来了新的安全问题。首先,由于每个Chiplet都是一个独立的模块,因此,一旦其中一个Chiplet被攻击或出现故障,可能会影响整个芯片系统的安全和稳定性。其次,由于Chiplet之间需要通过高速互连进行通信,因此,通信的安全性也成为一个重要的问题。此外,由于芯片系统的复杂性,传统的安全保护方法可能无法有效地应对这些新的问题。
因此,如何实现对Chiplet芯片系统的有效的安全保护,成为了当前的一个重要的技术问题。
发明内容
针对上述现有技术中存在的缺陷,本发明提供一种用于Chiplet芯片系统的安全保护方法,所述芯片系统由多个Chiplet组成,所述方法包括:
每个Chiplet持续监控自身状态,以及监控自身的输入和输出数据;
所述每个Chiplet基于自身状态和自身的输入和输出数据,检测可能的安全事件;
如果Chiplet检测到可能的安全事件,将报警信息发送给可信任的中心节点;
可信任的中心节点在接收到报警信息后,基于可能的安全事件里的类型请求其他Chiplet进行验证反馈;
其他Chiplet将反馈结果发送至可信任的中心节点,可信任的中心节点收集所有其他Chiplet的反馈,并使用群体智能算法进行集成和分析;
若可信任的中心节点确定报警Chiplet发生了故障或被攻击,可信任的中心节点向所有Chiplet广播一个隔离命令,其他Chiplet在接收到所述隔离命令后,停止与该Chiplet的所有通信;
启动备用Chiplet来替代被隔离的Chiplet;
所述芯片系统在每个预设周期根据当前的安全环境和/或芯片系统状态,动态地调整芯片系统的安全策略。
其中,每个Chiplet持续监控自身状态,以及监控自身的输入和输出数据,包括:
每个Chiplet持续监控自身状态,包括计算性能、内存使用;
Chiplet通过内建的监控系统来持续监控自身输入和输出数据,所述监控系统用于进行数据捕获和数据分析的功能;
数据捕获阶段收集Chiplet所有的输入和输出数据,网络接口控制器提供关于通信流量的信息,包括发送和接收的数据包数量,Chiplet通过读取这些信息来监控自身的通信流量;
在数据分析阶段中分析收集到的通信数据以检测可能的安全事件,包括分析通信流量,数据一致性检查错误,异常协议,内容异常以及行为异常。
其中,所述每个Chiplet基于自身状态和自身的输入和输出数据,检测可能的安全事件,所述可能的安全事件包括以下五种结果:
Malware为检测到可能存在恶意软件;
NetworkAttack为检测到可能存在网络攻击;
HardwareFailure:为检测到可能存在硬件故障;
DataBreach为检测到可能存在数据泄露;
NoEvent为没有检测到安全事件;
当Chiplet检测到Malware、NetworkAttack、HardwareFailure和DataBreach时,向可信任的中心节点发送报警信息。
其中,所述每个Chiplet基于自身状态和自身的输入和输出数据,检测可能的安全事件,包括:
采用多层感知机MLP神经网络模型;
所述多层感知机的输入层有7个神经元对应7维的输入数据;输出层有5个神经元对应5个安全事件类型;
模型预测时模型为5个安全事件类型的概率,选择概率最高的类型作为安全事件类型的预测结果。
其中,Chiplet使用内置的神经网络模型对收集的数据进行分析,如果检测的安全事件类型为Malware、NetworkAttack、HardwareFailure和DataBreach时,生成一条报警信息,所述报警包含安全事件类型;
Chiplet将报警信息发送给可信任的中心节点,可信任的中心节点接收到报警信息后,根据报警信息的内容请求其他Chiplet进行验证反馈。
其中,如果报警信息包含的安全事件类型为Malware和NetworkAttack:
可信任的中心节点收集所有其他Chiplet的对Malware和NetworkAttack反馈结果,将收集到的新数据转化为用于模型预测的特征;
将训练好的随机森林模型用于新数据的预测;
对于每一个其他Chiplet反馈结果,将其转化为特征,然后输入到随机森林模型中的决策树,得到一个预测结果;
每个Chiplet的反馈结果会被输入到多个决策树中,得到多个预测结果,然后通过多数投票决定最终的预测结果;
所述预测结果为可信任的中心节点对发送报警信息的Chiplet的是否发生Malware和NetworkAttack安全事件的预测结果。
其中,如果报警信息包含的安全事件类型为DataBreach,可信任的中心节点确定是否发生了数据泄漏攻击,包括,通过如下公式计算报警Chiplet数据泄漏的概率P(Y=1|X):
P(Y=1|X)=1/(1+exp(-(b0+b1*x1+b2*x2+b3_1*x3_1+b3_2*x3_2+...+b3_N*x3_N+b4_1*x4_1+...+b4_M*x4_M))),
其中,
x1为经由报警发起的Chiplet的访问请求数量;
x2为最高访问请求数量对应的访问时间;
x3_1,x3_2,...,x3_N为最高的N个频次的访问数据哈希值的访问次数;
x4_1,x4_2,...,x4_M为Chiplet上所有网络接口过去24小时内的总流量最高的M个Chiplet上所有网络接口过去24小时内的总流量;
b0是截距,b1,b2,{b3_1,b3_2,...,b3_N}以及{b4_1,...,b4_M}是各个特征的权重;
P(Y=1|X)表示在给定特征X的情况下数据泄漏的概率;
当所述P(Y=1|X)超过预设阈值时,所述可信任的中心节点确定报警Chiplet发生了DataBreach。
其中,可信任的中心节点基于其他所有Chiplet的反馈结果确定当前芯片系统的故障程度,包括:
为每个Chiplet定义一个故障指数FailureIndex,计算公式如下:
FailureIndex=w1*(ProcessorUsage/100)+w2*(Temperature/MaxTemperature)+w3*(Voltage/MaxVoltage)+w4*(1-FreeStorageSpace/MaxStorageSpace)+w5*(Read/WriteSpeed/MaxSpeed),
其中,w1到w5是权重,权重反映了各个参数对故障的影响程度;ProcessorUsage:处理器使用率;Temperature:Chiplet的当前工作温度;MaxTemperature:Chiplet可能的最高工作温度;Voltage:Chiplet的当前工作电压;MaxVoltage:Chiplet可能的最大工作电压;FreeStorageSpace:Chiplet的剩余存储空间;MaxStorageSpace:Chiplet的最大存储空间;Read/WriteSpeed:Chiplet的读写速度;MaxSpeed:Chiplet的最大读写速度;
整体的故障程度TotalFailureIndex计算如下:
TotalFailureIndex=p_alarm*FailureIndex_alarm+(p1*FailureIndex1+p2*FailureIndex2+...+pn*FailureIndexn)/(p1+p2+...+pn),
其中,FailureIndex_alarm是报警Chiplet的故障指数,p_alarm是其对应的权重;FailureIndex1到FailureIndexn是其他n个Chiplet的故障指数,p1到pn是它们的权重;
FailureIndex_alarm是指发出报警的Chiplet的故障指数,如果一个Chiplet发出了报警,它已经完全故障,将FailureIndex_alarm设为最大值1。
其中,芯片系统在每个预设周期根据当前的安全环境和/或芯片系统状态,动态地调整芯片系统的安全策略,包括由芯片内的可信任的中心节点确定当前芯片的安全风险分数SecurityRiskScore,所述安全风险分数SecurityRiskScore通过如下过程计算确定:
MalwareRisk=MalwareFrequency,
NetworkAttackRisk=NetworkAttackFrequency,
DataBreachRisk=DataBreachFrequency*DataBreachProbability,
SecurityRiskScore=MalwareRisk+NetworkAttackRisk+DataBreachRisk;
其中,MalwareRisk表示系统在预设周期内受到恶意软件攻击的风险,等于在此期间系统中的Chiplet遭受的恶意软件攻击的次数;
NetworkAttackRisk表示系统在预设周期内受到网络攻击的风险,等于在此期间系统中的Chiplet遭受的网络攻击的次数;DataBreachRisk表示系统在预设周期内遭受数据泄露的风险,等于在此期间系统遭受数据泄露的次数与每次数据泄露发生的概率的乘积;SecurityRiskScore等于以上三种风险的和。
其中,将安全风险分数转换为第一安全程度;
通过TotalFailureIndex调整第一安全程度OriginalSafetyLevel,获得第二安全程度AdjustedSafetyLevel;
根据第一安全程度或第二安全程度来确定并实施与安全程度对应的安全策略。
本发明通过每个Chiplet的自我监控和集群协作,可以实现对芯片系统的实时安全监控,增强了对可能的攻击行为的预防和检测能力,以及,通过利用群体智能算法进行事件分析和决策,可以充分利用各个Chiplet的信息,提高了事件检测的准确性和决策的智能程度。在检测到可能的攻击事件后,通过中心节点的协调,可以快速隔离被攻击的Chiplet,并启动备用Chiplet进行替换,从而减少了攻击带来的影响,提高了系统的稳定性。同时,通过根据当前的安全环境和/或芯片系统状态,动态地调整安全策略,可以更有效地应对不断变化的安全威胁,提高了系统的安全性。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1是示出根据本发明实施例的一种用于Chiplet芯片系统的安全保护方法的流程图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……区分开。例如,在不脱离本发明实施例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第一……。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。
本发明解决的主要技术问题是如何实现对芯片系统的实时监控和保护,特别是在由多个Chiplet构成的复杂芯片系统中。由于每个Chiplet都具备基本的计算和通信功能,因此,一旦某个Chiplet被攻击或出现故障,可能会影响整个芯片系统的安全和稳定性。
本发明使用了基于群体智能的方法,使得每个Chiplet不仅可以自我监控,还可以进行集群协作,检测可能的安全事件,并且在检测到攻击事件时,能够通过可信任的中心节点的协调,实现对被攻击Chiplet的快速隔离和替换,从而保障整个芯片系统的安全和稳定运行。
本发明的芯片系统由多个Chiplet组成,每个Chiplet都具备基本的计算和通信功能。每个Chiplet都能够监视自身的状态,以及接收和处理其他Chiplet发送的信息。芯片系统中还包含一些备用Chiplet,用于在需要时替换出现故障或被攻击的Chiplet。
如图1所示,本发明公开了一个基于群体智能的用于Chiplet芯片系统的安全保护方法,所述方法包括:
每个Chiplet都会持续监控自身状态,包括计算性能、内存使用,用于检测可能的攻击行为。
每个Chiplet都会持续监控自身的输入和输出数据,以检测可能的安全事件。
所述每个Chiplet基于自身状态和自身的输入和输出数据,检测可能的安全事件。
如果Chiplet检测到可能的安全事件,将报警信息发送给可信任的中心节点。可信任的中心节点在接收到报警信息后,基于可能的安全事件里的类型请求其他Chiplet进行验证反馈。
其他Chiplet将反馈结果发送至可信任的中心节点,可信任的中心节点收集所有其他Chiplet的反馈,并使用群体智能算法进行集成和分析,以确定报警Chiplet是否真的发生了攻击事件,或确定芯片系统的发生了攻击事件的概率,或确定芯片系统整体故障程度。
如果确定报警Chiplet发生了故障或被攻击,可信任的中心节点会向所有Chiplet广播一个隔离命令。其他Chiplet在接收到隔离命令后,会立即停止与该Chiplet的所有通信,并启动备用Chiplet来替代被隔离的Chiplet。
可选地,芯片系统在每个预设周期都会根据当前的安全环境和/或芯片系统状态,动态地调整安全策略。
本发明通过每个Chiplet的自我监控和集群协作,可以实现对芯片系统的实时安全监控,增强了对可能的攻击行为的预防和检测能力,以及,通过利用群体智能算法进行事件分析和决策,可以充分利用各个Chiplet的信息,提高了事件检测的准确性和决策的智能程度。在检测到可能的攻击事件后,通过可信任的中心节点的协调,可以快速隔离被攻击的Chiplet,并启动备用Chiplet进行替换,从而减少了攻击带来的影响,提高了系统的稳定性。同时,通过根据当前的安全环境和/或芯片系统状态,动态地调整安全策略,可以更有效地应对不断变化的安全威胁,提高了系统的安全性。
在某一实施例中,每个Chiplet都会持续监控自身状态,包括计算性能、内存使用,包括:
处理器会有硬件计数器用于记录CPU的使用情况,包括使用率、空闲时间等。Chiplet可以通过读取这些硬件计数器的值来监控自身的计算性能,例如操作系统可以通过读取硬件计数器的值来获取CPU的使用情况,并将这些信息提供给监控程序,实现计算性能监控。
内存控制器可以提供关于内存使用情况的信息,包括已用内存量、空闲内存量等。Chiplet可以通过读取这些信息来监控自身的内存使用情况,例如操作系统可以通过读取内存控制器的信息来获取内存使用情况,并将这些信息提供给监控程序,从而实现内存使用监控。
在某一实施例中,每个Chiplet都会持续监控自己的输入和输出数据,包括:
Chiplet会通过内建的监控系统来持续监控自己的输入和输出数据。所述监控系统用于进行数据捕获和数据分析的功能。
数据捕获阶段收集Chiplet所有的输入和输出数据。网络接口控制器可以提供关于通信流量的信息,包括发送和接收的数据包数量。Chiplet通过读取这些信息来监控自身的通信流量,如由网络驱动程序可以通过读取网络接口控制器的信息来获取通信流量情况,网络接口控制器可以将所有通过的数据包都记录下来,然后使用如网络封包截取工具如tcpdump来收集数据,并将这些信息提供给监控程序。
在数据分析阶段中分析收集到的通信数据,以检测可能的安全事件,包括对以下数据进行分析:
(1)流量分析:通过分析数据包的数量、大小、频率等特征,可以检测到异常的通信流量。例如,一个Chiplet突然开始发送大量的数据包。
(2)错误分析:通过分析接收到的数据包中进行数据一致性检查发现错误数据包,通过在数据包中添加校验和或者使用更复杂的错误检测和校正码。在接收数据时,Chiplet可以计算接收到的数据的校验和,并与数据包中的校验和进行比较。如果这两个校验和不一致,那么可能表示数据在传输过程中被篡改。如果数据一致性检查失败,可能表示数据在传输过程中被篡改或损坏,为网络攻击的一个迹象。
(3)协议分析:通过分析数据包的协议字段,可以检测到异常的协议行为。例如,一个数据包的TCP标志位设置不正确。
(4)内容分析:通过分析数据包的内容,可以检测到恶意的数据模式。例如,一个数据包的内容包含已知的攻击特征(如病毒签名)。
(5)行为分析:通过分析Chiplet的行为模式,可以检测到异常的行为。
可选地,通过Chiplet内建的入侵检测系统IDS实现对上述数据的分析。
在某一实施例中,Chiplet基于自身状态和自身的输入和输出数据,检测可能的安全事件,所述可能的安全事件包括以下五种结果:Malware:检测到可能存在恶意软件;NetworkAttack:检测到可能存在网络攻击;HardwareFailure:检测到可能存在硬件故障;DataBreach:检测到可能存在数据泄露;NoEvent:没有检测到安全事件。
当Chiplet检测到前四种结果时,需要向可信任的中心节点进行报警。
在某一实施例中,每个Chiplet持续监控自身状态,以及监控自身的输入和输出数据,包括获取以下数据:
CPUUsage:CPU使用率,0-100的整数。
MemoryUsage:内存使用率,0-100的整数。
TrafficVolume:通信流量,一个大于等于0的整数,表示单位时间内发送和接收的数据包数量。
ErrorRate:错误率,一个0-1的浮点数,表示单位时间内错误数据包的比例。
ProtocolAnomalyScore:协议异常分数,一个大于等于0的整数,表示单位时间内异常协议行为的数量。
ContentAnomalyScore:内容异常分数,一个大于等于0的整数,表示单位时间内异常数据内容的数量。
BehaviorAnomalyScore:行为异常分数,一个大于等于0的整数,表示单位时间内异常行为的数量。
其中,所述单位时间长度可以为预设周期。
在某一实施例中,采用多层感知机MLP神经网络模型。MLP是一种全连接的前馈神经网络。所述多层感知机的输入层有7个神经元,对应7维的输入数据。设置一个或多个隐藏层,每个隐藏层可以有任意数量的神经元。例如设置2个隐藏层,每个隐藏层有10个神经元。输出层有5个神经元,对应5个安全事件类型。
使用交叉熵损失函数作为损失函数用于解决多分类问题。使用随机梯度下降作为优化算法。
用标注好的训练数据,每个样本包含7维的输入数据和一个标签,标签是5个安全事件类型之一,用一组标注好的训练数据用于训练MLP模型。
模型预测时,将7维的输入数据送入模型,模型会输出5个值,这5个值可以看作是5个安全事件类型的概率,选择概率最高的类型作为预测结果。
在某一实施例中,在Chiplet中内置神经网络模型进行可能的安全事件检测,包括:
Chiplet需要定期收集和更新相关的系统和网络数据,包括CPU使用率、内存使用率、流量分析、错误分析、协议分析、内容分析和行为分析。可选地,对收集到的数据进行预处理,包括归一化或标准化,以适应神经网络模型的输入要求。
将预处理后的数据输入到神经网络模型中,模型将返回可能的安全事件类型及其概率。
对模型的输出进行解析和判断,选择概率最大的事件类型作为预测结果。如果该类型的概率超过了预定的阈值,那么就认为可能发生了这种安全事件。
在某一实施例中,当Chiplet通过内置的神经网络模型检测到可能的安全事件时,通过通信协议将报警信息发送到可信任的中心节点。可信任的中心节点在接收到报警信息后,请求其他Chiplet进行协助验证。
在某一实施例中,Chiplet使用内置的神经网络模型对收集的数据进行分析,如果检测到可能的安全事件(Malware、NetworkAttack、HardwareFailure和DataBreach),生成一条报警信息,包含事件类型、发生时间、相关数据和其他详细信息。
Chiplet将报警信息封装成一个消息或数据包,然后通过芯片系统内的网络发送给可信任的中心节点。可信任的中心节点接收到报警信息,解析并记录下来。然后,可信任的中心节点可以根据报警信息的内容决定下一步的行动,请求其他Chiplet进行验证反馈。
可信任的中心节点将验证请求发送给其他Chiplet。这个请求包含相关的事件信息和验证任务。例如,可信任的中心节点可能请求其他Chiplet收集和提供某些特定的数据,或者执行某些特定的检测任务。
其他Chiplet接收到验证请求后,执行相应的任务,然后将结果发送回可信任的中心节点。可信任的中心节点根据这些结果来确认或否定原始的报警信息。
在某一实施例中,可信任的中心节点集成硬件加密模块,用于对所有的数据和通信进行加密,以防止被窃取或篡改。并使用安全引导机制,确保可信任的中心节点在启动过程中只加载和运行经过认证的软件和程序代码。
在某一实施例中,可信任的中心节点在接收到报警信息后,请求其他Chiplet进行验证,包括对四种安全事件类型,反馈不同的数据信息。
在某一实施例中,对于Malware,需要其他Chiplet的类型和返回的数据类型为:
所有包含处理器的Chiplet:运行全面的病毒扫描并返回结果,以及提交当前正在运行的所有进程列表。
所有包含存储器的Chiplet:返回所有文件列表。
在某一实施例中,对于NetworkAttack,需要其他Chiplet的类型和返回的数据类型为:
所有包含网络接口的Chiplet:提供过去24小时内的所有网络流量数据,包括源IP、目标IP、源端口、目标端口、协议。以及提供所有当前的网络连接状态,包括源IP、目标IP、源端口、目标端口、协议。
所有使用防火墙的Chiplet:返回最近一次全面的端口扫描结果,包括开放的端口号,对应的服务。
在某一实施例中,对于HardwareFailure,需要其他Chiplet的类型和返回的数据类型为:
所有包含处理器的Chiplet:提供当前的处理器的使用率、温度、电压数据。
所有包含存储器的Chiplet:返回当前的空闲存储空间,读写速度。
在某一实施例中,对于DataBreach数据泄漏,需要其他Chiplet的类型和返回的数据类型为:
其他所有可被数据访问的Chiplet:提供经由报警发起的Chiplet的访问请求记录,访问时间,访问的数据。
所有包含网络接口的Chiplet:提供过去24小时内所有的网络流量数据。
在某一实施例中,可信任的中心节点收集所有Chiplet的分析结果,并使用群体智能算法进行集成分析,以确定是否真的发生了攻击,包括根据可能的安全事件类型,调用不同的群体智能算法模型,判断是否发生对应的安全事件类型。
在某一实施例中,可信任的中心节点收集其他Chiplet反馈的数据,并使用群体智能算法进行集成和分析,以确定是否真的发生了攻击,包括确定是否发生了恶意软件攻击。
可信任的中心节点收集所有其他Chiplet反馈数据,包括对包含处理器的Chiplet收集病毒扫描结果和正在运行的所有进程列表,对包含存储器的Chiplet收集所有文件列表。
报警Chiplet的恶意程序可能攻击和感染其他Chiplet,通过每个其他Chiplet的病毒扫描并将结果反馈给可信任的中心节点,进行验证反馈。
其中,可信任的中心节点中存储有针对Malware的群体智能集成分析模型,所述模型的训练包括:收集历史的Chiplet分析结果,这些数据包含了恶意软件攻击事件和非攻击事件。根据收集的历史数据,构建用于训练模型的特征。特征工程包括将病毒扫描结果编码为一个二进制特征(0表示没有病毒,1表示有病毒),将进程列表和文件列表转化为一些数值特征(进程数量、文件数量)。将上述特征和对应的标签(是否发生了攻击)组合成训练集。将上述特征和对应的标签(是否发生了攻击)组合成训练集。使用随机森林算法在训练集上训练模型。在训练过程中,随机森林会生成多棵决策树,将训练好的随机森林模型用于新的数据预测。
可信任的中心节点收集所有其他Chiplet的对Malware反馈结果,将收集到的新数据转化为用于模型预测的特征。将训练好的随机森林模型用于新数据的预测。对于每一个其他Chiplet反馈结果,将其转化为特征,然后输入到随机森林模型中,得到一个预测结果。
随机森林算法的预测结果是由多棵决策树的预测结果通过多数投票得到的。如果大多数决策树的预测结果表示发生了攻击,那么随机森林的最终预测结果就是发生了攻击。本发明中,将每一个其他Chiplet反馈结果输入一个决策树,基于决策树的投票判断是否发生报警Chiplet的攻击。决策树包括一个根节点,多个内部节点和多个叶节点。每个节点都代表一个特征的测试,每个分支代表一个测试的结果,每个叶节点代表一个决策。从根节点开始,对一个实例的特征进行测试,然后根据测试的结果,选择一个分支继续向下,直到达到一个叶节点,叶节点的值就是决策树的决策结果。每个Chiplet的反馈结果是一个实例,包含了多个特征,将这些特征的值输入到决策树中,通过决策树的节点进行测试,并根据测试的结果选择分支,最终到达一个叶节点,叶节点的值就是决策树对是否发生了攻击预测结果。随机森林是一个包含多个决策树的模型,它的预测结果是由所有决策树的预测结果通过多数投票得到的。每个Chiplet的反馈结果会被输入到多个决策树中,得到多个预测结果,然后通过多数投票决定最终的预测结果。
根据随机森林的预测结果,判断上报报警的Chiplet是否真的发生了恶意软件攻击。
随机森林是一种基于Bagging的集成学习方法,它的基模型是决策树。使用贪心策略训练决策树,可选地,可以基于芯片系统的多个Chiplet的反馈数据和对应的标注数据来训练决策树林。
在某一实施例中,为每个Chiplet设计一组针对Malware的特征,对于包含处理器的Chiplet:
病毒扫描结果:二进制特征,0表示没有病毒,1表示有病毒。
进程数量:一个数值特征,表示当前正在运行的进程数量。
对于包含存储器的Chiplet:
文件数量:一个数值特征,表示当前的文件数量。
上述特征可以组合成一个长向量来表示(以满足Chiplet中有处理器且有存储器的情形),向量的每一个元素对应一个特征。
对于输入数据,需要将每个Chiplet的反馈结果转化为上述的特征向量。其中,可信任的中心节点中存储的针对Malware的群体智能集成分析模型包括对针对各Chiplet反馈的Malware的数据确定特征工程的功能。
在某一实施例中,可信任的中心节点收集其他Chiplet反馈的数据,并使用群体智能算法进行集成和分析,以确定是否真的发生了攻击,包括确定是否发生了网络攻击。
在某一实施例中,对于网络攻击反馈,特征工程包括如下:
源IP和目标IP:由于IP地址是类别特征,计算每个IP地址的频率,然后将IP地址转化为频率。选择最高的预设数量的源IP和目标IP。
源端口和目标端口:计算每个源端口和目标端口地址的频率,然后将端口转化为频率。选择最高的预设数量的源端口和目标端口。
协议:协议是类别特征,使用标签编码转化为数值特征,选择最高的预设数量的协议类别的编码。
网络流量统计:基于过去24小时内的网络流量的统计特征,包括总流量、平均流量、最大流量、最小流量。
开放端口数量:直接作为数值特征使用。
将上述所有特征可以组合成一个长向量来表示特征工程。
其中,可信任的中心节点中存储的针对NetworkAttack的群体智能集成分析模型包括对针对各Chiplet反馈的NetworkAttack的数据确定特征工程的功能。
在某一实施例中,由可信任的节点中维护一个全局的IP地址字典和端口字典,其中列出了所有出现过的IP地址。当Chiplet反馈信息中出现新的IP地址或端口时,会更新这个字典。使用这个字典将每个IP地址或端口转换为其在字典中的位置。
在某一实施例中,可信任的中心节点中存储有针对NetworkAttack的群体智能集成分析模型,所述群体智能集成分析模型为集成学习模型,所述集成学习模型可以为随机森林,随机森林是一种基于决策树的集成学习方法。它通过构建多棵决策树并结合它们的预测结果,通常可以获得比单棵决策树更好的预测效果。可信任的中心节点收集所有其他Chiplet的对NetworkAttack反馈结果,将收集到的新数据转化为用于模型预测的特征。将训练好的随机森林模型用于新数据的预测。对于每一个其他Chiplet分析结果,将其转化为特征,然后输入到随机森林模型的对应决策树中,得到一个预测结果。随机森林算法的预测结果是由多棵决策树的预测结果通过多数投票得到的。如果大多数决策树的预测结果表示发生了攻击,那么随机森林的最终预测结果就是发生了攻击。根据随机森林的预测结果,判断上报报警的Chiplet是否真的发生了网络攻击。可选地,对于特定的芯片系统,对每个chiplet设置一个决策树,使用组合的chiplet数据对决策树林进行同时训练和参数优化。
在某一实施例中,可信任的中心节点收集其他Chiplet反馈的数据,并使用群体智能算法进行集成和分析,以确定是否真的发生了攻击,包括确定是否发生了数据泄漏攻击。
在某一实施例中,对于Chiplet对于DataBreach数据泄漏攻击的反馈信息,形成的特征工程包括如下:
经由报警发起的Chiplet的访问请求数量。
最高访问请求数量对应的访问时间:将最高访问请求数量对应的访问时间转化为一天中的小时数(0-23)。
访问次数最高数据的访问次数:使用哈希技巧进行转化。可信任的中心节点统计所有访问数据的频次,可选地,确定最高的N个频次的访问数据对应的频次为这一特征的N维度的特征。可选地,所述N维度特征按照从高到低的顺序排布,为最高的N个频次的访问数据哈希值的访问次数。
Chiplet上所有网络接口过去24小时内的网络流量的统计特征,统计特征为包括总流量、平均流量或最大流量之一。其中,可信任的中心节点比较所有Chiplet的网络流量的统计特征,确定总流量的M个Chiplet的统计特征为这一特征的M维度的特征。可选地,所述M维度特征按照从高到低的顺序排布。
将上述所有特征可以组合成一个长向量来表示特征工程。
其中,可信任的中心节点中存储的针对DataBreach的群体智能集成分析模型包括对针对各Chiplet反馈的DataBreach的数据确定特征工程的功能。
在某一实施例中,哈希技巧是一种处理大规模类别特征的方法,它可以将任意数量的类别映射到一个固定范围的整数,哈希函数应该能够将任意长度的字符串映射到一个固定范围的整数。特征空间的大小是哈希函数的输出范围,也就是哈希值的最大数量。这个值应该根据数据的实际情况以及计算资源的限制来确定。对于每一个访问的数据,可以将其转化为一个字符串(如果不是字符串),然后使用哈希函数计算哈希值。通过对哈希值进行统计,可以减小可信任的中心节点进行统计的计算压力。
在某一实施例中,可信任的中心节点首先需要收集所有相关的数据,然后进行特征工程,之后可信任的中心节点使用预先训练好的机器学习模型来预测数据泄露的结果。输入是特征向量,输出是数据泄露的概率。
在某一实施例中,可信任的中心节点收集其他Chiplet反馈的数据,并使用群体智能算法进行集成和分析,以确定是否真的发生了攻击,包括确定是否发生了数据泄漏攻击,包括:
确定以下特征向量:
经由报警发起的Chiplet的访问请求数量(x1);
最高访问请求数量对应的访问时间(x2),转化为一天中的小时数(0-23);
访问的数据的哈希值的访问次数(x3_1,x3_2,...,x3_N),取最高的N个频次的访问数据哈希值的访问次数作为这一特征的N维度的特征;
Chiplet上所有网络接口过去24小时内的网络流量的统计特征(x4_1,x4_2,...,x4_M)总流量,取总流量最高的M个Chiplet的统计特征作为这一特征的M维度的特征。
通过如下公式计算数据被泄漏的概率:
P(Y=1|X)=1/(1+exp(-(b0+b1*x1+b2*x2+b3_1*x3_1+b3_2*x3_2+...+b3_N*x3_N+b4_1*x4_1+...+b4_M*x4_M))),
其中,b0是截距,b1,b2,{b3_1,b3_2,...,b3_N}以及{b4_1,...,b4_M}是各个特征的权重,表示这些特征对预测结果的影响程度。P(Y=1|X)表示在给定特征X的情况下,数据被泄漏的概率。
逻辑回归模型的参数b0,b1,b2,{b3_1,b3_2,...,b3_N}以及{b4_1,...,b4_M}可以通过最大似然估计法来学习,目标是找到一组参数,使得在这组参数下,观察到的数据出现的概率最大,使用梯度下降法作为算法来求解最大似然估计。
可选地,在P(Y=1|X)超过一个预设阈值时,所述可信任的中心节点确定报警Chiplet发生了DataBreach。
在某一实施例中,可信任的中心节点收集其他Chiplet反馈的数据,并使用群体智能算法进行集成和分析,包括基于其他所有Chiplet的反馈结果确定当前芯片系统的故障程度。
在某一实施例中,可信任的中心节点基于其他所有Chiplet的反馈结果确定当前芯片系统的故障程度,包括:
为每个Chiplet定义一个故障指数,这个故障指数由处理器的使用率、温度、电压数据以及存储器的空闲存储空间,读写速度等参数决定。对于Chiplet,其故障指数可以计算如下:FailureIndex=w1*(ProcessorUsage/100)+w2*(Temperature/MaxTemperature)+w3*(Voltage/MaxVoltage)+w4*(1-FreeStorageSpace/MaxStorageSpace)+w5*(Read/WriteSpeed/MaxSpeed),
其中,w1到w5是权重,权重反映了各个参数对故障的影响程度。
ProcessorUsage:处理器使用率。
Temperature:Chiplet的当前工作温度。
MaxTemperature:Chiplet可能的最高工作温度。
Voltage:Chiplet的当前工作电压。
MaxVoltage:Chiplet可能的最大工作电压。
FreeStorageSpace:Chiplet的剩余存储空间。
MaxStorageSpace:Chiplet的最大存储空间。
Read/WriteSpeed:Chiplet的读写速度。
MaxSpeed:Chiplet的最大读写速度。
芯片系统整体的故障程度通过汇总所有Chiplet的故障指数来计算。故障指数的值基于这些参数,反映了芯片的健康状态。故障指数越高,表示芯片可能出现问题的可能性越大。
假设有n个其他Chiplet和一个报警Chiplet,整体的故障程度TotalFailureIndex计算如下:
TotalFailureIndex=p_alarm*FailureIndex_alarm+(p1*FailureIndex1+p2*FailureIndex2+...+pn*FailureIndexn)/(p1+p2+...+pn),
其中,FailureIndex_alarm是报警Chiplet的故障指数,p_alarm是其对应的权重。FailureIndex1到FailureIndexn是其他n个Chiplet的故障指数,p1到pn是它们的权重。
FailureIndex_alarm是指发出报警的Chiplet的故障指数,如果一个Chiplet发出了报警,它已经完全故障,将FailureIndex_alarm设为最大值1。
在某一实施例中,可信任的中心节点当基于群体决策算法确定报警Chiplet被攻击时,或者可信任的中心节点接收到Chiplet的报警信号中存在的安全事件类型为HardwareFailure硬件故障时,可信任的中心节点需要向所有的Chiplet广播一个隔离命令,包含被隔离Chiplet的标识,以便其他Chiplet知道需要隔离哪个Chiplet,该过程可以通过使用预先定义的协议和一个安全的通信通道来实现。
当接收到隔离命令时,每个Chiplet需要能够正确地解析这个命令,以确定需要被隔离的Chiplet。Chiplet的固件或操作系统具有解析和执行隔离命令的能力。
一旦确定了需要被隔离的Chiplet,每个Chiplet需要立即停止与该Chiplet的所有通信。这可以通过在硬件或网络层面上实现一个隔离机制来达成,例如通过修改路由表或者禁用相关的通信接口。
之后启动一个备用Chiplet来替代被隔离的Chiplet。芯片的固件或操作系统具有一种机制,可以在需要时启动备用Chiplet,并将相关的工作负载迁移到备用Chiplet上。如果为被攻击的安全事件,则不复制当前被攻击的Chiplet的数据,对于未完成执行的任务需要重新开始执行。
在某一实施例中,芯片系统会根据当前的安全环境和/或芯片系统状态,包括芯片的可信任的中心节点确定当前的安全风险分数。
在某一实施例中,安全风险分数SecurityRiskScore通过如下过程计算确定:
MalwareRisk=MalwareFrequency,
NetworkAttackRisk=NetworkAttackFrequency,
DataBreachRisk=DataBreachFrequency*DataBreachProbability,
SecurityRiskScore=MalwareRisk+NetworkAttackRisk+DataBreachRisk;
其中,MalwareRisk表示系统在预设周期内受到恶意软件攻击的风险,等于在此期间系统中的Chiplet遭受的恶意软件攻击的次数(频次)。
NetworkAttackRisk表示系统在预设周期内受到网络攻击的风险,等于在此期间系统中的Chiplet遭受的网络攻击的次数(频次)。
DataBreachRisk表示系统在预设周期内遭受数据泄露的风险,等于在此期间系统遭受数据泄露的次数(频次)与每次数据泄露发生的概率的乘积。
SecurityRiskScore表示系统在预设周期内面临的总体安全风险,等于以上三种风险的和。
其中,所述预设周期可以根据需要确定,如确定为24小时,或其他预设周期。
在某一实施例中,将安全风险分数转换为第一安全程度,通过设定一系列的阈值来实现这种转换。
可选的,在某一实施例中,如果SecurityRiskScore<3,那么第一安全程度为1(最低);如果3≤SecurityRiskScore<6,那么第一安全程度为2;如果6≤SecurityRiskScore<9,那么第一安全程度为3;如果SecurityRiskScore≥9,那么第一安全程度为4(最高)。阈值也可以根据实际情况来确定。
在某一实施例中,通过TotalFailureIndex调整第一安全程度OriginalSafetyLevel,获得第二安全程度AdjustedSafetyLevel:
AdjustedSafetyLevel=ceil
(OriginalSafetyLevel*e^(-TotalFailureIndex)),
其中,TotalFailureIndex表示芯片的整体故障程度。ceil()是一个数学函数,表示向上取整。e是自然对数的底数。如果芯片的整体故障程度增加,AdjustedSafetyLevel将减小,需要降低安全策略,以降低系统的处理压力。反之,如果第一安全程度OriginalSafetyLevel增加,第二安全程度AdjustedSafetyLevel将增大,需要采取更高级别的安全策略。
在某一实施例中,根据第一安全程度或第二安全程度来确定并实施安全策略,包括在芯片系统级别实施这个调整后的安全策略。
在某一实施例中,四个等级的安全程度对应的安全策略如下表所示,安全策略包括防火墙设置、入侵检测系统的安全设置和加密算法的设置。
在某一实施例中,在默认情况下,芯片系统的安全程度设置为第3等级。
在某一实施例中,在芯片系统的安全程度为第4等级时,芯片对于安全防护的级别很高,在预设周期内(如24H)重新进行安全程度的确定。在芯片系统的安全程度为第1-2等级时,芯片的安全防护较低,需要至少在预设周期内(如24H)重新进行安全程度的确定,所述重新进行安全程度确定的周期可以短于预设周期。
本发明通过每个Chiplet的自我监控和集群协作,可以实现对芯片系统的实时安全监控,增强了对可能的攻击行为的预防和检测能力,以及,通过利用群体智能算法进行事件分析和决策,可以充分利用各个Chiplet的信息,提高了事件检测的准确性和决策的智能程度。在检测到可能的攻击事件后,通过中心节点的协调,可以快速隔离被攻击的Chiplet,并启动备用Chiplet进行替换,从而减少了攻击带来的影响,提高了系统的稳定性。同时,通过根据当前的安全环境和/或芯片系统状态,动态地调整安全策略,可以更有效地应对不断变化的安全威胁,提高了系统的安全性。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
以上介绍了本发明的较佳实施方式,旨在使得本发明的精神更加清楚和便于理解,并不是为了限制本发明,凡在本发明的精神和原则之内,所做的修改、替换、改进,均应包含在本发明所附的权利要求概括的保护范围之内。
Claims (10)
1.一种用于Chiplet芯片系统的安全保护方法,所述芯片系统由多个Chiplet组成,所述方法包括:
每个Chiplet持续监控自身状态,以及监控自身的输入和输出数据;
所述每个Chiplet基于自身状态和自身的输入和输出数据,检测可能的安全事件;
如果Chiplet检测到可能的安全事件,将报警信息发送给可信任的中心节点;
可信任的中心节点在接收到报警信息后,基于可能的安全事件里的类型请求其他Chiplet进行验证反馈;
其他Chiplet将反馈结果发送至可信任的中心节点,可信任的中心节点收集所有其他Chiplet的反馈,并使用群体智能算法进行集成和分析;
若可信任的中心节点确定报警Chiplet发生了故障或被攻击,可信任的中心节点向所有Chiplet广播一个隔离命令,其他Chiplet在接收到所述隔离命令后,停止与该Chiplet的所有通信;
启动备用Chiplet来替代被隔离的Chiplet;
所述芯片系统在每个预设周期根据所述芯片系统当前的安全环境和/或芯片系统状态,动态地调整所述芯片系统的安全策略。
2.如权利要求1所述的用于Chiplet芯片系统的安全保护方法,其特征在于,每个Chiplet持续监控自身状态,以及监控自身的输入和输出数据,包括:
每个Chiplet持续监控自身状态,包括计算性能、内存使用;
Chiplet通过内建的监控系统来持续监控自身输入和输出数据,所述监控系统用于进行数据捕获和数据分析的功能;
数据捕获阶段收集Chiplet所有的输入和输出数据,网络接口控制器提供关于通信流量的信息,包括发送和接收的数据包数量,Chiplet通过读取这些信息来监控自身的通信流量;
在数据分析阶段中分析收集到的通信数据以检测可能的安全事件,包括分析通信流量,数据一致性检查错误,异常协议,内容异常以及行为异常。
3.如权利要求1所述的用于Chiplet芯片系统的安全保护方法,其特征在于,所述每个Chiplet基于自身状态和自身的输入和输出数据,检测可能的安全事件,所述可能的安全事件包括以下五种结果,包括用Malware、NetworkAttack、HardwareFailure、DataBreach、NoEvent来表征对应的安全事件类型,具体为:
Malware为检测到可能存在恶意软件;
NetworkAttack为检测到可能存在网络攻击;
HardwareFailure为检测到可能存在硬件故障;
DataBreach为检测到可能存在数据泄露;
NoEvent为没有检测到安全事件;
当Chiplet检测到Malware、NetworkAttack、HardwareFailure和DataBreach时,向可信任的中心节点发送报警信息。
4.如权利要求3所述的用于Chiplet芯片系统的安全保护方法,其特征在于,所述每个Chiplet基于自身状态和自身的输入和输出数据,检测可能的安全事件,包括:
采用多层感知机MLP神经网络模型;
所述多层感知机的输入层有7个神经元对应7维的输入数据;输出层有5个神经元对应5个安全事件类型;
模型预测时模型为5个安全事件类型的概率,选择概率最高的类型作为安全事件类型的预测结果。
5.如权利要求4所述的用于Chiplet芯片系统的安全保护方法,其特征在于,
Chiplet使用内置的MLP神经网络模型对收集的数据进行分析,如果检测的安全事件类型为Malware、NetworkAttack、HardwareFailure和DataBreach时,生成一条报警信息,所述报警包含安全事件类型;
Chiplet将报警信息发送给可信任的中心节点,可信任的中心节点接收到报警信息后,根据报警信息的内容请求其他Chiplet进行验证反馈。
6.如权利要求5所述的用于Chiplet芯片系统的安全保护方法,其特征在于,如果报警信息包含的安全事件类型为Malware和NetworkAttack:
可信任的中心节点收集所有其他Chiplet的对Malware和NetworkAttack反馈结果,将收集到的新数据转化为用于模型预测的特征;
将训练好的随机森林模型用于新数据的预测;
对于每一个其他Chiplet反馈结果,将其转化为特征,然后输入到随机森林模型中的决策树,得到一个预测结果;
每个Chiplet的反馈结果会被输入到多个决策树中,得到多个预测结果,然后通过多数投票决定最终的预测结果;
所述预测结果为可信任的中心节点对发送报警信息的Chiplet的是否发生Malware和NetworkAttack安全事件的预测结果。
7.如权利要求5所述的用于Chiplet芯片系统的安全保护方法,其特征在于,如果报警信息包含的安全事件类型为DataBreach,可信任的中心节点确定是否发生了数据泄漏攻击,包括,通过如下公式计算报警Chiplet数据泄漏的概率P(Y=1|X):
P(Y=1|X)=1/(1+exp(-(b0+b1*x1+b2*x2+b3_1*x3_1+b3_2*x3_2+...+b3_N*x3_N+b4_1*x4_1+...+b4_M*x4_M))),
其中,
x1为经由报警发起的Chiplet的访问请求数量;
x2为最高访问请求数量对应的访问时间;
x3_1,x3_2,...,x3_N为最高的N个频次的访问数据哈希值的访问次数;
x4_1,x4_2,...,x4_M为Chiplet上所有网络接口过去24小时内的总流量最高的M个Chiplet上所有网络接口过去24小时内的总流量;
b0是截距,b1,b2,{b3_1,b3_2,...,b3_N}以及{b4_1,...,b4_M}是各个特征的权重;
P(Y=1|X)表示在给定特征X的情况下数据泄漏的概率;
当所述P(Y=1|X)超过预设阈值时,所述可信任的中心节点确定报警Chiplet发生了DataBreach。
8.如权利要求5所述的用于Chiplet芯片系统的安全保护方法,其特征在于,可信任的中心节点基于其他所有Chiplet的反馈结果确定当前芯片系统的故障程度,包括:
为每个Chiplet定义一个故障指数FailureIndex,计算公式如下:
FailureIndex=w1*(ProcessorUsage/100)+w2*(Temperature/MaxTemperat ure)+w3*(Voltage/MaxVoltage)+w4*(1-FreeStorageSpace/MaxStorageSpace)+w5*(Read/WriteSpeed/MaxSpeed),
其中,w1到w5是权重,权重反映了各个参数对故障的影响程度;
ProcessorUsage:处理器使用率;Temperature:Chiplet的当前工作温度;MaxTemperature:Chiplet可能的最高工作温度;Voltage:Chiplet的当前工作电压;MaxVoltage:Chiplet可能的最大工作电压;FreeStorageSpace:Chiplet的剩余存储空间;MaxStorageSpace:Chiplet的最大存储空间;
Read/WriteSpeed:Chiplet的读写速度;MaxSpeed:Chiplet的最大读写速度;
整体的故障程度TotalFailureIndex计算如下:
TotalFailureIndex=p_alarm*FailureIndex_alarm+(p1*FailureIndex1+p2*FailureIndex2+...+pn*FailureIndexn)/(p1+p2+...+pn),
其中,FailureIndex_alarm是报警Chiplet的故障指数,p_alarm是其对应的权重;FailureIndex1到FailureIndexn是其他n个Chiplet的故障指数,p1到pn是它们的权重;
FailureIndex_alarm是指发出报警的Chiplet的故障指数,如果一个Chiplet发出了报警,它已经完全故障,将FailureIndex_alarm设为最大值1。
9.如权利要求8所述的用于Chiplet芯片系统的安全保护方法,其特征在于,
所述芯片系统在每个预设周期根据所述芯片系统当前的安全环境和/或芯片系统状态,动态地调整所述芯片系统的安全策略,包括由芯片内的可信任的中心节点确定当前芯片的安全风险分数SecurityRiskScore,所述安全风险分数SecurityRiskScore通过如下过程计算确定:
MalwareRisk=MalwareFrequency,
NetworkAttackRisk=NetworkAttackFrequency,
DataBreachRisk=DataBreachFrequency*DataBreachProbability,
SecurityRiskScore=MalwareRisk+NetworkAttackRisk+DataBreachRisk;
其中,MalwareRisk表示芯片系统在预设周期内受到恶意软件攻击的风险,等于在此期间芯片系统中的Chiplet遭受的恶意软件攻击的次数;
NetworkAttackRisk表示芯片系统在预设周期内受到网络攻击的风险,等于在此期间芯片系统中的Chiplet遭受的网络攻击的次数;DataBreachRisk表示芯片系统在预设周期内遭受数据泄露的风险,等于在此期间芯片系统遭受数据泄露的次数与每次数据泄露发生的概率的乘积;
SecurityRiskScore等于以上三种风险的和。
10.如权利要求9所述的用于Chiplet芯片系统的安全保护方法,其特征在于,
将安全风险分数转换为第一安全程度;
通过TotalFailureIndex调整第一安全程度OriginalSafetyLevel,获得第二安全程度AdjustedSafetyLevel;
根据第一安全程度或第二安全程度来确定并实施与安全程度对应的安全策略。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311350721.0A CN117290898B (zh) | 2023-10-18 | 2023-10-18 | 一种用于Chiplet芯片系统的安全保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311350721.0A CN117290898B (zh) | 2023-10-18 | 2023-10-18 | 一种用于Chiplet芯片系统的安全保护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117290898A true CN117290898A (zh) | 2023-12-26 |
CN117290898B CN117290898B (zh) | 2024-05-03 |
Family
ID=89258538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311350721.0A Active CN117290898B (zh) | 2023-10-18 | 2023-10-18 | 一种用于Chiplet芯片系统的安全保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117290898B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112601216A (zh) * | 2020-12-10 | 2021-04-02 | 苏州浪潮智能科技有限公司 | 一种基于Zigbee的可信平台告警方法与系统 |
CN113595949A (zh) * | 2021-09-30 | 2021-11-02 | 苏州浪潮智能科技有限公司 | 自适应pam4判决反馈均衡电路 |
CN114490194A (zh) * | 2022-04-19 | 2022-05-13 | 海光信息技术股份有限公司 | 掉电处理方法、功能节点、处理系统、设备和存储介质 |
US20220357729A1 (en) * | 2021-04-23 | 2022-11-10 | General Electric Company | Systems and methods for global cyber-attack or fault detection model |
CN115598495A (zh) * | 2022-09-16 | 2023-01-13 | 深圳市奇普乐芯片技术有限公司(Cn) | 芯片测试配置生成方法、测试方法、装置及电子设备 |
CN115828831A (zh) * | 2023-02-14 | 2023-03-21 | 之江实验室 | 基于深度强化学习的多芯粒芯片算子放置策略生成方法 |
CN116256621A (zh) * | 2023-05-15 | 2023-06-13 | 中诚华隆计算机技术有限公司 | 芯粒的测试方法、装置、电子设备及存储介质 |
US20230258716A1 (en) * | 2023-02-13 | 2023-08-17 | Intel Corporation | Techniques to perform semiconductor testing |
CN116821928A (zh) * | 2023-06-25 | 2023-09-29 | 贵州电网有限责任公司 | 一种提高电力边缘计算芯片内部数据安全性的方法及系统 |
-
2023
- 2023-10-18 CN CN202311350721.0A patent/CN117290898B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112601216A (zh) * | 2020-12-10 | 2021-04-02 | 苏州浪潮智能科技有限公司 | 一种基于Zigbee的可信平台告警方法与系统 |
US20220357729A1 (en) * | 2021-04-23 | 2022-11-10 | General Electric Company | Systems and methods for global cyber-attack or fault detection model |
CN113595949A (zh) * | 2021-09-30 | 2021-11-02 | 苏州浪潮智能科技有限公司 | 自适应pam4判决反馈均衡电路 |
CN114490194A (zh) * | 2022-04-19 | 2022-05-13 | 海光信息技术股份有限公司 | 掉电处理方法、功能节点、处理系统、设备和存储介质 |
CN115598495A (zh) * | 2022-09-16 | 2023-01-13 | 深圳市奇普乐芯片技术有限公司(Cn) | 芯片测试配置生成方法、测试方法、装置及电子设备 |
US20230258716A1 (en) * | 2023-02-13 | 2023-08-17 | Intel Corporation | Techniques to perform semiconductor testing |
CN115828831A (zh) * | 2023-02-14 | 2023-03-21 | 之江实验室 | 基于深度强化学习的多芯粒芯片算子放置策略生成方法 |
CN116256621A (zh) * | 2023-05-15 | 2023-06-13 | 中诚华隆计算机技术有限公司 | 芯粒的测试方法、装置、电子设备及存储介质 |
CN116821928A (zh) * | 2023-06-25 | 2023-09-29 | 贵州电网有限责任公司 | 一种提高电力边缘计算芯片内部数据安全性的方法及系统 |
Non-Patent Citations (9)
Title |
---|
MD SAMI UI ISLAM SAMI 等: "Enabling Security of Heterogeneous Integration: From Supply Chain to In-Field Operations", 《IEEE DESIGN & TEST》, vol. 40, no. 5, 25 April 2023 (2023-04-25), pages 86 - 95, XP011947787, DOI: 10.1109/MDAT.2023.3270234 * |
NIDISH VASHISTHA 等: "Trust Validation of Chiplets using a Physical Inspection based Certification Authority", 《2022 IEEE 72ND ELECTRONIC COMPONENTS AND TECHNOLOGY CONFERENCE》, 12 July 2022 (2022-07-12), pages 2311 - 2320 * |
YUYU ZHAO 等: "SINT: Toward a Blockchain-Based Secure In-Band Network Telemetry Architecture", 《IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY》, vol. 18, 24 April 2023 (2023-04-24), pages 2667 - 2682, XP011939760, DOI: 10.1109/TIFS.2023.3269891 * |
刘烽 等: "半导体裸芯粒分选机的开发应用", 《科技与企业》, no. 15, 6 August 2012 (2012-08-06), pages 311 * |
吕静贤: "云环境下公共计算机机房信息安全防御技术", 《电子技术与软件工程》, 15 November 2020 (2020-11-15), pages 255 - 256 * |
杨会菊 等: "复杂网络环境下基于推荐的信任模型研究", 《中国优秀硕士学位论文全文数据库 信息科技辑(月刊)》, no. 7, 15 July 2013 (2013-07-15), pages 139 - 130 * |
肖勇 等: "基于故障定位集的无线传感器网络故障检测", 《计算机测量与控制》, no. 05, 25 May 2010 (2010-05-25), pages 971 - 973 * |
蔡沛: "集成电路故障注入攻击仿真方法", 《电子技术与软件工程》, 30 July 2018 (2018-07-30), pages 85 * |
集微网: "业界工程师:chiplet的安全隐患被远远低估了", pages 1 - 5, Retrieved from the Internet <URL:https://new.qq.com/rain/a/20230411A03LLM00> * |
Also Published As
Publication number | Publication date |
---|---|
CN117290898B (zh) | 2024-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113965404B (zh) | 一种网络安全态势自适应主动防御系统及方法 | |
US10397255B1 (en) | System and method for providing security in a distributed computation system utilizing containers | |
US9998483B2 (en) | Service assurance and security of computing systems using fingerprinting | |
CN114584405B (zh) | 一种电力终端安全防护方法及系统 | |
US20070050777A1 (en) | Duration of alerts and scanning of large data stores | |
CN113660224B (zh) | 基于网络漏洞扫描的态势感知防御方法、装置及系统 | |
US20230007032A1 (en) | Blockchain-based host security monitoring method and apparatus, medium and electronic device | |
US11533325B2 (en) | Automatic categorization of IDPS signatures from multiple different IDPS systems | |
AU2006259409A1 (en) | Duration of alerts and scanning of large data stores | |
JPWO2019073557A1 (ja) | サンプルデータ生成装置、サンプルデータ生成方法およびサンプルデータ生成プログラム | |
US20230252145A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
CN112385196A (zh) | 用于报告计算机安全事故的系统和方法 | |
Elfeshawy et al. | Divided two-part adaptive intrusion detection system | |
CN117290898B (zh) | 一种用于Chiplet芯片系统的安全保护方法 | |
US20230048076A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
US20230254340A1 (en) | Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information | |
CN115987544A (zh) | 一种基于威胁情报的网络安全威胁预测方法及系统 | |
Hadžiosmanović | The process matters: cyber security in industrial control systems | |
Chen | Design and Protection Strategy of Distributed Intrusion Detection System in Big Data Environment | |
US20230252143A1 (en) | Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information | |
US20230252144A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
US20230306113A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
US20240211595A1 (en) | Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program | |
KR102396238B1 (ko) | 사이버 위협 정보 처리 장치, 사이버 위협 정보 처리 방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체 | |
JP7170955B1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |