一种工业控制系统信息安全防护系统的制作方法

文档序号:15567442发布日期:2018-09-29 03:40阅读:160来源:国知局

本发明属于信息检索;及其数据库结构技术领域,尤其涉及一种工业控制系统信息安全防护系统。



背景技术:

目前,业内常用的现有技术是这样的:

工业大数据是智能制造的核心技术和推动力,利用数据来了解和解决可见的问题;利用数据来分析和预测不可见的问题;从数据中挖掘新的知识,再利用知识去重新定义问题,使得可见或不可见的问题都可以在制造系统中避免。因此工业大数据的挖掘是大数据分析的基础。

由于工业控制系统对实时性的要求很高,如果要求控制设备在正常操作的同时记录、采集和报告所有的操作过程会给控制设备带来复杂的配置、运算负荷和存储压力,这些造成对整个控制系统的实时性的负面影响。但是工业控制流程的优化又需要实际运行操作的具体数据对整个工业控制系统全盘优化,特别是需要在第一时间发现系统运行出现的任何问题和潜在的信息安全隐患都需要详实的生产过程的运行数据。

随着标准网络和互联网技术在工业控制系统的广泛应用,工业控制系统的安全威胁正日益加剧,很多工业控制系统加装了安全防护设备来解决日益严峻安全问题,这类安全防护设备具备访问控制、状态检测和深度包解析的功能。这些安全防护设备的安全防护功能的基础上,需要一个利用工业控制系统安全防护设备进行工业大数据采集的有效方法。

云计算是全球搜索巨头google在2007年提出的全新概念,这一概念提出之后,在ibm、谷歌、亚马逊等it巨头的大力推动下,如今云计算已经成为了产业界,学术界和政府关注的焦点。云计算是一种具有动态延展能力的计算方式,它可以看作是现有的分布式计算、并行处理计算、网格计算等概念的延伸和发展应用,并将其作为一种“基础设施”出现在人们的视野。通俗来讲,云计算是以用户为中心的一种计算服务。这种服务就如同天上的“云”一般,用户的不同需求决定“云”的“规模”、“形状”和“配置”。用户终端设备的计算和存储能力有限,而拥有近似无限资源的云就为用户提供了很多便利。云计算平台能在极短时间内处理非常大数量级的信息,进而把资源(包括计算资源、存储空间及网络带宽等)以服务的形式用互联网提供给需要此类资源的个体或公司,大大减轻了资源受限用户对软件管理及硬件维护的负担,从而彻底改变了传统it行业的架构和运行方式。然而云计算在提供多种高效弹性的服务的同时,也遇到很多挑战和亟需处理的问题。随着数据的爆发式增长,根据国际数据公司(idc)的最新统计分析,全球产生和复制的数据以每2年翻一番的速度激增,到2020年,全球数据总量将达到44zb。这些大量的数据将会给云服务器带来了前所未有的挑战。另一方面,存储在服务器中大量的冗余数据就是限制云存储发展的另一大瓶颈。根据emc的调查报告显示,随着云端数据的快速增长,云存储中的冗余数据在备份应用中达到80%以上,在文件系统中已经达到60%以上,这些冗余数据消耗着大量的存储资源和管理资源。这就不可避免地给服务器带来了巨大的数据存储开销,并造成网络传输带宽的浪费,大量的重复数据将会消耗大量的计算开销和存储开销。因此,如何通过删除重复数据从而保证数据存储的高效性成为了亟待解决的问题。为了解决上述问题,数据去重技术应运而生,通过数据去重技术可以消除数据冗余,相同文件只保留一个物理副本,从而有效降低用户端上传数据耗费的带宽及节省服务器端的存储空间。对于云计算平台而言,数据去重不仅可以减少存储时付出的硬件成本,还可以提升存储空间的利用率,提高访问效率。数据去重存储技术目前广泛应用于商业云存储及数据备份服务,例如dropbox、mozy和memopal等商业存储中。然而在去重技术在节省用户和云服务器大量的存储与管理资源的同时,出现了许多安全问题。其中最严重的问题之一就是标签欺骗攻击。标签欺骗攻击指的是敌手并不拥有数据,而服务器只是使用简单的询问数据的标签的方式判断一个新的用户是否拥有与服务器存储的数据是否相同。如果标签一致,则新的用户通过服务器的验证,云服务器就允许新的用户访问存储在云服务器上的数据而不需要用户再次上传数据。因此,敌手可以通过穷举方案或者各种其他攻击方案获得数据的标签,从而获得云服务器数据的访问权限。为了解决这一问题,许多数据拥有证明方案被提出,使用数据拥有证明方案可以让云服务器有效验证新的用户是否拥有服务器存储的数据。只有当用户通过服务器的数据拥有证明之后,用户才允许访问存储在云服务器上的数据。然而,现有的方案只针对于相同的数据拥有证明,并没有方案可以实现相似的数据拥有证明。实际上,对密文数据进行相似数据拥有证明是困难,这是因为用户的数据通常以密文的形式存储在云服务器上,如果使用传统加密方案,不同数据的密钥选择是随机选择的,因此即使是相似的数据加密之后也会获得相差度很大的密文数据,云服务器就无法判断这些密文数据的明文是否是相似的,这也就阻碍了相似数据拥有证明的实现。如果相似数据拥有证明方案可以实现,则云服务器将进一步提升数据去重的效率,即可以实现相似数据的去重,这将进一步提升云服务器存储空间的利用率并减少带宽浪费。

综上所述,现有技术存在的问题是:

现有技术中,工业控制系统实际操作和安全防护性能差。

现有的数据拥有证明方案仅能支持相同的数据拥有证明,不能支持相似数据的拥有证明。

如果直接现有的数据拥有证明方案,云服务器无法判断两个密文数据的明文是否是相似的

如果云服务器仅通过验证数据标签的方案判断用户是否拥有数据,则存在标签欺骗攻击,用户可以通过穷举等攻击方案获得云服务器数据的访问权限。

解决上述技术问题的难度和意义:

如果相似数据拥有证明方案可以实现,则云服务器将进一步提升数据去重的效率,即可以实现相似数据的去重。

通过实现相似数据拥有证明方案,可以防止恶意敌手通过标签欺骗攻击获得不应该获得数据的访问权限。

服务器只能验证存储在服务器的数据与用户的数据是否是相似的,而不能获得用户数据。



技术实现要素:

针对现有技术存在的问题,本发明提供了一种工业控制系统信息安全防护系统。

本发明是这样实现的,一种工业控制系统信息安全防护系统,所述工业控制系统信息安全防护系统计算出数据w'和数据w的实际距离;用户c和云服务器s分别以密文数据cw'和cw作为输入;如果用户c声称拥有数据w'的标签tw'与存储在云服务器上的数据cw的标签tw相似,则用户c需要向云服务器s证明dis(cw',cw)≤t,t是设置用于判断数据是否相似的参数;disham(a,b)表示a和b的汉明距离;通过工业控制系统信息安全防护系统,云服务器s仅获得密文数据cw'和cw的汉明距离且不能获得数据w'的任何信息,用户c不能获得数据w的任何信息;相似数据拥有证明定义为下面的两方交互式协议:

fuzzypow:[c:cw';s:cw]→[c:⊥;s:disham(cw,cw')]。

进一步,所述工业控制系统信息安全防护系统通过统计的个数来计算汉明距离;用户c和云服务器s分别拥有输入串cw'=(cw'[1],...,cw'[|w'|])和串cw=(cw[1],...,cw[|w|]);用户c作为发送者生成n个随机数作为盲化因子并与云服务器s发起n个不经意传输协议。

进一步,所述工业控制系统信息安全防护系统当用户c的输入为0时,令不经意传输的输出值为ri+cw'[i];当用户c的输入为1时,令不经意传输的输出值为如果cw[i]=0,那么有如果cw[i]=1,那么有云服务器s是n轮不经意传输协议的接收者,输入cw=(cw[1],...,cw[|w|])得到对于i=1,...,n的值然后云服务器将所有的相加得到最后,用户发送∑r给云服务器s,云服务器s的最终输出为disham(cw',cw)=∑t-∑r;如果设置的最大汉明距离为t且disham(cw',cw)≤t,将得到数据cw'和cw是相似数据且用户c的确拥有与云服务器存储的数据cw相似的数据cw'。

进一步,所述工业控制系统信息安全防护系统具体包括:

协议输入:

用户c输入长度为|cw'|的串cw'=(cw'[1],...,cw'[|w'|]),云服务器s输入长度为|cw|的串cw=(cw[1],...,cw[|w|]),|cw'|=|cw|=n;

协议输出:

云服务器s获得dis(cw',cw),用户c不获得任何信息;

协议:

用户c生成n个随机数并且计算

对于每一个i=1,...,n,用户c作为发送者,服务器s作为接受者运行不经意传输协议ot12

a.用户c的输入为(ri+cw'[i];ri+cw'[i]);

b.云服务器s选择比特cw[i];

c.云服务器s最终获得

服务器s输出

用户c发送∑r给服务器s;

服务器s通过计算∑t-∑r得到disham(cw',cw)。

本发明的另一目的在于提供一种所述工业控制系统信息安全防护系统的概率性相似数据拥有证明方案,所述概率性相似数据拥有证明方案中|cw'|=|cw|=n,判断在相同位置用户c和云服务器s的比特值是否相同;云服务器s不再对所有的密文数据逐比特验证用户的密文数据,需要验证的比特个数的总量为θ,γ←{0,1}λ是云服务器s发送给用户c的随机数,λ为安全参数,h是一个伪随机置换定义如下:

协议的输入:用户和云服务器以安全参数λ,比特串的长度n,需要验证用户密文数据的比特数θ,随机数γ作为输入;

协议的输出:随机选择的θ个比特的位置{p1,...,pθ};

协议:对于i从1到θ,计算随机位置pi=hγ(i);

在得到θ个比特位置的汉明距离disham(cw',cw)之后,云服务器通过计算估算整个密文的汉明距离;如果disham(cw',cw)≤t,密文数据cw'和密文数据cw是相似的,云服务器s将允许用户c访问存储在云服务器上的密文数据。

本发明的另一目的在于提供一种所述工业控制系统信息安全防护系统的云存储系统,所述云存储系统由一个云存储服务器s和一组用户cs组成;用户希望在云服务器s上存储敏感数据;s和cs要实现对上传的密文数据进行相似数据拥有证明。

本发明的另一目的在于提供一种应用所述工业控制系统信息安全防护系统的云服务器。

综上所述,本发明的优点及积极效果为:本发明可以让云服务器有效的验证用户的数据是否与云服务器存储的数据是否相似,并且在验证过程中不能获得用户数据的任何信息。只有当云服务器验证用户确实拥有与服务器相似的数据的时候,才允许用户访问存储在云服务器上的数据。

本发明针对云环境中去重技术实现所面临的标签欺骗问题,提出了两个相似数据拥有证明方案。可以有效的使云服务器验证用户是否拥有与云服务器存储的密文数据相同的密文数据。使得用户只有在通过服务器的数据拥有证明协议之后才允许用户访问相应的密文数据,进而保证了数据的安全性。然而由于数据量不断变大,如果对所有的数据进行验证将消耗大量的计算与通信开销,为了解决这一问题并进一步提高相似数据拥有证明方案的效率,本发明提出了概率性相似数据拥有证明方案。概率性相似数据拥有证明方案通过使用伪随机置换让云服务器随机的选择一定数量的随机比特对用户的密文数据进行验证。通过概率性的验证算法,用户与云服务器的计算开销通信开销将大大降低,更具有实用性。

附图说明

图1是本发明实施例提供的工业控制系统信息安全防护系统流程图。

图2是本发明实施例提供的工业控制系统信息安全防护系统实现的结构框图。

图3是本发明实施例提供的相似数据拥有证明方案用户与服务器计算开销示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

随着云计算技术的快速发展,越来越多的用户和企业倾向于将数据外包存储在云服务器上。在外包计算模型下,资源受限的用户可以通过按需付费的方式(pay-per-use-manner)来购买云计算服务商提供的无尽的计算和存储资源,在用户享受海量存储服务的同时大大减轻了用户端软硬件管理和维护的负担。通过采用不经意传输协议实现数据拥有证明。本发明的方案可以使云服务器授予用户访问权之前有效的验证用户是否拥有相似的数据。

如图1所示,本发明实施例提供的工业控制系统信息安全防护系统包括:

s101:用户和云服务器以密文数据作为输入,用户声称拥有数据的标签与存储在云服务器上的数据的标签相似,则用户需要向云服务器证明;

s102:汉明距离判断数据的相似度,云服务器仅获得密文数据的汉明距离且不能获得数据的任何信息,用户不能获得数据的任何信息。

下面结合附图对本发明的应用原理作进一步的描述。

1、系统模型

云存储系统由一个云存储服务器(s)和一组用户(cs)组成,用户希望在云服务器s上存储敏感数据。为了保护数据的安全,cs想要在上传数据之前加密其敏感的数据。为了减少s和cs之间的存储开销和不必要的通信开销,s和cs要实现对上传的密文数据进行相似数据去重。为了提高通信效率,如果cs已经在s的数据库中存储了一些相似的数据,则只有第一个用户需要将数据的密文上传到s上。为了防止标签欺骗攻击,之后的用户如果希望访问存储在云服务器上的数据之前必须通过云服务器相似数据拥有证明。

2、预备知识

不经意传输协议

不经意传输协议是一个两方协议,协议有两个参与方:发送者s和接收者r。发送者s拥有一个隐私的消息并希望以50%的概率发送给接收者r,接收者r接收到消息的概率为50%,另外50%的概率什么也得不到。协议执行完成之后发送者s不能知道隐私的消息是否被接受者r接收到。不经意传输协议ot12的定义如下:

输入:发送者s发输入两个n长的比特串x0和x1,接受者r输入选择的一个比特b(b∈{0,1})。

输出:发送者s对比特b一无所知,接受者r只能获得一个比特串xb,对另一个比特串x1-b一无所知。

3、相似数据拥有证明方案

相似数据拥有证明方案与数据拥有证明方案类似,然而传统的数据拥有证明方案通常使用哈希函数或者签名作为证据,这使得传统的数据拥有证明方案无法适用于相似数据的拥有证明方案中,原因是相似的数据即使是1比特数据不同,经过哈希函数或者签名运算之后生成的证据将截然不同。进而云服务器无法对相似的数据进行拥有证明。

为了实现相似数据的拥有证明,并且希望进行相似数据拥有证明的数据是密文数据,本发明要求密文数据必须使用异或加密算法对数据进行加密。然而如果直接使用密文进行相似数据拥有证明是不安全的。原因如下:假设两个相似数据w'和数据w的加密密钥分别是g(r)和g(r')且g(r)=g(r'),数据w'和数据w的密文分别是假设用户拥有数据为了与云服务器执行相似数据拥有证明将数据cw'发送给拥有数据的云服务器,则服务器可以计算得到这将泄露给云服务器数据w和数据w'不同的数据。

为了保护这种攻击,本发明提出了新的数据拥有证明方案,本发明的方案可以计算出数据w'和数据w的实际距离而且不泄露任何信息。相似数据拥有证明协议是一个交互协议,用户c和云服务器s分别以密文数据cw'和cw作为输入。如果用户c声称拥有数据w'的标签tw'与存储在云服务器上的数据cw的标签tw相似,则用户c需要向云服务器s证明dis(cw',cw)≤t,t是设置用于判断数据是否相似的参数。本发明在仅通过考虑汉明距离判断数据的相似度。disham(a,b)表示a和b的汉明距离。最终,云服务器s仅获得密文数据cw'和cw的汉明距离且不能获得数据w'的任何信息,用户c不能获得数据w的任何信息。相似数据拥有证明方案可以定义为下面的两方交互式协议:

fuzzypow:[c:cw';s:cw]→[c:⊥;s:disham(cw,cw')];

在相似数据拥有证明协议中,通过统计的个数来计算汉明距离。假设用户c和云服务器s分别拥有输入串cw'=(cw'[1],...,cw'[|w'|])和串cw=(cw[1],...,cw[|w|])。用户c作为发送者生成n个随机数作为盲化因子并与云服务器s发起n个不经意传输协议。本发明需要说明的是,ot协议可以被改进以减少交互循环次数或者协议运行时间。一方面,协议可以通过一次发送所有比特的盲化因子的方案减少交互轮次。另一方面,由于输入数据的比特值是相互独立的,因此不经意传输协议可以运行多个线程来降低时间成本。对于第i个传输协议,接受者通过输入比特cw[i]得到为了完成计算目标,当用户c的输入为0时,令不经意传输的输出值为ri+cw'[i];当用户c的输入为1时,令不经意传输的输出值为事实上,如果cw[i]=0,那么有如果cw[i]=1,那么有云服务器s是n轮不经意传输协议的接收者,输入cw=(cw[1],...,cw[|w|])得到对于i=1,...,n的值然后云服务器将所有的相加得到(其中)。最后,用户发送∑r给云服务器s,云服务器s的最终输出为disham(cw',cw)=∑t-∑r。如果设置的最大汉明距离为t且disham(cw',cw)≤t,本发明将得到数据cw'和cw是相似数据且用户c的确拥有与云服务器存储的数据cw相似的数据cw'。

4、相似数据拥有证明协议的细节构造如下:

协议输入:

用户c输入长度为|cw'|的串cw'=(cw'[1],...,cw'[|w'|]),云服务器s输入长度为|cw|的串cw=(cw[1],...,cw[|w|]),本发明假设|cw'|=|cw|=n。

协议输出:

云服务器s获得dis(cw',cw),用户c不获得任何信息。

协议:

用户c生成n个随机数并且计算

对于每一个i=1,...,n,用户c作为发送者,服务器s作为接受者运行不经意传输协议ot12

a.用户c的输入为(ri+cw'[i];ri+cw'[i])。

b.云服务器s选择比特cw[i]。

c.云服务器s最终获得

服务器s输出

用户c发送∑r给服务器s。

服务器s通过计算∑t-∑r得到disham(cw',cw)。

表1相似数据拥有证明协议

5、概率性相似数据拥有证明方案

为了进一步提高本发明相似数据拥有证明方案的效率,本发明同样构建了概率性相似数据拥有证明方案。概率性相似数据拥有证明方案适用于处理大规模数据。是在相似数据拥有证明协议的基础上使用取样技术进行实现的。本发明假设|cw'|=|cw|=n,判断在相同位置(例如cw'[i]和cw[i])用户c和云服务器s的比特值是否相同从而达到验证的目的。核心思想是云服务器s不再对所有的密文数据逐比特验证用户的密文数据,而是随机选择一定数量的比特位置,使用相似数据拥有证明方案验证这些随机选择位置上用户的密文数据和服务器的密文数据是否相似,从而达到概率性的验证。本发明定义需要验证的比特个数的总量为θ,γ←{0,1}λ是云服务器s发送给用户c的随机数,λ为安全参数,h是一个伪随机置换定义如下:

协议的输入:用户和云服务器以安全参数λ,比特串的长度n,需要验证用户密文数据的比特数θ,随机数γ作为输入。

协议的输出:随机选择的θ个比特的位置{p1,...,pθ}。

协议:对于i从1到θ,计算随机位置pi=hγ(i)。

在得到θ个比特位置的汉明距离disham(cw',cw)之后,云服务器可以通过计算估算整个密文的汉明距离。如果disham(cw',cw)≤t,本发明认为密文数据cw'和密文数据cw是相似的,从而云服务器s将允许用户c访问存储在云服务器上的密文数据。

表2概率相似数据拥有证明协议

下面结合实验对本发明的应用效果作详细的描述。

表2详细的列出了相似数据拥有证明方案与概率性相似数据拥有证明方案的计算和通信开销。需要说明的是,相似数据拥有证明方案的通信开销相对较大,是数据大小的倍。概率性相似数据拥有证明方案的通信开销取决于所选位的数量。

表3相似数据拥有证明方案的计算开销和通信开销

本发明通过使用编程语言c++对相似数据拥有证明方案进行了实现,本发明使用了免费的gmp库来实现simhash算法。密码哈希算法和异或加密算法(sha-256和异或加密算法)由openssl库来实现。本发明在运行linux14.04的两台计算机上分别运行客户端和服务器应用程序,使用的计算机硬件配置为:1.70ghzinteli5-3317ucpu,4gb内存。为了在局域网上进行实验,本发明实现了客户端与服务器之间的通信,并将这两台机器放在同一个区域。服务器和客户端之间的有线连接的通信带宽设置为10mbps。

数据拥有证明方案的计算成本取决于不经意传输ot12的数量。本发明模拟的相似数据拥有证明协议客户端和服务器的计算开销如图3所示。通过实验本发明可以看到用户与服务器的计算时间随着比特长度的增加线性增长。由于用户需要初始化n个随机数,因此用户的计算时间大于服务器的计算开销。在实际应用中,用户可以通过预计算或并行计算等优化方案进一步提高本发明方案的效率。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1