发明内容
针对现有的仅依赖于混沌序列的图像加密方法容易被利用进行统计分析攻击,且各个像素点之间的置乱位置无关联,容易被利用进行已知明文攻击,安全性低的问题,本发明提供一种用于半导体设备维修的图像数据处理方法,包括:
获取半导体设备的灰度图像,并设定置乱方向;
根据半导体设备的灰度图像的在置乱方向上的灰度游程矩阵中每个游程长度对应的像素点个数,计算出每个游程长度的优选度,并将优选度最大的游程长度作于游程长度阈值;
以每个灰度值为索引,每个置乱方向为元素,设置密钥字典;
获取混沌序列,利用游程长度阈值和图像尺寸计算出混沌序列中元素的扩大系数,并利用扩大系数对混沌序列中的元素进行扩大,将扩大后的混沌序列作为置乱步长序列;
根据灰度图像中每个未置乱像素点邻域中的已置乱像素点个数计算每个像素点的混乱度,选取混乱度最小的未置乱像素点作为待置乱像素点;
利用待置乱像素点的灰度值,在密钥字典中得到待置乱像素点的置乱方向;利用置乱像素点的序号,在置乱步长序列中获取对应序号的元素,作为置乱像素点的置乱步长;
根据置乱步长和置乱方向构建置乱方向向量,利用置乱方向向量对待置乱像素点进行置乱,将置乱后的半导体设备图像作为密文图像进行存储。
进一步地,所述设定置乱方向的具体方法为:
根据预设尺寸构建正方形的图像块;
获取图像块中心像素点到图像块中其他像素点的方向,得到方向角度序列;
对方向序列去重,得到方向角度集合;
将方向角度集合作为置乱方向角度集合,方向角度集合中每个角度为每个置乱方向。
进一步地,所述根据灰度游程矩阵中每个游程长度对应的像素点个数,计算出每个游程长度的优选度的方法为:
式中,
为游程长度m的优选度,j为灰度游程矩阵中的第j列,k为灰度级个数,i
为灰度游程矩阵中的第i行,
为图像大小,
为灰度游程矩阵中第i行第j列的元素,
为灰度游程矩阵中第j列对应的游程长度,
为灰度游程矩阵中第i行第m列的元素,
为灰度游程矩阵中第m列对应的游程长度。
进一步地,所述以每个灰度值为索引,每个置乱方向为元素,设置密钥字典的方法为:
根据灰度值的范围将每个灰度值作为密钥字典的一个索引,每个索引对应一个位置;
将所有置乱方向随机填入到密钥字典中,并且密钥字典中每个位置只能填一个置乱方向,得到密钥字典。
进一步地,所述获取混沌序列,利用游程长度阈值和图像尺寸计算出混沌序列中元素的扩大系数,并利用扩大系数对混沌序列中的元素进行扩大的方法为:
获取混沌序列,方法为:
利用混沌映射的方法,获取长度为
的一维混沌序列,混沌序列中每个元
素的范围为
;
和
为图像的长和宽;
计算出混沌序列中元素的扩大系数,公式为:
式中,
为混沌序列中元素的扩大系数,
为图像长;
为图像宽,
为游程长度阈
值;
利用扩大系数对混沌序列中的元素进行扩大,方法为:
将混沌序列中每个元素乘以扩大系数
并向上取整并加上游程阈值,得到扩大后
的混沌序列。
进一步地,所述根据灰度图像中每个未置乱像素点邻域中的已置乱像素点个数计算每个像素点的混乱度的方法为:
获取每个未置乱像素点中心的
的邻域中包含的所有已置乱像素点的个
数;
为游程长度阈值;
将该所有已置乱像素点的个数除以
的平方,得到的商值,作为 每个未置乱像
素点的混乱度。
进一步地,所述利用置乱方向向量对待置乱像素点进行置乱的方法为:
获取待置乱像素点的置乱方向向量;
将置乱方向向量指向的位置作为待置乱像素点的置乱位置;
若待置乱像素点的置乱位置超出图像外时,将待置乱像素点放在本轮置乱中,第一个待置乱像素点原本的位置上,保存当前待置乱像素点的位置,作为结束点;结束本轮置乱;
若待置乱像素点的置乱位置未超出图像,并且待置乱像素点的置乱位置为本轮置乱的第一个待置乱像素点原本的位置上,则将待置乱像素点放在本轮置乱中,第一个待置乱像素点原本的位置上,保存当前待置乱像素点的置乱位置,作为结束点,结束本轮置乱;
若待置乱像素点的置乱位置未超出图像,并且待置乱像素点的置乱位置不为本轮置乱的第一个待置乱像素点原本的位置上,则将待置乱像素点放在置乱位置上,将置乱位置上原本的像素点作为下一个待置乱像素点;
对下一个待置乱像素点重复上述步骤进行像素点置乱,直至结束本轮置乱,并记录本轮置乱的结束点以及本轮置乱的像素点个数;
在本轮置乱结束后,重新选取混乱度最小的未置乱像素点作为待置乱像素点,按照上述步骤进行下一轮置乱。
进一步地,所述根据每个像素点的邻域内未置乱像素点的个数和已置乱的像素点个数,得到半导体设备图像的置乱复杂度的方法为:
获取半导体设备图像中每个像素点在
邻域内未置乱像素点的个数和邻域
内所有像素点总数的占比,并选取出最大占比;
为游程长度阈值;
获取半导体设备图像中已经置乱的像素点的个数在半导体设备图像总像素点个数中的占比;
以e为底数,以最大占比为指数,得到指数幂,将该指数幂的倒数,与半导体设备图像中已经置乱的像素点的个数在半导体设备图像总像素点个数中的占比相乘,得到的值作为半导体设备图像的置乱复杂度。
进一步地,所述利用置乱方向向量对待置乱像素点进行置乱,将置乱后的半导体设备图像作为密文图像进行存储还包括:
在每一轮置乱结束后,根据每个像素点的邻域内未置乱像素点的个数和已置乱的像素点个数,得到半导体设备图像的置乱复杂度;
当置乱复杂度大于复杂度阈值时,图像置乱完成,将置乱后的半导体设备图像作为密文图像。
进一步地,所述密文图像还包括补充密文和解密方法:
补充密文为:
将密文图像、每个像素点置乱后的位置序列、已置乱像素点个数、游程长度阈值进行RSA加密的结果作为补充密文;
解密方法为:
利用补充密文对密文图像进行解密,得到半导体设备图像。
本发明的有益效果是:
(1)本方案结合半导体设备图像特征获取游程长度阈值,从而得到置乱步长序列,使得置乱后的图像更加混乱,破坏了半导体设备图像中灰度分布规律,置乱效果更好;
(2)本方案通过对一个待置乱像素点进行置乱,根据置乱结果获取下一个待置乱像素点,即本方案中的置乱方法是链式的,改变图像中任意一个像素点的值,即可导致最终得到的密文图像大不相同,具有非常好的雪崩效应,可抵抗选择明文攻击。
(3)本方案根据待置乱像素点的灰度值与置乱步长序列中的元素获取待置乱像素点的置乱位置,与图像特征结合紧密,对于不同的图像中对应的像素点置乱后的结果是不同的;本方案解决了现有的依据混沌映射置乱的方法对于不同的图像中同一个位置的像素点置乱位置相同而易被统计分析攻击的问题。
(4)本方案根据密钥字典确定待置乱像素点的置乱方向,若改变加密字典中一小部分,则会导致对应的待置乱像素点的置乱方向改变,又因为本方案中的置乱方法是链式的,一个待置乱像素点的置乱方向改变,会最终得到的密文图像大不相同,具有非常好的密钥敏感性;
(5)本方案根据未置乱像素点的分布特征,获取每个未置乱像素点的混乱度,从而选择初始的待置乱像素点,可确保最终置乱结果的混乱度,同时使得加密方法更加高效;
(6)本方案根据已置乱像素点和未置乱像素点的分布特征,计算置乱结果的复杂度,根据复杂度进行多轮置乱,确保了最终置乱的效果,使得置乱结果更加复杂,可抵抗统计分析攻击。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的一种用于半导体设备维修的图像数据处理方法的实施例,如图1所示,一种用于半导体设备维修的图像数据处理方法,包括:
步骤一:获取半导体设备的灰度图像,并设定置乱方向;根据半导体设备的灰度图像的在置乱方向上的灰度游程矩阵中每个游程长度对应的像素点个数,计算出每个游程长度的优选度,并将优选度最大的游程长度作于游程长度阈值;
该步骤的目的是,获取半导体设备的灰度图像,并根据灰度游程矩阵对半导体设备的灰度图像进行特征分析,计算出游程长度阈值。
其中,获取半导体设备的灰度图像的方法为:
通过架设在半导体设备周围以及半导体设备内部的相机,拍摄多张半导体设备RGB图像。由于半导体设备RGB图像涉及芯片制造机密,需要进行加密。
将半导体设备RGB图像每个通道的图像看作一幅灰度图像,记作半导体设备图像,后续针对每张半导体设备图像进行加密。
其中,根据半导体设备的灰度图像的在置乱方向上的灰度游程矩阵中每个游程长度对应的像素点个数,计算出每个游程长度的优选度,并将优选度最大的游程长度作于游程长度阈值的方法为:
(1)设定置乱方向,方法为:
首先获取方向集合,根据预设尺寸构建正方形的图像块,在本发明实施例中预设
尺寸设置为5,即构建一个
的图像块,获取图像块中心像素点到图像块中其他像素点
的方向,如图2所示,得到方向角度序列,对方向序列去重,得到方向角度集合
,其中
为方向集合中第一个方向,
为方向集合中最后一个方向,
为方
向集合中元素的个数,将方向角度序列作为置乱方向集合,将方向角度序列中每个角度作
为一个置乱方向;
(2)获取游程长度阈值:
因为本方案利用像素点置乱的方法实现半导体设备图像的加密,为了使得像素点置乱的更加混乱,需要结合半导体设备图像特征,获取游程阈值,根据游程阈值决定像素点置乱的范围;
游程长度阈值的具体获取方法为:
首先获取半导体设备图像中的灰度最大值
与灰度最小值
,将
范围内的灰
度值均等划分至
个灰度级;
然后获取半导体设备图像在
方向上的灰度游程矩阵,
方向上的灰度游程矩阵
中的每个值表示对应灰度级在图像中
方向上的游程长度为对应游程长度的个数;
获取置乱方向集合中每个方向的子灰度游程矩阵,将所有方向的子灰度游程矩阵对应位置的值求均值,作为新的灰度游程矩阵中对应位置的值,将新的灰度游程矩阵,记作灰度游程矩阵;灰度游程矩阵中列数代表游程长度的大小,行数代表灰度级的大小,矩阵中第i行第j列的元素表示灰度级i且游程长度为j出现的次数。
根据综合灰度游程矩阵中每个游程长度对应的像素点个数,计算出每个游程长度的优选度,计算公式为:
式中,
为游程长度m的优选度,j为灰度游程矩阵中的第j列,k为灰度级个数,i
为灰度游程矩阵中的第i行,
为图像大小,
为灰度游程矩阵中第i行第j列的元素,
为灰度游程矩阵中第j列对应的游程长度,
为灰度游程矩阵中第i行第m列的元素,
为灰度游程矩阵中第m列对应的游程长度。
该公式的具体意义为:
表示所有灰度级游程长度小于等于
时对应的像素点个数;
为图像大小,表示图像中像素点的个数;
为了方便后续说明,本实施例中公式中的部分内容使用简单字母进行代替,具体如下:
将该部分内容使用字母A代替;
将该部分内容使用字母B代替;
表示所有灰度级游程长度小于等于
时对应的像素点个数占图像中像素点的
个数的比例;
为双曲正切函数,用来限制当
不同时,A的变化速度;
B为所有灰度级游程长度为
时对应的像素点个数占图像中像素点的个数的比
例;
图像具有局部相似性,本方案目的为选择最优游程长度作为游程阈值,使得后期每个像素点的置乱范围大于该游程阈值从而破坏图像的局部相似性,打破灰度之间的关联性;
值越大,表示以第
个游程长度为游程阈值进行置乱时,越多的像素点可
跳出局部范围,对图像的局部相似性破坏程度越大;如果只根据
值的大小选择游程
阈值,可能会导致选择的游程阈值过大,使得后期置乱时大部分像素点跳出图像的范围从
而导致置乱出错,因此结合
进行限制;
当所有灰度级游程长度为
时对应的像素点个数占图像中像素点的个数的比例
越大时,第
个游程长度为
越重要,以第
个游程长度为游程阈值进行置乱时,相较于
前一个游程长度为由游程阈值进行置乱对图像的局部相似性破坏程度的增益越大,以第
个游程长度为游程阈值进行置乱时的置乱效果越明显,同时由于图像的局部相似性,包含
像素点个数最多的所有灰度级的游程长度不会太大,因此以B为限制;
结合
与
获取第
个游程长度的优选度,当优选度越大,以第
个游程长
度为游程阈值进行置乱时的效果越好;反之当优选度越小,以第
个游程长度为游程阈值
进行置乱时的效果越差。
步骤二:以每个灰度值为索引,每个置乱方向为元素,设置密钥字典;获取混沌序列,利用游程长度阈值和图像尺寸计算出混沌序列中元素的扩大系数,并利用扩大系数对混沌序列中的元素进行扩大,将扩大后的混沌序列作为置乱步长序列;
该步骤的目的是,设置和密钥字典,利用游程长度阈值计算扩张系数对混沌序列进行扩张得到置乱步长序列;
其中,以每个灰度值为索引,每个置乱方向为元素,设置密钥字典的方法为:
根据灰度值的范围
,将每个灰度值作为密钥字典的一个索引,即密钥字典
的索引为
,每个索引对应一个位置,即一个灰度级对应一个方向,且一个位置只能
有一个方向,
将
个置乱方向随机填入到密钥字典中,并且密钥字典中每个位置只能填一个置
乱方向,得到密钥字典,要求密钥字典中每个位置只能填一次,每个置乱方向可以填入16个
位置,如此得到的密钥字典。密钥字典共有
种可能性,因此,密钥字典复杂,密钥
空间大,可抵抗暴力破解攻击。
至此,获取了密钥字典,密钥字典由加密端和解密端预先约定并存储;
需要说明的是,由于图像中以一个像素点为中心点,以中心点开始的任意一个方
向上不一定存在像素点,如图3所示,图中
的图像块中方向
上不存在像素点。而置乱
时,需确保待置乱像素点的置乱方向上存在像素点才能实现置乱,为确保每个置乱方向上
都存在像素点,对置乱方向进行限制,将置乱方向集合中每个方向作为置乱方向,此时共有
个置乱方向。
其中,利用游程长度阈值和图像尺寸计算出混沌序列中元素的扩大系数,并利用扩大系数对混沌序列中的元素进行扩大,将扩大后的混沌序列作为置乱步长序列的具体方法为:
(1)获取混沌序列,方法为:
利用混沌映射的方法,获取长度为
的一维混沌序列,混沌序列中每个元
素的范围为
,
为图像大小即
和
为图像的长和宽;
(2)计算出混沌序列中元素的扩大系数,公式为:
式中,
为混沌序列中元素的扩大系数,
为图像长;
为图像宽,
为游程长度阈
值,
表示获取
和
的最小值扩大系数是为了使得像素点的置乱范围较大
从而达到更好的置乱效果;
(3)利用扩大系数对混沌序列中的元素进行扩大,方法为:
将混沌序列中每个元素乘以扩大系数
并向上取整并加上游程阈值,得到扩大后
的混沌序列;
(4)将扩大后的混沌序列作为置乱步长序列,置乱步长序列中每个元素都大于游程阈值,确保了像素点在置乱时可跳出局部范围,破坏图像的局部相似性,打破灰度之间的关联性,使得置乱后的图像更加混乱。
步骤三:根据灰度图像中每个未置乱像素点邻域中的已置乱像素点个数计算每个像素点的混乱度,选取混乱度最小的未置乱像素点作为待置乱像素点;利用待置乱像素点的灰度值,在密钥字典中得到待置乱像素点的置乱方向;利用置乱像素点的序号,在置乱步长序列中获取对应序号的元素,作为置乱像素点的置乱步长;
该步骤是获取图像中的未置乱像素点的邻域像素点分布情况,根据分布情况筛选出待置乱像素点,并根据待置乱像素点的特征在步骤二中的密钥字典和置乱步长序列中获取到待置乱像素点的置乱信息,用于后续置乱操作;
其中,根据灰度图像中每个未置乱像素点邻域中的已置乱像素点个数计算每个像素点的混乱度的方法为:
获取每个未置乱像素点中心的
的邻域中包含的所有已置乱像素点的个
数;
将该所有已置乱像素点的个数除以
的平方,得到的商值,作为每个未置乱像素
点的混乱度;
具体计算公式为:
公式中,
为第t个未置乱像素点的混乱度,
为游程阈值,
表示尺寸为
的图像块中包含的所有像素点个数;
表示在以第
个未置乱像素点为中心的
的图像块中包含的所有已置乱像素点的个数,即第
个未置乱像素点的
邻
域内已置乱像素点的个数;
该公式的意义为:当
越大,第
个未置乱像素点的
邻域内已置乱像素点
的个数越多,第
个未置乱像素点的混乱度越大;反之当
越小,第
个未置乱像素点的
邻域内已置乱像素点的个数越少,第
个未置乱像素点的混乱度越小,此时越应优
先选择混乱度小的未置乱像素点作为初始的待置乱像素点,增加混乱度小的未置乱像素点
所处区域的混乱度。
进一步的,获取混乱度最小的未置乱像素点作为初始的待置乱像素点。若存在多个未置乱像素点的混乱度一致且最小,则在此些未置乱像素点中随机选择一个作为初始的待置乱像素点。
本方案根据未置乱像素点的分布特征,获取每个未置乱像素点的混乱度,从而选择初始的待置乱像素点,可确保最终置乱结果的混乱度,同时使得置乱更加高效;
进一步的,利用待置乱像素点的灰度值,在密钥字典中得到待置乱像素点的置乱方向;利用置乱像素点的序号,在置乱步长序列中获取对应序号的元素,作为置乱像素点的置乱步长,具体如下:
利用待置乱像素点的灰度值作为索引,在密钥字典中进行匹配,得到待置乱像素点的置乱方向;
获取当前待置乱像素点的序号
,如第一个进行置乱的待置乱像素点的序号为1,
第2个进行置乱的待置乱像素点的序号为2,以此类推。获取置乱步长序列中第
个元素,作
为待置乱像素点的置乱步长。
步骤四:根据置乱步长和置乱方向构建置乱方向向量,利用置乱方向向量对待置乱像素点进行置乱,将置乱后的半导体设备图像作为密文图像进行存储;
该步骤的目的构建置乱方向向量,对待置乱像素点进行置乱,并且获取每一轮置乱后的半导体设备图像的置乱复杂度,根据复杂度和复杂度阈值得到置乱完成的半导体设备图像,作为密文图像进行后续分析。
其中,根据置乱步长和置乱方向构建置乱方向向量的方法为:
当前待置乱像素点的置乱步长作为模长,将置乱方向作为方向,模长和方向构成置乱方向向量;
其中,用置乱方向向量对待置乱像素点进行置乱的方法为:
(1)获取待置乱像素点的置乱方向向量;
(2)将置乱方向向量指向的位置作为待置乱像素点的置乱位置;
(3)若待置乱像素点的置乱位置超出图像外时,将待置乱像素点放在本轮置乱中,第一个待置乱像素点原本的位置上,保存当前待置乱像素点的位置,作为结束点;结束本轮置乱;
如图4所示,图中1,2,3,4表示的是像素点位置,设1为本轮置乱中,第一个待置乱像素点的位置;若有某置乱像素点,置乱位置依次为1,2,3,4,由于置乱位置3的下一个置乱位置4超出了图像,则将置乱位置3作为本轮置乱的结束点(结束时的像素点位置),并且将该置乱像素点放置在1上,本轮置乱结束;
若待置乱像素点的置乱位置未超出图像,并且待置乱像素点的置乱位置为本轮置乱的第一个待置乱像素点原本的位置上,则将待置乱像素点放在本轮置乱中,第一个待置乱像素点原本的位置上,保存当前待置乱像素点的置乱位置,作为结束点,结束本轮置乱;
如图5所示,置乱像素点位于置乱位置3时,下一个置乱位置为1,也就是本轮置乱的第一个待置乱像素点的原本位置(初始位置),则将置乱像素点放置在1上,并将1作为本轮置乱的结束点;
若待置乱像素点的置乱位置未超出图像,并且待置乱像素点的置乱位置不为本轮置乱的第一个待置乱像素点原本的位置上,则将待置乱像素点放在置乱位置上,将置乱位置上原本的像素点作为下一个待置乱像素点;
如图6所示,置乱像素点位于置乱位置3时,下一个置乱为4,即未超出图像,也并非本轮置乱的第一个待置乱像素点原本的位置(不是1),因此,将置乱像素点放置在4上,将4上原来的像素点作为下一个置乱像素点进行置乱;
(4)对下一个待置乱像素点重复上述步骤进行像素点置乱,直至直到步骤(3)中发生时停止时,记录本轮置乱的结束点以及本轮置乱的像素点个数,结束本轮置乱;
(5)在本轮置乱结束后,重新选取混乱度最小的未置乱像素点作为待置乱像素点,按照上述步骤进行下一轮置乱。
至此,完成了一轮置乱操作,实现了像素点的链式置乱,当前待置乱像素点的置乱位置决定了下一个待置乱像素点的获取。使得加密结果具有非常好的雪崩效应,即改变图像中任意一个像素点的值,可导致最终得到的密文图像大不相同,可抵抗选择明文攻击。又通过设置停止条件,确保了置乱不会溢出图像之外;
进一步的,在每一轮置乱结束后根据每个像素点的邻域内未置乱像素点的个数和已置乱的像素点个数,得到半导体设备图像的置乱复杂度;当置乱复杂度大于复杂度阈值时,图像置乱完成,将置乱后的半导体设备图像作为密文图像;
其中,根据每个像素点的邻域内未置乱像素点的个数和已置乱的像素点个数,得到半导体设备图像的置乱复杂度的方法为:
(1)获取半导体设备图像中每个像素点在
邻域内未置乱像素点的个数和
邻域内所有像素点总数的占比,并选取出最大占比
;
公式中,
,
表示尺寸为
的图像块中包含的所有像
素点个数;
表示在以第
个像素点为中心的
的图像块中包含的所有未置乱像素
点的个数,即第
个像素点的
邻域内未置乱像素点的个数;
表示第
个像素点
的
邻域内未置乱像素点的个数的比例;获取每个像素点的
邻域内未置乱
像素点的个数的比例,
表示比例中的最大值,即
的局部区域内未置乱像素点的个
数的比例的最大值;
(2)以e为底数,以最大占比为指数,得到指数幂,将该指数幂的倒数,与半导体设备图像中已经置乱的像素点的个数在半导体设备图像总像素点个数中的占比相乘,得到的值作为半导体设备图像的置乱复杂度;具体计算公式为:
公式中,
为半导体设备图像的置乱复杂度,
为
的负相关函数,
具体含义为e的
次方;当前图像中已置乱像素点的比例越大,且所有局部区域内未置乱像
素点的个数的比例越小时,置乱结果越复杂;反之,当前图像中已置乱像素的比例越小或存
在一个或多个局部区域内未置乱像素点的个数的比例较大时,置乱结果复杂度较小。
进一步的,当置乱复杂度大于复杂度阈值时,图像置乱完成,将置乱后的半导体设备图像作为密文图像,具体为:
当半导体设备图像的置乱复杂度
时,完成半导体设备图像的置乱;
当复杂度
时,通过步骤三中获取下一个初始的待置乱像素点,根据步骤四中
的,利用置乱方向向量对待置乱像素点进行置乱的方法,开始新的一轮置乱,重复步骤三和
步骤四中的置乱过程,进行多轮置乱,直到置乱结果复杂度大于阈值
时停止,完成半导体
设备图像的置乱,
由人工设置,经验值为0.9,通过获取置乱结果复杂度,根据置乱结果复
杂度重复多轮置乱,确保了最终置乱结果的复杂性,使得置乱效果更好,可抵抗统计分析攻
击。
至此,完成了半导体设备图像的置乱,获得了置乱图像、每一轮置乱的结束点序列(置乱像素点的位置序列)以及每一轮置乱的像素点个数,并将置乱图像作为密文图像;
进一步的,将密文图像、每个像素点置乱后的位置序列、已置乱像素点个数、游程长度阈值进行RSA加密的结果作为补充密文;利用补充密文对密文图像进行解密,得到半导体设备图像,进行后续预防性维修;
本步骤是根据置乱后得到的像素点信息构造补充密文,对图像进行解密用于预测性维修。
其中,补充密文的获取方法为:
将所有轮置乱的结束点按照顺序构成结束点序列,将所有轮置乱的像素个数按照顺序构成像素点个数序列。对结束点序列(每个像素点置乱后的位置序列)、(每一轮置乱的)像素点个数序列以及步骤一获得的游程阈值利用现有的加密方法如RSA进行加密,将加密结果作为补充密文;
至此,获取了密文图像和补充密文。将密文图像以及补充密文存储或传输至解密端。
其中,利用补充密文对密文图像进行解密,得到半导体设备图像,进行后续预防性维修的方法为:
解密端获得密文图像以及补充密文,根据补充密文对密文图像进行解密:
利用现有的解密方法如RSA对补充密文进行解密,获得结束点序列、像素点个数序列以及步骤一获得的游程阈值;
根据游程阈值以及补充密钥获取置乱步长序列;
对结束点序列以及像素点个数序列进行反序获得反序结束点序列和反序像素点个数序列;
获取反序像素点个数序列中所有元素的加和得到置乱像素点总数,获取置乱步长序列中第一个位置到第置乱像素点总数个位置的元素,并进行反序排列,得到解密步长序列;
获取反序结束点序列中第一个结束点,开始一轮解密,一轮解密操作包括:
以密文图像中该结束点位置的像素点为本轮初始的待解密像素点,对待解密像素点进行解密,对待解密像素点的解密操作包括:将待解密像素点的灰度值作为索引,获取密钥字典中对应位置的方向,获取该方向的反方向,即与该方向相差180°的方向作为待解密像素点的解密方向,根据待解密像素点的序号获取解密步长序列中该序号位置的步长,步长和解密方向构成解密方向向量,以待解密像素点解密方向向量的原点,获取解密方向向量所指的位置作为解密位置,将待解密像素点放置在解密位置,将解密位置原本的像素点作为下一个待解密像素点;
重复对待解密像素点进行解密操作,直到本轮解密包含的解密像素点个数等于反序像素点个数序列中对应的像素点个数减一时停止,将下一个待解密像素点放置在本轮初始的待解密像素点的原本的位置,本轮解密操作结束;
依次获取反序结束点序列中每个结束点进行多轮解密操作,直到解密轮数等于反序结束点序列中结束点的个数时停止,此时得到的解密图像即为加密前的半导体设备图像。
至此,完成了半导体设备图像的解密,可根据解密的半导体设备图像进行分析,识别其运行状态,以便进行及时预防性维修。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。