移动和云系统的动态加密密钥安全方案(DEKSS)
摘要
我们的动态加密密钥安全方案(DEKSS)是一种新颖的安全策略,利用安全架构通过多个云服务提供商(CSP)分发和管理数据。该策略能够在不影响对方的前提下,保障客户端和服务提供商的数据安全。尽管在实现真正安全方面存在一些局限性,例如WhiteHatt安全在其年度报告中指出的问题1,,但我们的安全方案能够通过对每个存储的表名和数据列按需折叠成多层加密来有效保护数据。通过这种方法,我们发现该方案适用于云安全领域的多种不同受众。
一、引言
该安全方案旨在通过在数据集上应用一系列加密方案,解决数据的机密性、可访问性和完整性等安全问题,从而减少使用单一密钥加密的大块数据的存在。通过这种方式,我们旨在降低大规模数据泄露的可能性。相比之下,此前的相关研究,如辛格韦等人2的文章,主要侧重于通过对敏感数据实施双层保护来实现这一目标。尽管他们的研究发现了一种构建能够保障数据安全的系统的方法,但在整个数据集上仅使用两层加密方案仍可能使数据库面临大规模数据泄露的风险。此外,他们的工作未能提出新的策略供云服务提供商实施,以进一步加强客户数据的安全。因此,我们的新方案将弥补这些缺失的需求,并将加密层的数量增加为可变长度。在本文的其余部分,我们将讨论我们独特的架构、如何使用任意数量的加密层来自定义数据库模式、如何使用多种加密/解密方案执行加解密操作,以及如何衡量查询性能。首先,我们提出本安全方案具备以下能力:
1) 构建一个系统来管理数据的加密
2) 维护明文的完整性
3) 允许加密方案的分层叠加
4) 高效地更换任意层的加密密钥
5) 防范当前和未来的数据安全威胁
II. 系统架构
在本节中,我们描述了用于开发所提出的安安全方案的基本特征和组件。此外,我们还解释了每个组件在定义安全系统时所起的作用。
A. 数据策略文件
数据策略文件是一系列用于管理云中存储数据和访问这些数据的设置。通过此文件,客户端可以提供模式级别的要求,以规定系统应如何处理针对数据库运行的安全查询。在这些策略设置中,我们可以指示安全系统应使用多少层加密以及加密的顺序。为了说明这一点,让我们举一个例子:我们将工资数据存储在数据集中,并将通过查询对这些数据执行计算。我们还希望确保信息在云数据库中得到安全且高效的存储。首先,客户端将编写一条策略,指示系统如何开始对列和表数据进行加密存储。以下示例JSON结构演示了这一点。
{
"tables": {
"scheme": ["MD5"],
"users": {
"columns": {
"salary": {
"scheme": ["RSA"]
}
}
}
}
}
在此示例中,我们使用数组来定义系统加密数据的顺序。每个值对应查询分发器中存储的唯一加密方案,用于对保存在云中的数据集执行加密操作。代理必须在此提供多种加密方案,以便能够加密多种数据类型。在Mohammadd等人最近发表的一篇题为“云计算的增强数据安全模型”3,的文章中,保护数据安全并非与其说是加密方案的强度,不如说是应用特定类型的加密方案,以更好地针对数据模型来维护和提升查询性能。
B. 安全方案的建模
加密数据的过程是一个经过精心执行的逐步操作。通过卡马拉等人定义加密云存储技术的工作4, ,使用一个明确定义的系统来标注信息存储的有序步骤,这对于任何数据安全系统的定义都至关重要。由于这些步骤在策略文件中已明确标注,我们可以准确地确定需要多少步骤。通过这种方式,我们可以用一系列公式来表示加密数据过程的灵活执行。
C. 加密自动机
在上图中,我们定义了一个长度为n的自动机,其输入为消息,以及一个函数Fy,该函数以T和Co作为输入。该函数用于从我们的密钥存储中检索相关的加密密钥。T和Co表示明文所来源的表和列的名称。根据这些信息,开始按照指定顺序进行加密。
在策略文件中定义。我们使用n来表示另一个输入到Fk。该函数要么执行加密,要么进入下一层加密,如果当前方案为哈希或不可逆方案,则停止。
Fk(w,o,k):
if 63d → F(Encs(w,k),...)
else → Encs(w,k)
经过自动机的n次迭代,每一步由Fk表示,我们得到最终的密文。该密文现在可以存储在云中,而无需担心信息泄露或“有损”问题。
检索原始消息就像逆向执行步骤来获取原始消息一样简单。然而,在每个步骤中,而不是使用Fk,我们定义一个函数来展开这些层级。
我们的新函数Fxx通过使用每个关联方案的解密函数来执行每个加密层的解密过程。我们可以将此函数表示如下:
Fx(c,o,k):
if 63d → Fx(Dec(c,k),...)
else → return c
D. 查询性能分析
使用多种方案时,会对查询性能产生担忧。然而,由于我们采用有序结构来保护数据,因此可以遵循类似的有序过程来确定查询的性能。
$$ C_s(m) = \sum_{i=1}^{n} C(F_i(m)) \quad (1) $$
上述公式通过在每个步骤中将消息传递给函数C,对每种方案进行求和。函数C是一种能够以时间单位衡量加密和解密消息所需时间的函数。由于这同时测量了加密和解密的成本,因此可以将结果视为“往返成本”。
III. 未来工作
DEKSSS是一种强大且独特的解决方案,用于保护云空间中的数据。目前,我们正在继续推进将其应用于移动设备所使用的各种云平台的工作。我们还计划以类似于Ganesh等人在“云数据库系统调查”5中采用的方法,通过比较各种云解决方案来分析我们系统的性能。我们希望,通过这些研究,能够推动动态安全策略作为一种独特方法来应对数据安全威胁的前景。
587

被折叠的 条评论
为什么被折叠?



