一种卡尔曼滤波的强制访问控制方法及装置转让专利

申请号 : CN202210455755.5

文献号 : CN114564727B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 戚建淮韩丹丹崔宸刘航唐娟

申请人 : 深圳市永达电子信息股份有限公司

摘要 :

本发明公开了一种卡尔曼滤波的强制访问控制方法及装置,该方法包括获取主体向客体的操作请求;依据主体或客体在预设的涉及领域被评判的信息,确定所述操作请求进入查询模式或更新模式;若为更新模式,则依据查询的主体安全等级及涉及领域主体信任度的评判向量,并通过卡尔曼滤波器对操作后的安全级别进行预测;若为查询模式,则查询主体对客体的操作矩阵,依据在操作矩阵中的查询结果反馈信息;依据所反馈的信息允许或拒绝所述主体向客体的操作请求。本发明的有益效果:由主体在信息安全系统中的信任度和客体在系统中的重要性,运用卡尔曼滤波算法计算主体和客体的安全级别,使其更好满足信息安全访问系统中访问控制的要求。

权利要求 :

1.一种卡尔曼滤波的强制访问控制方法,其特征在于,包括步骤:S1、获取主体向客体的操作请求;

S2、依据主体或客体在预设的涉及领域被评判的信息,确定所述操作请求进入查询模式或更新模式,若为更新模式则执行步骤S3;若为查询模式则转至步骤S4;

S3、依据查询的主体安全等级及涉及领域主体信任度的评判向量,并通过卡尔曼滤波器对操作后的安全等级进行预测;所述步骤S3包括步骤:S301、对矩阵U进行列归一化处理:U′=[uij′]

其中, U=[uij]n×t为涉及领域主体信任度的评判向量;

S302、归一化后的矩阵U′与评价向量的权值向量的关系为U″=U′ω

T

其中,ω为评价向量的权值向量,ω=[ω1,…,ωt] ,0≤ωi<1,1≤i≤t且ω1+ω2+…+ωt=1,该权重向量ω与评判向量中维度的信任度正相关相关;

S303、利用卡尔曼滤波器得到操作后的主体的安全等级,所述卡尔曼滤波器的状态方程为:其中, 表示与当前涉及领域ki相似领域主体的安全等级,A是n×n维的从相似领域到当前领域的转移矩阵,Q是n×l维的过程噪声协方差矩阵;ˉ表示求预测值,^表示求期望;

S304、采用领域特征值的欧氏距离对主体衡量领域相似性:分别表示领域ki,kj的特征向量;

S305、通过卡曼滤波器对主体进行测量:其中,H是一个n×n维从当前主体安全等级到主体信任度评估的转换矩阵,R是n×n维系统评估误差的协方差矩阵;

S306、利用得到的 对主体的安全等级进行更新;

S307、对矩阵V进行列归一化处理:V′=[vij′]m×l

其中, V=[vij]m×l为客体在当前领域重要性的评判向量;

S308、归一化后的矩阵V′与重要性权值向量的关系为:V″=V′ω′

T

其中,ω′=[ω1′,…, ωl′],0≤ωi′<1,1≤i≤l且ω1′+ω2′+…+ωl′=1;

S309、利用卡尔曼滤波器得到操作后的客体的安全等级,所述卡尔曼滤波器的状态方程:其中, 表示与当前涉及领域ki相似领域主体的安全等级,A’是m×m维的从相似领域到当前领域的转移矩阵,Q’是m×m维的过程噪声协方差矩阵;

S310、采用领域特征值的欧氏距离对客体衡量领域相似性:其中, 分别表示领域kp,kq的特征向量;

S311、通过卡曼滤波器对客体进行测量:其中,H'是一个m×m维从当前客体安全等级到客体重要性评估的转换矩阵,R'是系统评估误差的协方差矩阵;

S312、利用得到的 对客体的安全等级进行更新;

S313、依据更新的主体的安全等级及客体的安全等级更新操作矩阵;

S4、查询主体对客体的操作矩阵,依据在操作矩阵中的查询结果反馈信息;

S5、依据所反馈的信息允许或拒绝所述主体向客体的操作请求。

2.根据权利要求1所述的强制访问控制方法,其特征在于,还包括步骤:S6、在步骤S1之前,设置主体、客体、领域、安全等级及操作矩阵。

3.根据权利要求2所述的强制访问控制方法,其特征在于,所述步骤S6包括步骤:S61、设置主体S={s1,s2,…,sn},其中si=(si1,si2,…,sil),1≤i≤n,l≥1,主体所涉领域内的评判维度为主体的信任度;

S62、设置客体O={o1,o2,…,om},其中oj=(oj1,oj2,…,ojt),1≤j≤m,t≥1,客体所涉领域内的客体评断维度为客体的重要性;

S63、设置领域K={k1,k2,…,kr};其中,r表示领域的个数;

S64、设置安全等级C={c1,c2,…,cq},其中,c1>c2>…>cq,ci(1≤i≤q);所述步骤S64包括步骤:S641、将安全等级分成绝密、机密、秘密、公开4类,因此q=4;

S642、把安全等级中的元素映射到0~1上的一个区间:当λ3≤ci<1时,安全等级为绝密;当λ2≤ci<λ3时,安全等级为机密;λ1≤ci<λ2时,安全等级为秘密;0≤ci<λ1时,安全等级为公开;

其中,λ1、λ2、λ3是预设的可调节的能适应相关领域的参数;

S65、设置操作矩阵D=[dij]m×n,dij表示第i个主体对第j个客体可进行的操作。

4.根据权利要求3所述的强制访问控制方法,其特征在于,所述步骤S65包括步骤:S651、设置所述操作矩阵,所述操作包括集合{只读、只写、读写、拥有}的幂集:dij=[dij1,dij2,dij3,dij4]其中,dij1对应只读操作,dij2对应只写操作,dij3对应读写操作,dij4对应拥有操作,允许操作用1表示,不允许操作用0表示。

5.一种卡尔曼滤波的强制访问控制装置,其特征在于,包括:访问控制执行模块,用于获取主体向客体的操作请求,并将其发送至访问控制决策模块;

访问控制策略模块,用于依据主体或客体在涉及领域被评判的信息,判断当前主体请求需要进入查询模式或更新模式;

若为更新模式,则令访问控制策略模块进入更新模式,依据查询的主体安全等级、涉及领域主体信任度的评判向量,并通过卡尔曼滤波器对操作后的安全等级进行预测;

若为查询模式,则查询主体对客体的操作矩阵,依据在操作矩阵中的查询结果向访问控制决策模块反馈信息;

所述访问控制决策模块,用于依据所述访问控制策略模块反馈的信息允许或拒绝所述访问控制执行模块所接收的主体向客体的操作请求;

所述访问控制策略模块还用于:

当进入更新模式时,对矩阵U进行列归一化处理:U′=[uij′]

其中, U=[uij]n×t为涉及领域主体信任度的评判向量;

归一化后的矩阵U′与评价向量的权值向量的关系为U″=U′ω

T

其中,ω为评价向量的权值向量,ω=[ω1,…,ωt] ,0≤ωi<1,1≤i≤t且ω1+ω2+…+ωt=1,该权重向量ω与评判向量中维度的信任度正相关相关;

利用卡尔曼滤波器得到操作后的主体的安全等级,所述卡尔曼滤波器的状态方程为:其中, 表示与当前涉及领域ki相似领域主体的安全等级,A是n×n维的从相似领域到当前领域的转移矩阵,Q是n×l维的过程噪声协方差矩阵;ˉ表示求预测值,^表示求期望;

采用领域特征值的欧氏距离对主体衡量领域相似性:分别表示领域ki,kj的特征向量;

通过卡曼滤波器对主体进行测量:

其中,H是一个n×n维从当前主体安全等级到主体信任度评估的转换矩阵,R是n×n维系统评估误差的协方差矩阵;

利用得到的 对主体的安全等级进行更新;

对矩阵V进行列归一化处理:

V′=[vij′]m×l

其中, V=[vij]m×l为客体在当前领域重要性的评判向量;

归一化后的矩阵V′与重要性权值向量的关系为:V″=V′ω′

T

其中,ω′=[ω1′,…,ωl′],0≤ωi′<1,1≤i≤l且ω1′+ω2′+…+ωl′=1;

利用卡尔曼滤波器得到操作后的客体的安全等级,所述卡尔曼滤波器的状态方程:其中, 表示与当前涉及领域ki相似领域主体的安全等级,A’是m×m维的从相似领域到当前领域的转移矩阵,Q’是m×m维的过程噪声协方差矩阵;

采用领域特征值的欧氏距离对客体衡量领域相似性:其中, 分别表示领域kp,kq的特征向量;

通过卡曼滤波器对客体进行测量:

其中,H'是一个m×m维从当前客体安全等级到客体重要性评估的转换矩阵,R'是系统评估误差的协方差矩阵;

利用得到的 对客体的安全等级进行更新;

依据更新的主体的安全等级及客体的安全等级更新操作矩阵。

6.根据权利要求5所述的强制访问控制装置,其特征在于,还包括设置模块;

所述设置模块用于设置主体S={s1,s2,…,sn},其中si=(si1,si2,…,sil),1≤i≤n,l≥

1,主体所涉领域内的评判维度为主体的信任度;

设置客体O={o1,o2,…,om},其中oj=(oj1,oj2,…,ojt),1≤j≤m,t≥1,客体所涉领域内的客体评断维度为客体的重要性;

设置领域K={k1,k2,…,kr};其中,r表示领域的个数;

设置安全等级C={c1,c2,…,cq},其中,c1>c2>…>cq,ci(1≤i≤q);将安全等级分成绝密、机密、秘密、公开4类,因此q=4;把安全等级中的元素映射到0~1上的一个区间:当λ3≤ci<1时,安全等级为绝密;当λ2≤ci<λ3时,安全等级为机密;λ1≤ci<λ2时,安全等级为秘密;0≤ci<λ1时,安全等级为公开;其中,λ1、λ2、λ3是预设的可调节的能适应相关领域的参数;

设置操作矩阵D=[dij]m×n,dij表示第i个主体对第j个客体可进行的操作。

7.一种计算机可读存储介质,其特征在于,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行权利要求1至4任一项所述的一种卡尔曼滤波的强制访问控制方法。

说明书 :

一种卡尔曼滤波的强制访问控制方法及装置

技术领域

[0001] 本发明涉及操作系统约束的访问控制技术领域,更具体地说,涉及一种卡尔曼滤波的强制访问控制方法及装置。

背景技术

[0002] 强制访问控制(mandatory access control,MAC)在计算机安全领域指一种由操作系统约束的访问控制,目标是限制主体或者发起者访问或对对象或目标执行某种操作的
能力,进而阻止直接或简介的非法入侵。系统中的主/客体都被分配一个固定的安全级别,
在符合安全策略条件下,利用主、客体安全级别决定一个主体是否可以访问某个客体。
[0003] MAC的本质是基于格的非循环单向信息流政策,系统中的每个主体都被授予一个安全级别,而每个客体被指定为一定的敏感密集,访问控制的两个关键规则是:不上读和不
下写,即限定信息流只能从低安全级向高安全级流动,任何违反非循环信息流的行为都是
被禁止的。该规则主要通过梯度安全标记实现信息的单向流通,可以有效阻止信息泄露,其
缺陷是实现工作量大、管理不便且不够灵活。分析其原因不难发现强制访问控制中主体和
客体的安全级别很难确定。

发明内容

[0004] 本发明提供了一种卡尔曼滤波的强制访问控制方法及装置,解决现有技术的访问控制实现工作量大、管理不便且不够灵活,强制访问控制中主体和客体的安全级别很难确
定的问题。
[0005] 为解决上述问题,一方面,本发明提供一种卡尔曼滤波的强制访问控制方法,包括步骤:
[0006] S1、获取主体向客体的操作请求;
[0007] S2、依据主体或客体在预设的涉及领域被评判的信息,确定所述操作请求进入查询模式或更新模式,若为更新模式则执行步骤S3;若为查询模式则转至步骤S4;
[0008] S3、依据查询的主体安全等级及涉及领域主体信任度的评判向量,并通过卡尔曼滤波器对操作后的安全级别进行预测;
[0009] S4、查询主体对客体的操作矩阵,依据在操作矩阵中的查询结果反馈信息;
[0010] S5、依据所反馈的信息允许或拒绝所述主体向客体的操作请求。
[0011] 还包括步骤:
[0012] S6、设置主体、客体、领域、安全级别及操作矩阵。
[0013] 所述步骤S6包括步骤:
[0014] S61、设置主体S={s1,s2,…,sn},其中si=(si1,si2,…,sil),1≤i≤n,l≥1,主体所涉领域内的评判维度为主体的信任度;
[0015] S62、设置客体O={o1,o2,…,om},其中oj=(oj1,oj2,…,ojt),1≤j≤m,t≥1,客体所涉领域内的客体评断维度为客体的重要性;
[0016] S63、设置领域K={k1,k2,…,kr};
[0017] S64、设置安全等级C={c1,c2,…,cq},其中,c1>c2>…>cq, ci(1≤i≤q);
[0018] S65、设置操作矩阵D=[dij]m×n,dij表示第i个主体对第j个客体可进行的操作,且dija1 a2 a3
=c ×c ×c ,其中,a1=(si,ki),a2=(si,ki),a3=(si’,ki)。
[0019] 所述步骤S64包括步骤:
[0020] S641、将安全等级分成绝密、机密、秘密、公开4类,因此q=4;
[0021] S642、把安全等级中的元素映射到0~1上的一个区间:当λ3≤ci<1时,安全等级为绝密;当λ2≤ci<λ3时,安全等级为机密;λ1≤ci<λ2时,安全等级为秘密;0≤ci<λ1时,安全等级为公开;
[0022] 其中,λ1、λ2、λ3是预设的可调节的能适应相关领域的参数。
[0023] 所述步骤S65包括步骤:
[0024] S651、设置所述操作矩阵,所述操作包括集合{只读、只写、读写、拥有}的幂集:
[0025] dij=[dij1,dij2,dij3,dij4]
[0026] 其中,dij1对应只读操作,dij2对应只写操作,dij3对应读写操作,dij4对应拥有操作,允许操作用1表示,不允许操作用0表示。
[0027] 所述步骤S3包括步骤:
[0028] S301、对矩阵U进行列归一化处理:
[0029] U’=[uij’]n×t
[0030] 其中,uij’=(uij‑min{u1j,…,unj})/(max{u1j,…,unj }‑min{u1j,…,unj });
[0031] S302、归一化后的矩阵U’与评价向量的权值向量的关系为
[0032] U’’=U’ω
[0033] 其中,ω为评价向量的权值向量,ω=[ω1,…,ωt]T,0≤ωi<1,1≤i≤t且ω1+ω2+…+ωt=1,该权值向量ω与评判向量中维度的信任度正相关;
[0034] S303、利用卡尔曼滤波器得到操作后的主体的安全等级,所述卡尔曼滤波器的状态方程为:
[0035] ˉˆcS=AcS(sim(ki))
[0036] ˉPk=APk‑1AT+Q
[0037] 其中,cS(sim(ki))表示与当前涉及领域ki相似领域主体的安全等级,A是n×n维的从相似领域到当前领域的转移矩阵,Q是n×l维的过程噪声协方差矩阵;
[0038] S304、采用领域特征值的欧氏距离对主体衡量领域相似性:
[0039] sim(ki,kj)=||Хki‑Хkj||2
[0040] Хki,Хkj分别表示领域ki,kj的特征向量;
[0041] S305、通过卡曼滤波器对主体进行测量:
[0042] Kalmank=ˉPkHT(HˉPkHT+R)‑1
[0043] ˆcS=ˉˆcS+Kalmank(U’’‑HˉˆcS)
[0044] Pk=(I‑KalmankH)ˉPk
[0045] 其中,H是一个n×n维从当前主体安全等级到主体信任度评估的转换矩阵,R是n×n维系统评估误差的协方差矩阵;
[0046] S306、利用得到的ˆcS对主体的安全等级进行更新;
[0047] S307、对矩阵V进行列归一化处理:
[0048] V’=[vij’]m×l
[0049] 其中,vij’=(vij‑min{v1j,…,vmj})/(max{v1j,…,vmj }‑min{v1j,…,vmj });
[0050] S308、归一化后的矩阵V’与重要性权值向量的关系为:
[0051] V’’=V’ω’
[0052] 其中,ω’=[ω’1,…,ω’t]T,0≤ω’i<1,1≤i≤l且ω’1+ω’2+…+ω’t=1;
[0053] S309、利用卡尔曼滤波器得到操作后的客体的安全等级,所述卡尔曼滤波器的状态方程:
[0054] ˉˆoS=A’oS(sim(ki))
[0055] ˉP’k=A’P’k‑1A’T+Q’
[0056] 其中,oS(sim(ki))表示与当前涉及领域ki相似领域主体的安全等级, A’是m×m维的从相似领域到当前领域的转移矩阵,Q’是m×m维的过程噪声协方差矩阵;
[0057] S310、采用领域特征值的欧氏距离对客体衡量领域相似性:
[0058] sim(ki,kj)=||Хki‑Хkj||2
[0059] Хki,Хkj分别表示领域ki,kj的特征向量;
[0060] S311、通过卡曼滤波器对客体进行测量:
[0061] Kalman’k=ˉP’kH’T(HˉP’kH’T+R’)‑1
[0062] ˆoS=ˉˆoS+Kalman’k(V’’‑H’ˉˆoS)
[0063] P’k=(I‑Kalman’kH’)ˉP’k
[0064] 其中,H是一个m×m维从当前客体安全等级到客体重要性评估的转换矩阵,R是系统评估误差的协方差矩阵;
[0065] S312、利用得到的ˆoS对客体的安全等级进行更新;
[0066] S313、依据更新的主体的安全等级及客体的安全等级更新操作矩阵。
[0067] 一方面,提供一种卡尔曼滤波的强制访问控制装置,包括:
[0068] 访问控制执行模块,用于获取主体向客体的操作请求,并将其发送至访问控制决策模块;
[0069] 访问控制策略模块,用于依据主体或客体在涉及领域被评判的信息,判断当前主体请求需要进入查询模式或更新模式;
[0070] 若为更新模式,则令访问控制策略模块进入更新模式,依据查询的主体安全等级、涉及领域主体信任度的评判向量,并通过卡尔曼滤波器对操作后的安全级别进行预测;
[0071] 若为查询模式,则查询主体对客体的操作矩阵,依据在操作矩阵中的查询结果向访问控制决策模块反馈信息;
[0072] 所述访问控制决策模块,用于依据所述访问控制策略模块反馈的信息允许或拒绝所述访问控制执行模块所接收的主体向客体的操作请求。
[0073] 还包括设置模块;
[0074] 所述设置模块用于设置主体S={s1,s2,…,sn},其中si=(si1,si2,…,sil),1≤i≤n,l≥1,主体所涉领域内的评判维度为主体的信任度;
[0075] 设置客体O={o1,o2,…,om},其中oj=(oj1,oj2,…,ojt),1≤j≤m,t≥1,客体所涉领域内的客体评断维度为客体的重要性;
[0076] 设置领域K={k1,k2,…,kr};
[0077] 设置安全等级C={c1,c2,…,cq},其中,c1>c2>…>cq, ci(1≤i≤q);
[0078] 设置操作矩阵D=[dij]m×n,dij表示第i个主体对第j个客体可进行的操作,且dij=ca1a2 a3
×c ×c ,其中,a1=(si,ki),a2=(si,ki),a3=(si’,ki)。
[0079] 所述访问控制策略模块还用于:
[0080] 当进入更新模式时,对矩阵U进行列归一化处理:
[0081] U’=[uij’]n×t
[0082] 其中,uij’=(uij‑min{u1j,…,unj})/(max{u1j,…,unj }‑min{u1j,…,unj });
[0083] 归一化后的矩阵U’与评价向量的权值向量的关系为
[0084] U’’=U’ω
[0085] 其中,ω为评价向量的权值向量,ω=[ω1,…,ωt]T,0≤ωi<1,1≤i≤t且ω1+ω2+…+ωt=1,该权值向量ω与评判向量中维度的信任度正相关;
[0086] 利用卡尔曼滤波器得到操作后的主体的安全等级,所述卡尔曼滤波器的状态方程为:
[0087] ˉˆcS=AcS(sim(ki))
[0088] ˉPk=APk‑1AT+Q
[0089] 其中,cS(sim(ki))表示与当前涉及领域ki相似领域主体的安全等级,A是n×n维的从相似领域到当前领域的转移矩阵,Q是n×l维的过程噪声协方差矩阵;
[0090] 采用领域特征值的欧氏距离对主体衡量领域相似性:
[0091] sim(ki,kj)=||Хki‑Хkj||2
[0092] Хki,Хkj分别表示领域ki,kj的特征向量;
[0093] 通过卡曼滤波器对主体进行测量:
[0094] Kalmank=ˉPkHT(HˉPkHT+R)‑1
[0095] ˆcS=ˉˆcS+Kalmank(U’’‑HˉˆcS)
[0096] Pk=(I‑KalmankH)ˉPk
[0097] 其中,H是一个n×n维从当前主体安全等级到主体信任度评估的转换矩阵,R是n×n维系统评估误差的协方差矩阵;
[0098] 利用得到的ˆcS对主体的安全等级进行更新;
[0099] 对矩阵V进行列归一化处理:
[0100] V’=[vij’]m×l
[0101] 其中,vij’=(vij‑min{v1j,…,vmj})/(max{v1j,…,vmj }‑min{v1j,…,vmj });
[0102] 归一化后的矩阵V’与重要性权值向量的关系为:
[0103] V’’=V’ω’
[0104] 其中,ω’=[ω’1,…,ω’t]T,0≤ω’i<1,1≤i≤l且ω’1+ω’2+…+ω’t=1;
[0105] 利用卡尔曼滤波器得到操作后的客体的安全等级,所述卡尔曼滤波器的状态方程:
[0106] ˉˆoS=A’oS(sim(ki))
[0107] ˉP’k=A’P’k‑1A’T+Q’
[0108] 其中,oS(sim(ki))表示与当前涉及领域ki相似领域主体的安全等级, A’是m×m维的从相似领域到当前领域的转移矩阵,Q’是m×m维的过程噪声协方差矩阵;
[0109] 采用领域特征值的欧氏距离对客体衡量领域相似性:
[0110] sim(ki,kj)=||Хki‑Хkj||2
[0111] Хki,Хkj分别表示领域ki,kj的特征向量;
[0112] 通过卡曼滤波器对客体进行测量:
[0113] Kalman’k=ˉP’kH’T(HˉP’kH’T+R’)‑1
[0114] ˆoS=ˉˆoS+Kalman’k(V’’‑H’ˉˆoS)
[0115] P’k=(I‑Kalman’kH’)ˉP’k
[0116] 其中,H是一个m×m维从当前客体安全等级到客体重要性评估的转换矩阵,R是系统评估误差的协方差矩阵;
[0117] 利用得到的ˆoS对客体的安全等级进行更新;
[0118] 依据更新的主体的安全等级及客体的安全等级更新操作矩阵。
[0119] 一方面,提供一种计算机可读存储介质,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行以上所述的一种卡尔曼滤波的强制访问控制方法。
[0120] 本发明的有益效果是:由主体在信息安全系统中的信任度和客体在系统中的重要性,运用卡尔曼滤波算法计算主体和客体的安全级别,使其更好满足信息安全访问系统中
访问控制的要求。

附图说明

[0121] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于
本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附
图。
[0122] 图1是本发明一实施例提供的一种卡尔曼滤波的强制访问控制方法的流程图;
[0123] 图2是本发明一实施例提供的一种卡尔曼滤波的强制访问控制装置的结构示意图;
[0124] 图3是本发明一实施例提供的更新模式的流程图。

具体实施方式

[0125] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于
本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施
例,都属于本发明保护的范围。
[0126] 在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,
因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解
为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、
“第二”的特征可以明示或者隐含地包括一个或者更多个特征。在本发明的描述中,“多个”
的含义是两个或两个以上,除非另有明确具体的限定。
[0127] 在本发明中,“示例性”一词用来表示“用作例子、例证或说明”。本发明中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任
何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列
出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况
下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必
要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合
本发明所公开的原理和特征的最广范围相一致。
[0128] 本发明提出一种卡尔曼滤波的强制访问控制方法及装置,涉及一种保护资源免收非授权访问的安全机制方法,引入卡尔曼滤波状态估计的思想,提出了基于卡尔曼滤波的
强制访问控制模型。解决经典强制访问控制模型工作量大,主体和客体安全级别难以确定
的缺陷。
[0129] 参见图1,图1是本发明一实施例提供的一种卡尔曼滤波的强制访问控制方法的流程图,该强制访问控制方法包括步骤S1‑S5:
[0130] S1、获取主体向客体的操作请求。
[0131] 本实施例中,参见图2,图2是本发明一实施例提供的一种卡尔曼滤波的强制访问控制装置的结构示意图,通过该卡尔曼滤波的强制访问控制装置实现该卡尔曼滤波的强制
访问控制方法,该卡尔曼滤波的强制访问控制装置包括访问控制执行模块、访问控制策略
模块和访问控制决策模块。其中,访问控制执行模块,用于获取主体向客体的操作请求,并
将其发送至访问控制决策模块。访问控制执行模块是指获取主体向客体的操作请求,并将
其发送至访问控制决策模块,由访问控制决策模块发出主体操作许可请求。
[0132] S2、依据主体或客体在预设的涉及领域被评判的信息,确定所述操作请求进入查询模式或更新模式,若为更新模式则执行步骤S3;若为查询模式则转至步骤S4。
[0133] 本实施例中,访问控制策略模块依据主体或客体在涉及领域被评判的信息,判断当前主体请求需要进入查询模式或更新模式;即访问控制策略模块依据主体或客体在涉及
领域被评判的信息,判断当前主体请求需要进入查询模式或更新模式,若为更新模式则执
行步骤S3;若为查询模式,则通过查询主体对客体的操作矩阵D,若操作矩阵D中对应的元素
是“1”,则向访问控制决策模块传递“yes”;否则向访问控制决策模块传递“no”。
[0134] S3、依据查询的主体安全等级及涉及领域主体信任度的评判向量,并通过卡尔曼滤波器对操作后的安全级别进行预测。
[0135] 本实施例中,若为更新模式,则令访问控制策略模块进入更新模式,依据查询的主体安全等级、涉及领域主体信任度的评判向量,并通过卡尔曼滤波器对操作后的安全级别
S(K)
进行预测。访问控制策略模块进入更新模式,依据查询的主体安全等级c 、涉及领域主体
信任度的评判向量U=[uij]n×t,通过卡尔曼滤波器对操作后的安全级别进行预测。
[0136] 所述步骤S3包括步骤S301‑S313:
[0137] S301、对矩阵U进行列归一化处理:
[0138] U’=[uij’]n×t
[0139] 其中,uij’=(uij‑min{u1j,…,unj})/(max{u1j,…,unj }‑min{u1j,…,unj })。
[0140] S302、归一化后的矩阵U’与评价向量的权值向量的关系为
[0141] U’’=U’ω
[0142] 其中,ω为评价向量的权值向量,ω=[ω1,…,ωt]T,0≤ωi<1,1≤i≤t且ω1+ω2+…+ωt=1,该权值向量ω与评判向量中维度的信任度正相关。
[0143] S303、利用卡尔曼滤波器得到操作后的主体的安全等级,所述卡尔曼滤波器的状态方程为:
[0144] ˉˆcS=AcS(sim(ki))
[0145] ˉPk=APk‑1AT+Q
[0146] 其中,cS(sim(ki))表示与当前涉及领域ki相似领域主体的安全等级,ˉ表示求预测S S
值,ˆ表示求期望,ˉˆc表示对c求期望后求预测值,下同。A是n×n维的从相似领域到当前领
域的转移矩阵,Q是n×l维的过程噪声协方差矩阵;
[0147] S304、采用领域特征值的欧氏距离对主体衡量领域相似性:
[0148] sim(ki,kj)=||Хki‑Хkj||2
[0149] Хki,Хkj分别表示领域ki,kj的特征向量;
[0150] S305、通过卡曼滤波器对主体进行测量:
[0151] Kalmank=ˉPkHT(HˉPkHT+R)‑1
[0152] ˆcS=ˉˆcS+Kalmank(U’’‑HˉˆcS)
[0153] Pk=(I‑KalmankH)ˉPk
[0154] 其中,H是一个n×n维从当前主体安全等级到主体信任度评估的转换矩阵,R是n×n维系统评估误差的协方差矩阵;
[0155] S306、利用得到的ˆcS对主体的安全等级进行更新;
[0156] S307、对矩阵V进行列归一化处理:
[0157] V’=[vij’]m×l
[0158] 其中,vij’=(vij‑min{v1j,…,vmj})/(max{v1j,…,vmj }‑min{v1j,…,vmj })。
[0159] 本实施例中,设置查询的客体安全等级cO、客体在当前领域重要性的评判向量V=[vij]m×l。
[0160] S308、归一化后的矩阵V’与重要性权值向量的关系为:
[0161] V’’=V’ω’
[0162] 其中,ω’=[ω’1,…,ω’t]T,0≤ω’i<1,1≤i≤l且ω’1+ω’2+…+ω’t=1。
[0163] 本实施例中,该权值向量ω’与评判向量中维度在涉及领域的重要性正相关。
[0164] S309、利用卡尔曼滤波器得到操作后的客体的安全等级,所述卡尔曼滤波器的状态方程:
[0165] ˉˆoS=A’oS(sim(ki))
[0166] ˉP’k=A’P’k‑1A’T+Q’
[0167] 其中,oS(sim(ki))表示与当前涉及领域ki相似领域主体的安全等级,A’是m×m维的从相似领域到当前领域的转移矩阵,Q’是m×m维的过程噪声协方差矩阵;
[0168] S310、采用领域特征值的欧氏距离对客体衡量领域相似性:
[0169] sim(ki,kj)=||Хki‑Хkj||2
[0170] Хki,Хkj分别表示领域ki,kj的特征向量;
[0171] S311、通过卡曼滤波器对客体进行测量:
[0172] Kalman’k=ˉP’kH’T(HˉP’kH’T+R’)‑1
[0173] ˆoS=ˉˆoS+Kalman’k(V’’‑H’ˉˆoS)
[0174] P’k=(I‑Kalman’kH’)ˉP’k
[0175] 其中,H是一个m×m维从当前客体安全等级到客体重要性评估的转换矩阵,R是系统评估误差的协方差矩阵;
[0176] S312、利用得到的ˆoS对客体的安全等级进行更新;
[0177] S313、依据更新的主体的安全等级及客体的安全等级更新操作矩阵。
[0178] S4、查询主体对客体的操作矩阵,依据在操作矩阵中的查询结果反馈信息;
[0179] 本实施例中,若为查询模式,则查询主体对客体的操作矩阵,依据在操作矩阵中的查询结果向访问控制决策模块反馈信息;即根据主体请求操作查询操作矩阵D,若D中对应
元素是“1”,则向访问控制决策模块传递“yes”,否则向访问控制分析模块传递“no”。
[0180] S5、依据所反馈的信息允许或拒绝所述主体向客体的操作请求。
[0181] 本实施例中,访问控制决策模块依据所述访问控制策略模块反馈的信息允许或拒绝所述访问控制执行模块所接收的主体向客体的操作请求。即访问控制决策模块将系统的
决策结果(“yes”表示允许,“no”表示拒绝)给予访问控制执行模块实施对主体的操作请求
允许或拒绝。
[0182] 优选的,该卡尔曼滤波的强制访问控制方法还包括步骤S6:
[0183] S6、设置主体、客体、领域、安全级别及操作矩阵。所述步骤S6包括步骤S61‑S65:
[0184] S61、设置主体S={s1,s2,…,sn},其中si=(si1,si2,…,sil),1≤i≤n,l≥1,主体所涉领域内的评判维度为主体的信任度。
[0185] 本实施例中,主体是指能够对其他计算机资源或合法用户实施动作的主动对象,包括但不限于用户、操作系统等。用符号S={s1,s2,…,sn}表示,其中si=(si1,si2,…,sil),1
≤i≤n,l≥1,主体所涉领域内评判维度(主体的信任度)。
[0186] S62、设置客体O={o1,o2,…,om},其中oj=(oj1,oj2,…,ojt),1≤j≤m,t≥1,客体所涉领域内的客体评断维度为客体的重要性。
[0187] 本实施例中,客体是指能够对其他计算机资源或合法用户实施动作的被动对象,包括但不限于计算机物理设备、文件、数据库等。用符号O={o1,o2,…,om}表示,其中oj=(oj1,
oj2,…,ojt),1≤j≤m,t≥1,所涉领域内客体评断维度(客体重要性)。
[0188] S63、设置领域K={k1,k2,…,kr};
[0189] 本实施例中,领域在本文指主客体某种状态发生所处的区域。用符号K={k1,k2,…,kr}表示。同一主、客体可能同时属于多个领域。
[0190] S64、设置安全等级C={c1,c2,…,cq},其中,c1>c2>…>cq, ci(1≤i≤q);所述步骤S64包括步骤S641‑S642:
[0191] S641、将安全等级分成绝密、机密、秘密、公开4类,因此q=4;
[0192] S642、把安全等级中的元素映射到0~1上的一个区间:当λ3≤ci<1时,安全等级为绝密;当λ2≤ci<λ3时,安全等级为机密;λ1≤ci<λ2时,安全等级为秘密;0≤ci<λ1时,安全等级为公开;
[0193] 其中,λ1、λ2、λ3是预设的可调节的能适应相关领域的参数。
[0194] 本实施例中,安全等级根据主体在涉及领域内的信任度、客体在所涉及领域内的重要度确定的一个分层标志。
[0195] 一般安全等级分成绝密、机密、秘密、公开4类,因此q=4,由于安全等级是语言描述,可通过带通滤波器,把安全等级中的元素映射到0~1上的一个区间,其中λ1、λ2、λ3是可调
节的能适应相关领域的参数,在计算过程中使用参数c表示。
[0196] S65、设置操作矩阵D=[dij]m×n,dij表示第i个主体对第j个客体可进行的操作,且dija1 a2 a3
=c ×c ×c ,其中,a1=(si,ki),a2=(si,ki),a3=(si’,ki)。所述步骤S65包括步骤S651:
[0197] S651、设置所述操作矩阵,所述操作包括集合{只读、只写、读写、拥有}的幂集:
[0198] dij=[dij1,dij2,dij3,dij4]
[0199] 其中,dij1对应只读操作,dij2对应只写操作,dij3对应读写操作,dij4对应拥有操作,允许操作用1表示,不允许操作用0表示。
[0200] 本实施例中,操作矩阵在本文指在安全策略“不上读,不下写”下主体对客体可进行的操作,所述操作是指集合{只读、只写、读写、拥有}的幂集。用符号D=[dij]m×n表示,其中
元素dij=[dij1,dij2,dij3,dij4]表示第i个主体对第j个客体可进行的操作,dij1对应只读操作,
dij2对应只写操作,dij3对应读写操作,dij4对应拥有操作,允许操作用1表示,不允许操作用0
a1 a2 a3
表示,且dij=c ×c ×c ,其中,a1=(si,ki),a2=(si,ki),a3=(si’,ki),即当前元素的值由
主体所涉领域内的安全级别,客体所涉领域的安全等级及主体在操作后的状态共同决定。
[0201] 本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存
储介质中,并由处理器进行加载和执行。为此,本发明实施例提供一种存储介质,其中存储
有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种卡尔曼
滤波的强制访问控制方法中的步骤。
[0202] 其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
[0203] 由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种卡尔曼滤波的强制访问控制方法中的步骤,因此,可以实现本发明实施例所提供的任一种卡尔曼
滤波的强制访问控制方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
[0204] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。