任务驱动的秘密图像共享与恢复方法及其实现
作者: 郑向勤 郭玉红
关键词:秘密共享;图像恢复;图像分类;个性化任务;算法库
中图分类号:TP391 文献标识码:A
文章编号:1009-3044(2024)25-0016-05
0 引言
随着人工智能以及信息技术的不断发展,各种安全问题随之暴露[1]。图像作为信息载体,存在于各个领域,如军事、医疗、商业领域等,其安全存储与传输至关重要。最初,Shamir提出了基于门限的秘密共享方案[2]。在此基础上,Thein-Lin等人提出了可扩展的秘密图像共享方案[3] (SIS) 。随后,大量SIS 方案被提出[4-9]。
SIS方案可根据不同角度划分为多种类型。从恢复的结果来分类,可分为“全有或者全无”的方案和渐进式恢复方案。从原始图像的分割方式上可分为两类:一类从空间域角度将秘密图像划分为多个非重叠图像块,以生成图像的多个秘密份额,如Thein-Lin等人提出的方案[3];另一类从像素域角度划分原始图像,如Wang和Shyu等人提出的方案[4]。此外,还可以根据生成的秘密份额大小、图像色彩分类(灰度图或者彩色图)、秘密份额是否有特定意义等来划分现存的图像秘密共享方案。同时,不同方案在共享和恢复阶段的效率也有所不同,并且方案的安全级别也各不相同。从用户的角度来说,不同用户处理的图像类别也有所不同,例如军事领域、医疗领域、商业领域等不同领域的图像。这些领域的图像在内容上也有一定差异,且同一领域图像在图像内容分布上也具有较大差异。
为了增强不同图像秘密共享与恢复算法的实用性,满足不同领域用户对秘密图像共享与恢复的不同需求,即基于不同用户的个性化任务,本文提出了任务驱动的秘密图像共享与恢复方法及其实现,并提出了其构建结果的工具设计方案。首先,从尽可能多的维度,对现存的秘密图像共享方案进行分类形成一个算法库。然后,基于该算法库生成满足用户个性化任务的最优算法。最后,通过设计任务驱动的秘密图像共享恢复工具TDSISR(Task-driven Secret Image Shar⁃ing Recovery) 来完成不同的用户个性化任务。通过该方法的提出及其工具的设计,能进一步提升秘密图像共享与恢复算法的实用性。
1 经典方案概述
本节将简要介绍几种经典的SIS 方案,分别为Thein-Lin等人提出的方案[3]、Zhang和Zheng等人提出的基于模运算的渐进式SIS方案[10]以及Zhang和Zheng 等人提出的基于语义分割的渐进式SIS方案[11]。
1.1 Thein-Lin方案
秘密图像共享与恢复的基本思想如图1所示。在文献[3]中,Thien-Lin等人提出了一种基于拉格朗日插值多项式的(r,n) SIS方案,该方案具有“全有或者全无”的恢复方式,即只有拥有至少r 个影子图像时,才能完全恢复出原始秘密图像。因此,当不足r 个影子图像时将完全不能恢复出原始图像。该类方案适合对保密要求较高的领域。
该方案分为共享和恢复两个阶段,共享阶段的主要任务是生成n 个影子图像,即共享的对象;恢复阶段的任务是根据影子图像来恢复出整个原始秘密图像。其具体过程如下:
共享阶段:
将原始秘密图像I分割为大小相等的若干个图像块,再根据拉格朗日插值多项式将不同图像块生成多个影子图像,即秘密份额,该秘密份额可以在网络上安全传输或者存储。
恢复阶段:
首先,随机选择r 个影子图像,并执行以下两个步骤。
第1步:分别取r 个影子图像的第一个元素,然后应用拉格朗日插值多项式求解某个图像块的r 个系数,即图像的r 个像素值。
第2步:重复第1步,直到处理完r 个影子图像的所有像素。
最后,在上述步骤完成之后,秘密图像的所有像素都已恢复,即恢复出整个的秘密图像。
1.2 基于模运算的SIS方案
在Zhang和Zheng等人提出的方案中[10],分为共享阶段和恢复阶段。该方案的创新之处在于模运算的使用。因此,与同类算法相比,利用模运算操作进一步提升了方案的安全性。
在共享阶段,将秘密图像经过均等分割得到的图像块按照顺序进行编号,如图2所示。然后将图像块的编号进行模运算操作,将编号经模运算后同余的这些图像块组合成子图像。假设模数为7,则在图2中,第一列的图像块构成第一个子图像,以此类推,最后一列的图像块组合构成第7个子图像。接着,由多个子图像产生多个秘密份额,即影子图像。
在恢复阶段,该方案可以通过全局渐进的方式恢复出原始秘密图像,即由全部的影子图像可无损恢复出原始秘密图像。由部分影子图像即秘密份额可以恢复出图像的大致轮廓,根据影子图像的数量以更加细粒度的渐进方式恢复出原始图像。因此,即使少部分秘密份额丢失,也能由剩余秘密份额恢复出图像大致内容,不影响对图像内容的判断。
此外,该方案基于模运算产生的子图像非常杂乱无章,因此其安全性相对较高,对于安全要求较高的用户来说,该方案具有较强的适用性。
1.3 基于图像语义分割的SIS方案
在文献[11]中,作者提出了基于图像语义分割的SIS方案。该方案同样分为两个阶段。在共享阶段,首先基于图像语义对原始秘密图像进行分割得到子图像,分割方式如图3所示。将具有特定语义的内容从原始秘密图像中分离作为子图像,并记录该子图像在原图中的位置信息,然后将其作为共享的对象。因此,该方案共享的对象不是整个秘密图像,而是秘密图像的一部分。被分割后的图像通过取周围像素值的均值进行填充,进而实现剩余图像的安全传输与存储。
在恢复阶段,通过部分秘密份额可恢复出共享的对象,即具有特定语义的子图像。根据其在图中的位置信息,将其填充至原始位置即可恢复出原始秘密图像。
该方案的创新之处在于,其可以根据图像内容来分割图像得到子图像。用于产生秘密份额即影子图像的子图像只是原始图像的一部分,因此该方案在一定程度上提高了方案的效率,适用于高效率共享与恢复图像的领域。
2 任务驱动的秘密图像共享与恢复方法
2.1 方法描述
本节将介绍任务驱动的秘密图像共享与恢复方法及其实现。该方法包含作者用户和普通用户两个角色,其中普通用户基于自身的需求生成个性化任务,作者用户按照要求负责上传其提出的算法,最终形成算法库。所提出的方法分为用户任务生成、作者用户上传算法和最优算法生成几个过程。接下来,将分别从这三个方面来描述所提出的方法。
2.2 用户任务生成
提出的任务驱动的秘密图像共享与恢复方法能为各个不同的普通用户服务,即基于用户任务进行秘密图像共享与恢复。因此,需要对普通用户任务进行详细描述,如公式(1) 所示,其中Task 表示个性化秘密图像共享与恢复方法需求,ImageType 表示图像类别,EfficiencyRequirement 表示算法的效率要求,SecurityLevel 表示算法的安全级别,RecoveryMethod 表示恢复方式要求。
Task ={ImageType,EfficiencyRequirement,SecurityLevel,RecoveryMethod} (1)
用户任务生成过程如图4所示。
首先,普通用户选择图像类别,比如医疗类、军事类、商业类等。然后,普通用户输入算法效率要求。其次,普通用户根据自己的需求选择相应的恢复方式。最终,按照上述流程生成一个特定的用户任务,为最终生成最优算法作准备。
2.3 作者用户上传算法
算法提出者即作者用户需要根据要求上传相应算法,其上传的流程图如图5所示。
首先,作者用户需要输入算法标题,并选择图像类别。接着,用户还需要输入算法效率,即共享和恢复阶段的效率。然后,选择恢复方式,如渐进式或者“全有或者全无”的恢复方式。最后,上传算法形成最终的算法库。下一步,基于上一节生成的用户任务从算法库中选择最优算法。
为了根据普通用户任务快速匹配出相应算法,需要对作者用户上传算法进行统一描述,如公式(2) 所示,其中UpdateMethod 表示算法过程,ImageType 表示图像类别,Efficiency 表示算法效率,SecurityLevel 表示算法安全级别,RecoveryMethod表示恢复方式。
UpdateMethod ={ImageType,Efficiency,SecurityLevel,RecoveryMethod} (2)
2.4 最优算法生成
根据个性化用户任务,本文所提出的方法按照以下步骤从算法库中匹配最优算法:
首先,从算法库中筛选出符合图像类别的算法集。其次,在上一步得到的算法集中再根据恢复方式筛选出符合要求的算法集。接着,根据算法安全要求筛选出符合安全要求的算法集。再接着,根据算法效率筛选出效率最高的算法,即可生成最优的算法。最后,基于该最优算法来进行秘密图像的共享与恢复。具体流程如图6所示。
2.5 实验设计
为了验证本文所提出方法在用户个性化任务复杂且算法库容量较大时的有效性,设计了如下实验。
2.5.1 实验方案
本节进行了实验方案的设计。首先,需要构建秘密图像共享与恢复算法库。作者用户按照上文所设计的算法上传方法上传自己提出的SIS方案,最终分别生成包含50、100、200、500种算法的4个算法库。
实验方案设计的第一步是描述个性化秘密图像共享与恢复方法构建任务。为了保证任务解决方案的顺利生成,设计了如表1所示的4个个性化构建任务,每个任务的图像类别、效率要求、恢复方式要求均不同。
实验方案设计的第二步是确定比较的指标。由于本章所述的方法是为了快速匹配个性化秘密图像共享与恢复方法,因此,在面对相同的个性化构建任务时,以生成任务解决方案的时间为衡量标准。为了保证准确性,取1 000次任意时刻生成任务解决方案所需时间的平均值,如公式(3) 所示。P (k)表示任意时刻运行算法来解析名称为k 的个性化构建任务时,生成任务解决方案所需要的时间,F (k)表示1000次任意时刻生成任务解决方案所需时间的平均值。
通过比较不同的个性化构建任务的F (k)值,来最终选择用户需要的算法。
2.5.2 结果分析
图7为理想情况下的实验结果,其中横坐标为秘密图像共享与恢复算法的数量,纵坐标为生成解决方案消耗的时间。任务一至任务六为上文设计的几种个性化构建任务。
从图7分析可知,不同复杂程度的任务在算法库规模相同的情况下,生成方案所需时间差别较小,且随着算法库规模的增大,不同复杂程度的任务生成解决方案所需时间趋于稳定。
通过该实验,进一步证明了本文所提出方法的可行性。
3 TDSISR 工具的设计
上一节介绍了所提出方法的具体实现流程及实验方案的设计,本节将简单介绍任务驱动的秘密图像共享恢复方法工具TDSISR的设计。
TDSISR工具分为可视化交互层和秘密图像共享与恢复算法库,如图8所示。其中,可视化交互层分为作者上传算法界面、最优算法展示界面、用户任务生成界面三部分。其使用流程如下:首先,不同的作者用户上传算法,最终形成算法库;接着,普通用户提出需求,并根据用户的需求自动生成用户任务;然后,基于现有的算法库以及用户任务来匹配最优算法并对算法进行展示;最后,通过该最优算法来完成普通用户共享和恢复秘密图像的任务。
3.1 功能简介
该工具的核心功能主要包括三部分,即用户任务生成、作者上传算法以及最优算法展示。
1) 用户任务生成界面:普通用户通过登录认证后进入该界面,在该界面中填入自己的任务需求。通过点击任务生成按钮,生成个性化任务。
2) 作者上传算法界面:作者用户通过登录进入该界面,在该界面中根据相关提示对自己的算法进行描述,并将算法模型通过该界面上传到算法库中。
3) 最优算法展示界面:将匹配后的最优算法在该界面进行展示。
3.2 开发工具与运行环境
为了实现该方法,本文将基于以下软硬件环境进行开发,具体如表2所示。
4 总结
越来越多的秘密图像共享方案被提出,对于不同专业领域的用户来说,高效选择能与自身个性化任务相匹配的算法比较困难。为了解决该问题,本文提出了任务驱动的秘密图像共享与恢复方法及其实现。首先,算法的提出者根据要求上传算法,形成算法库。然后,普通用户根据自身需求生成个性化任务。接着,基于用户的个性化任务来生成最优算法。最后,基于理论方法的实现,提出了工具的设计方案,通过该工具帮助用户高效地进行秘密图像共享与恢复。