【技术实现步骤摘要】
基于自嵌入水印的G
‑
code文件认证与恢复方法
[0001]本专利技术属于3D打印
,尤其涉及一种基于自嵌入水印的G
‑
code文件认证与恢复方法。
技术介绍
[0002]3D打印,也称为增材制造(AM),是工业4.0的一项重要技术。它已广泛应用于许多关键行业,如汽车制造、医疗保健、航空、建筑等。因此,3D打印产品的质量和完整性对其应用领域的安全性和可靠性至关重要。
[0003]目前有多种类型的3D打印技术,而大多数桌面3D打印机基于的是熔融沉积建模技术(Fused Deposition Modelling,FDM)。所以我们以一台FDM 3D打印机为例来说明3D打印的过程,如图1所示。首先,用户使用CAD软件创建STL(StereoLithography)格式的数字3D对象。然后,通过Cura或Slic3r等切片软件将STL文件转换为机器语言,即G
‑
code文件。在这一步中,3D对象看起来像是被切成了多个层,但它实际正在规划打印的路径。此外,许多其它打 ...
【技术保护点】
【技术特征摘要】
1.一种基于自嵌入水印的G
‑
code文件认证与恢复方法,其特征在于,包括:步骤1,将G
‑
code文件中的G0和G1命令行划分为代码块并利用函数P进行置乱;步骤2,选择水印嵌入域:将置乱后的每个代码块划分为两部分,部分I为第一个命令行,部分II为剩余的命令行,部分I中的X和Y坐标用于生成认证水印和恢复水印,部分II中的X和Y坐标用于承载恢复水印;步骤3,将X和Y转换为二进制表示;步骤4,将每个代码块的部分I中的X和Y坐标的最高若干位比特信息分别输入到FNV哈希函数生成认证水印,并嵌入认证水印至代码块本身;步骤5,在映射块内嵌入恢复水印,代码块的恢复水印为嵌入认证水印前的该代码块的部分I的比特信息;步骤6,在嵌入认证水印和恢复水印后,X和Y坐标从二进制表示再转换为与原始精度相同的十进制表示;步骤7,当3D打印机接收到一个G
‑
code文件,首先检查其是否被篡改;如果未检测到篡改,则根据恢复水印恢复由认证水印引起的失真;如果G
‑
code文件被篡改,则利用恢复水印和相邻代码块的几何信息进行部分恢复。2.根据权利要求1所述的基于自嵌入水印的G
‑
code文件认证与恢复方法,其特征在于,所述步骤3包括:将所有X和Y坐标的数字向左平移三位,得到一个十进制整数;而后,将十进制整数转换为长度为p的二进制整数,记作和其中i=1,2,...,N,其中N是G
‑
code文件中G0和G1命令行的总数。3.根据权利要求2所述的基于自嵌入水印的G
‑
code文件认证与恢复方法,其特征在于,所述步骤4包括:对于置乱后的代码块的部分I,n为每个代码块包含的代码行数;其中X坐标的二进制表示记作而最高p
‑
6位的比特信息则输入到FNV哈希函数中并生成6位的认证水印而后,的最低6位比特则替换为得到以上步骤同样应用于Y坐标。4.根据权利要求3所述的基于自嵌入水印的G
‑
code文件认证与恢复方法,其特征在于,所述步骤5包括:代码块的恢复水印为嵌入认证水印前的该代码块的部分I的比特信息和代码块的映射块部分II中的X和Y坐标的最低位替换为代码块的恢复水印;置乱序列中最后一个代码块的恢复水印嵌入在该序列第一个代码块中。5.根据权利要求4所述的基于自嵌入水印的G
‑
...
【专利技术属性】
技术研发人员:李震宇,巩道福,谭磊,罗向阳,刘粉林,杨春芳,杜少勇,杨忠信,张昕,张明亮,范文同,
申请(专利权)人:中国人民解放军战略支援部队信息工程大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。