基于时钟加密锁的神经网络模型加密和存储方法及系统技术方案

技术编号:36537638 阅读:19 留言:0更新日期:2023-02-01 16:26
本发明专利技术提供基于时钟加密锁的神经网络模型加密和存储方法及系统,方法包括:将加密后的模型分为两部分,第一部分储存在主机设备中,第二部分储存在时钟加密锁中,第二部分可以为一个也可以为多个文件,存储时用文件ID区分,拆分详情记录到加密表table中;将模型的密钥存储在时钟加密锁中,实现了密钥与加密模型的物理隔离,密钥具有只能单向被写入加密锁,无法从加密锁外部读取的属性;使用带时钟的硬件加密锁设备,在加密锁内部创建加密模块,使用一次性的(one

【技术实现步骤摘要】
基于时钟加密锁的神经网络模型加密和存储方法及系统


[0001]本专利技术涉及人工智能系统和信息技术处理领域,具体涉及基于时钟加密锁的神经网络模型加密和存储方法及系统。

技术介绍

[0002]神经网络模型作为人工智能运算和企业的核心技术应该被妥善的保存和使用。神经网络模型的训练生成过程,需要特定领域海量数据作为训练资源,决定了经过训练的深度学习模型具有很高的商业价值和知识属性,必须将其纳入其所有者的知识产权。从技术上迫切需要保护神经网络模型不被非法复制、重新分发或滥用。2.当前神经网络模型的开发框架非常多,例如TensorFlow、PyTorch、Caffe、ONNX等等,每种框架开发训练生成神经网络模型文件格式都不相同。但概括起来至少有三种类型:网络描述文件,存储了神经网络拓扑结构和算子算法描述信息;权重参数文件,储存了模型各层算子权重和偏置等信息;量化模型文件,神经网络模型在不同的架构平台进行int4/int8/int16量化后产生的文件。
[0003]现有神经网络模型加密技术:
[0004]第一种情况,模型文件存储、加载和推理运算在远端服务器,终端设备通过服务器认证后将检测数据传输给远端服务器,服务器返回推理识别结果,在终端设备上没有存储神经网络模型。例如公布号为CN114118392A的现有专利技术专利申请文献《加密锁型模块、支持人工智能的方法及电子装置》中所述加密锁型模块包括:接入信道,被配置为连接到所述电子装置;以及神经网络处理器,被配置为通过所述接入信道从所述电子装置接收第一输入信息,并且基于所述第一输入信息通过神经网络计算生成输出信息。针对第一种情况,神经网络模型存储在远端服务器上,虽然这种物理隔离保护了模型不被外界获取,但是使用场景受限于终端设备必须通过公网网络连接到远端服务器这个条件,在无网络连接地方无法使用。而且网络传输数据本身也耗费大量的时间,降低了系统的实时性;
[0005]第二种情况,全部或部分加密的模型文件和密钥储存在本地设备上,使用模型推理运算前本地设备加载加密模型和密钥进行解密,然后在本地设备采集数据并利用神经网络计算单元进行推理运算获得结果,第二种情况,神经网络模型部署运行在终端设备侧(包含嵌入式linux系统、手机、相机、pad、ai计算盒、计算机等智能设备),虽然系统实时性提高也不需要网络连接,但将加密的模型和解密密钥一起存储在终端设备上,就像将锁头和钥匙放在一起似的不安全。例如,若密钥文件作为系统文件隐藏起来,只要具有系统使用权限或者破解系统获取root或admin权限就可以检索出密钥文件。若将密钥编入可执行程序中,通过反编译查看data段或text段也可以获取到密钥,加密的模型作为系统文件也容易被检索出来,存在被破解的风险;
[0006]第三种情况,网络模型文件本身并不加密,而是在训练模型时使用有特征(水纹)或加密的数据集,在模型部署时必须使用与训练时相同特征(水纹)的或加密的数据作为输入,否则无法识别出正确的结果,模型所有者将输入数据的特征或加密密钥作为保护系统的方法。例如公布号为CN108830092A的现有专利技术专利文献《涉及数据随机加密的神经网络
模型加密保护系统及方法》包括加密模块,加密模块中的数据划分模块将原始输入数据转换为二维结构,并将其划分为多个待处理的子块,密码生成模块分别生成与该子块结构相同的密码,密码嵌入模块用于将各个密码以叠加的方式嵌入相应的子块,数据重组模块根据先前的子块划分方式,将各个嵌有密码的子块重构为二维结构,生成加密输入数据。该种现有技术方案的网络模型文件本身不加密,而是在训练模型时使用有特殊特征或加密的数据集,在模型部署时必须使用与训练时相同特征的或加密的数据作为输入,否则无法识别出正确的结果。这种方法很好的保护了模型的权重参数信息,但是对网络的描述文件没有加密保护,网络的描述文件通常具有结构化数据存储格式,例如protobuf、json或xml等格式文本文件,可以利用暴漏的网络拓扑结构和算子描述信息重构出模型结构,再利用未加密的数据集进行模型训练生成新的模型文件,存在被破解的风险。另外每次推理运算前都需要将输入数据做特殊处理(水纹)或加密降低了系统的运行效率。
[0007]综上,现有技术存在实时性受有制约且易被破解导致安全性低的技术问题。

技术实现思路

[0008]本专利技术所要解决的技术问题在于如何解决现有技术中实时性受有制约且易被破解导致安全性低的技术问题。
[0009]本专利技术是采用以下技术方案解决上述技术问题的:基于时钟加密锁的神经网络模型加密和存储方法包括:
[0010]S1、利用预置数据集训练得到神经网络模型f;
[0011]S2、获取秘钥生成数据,据以生成第一秘钥;
[0012]S3、获取并利用第一密钥加密处理产品及模型数据,据以生成第二密钥;
[0013]S4、利用第二密钥加密处理神经网络模型f的预置部分,据以生成加密文件E(f)和加密表table;
[0014]S5、拆分处理加密文件E(f),以得到第一部分加密文件E1及第二部分加密文件E2,并将拆分处理数据记录于加密表table;
[0015]S6、单向写入第二密钥至硬件加密锁,并存储预置主机设备的主机唯一标识及主机自定义字符串至时钟加密锁,在硬件加密锁及时钟加密锁创建加密模块,以利用一次性One

shot口令验证方式进行登入验证;
[0016]S7、获取种子数据及预置加密逻辑,据以对数据通信进行加密,步骤S7包括:
[0017]S71、利用加密锁随机生成种子数据;
[0018]S72、利用预置第三秘钥生成算法处理种子数据,以生成第三密钥;
[0019]S73、根据对称加密算法,使用第三密钥对第二密钥进行加密传输;
[0020]S74、利用主机设备加密模块根据相同的种子数据生成相同第三密钥,以对加密密文解密获得解密后第二密钥。
[0021]本专利技术将模型的密钥存储在时钟加密锁中,实现了密钥与加密模型的物理隔离。密钥具有只能单向被写入加密锁,无法从加密锁外部读取的属性,提高了通信安全性。
[0022]本专利技术使用带时钟的硬件加密锁设备,在加密锁内部创建加密模块,使用一次性的(one

shot)口令验证方式,不使用加密锁管理员密码登录,防止通过侦听或软件拦截造成加密锁管理员登录密码泄露,数据通信采用种子数据和自定义算法进行加密,提高了验
证操作的安全性。
[0023]本专利技术的主机加密模块可根据相同种子和自定义算法生成相同第三密钥,对加密密文解密获得第二密钥,再使用第三密钥对第二密钥进行加密传输可以防止软件拦截、侦听造成泄密。
[0024]在更具体的技术方案中,步骤S1包括:
[0025]S11、设计初始模型;
[0026]S12、利用预置数据集训练初始模型,据以得到神经网络模型f。
[0027]在更具体的技术方案中,步骤S2包括:
[0028]S21、获取秘本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于时钟加密锁的神经网络模型加密和存储方法,其特征在于,所述方法包括:S1、利用预置数据集训练得到神经网络模型f;S2、获取秘钥生成数据,据以生成第一秘钥;S3、获取并利用所述第一密钥加密处理产品及模型数据,据以生成第二密钥;S4、利用所述第二密钥加密处理所述神经网络模型f的预置部分,据以生成加密文件E(f)和加密表table;S5、拆分处理所述加密文件E(f),以得到第一部分加密文件E1及第二部分加密文件E2,并将拆分处理数据记录于所述加密表table;S6、单向写入所述第二密钥至硬件加密锁,并存储所述预置主机设备的主机唯一标识及主机自定义字符串至时钟加密锁,在所述硬件加密锁及所述时钟加密锁创建加密模块,以利用一次性One

shot口令验证方式进行登入验证;S7、获取种子数据及预置加密逻辑,据以对数据通信进行加密,所述步骤S7包括:S71、利用加密锁随机生成所述种子数据;S72、利用预置第三秘钥生成算法处理所述种子数据,以生成第三密钥;S73、根据对称加密算法,使用所述第三密钥对所述第二密钥进行加密传输;S74、利用主机设备加密模块根据相同的所述种子数据生成相同第三密钥,以对加密密文解密获得解密后第二密钥。2.根据权利要求1所述的基于时钟加密锁的神经网络模型加密和存储方法,其特征在于,所述步骤S1包括:S11、设计初始模型;S12、利用所述预置数据集训练所述初始模型,据以得到神经网络模型f。3.根据权利要求1所述的基于时钟加密锁的神经网络模型加密和存储方法,其特征在于,所述步骤S2包括:S21、获取秘钥生成数据,其中,所述密钥生成数据包括:随机数、时间数据和生产设备信息;S22、处理所述随机数、所述时间数据及所述生产设备信息,据以生成第一秘钥。4.根据权利要求1所述的基于时钟加密锁的神经网络模型加密和存储方法,其特征在于,所述步骤S3中的所述产品及模型数据包括:产品ID、神经网络模型Hash值及神经网络模型随机数。5.根据权利要求1所述的基于时钟加密锁的神经网络模型加密和存储方法,其特征在于,所述步骤S5包括:S51、将所述第一部分加密文件E1和所述加密表table存储至预置主机设备;S52、以文件ID区分所述第二部分加密文件E2;S53、存储所述第二部分加密文件E2至所述时钟加密锁。6.根据权利要求5所述的基于时钟加密锁的神经网络模型加密和存储方法,其特征在于,所述步骤S52中,所述第二部分加密文件E2的文件数目形式包括:单个文件及不少于两个的文件。7.根据权利要求1所述的基于时钟加密锁的神经网络模型加密和存储方法,其特征在于,所述步骤S6包括:
S61、组合所述预置主机设备的所述主机唯一标识、所述主机自定义字符串以及时间信息,以得到主机设备数据并存储至...

【专利技术属性】
技术研发人员:郑启文张作为李文兴顾文庆
申请(专利权)人:哈工大机器人合肥国际创新研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1