一种CAD模型加密及解密方法

未命名 09-17 阅读:85 评论:0

一种cad模型加密及解密方法
技术领域
1.本发明涉及数据加密技术领域,更具体地,涉及一种cad模型加密及解密方法。


背景技术:

2.cad模型是由工程师或绘图员根据所需的规格设计的,是被称为“数字线程”的一系列过程中的第一步。数字线程是指将产品从设计到使用的整个生命周期中的所有数据和信息连接起来的一种方法,其安全性至关重要。然而,cad模型在传输和共享时面临着数据泄露、篡改和盗用等风险。因此,如何保护cad模型的数据隐私成为了一个亟待解决的研究问题。
3.现有一种基于随机变量矩阵的cad模型加密方法,其利用矩阵乘法运算的可逆性和非线性特性,增加数据的难以破解性和攻击者的困难度,将原始数据转换为随机变量矩阵,并在矩阵中添加随机噪声,从而保护原始数据的机密性和隐私性。
4.然而,现有的基于随机变量矩阵进行加密操作的方法仍存在一些不足之处。一是该方法通常需要对cad模型进行预处理或后处理,从而增加计算复杂度。二是该方法通常没有对cad模型中以xml(extensible markup language)格式存储的元数据和特征信息进行加密,从而使得cad模型的数据隐私容易被泄露或篡改。


技术实现要素:

5.本发明为克服现有技术存在的计算复杂度高,且cad模型的数据隐私容易被泄露或篡改,安全性低的缺陷,提出如下技术方案:
6.第一个方面,本发明提出一种cad模型加密方法,包括:
7.提取cad草图模型中与拓扑实体相关的特征集合,并将所述特征集合转换成xml文件;
8.使用随机数算法生成私钥s1及其对应的公钥p1,以及私钥s2及其对应的公钥p2;
9.使用双线性映射方法,将所述私钥s1和公钥p1,以及私钥s2和公钥p2分别映射到typea椭圆曲线的循环群g1和循环群g2中;
10.使用随机变量矩阵a,将cad草图模型的顶点坐标编码成坐标向量矩阵m;
11.利用循环群g1对所述随机变量矩阵a进行加密处理,得到密文c1;利用循环群g2对所述坐标向量矩阵m进行加密处理,得到密文c2;
12.将所述密文c1、密文c2和所述xml文件整合输出为cad加密文件。
13.作为优选的技术方案,利用循环群g2对所述坐标向量矩阵m进行加密处理,得到密文c2,具体的步骤包括:
14.使用循环群g2中的私钥s2,将坐标向量矩阵m映射到循环群g2中,得到群元素m


15.使用循环群g1中的公钥p1和循环群g2中的公钥p2,分别将群元素m

和随机变量矩阵a映射到循环群g1和循环群g2之间的乘法循环群g
t
中,得到元素e(m

,p1)和元素e(a,p2)。
16.对元素e(m

,p1)和元素e(a,p2)进行配对,得到元素对e(m

,p1)^e(a,p2)。
17.对元素对e(m

,p1)^e(a,p2)进行加密,得到密文c2。
18.作为优选的技术方案,利用乘法循环群g
t
中的pairing函数对元素e(m

,p1)和元素e(a,p2)进行配对,得到元素对e(m

,p1)^e(a,p2)。
19.作为优选的技术方案,使用aes加密算法对元素对e(m

,p1)^e(a,p2)进行加密,得到密文c2,其表达式如下所示:
20.c2=encrypt(e(m

,p1)^e(a,p2))。
21.作为优选的技术方案,在得到密文c2之后,所述方法还包括:对所述密文c1和密文c2进行拼接处理,得到密文c3。将所述密文c3与xml文件整合输出为cad加密文件。
22.作为优选的技术方案,使用随机变量矩阵a,将cad草图模型的顶点坐标编码成坐标向量矩阵m,具体包括:
23.将cad草图模型的顶点坐标转化为n
×
m维的原始坐标向量矩阵m0。
24.使用随机变量矩阵a,将所述原始坐标向量矩阵m0编码为坐标向量矩阵m,其表达式如下所示:
25.m=m0a
[0026][0027][0028]
其中,a∈(0.5,1.5)和b∈(0.1,0.5)分别为随机变量矩阵中的元素,m=2或m=3。
[0029]
第二个方面,本发明还提出一种cad模型解密方法,用于对第一个方面所述的cad模型加密方法输出的cad加密文件进行解密,包括:
[0030]
从cad加密文件提取出密文c1、密文c2以及包含与拓扑实体相关的特征集合的xml文件。
[0031]
对所述密文c1进行解密操作,得到随机变量矩阵a。对所述密文c2进行解密操作,得到坐标向量矩阵m。
[0032]
使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到cad草图模型的顶点坐标。
[0033]
利用cad草图模型的顶点坐标和包含与拓扑实体相关的特征集合的xml文件,构建cad草图模型。
[0034]
作为优选的技术方案,使用循环群g1中的私钥s1对密文c1进行解密操作,得到随机变量矩阵a。
[0035]
作为优选的技术方案,对所述密文c2进行解密操作,得到坐标向量矩阵m,具体包括:
[0036]
使用循环群g2中的公钥p2将随机变量矩阵a映射到乘法循环群g
t
中,得到元素e(a,p2)。
[0037]
使用aes解密算法从密文c2提取元素对e(m

,p1)^e(a,p2)。
[0038]
使用pairing函数,利用元素e(a,p2)从元素对e(m

,p1)^e(a,p2)中提取元素e(m


p1),其表达式如下所示:
[0039]
e(m

,p1)=e(m

,p1)*e(a,p2)-1
*e(a,p2);
[0040]
其中,e(a,p2)-1
为元素e(a,p2)的负指数。
[0041]
调用gt_get_root_of_unity()函数获取乘法循环群g
t
中的一个原根z。
[0042]
根据原根z和元素e(m

,p1)的对数,计算坐标向量矩阵m的对数,其表达式如下所示:
[0043]
log_e(m)=log_gt(e(m

,p1))/log_gt(z)。
[0044]
使用指数函数exp_gt()将对数log_e(m)转换为坐标向量矩阵m。
[0045]
作为优选的技术方案,使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到cad草图模型的顶点坐标,具体包括:
[0046]
使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到原始坐标向量矩阵m0,其表达式如下所示:
[0047]
m0=ma-1

[0048]
将原始坐标向量矩阵m0转化为cad草图模型的顶点坐标。
[0049]
与现有技术相比,本发明技术方案的有益效果包括:
[0050]
(1)本发明通过将拓扑实体相关的特征集合转换成xml文件,使用随机变量矩阵对xml文件进行加密生成密文c1,实现对cad模型的元数据和特征信息的加密,可以保证cad模型中非公开或共享部件信息泄露。
[0051]
(2)本发明采用基于type a曲线类型relic配对密码学库进行双线性映射实现密钥配对,生成密文c2,将所述密文c1、密文c2和所述xml文件整合输出为cad加密文件,可以有效降低加密过程中的计算复杂度,提高了cad模型的加密效率和安全性保证高效率和高安全性。
[0052]
(3)本发明在对cad加密文件进行解密时,利用cad草图模型的顶点坐标和包含与拓扑实体相关的特征集合的xml文件,构建cad草图模型,能够维持拓扑实体的特征约束,可以有效的保证cad模型的连通性,维持加密后的cad模型的有效性。
附图说明
[0053]
图1为本技术实施例中cad模型加密方法的流程示意图。
[0054]
图2为本技术实施例中cad模型加密及解密方法的工作原理架构图。
[0055]
图3为本技术实施例中cad模型解密方法的流程示意图。
具体实施方式
[0056]
以下将参照附图和优选的技术方案来说明本发明的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。应当理解,优选的技术方案仅为了说明本发明,而不是为了限制本发明的保护范围。
[0057]
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸
绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0058]
在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
[0059]
具体而言,图1为本技术实施例所提供的cad模型加密方法的流程示意图。
[0060]
如图1所示,该cad模型加密方法包括以下步骤:
[0061]
s11:提取cad草图模型中与拓扑实体相关的特征集合,并将所述特征集合转换成xml文件。
[0062]
本实施例中,使用支持向量机算法将cad草图模型的特征分类为相关特征和加密特征,保存相关特征的xml文件。所述相关特征为与拓扑实体相关的特征集合,所述加密特征为除相关特征外其余的特征集合。
[0063]
s12:使用随机数算法生成私钥s1及其对应的公钥p1,以及私钥s2及其对应的公钥p2。
[0064]
s13:使用双线性映射方法,将所述私钥s1和公钥p1,以及私钥s2和公钥p2分别映射到type a椭圆曲线的循环群g1和循环群g2中。
[0065]
s14:使用随机变量矩阵a,将cad草图模型的顶点坐标编码成坐标向量矩阵m。
[0066]
本实施例中,使用随机变量矩阵a,将cad草图模型的顶点坐标编码成坐标向量矩阵m,具体包括:
[0067]
将cad草图模型的顶点坐标转化为n
×
m维的原始坐标向量矩阵m0。
[0068]
使用随机变量矩阵a,将所述原始坐标向量矩阵m0编码为坐标向量矩阵m,其表达式如下所示:
[0069]
m=m0a
[0070][0071][0072]
其中,a∈(0.5,1.5)和b∈(0.1,0.5)分别为随机变量矩阵中的元素,m=2或m=3。
[0073]
s15:利用循环群g1对所述随机变量矩阵a进行加密处理,得到密文c1。利用循环群g2对所述坐标向量矩阵m进行加密处理,得到密文c2。
[0074]
可选地,在本技术的一个实施例中,利用循环群g2对所述坐标向量矩阵m进行加密处理,得到密文c2,具体的步骤包括:
[0075]
使用循环群g2中的私钥s2,将坐标向量矩阵m映射到循环群g2中,得到群元素m


[0076]
使用循环群g1中的公钥p1和循环群g2中的公钥p2,分别将群元素m

和随机变量矩阵a映射到循环群g1和循环群g2之间的乘法循环群g
t
中,得到元素e(m

,p1)和元素e(a,p2)。
[0077]
对元素e(m

,p1)和元素e(a,p2)进行配对,得到元素对e(m

,p1)^e(a,p2)。
[0078]
本实施例中,利用乘法循环群g
t
中的pairing函数对元素e(m

,p1)和元素e(a,p2)进行配对,得到元素对e(m

,p1)^e(a,p2)。
[0079]
对元素对e(m

,p1)^e(a,p2)进行加密,得到密文c2。
[0080]
本实施例中,使用aes加密算法对元素对e(m

,p1)^e(a,p2)进行加密,得到密文c2,其表达式如下所示:
[0081]
c2=encrypt(e(m

,p1)^e(a,p2))。
[0082]
s16:将所述密文c1、密文c2和所述xml文件整合输出为cad加密文件。
[0083]
本实施例中,对所述密文c1和密文c2进行拼接处理,得到密文c3。将所述密文c3与xml文件整合输出为cad加密文件。
[0084]
其次,参阅图2-图3,本技术实施例提出一种cad模型解密方法,用于对上述实施例所述的cad模型加密方法输出的cad加密文件进行解密。
[0085]
如图3所示,该cad模型加密方法包括以下步骤:
[0086]
s21:从cad加密文件提取出密文c1、密文c2以及包含与拓扑实体相关的特征集合的xml文件。
[0087]
s22:对所述密文c1进行解密操作,得到随机变量矩阵a。对所述密文c2进行解密操作,得到坐标向量矩阵m。
[0088]
本实施例中,使用循环群g1中的私钥s1对密文c1进行解密操作,得到随机变量矩阵a。
[0089]
本实施例中,对所述密文c2进行解密操作,得到坐标向量矩阵m,具体包括:
[0090]
使用循环群g2中的公钥p2将随机变量矩阵a映射到乘法循环群g
t
中,得到元素e(a,p2)。
[0091]
使用aes解密算法从密文c2提取元素对e(m

,p1)^e(a,p2)。
[0092]
使用pairing函数,利用元素e(a,p2)从元素对e(m

,p1)^e(a,p2)中提取元素e(m

,p1),其表达式如下所示:
[0093]
e(m

,p1)=e(m

,p1)*e(a,p2)-1
*e(a,p2);
[0094]
其中,e(a,p2)-1
为元素e(a,p2)的负指数。
[0095]
调用gt_get_root_of_unity()函数获取乘法循环群g
t
中的一个原根z。
[0096]
根据原根z和元素e(m

,p1)的对数,计算坐标向量矩阵m的对数,其表达式如下所示:
[0097]
log_e(m)=log_gt(e(m

,p1))/log_gt(z)。
[0098]
使用指数函数exp_gt()将对数log_e(m)转换为坐标向量矩阵m。
[0099]
s23:使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到cad草图模型的顶点坐标。
[0100]
本实施例中,使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到cad草图模型的顶点坐标,具体包括:
[0101]
使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到原始坐标向量矩阵m0,其表达式如下所示:
[0102]
m0=ma-1

[0103]
将原始坐标向量矩阵m0转化为cad草图模型的顶点坐标。
[0104]
s24:利用cad草图模型的顶点坐标和包含与拓扑实体相关的特征集合的xml文件,构建cad草图模型。
[0105]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不是必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或n个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0106]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“n个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0107]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更n个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
[0108]
应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,n个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列,现场可编程门阵列等。
[0109]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0110]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

技术特征:
1.一种cad模型加密方法,其特征在于,包括:提取cad草图模型中与拓扑实体相关的特征集合,并将所述特征集合转换成xml文件;使用随机数算法生成私钥s1及其对应的公钥p1,以及私钥s2及其对应的公钥p2;使用双线性映射方法,将所述私钥s1和公钥p1,以及私钥s2和公钥p2分别映射到type a椭圆曲线的循环群g1和循环群g2中;使用随机变量矩阵a,将cad草图模型的顶点坐标编码成坐标向量矩阵m;利用循环群g1对所述随机变量矩阵a进行加密处理,得到密文c1;利用循环群g2对所述坐标向量矩阵m进行加密处理,得到密文c2;将所述密文c1、密文c2和所述xml文件整合输出为cad加密文件。2.根据权利要求1所述的cad模型加密方法,其特征在于,利用循环群g2对所述坐标向量矩阵m进行加密处理,得到密文c2,具体的步骤包括:使用循环群g2中的私钥s2,将坐标向量矩阵m映射到循环群g2中,得到群元素m

;使用循环群g1中的公钥p1和循环群g2中的公钥p2,分别将群元素m

和随机变量矩阵a映射到循环群g1和循环群g2之间的乘法循环群g
t
中,得到元素e(m

,p1)和元素e(a,p2);对元素e(m

,p1)和元素e(a,p2)进行配对,得到元素对e(m

,p1)^e(a,p2);对元素对e(m

,p1)^e(a,p2)进行加密,得到密文c2。3.根据权利要求2所述的cad模型加密方法,其特征在于,利用乘法循环群g
t
中的pairing函数对元素e(m

,p1)和元素e(a,p2)进行配对,得到元素对e(m

,p1)^e(a,p2)。4.根据权利要求3所述的cad模型加密方法,其特征在于,使用aes加密算法对元素对e(m

,p1)^e(a,p2)进行加密,得到密文c2,其表达式如下所示:c2=encrypt(e(m

,p1)^e(a,p2))。5.根据权利要求4中的cad模型加密方法,其特征在于,在得到密文c2之后,所述方法还包括:对所述密文c1和密文c2进行拼接处理,得到密文c3;将所述密文c3与xml文件整合输出为cad加密文件。6.根据权利要求5中的cad模型加密方法,其特征在于,使用随机变量矩阵a,将cad草图模型的顶点坐标编码成坐标向量矩阵m,具体包括:将cad草图模型的顶点坐标转化为n
×
m维的原始坐标向量矩阵m0;使用随机变量矩阵a,将所述原始坐标向量矩阵m0编码为坐标向量矩阵m,其表达式如下所示:m=m0aa其中,a∈(0.5,1.5)和b∈(0.1,0.5)分别为随机变量矩阵中的元素,m=2或m=3。7.一种cad模型解密方法,用于对如权利要求6所述的cad模型加密方法输出的cad加密文件进行解密,其特征在于,包括:
从cad加密文件提取出密文c1、密文c2以及包含与拓扑实体相关的特征集合的xml文件;对所述密文c1进行解密操作,得到随机变量矩阵a;对所述密文c2进行解密操作,得到坐标向量矩阵m;使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到cad草图模型的顶点坐标;利用cad草图模型的顶点坐标和包含与拓扑实体相关的特征集合的xml文件,构建cad草图模型。8.根据权利要求6中的cad模型解密方法,其特征在于,使用循环群g1中的私钥s1对密文c1进行解密操作,得到随机变量矩阵a。9.根据权利要求6中的cad模型解密方法,其特征在于,对所述密文c2进行解密操作,得到坐标向量矩阵m,具体包括:使用循环群g2中的公钥p2将随机变量矩阵a映射到乘法循环群g
t
中,得到元素e(a,p2);使用aes解密算法从密文c2提取元素对e(m

,p1)^e(a,p2);使用pairing函数,利用元素e(a,p2)从元素对e(m

,p1)^e(a,p2)中提取元素e(m

,p1),其表达式如下所示:e(m

,p1)=e(m

,p1)*e(a,p2)-1
*e(a,p2);其中,e(a,p2)-1
为元素e(a,p2)的负指数;调用gt_get_root_of_unity()函数获取乘法循环群g
t
中的一个原根z;根据原根z和元素e(m

,p1)的对数,计算坐标向量矩阵m的对数,其表达式如下所示:log_e(m)=log_gt(e(m

,p1))/log_gt(z);使用指数函数exp_gt()将对数log_e(m)转换为坐标向量矩阵m。10.根据权利要求6中的cad模型解密方法,其特征在于,使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到cad草图模型的顶点坐标,具体包括:使用随机变量矩阵a对坐标向量矩阵m进行还原处理,得到原始坐标向量矩阵m0,其表达式如下所示:m0=ma-1
。将原始坐标向量矩阵m0转化为cad草图模型的顶点坐标。

技术总结
本发明涉及数据加密技术领域,公开了一种CAD模型加密及解密方法,所述加密方法包括:提取CAD草图模型中与拓扑实体相关的特征集合,并将特征集合转换成XML文件;生成私钥S1及其对应的公钥P1,以及私钥S2及其对应的公钥P2;将私钥S1和公钥P1,以及私钥S2和公钥P2分别映射到Type A椭圆曲线的循环群G1和循环群G2中;使用随机变量矩阵A,将CAD草图模型的顶点坐标编码成坐标向量矩阵M;利用循环群G1对随机变量矩阵A进行加密处理,得到密文C1;利用循环群G2对坐标向量矩阵M进行加密处理,得到密文C2;将密文C1、密文C2和XML文件整合输出为CAD加密文件。本发明能够降低CAD模型加密过程中的计算复杂度,保护CAD模型的数据隐私,提高CAD加密模型的安全性。模型的安全性。模型的安全性。


技术研发人员:刘兰 惠占发 蔡延丰 罗洪强 陈子力
受保护的技术使用者:广东技术师范大学
技术研发日:2023.06.19
技术公布日:2023/9/16
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐