利索能及
我要发布
收藏
专利号: 2022104645132
申请人: 西安理工大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于随机网格和多项式的图像秘密共享方法,其特征在于,包括一种基于随机网格和多项式的图像加密方法,具体按照以下步骤实施:步骤1、采集两个原始灰度图像分别作为灰度秘密图像S1和灰度秘密图像S2;采用灰度随机网格法将灰度秘密图像S1加密,加密后生成n个分享图像R1,R2,......,Rn,其中n不小于2;

步骤2、采用多项式算法,将灰度秘密图像S2加密,加密后生成n个分享图像P1,P2,......,Pn,其中n不小于2;

步骤3、通过距离公式计算分享图像R1,R2,......,Rn和分享图像P1,P2,......,Pn的像素距离D;

步骤4、通过实验选择阈值d,将阈值d与像素距离D比较,当像素距离D大于阈值d时重复执行步骤2‑步骤4所述步骤,当像素距离D不大于阈值d时,则输出分享图像P1,P2,......,Pn且令分享图像P1,P2,......,Pn为最终的分享图像G1,G2,......,Gn。

2.根据权利要求1所述的一种基于随机网格和多项式的图像秘密共享方法,其特征在于,所述步骤1中采用灰度随机网格法将S1加密的步骤具体为:步骤1.1、通过MATLAB中随机数生成函数round(rand(1)*255),随机生成0到255之间的整数像素值,按照每个随机生成的整数像素值,对应生成与所述整数像素值大小相等的随机灰度图像A1,A2,......,AK‑1,k为大于1的整数;

步骤1.2、当k=2时,根据随机灰度图像AK‑1的像素值和灰度秘密图像S1的像素值在MATLAB中生成网格图像B1,当k大于3时,根据随机灰度图像AK‑1的像素值和网格图像BK‑2的像素值在MATLAB中生成网格图像BK‑2;

步骤1.3、重复步骤1.1‑步骤1.2分别生成网格图像B1,B2......BK‑1;

步骤1.4、计算生成的网格图像B1,B2......BK‑1对应的像素值b1,b2,...bn,计算随机灰度图像A1,A2,......,AK‑1对应的像素值a1,a2,...,an;

步骤1.5、根据步骤1.4中网格图像B1,B2......BK‑1的像素值b1,b2,...,bk‑1和随机灰度图像A1,A2,......,AK‑1的像素值a1,a2,...,ak‑1,令:r1=a1,r2=a2,...,rk‑1=ak‑1,rk=bk‑1,rk+1=a1,rk+2=a2,...,rn=an‑k,根据像素值r1,r2,...rn对应生成分享图像R1,R2......Rn,n大于k;

步骤1.6、输出分享图像R1,R2......Rn。

3.根据权利要求2所述的一种基于随机网格和多项式的图像秘密共享方法,其特征在于,所述步骤1.2中具体实施步骤为:步骤1.2.1、当K=2时,随机灰度图像AK‑1为随机灰度图像A1,则有:当灰度秘密图像S1的像素值大于128时,令网格图像B1的像素值与随机灰度图像A1的像素值大小相等,当S1的像素值不大于128时,则网格图像B1对应的像素值与随机灰度图像A1的像素值在[0,255]的范围内互补,通过上述方法得到网格图像B1的像素值,根据网格图像B1的像素值生成网格图像B1;

步骤1.2.2、当K=3时,随机灰度图像AK‑1为随机灰度图像A2,则有:当网格图像B1的像素值大于128时,则网格图像B2的像素值与随机灰度图像A2的像素值大小相等;当网格图像B1的像素值不大于128时,则网格图像B2对应的像素值与随机灰度图像A2的像素值在[0,255]的范围内互补,通过上述方法得到网格图像B2的像素值,根据网格图像B1的像素值生成网格图像B2;

步骤1.2.3、不断改变K的取值,再根据步骤1.2.2的过程,最终生成随机灰度图像A3......AK‑1和网格图像B3......BK‑1。

4.根据权利要求1所述的一种基于随机网格和多项式的图像秘密共享方法,其特征在于,所述步骤2中采用多项式算法将S2加密的步骤具体为:步骤2.1、通过MATLAB,构造一个(K‑1)次多项式:

2 k‑1

f(x)=a0+a1x+a2x+...+ak‑1x (modp)   (1)其中:p为不大于255且与255接近的公共素数,K为门限值,X为互不相同的随机值;

步骤2.2、将灰度秘密图像S2中的一个像素的像素值编码为常数项a0,其中a1,a2,......,ak‑1是使用MATLAB中随机数生成函数a=round(rand(1)*255)生成0到255之间的整数随机值,将所述整数随机值分别作为随机系数a1,a2,......,ak‑1的取值;

步骤2.3、重复步骤2.2过程,将S2每一个像素进行编码,并带入上述步骤2.1多项式中计算,输出对应的数值p1,p2,......,pn,根据数值p1,p2,......,pn生成与之对应像素值的分享图像P1,P2,......,Pn,并输出分享图像P1,P2,......,Pn。

5.根据权利要求1所述的一种基于随机网格和多项式的图像秘密共享方法,其特征在于,所述步骤3中计算距离D的公式具体为:其中,pi为分享图像P1,P2,......,Pn对应的像素值,ri为分享图像R1,R2,......,Rn对应的像素值,i不小于1,z为重建图像时所使用的分享图像的个数,2≤z≤n。

6.一种基于随机网格和多项式的图像秘密共享方法,其特征在于,包括一种基于随机网格和多项式的图像加密方法解码方法,其特征在于,具体按照以下步骤实施:步骤一、图像第一解码阶段,使用MATLAB,将分享图像G1,G2,......,Gn叠加,得到重建灰度秘密图像S1;

步骤二、图像第二解码阶段,使用MATLAB,将秘密分享图像G1,G2,......,Gn通过拉格朗日插值算法进行计算,得到灰度秘密图像S2的重建图像;

所述步骤一中将分享图像G1,G2,......,Gn叠加的具体方法如下:步骤1‑1、将分享图像G1,G2,......,Gn对应的灰度像素值g1,g2,......,gn进行像素混合,将混合像素像素值定义为gn+1;

步骤1‑2、混合像素像素值gn+1具体为:

其中,n为不小于2的整数,int(...)表示向下取最近的整数;

步骤1‑3、根据混合像素像素值gn+1得到秘密图像S1的重建图像;

所述步骤二的具体按照以下步骤实施:

步骤2‑1、取分享图像G1,G2,......,Gn中每个图像的每个对应位置的像素值,根据以下拉格朗日插值公式进行计算:步骤2‑2、计算结果则为重建图像对应位置的像素值,将分享图像的所有像素值都使用公式(4)计算之后就得到完整的重建灰度秘密图像S2。