掌桥专利:专业的专利平台
掌桥专利
首页

数据保护方法、系统、电子设备及计算机可读存储装置

文献发布时间:2023-06-19 19:14:59


数据保护方法、系统、电子设备及计算机可读存储装置

技术领域

本申请涉及数据处理领域,特别是涉及一种数据保护方法、系统、电子设备及计算机可读存储装置。

背景技术

随着科学技术的发展,人工智能技术、物联网智能服务等越来越多,智能算法被广泛的使用。而智能算法,特别是深度学习之类的算法,需要事先准备大量的训练素材,然后对素材进行兴趣标注,在利用训练框架进行训练,以生成算法模型文件。该算法模型文件就会作为算法进行智能推理计算时的重要依据,因此其具有较高的使用价值。为了保护该模型文件,通常是对其进行加密,如何通过加密更好的实现对算法模型文件的保护,防止算法模型文件被窃取和使用,成为了本领域技术人员亟需解决的技术问题。

发明内容

本申请主要目的是提供一种数据保护方法、系统、电子设备及计算机可读存储装置,能够解决如何有效保护算法模型的技术问题。

为解决上述技术问题,本申请采用的第一个技术方案是:提供一种数据保护方法。该方法包括:获取加密文件、算法模型密文以及设备信息,所述加密文件包括解密所述算法模型密文的第一解密信息;利用所述设备信息对所述加密文件进行解密得到所述第一解密信息;利用所述第一解密信息对所述算法模型密文进行解密,得到算法模型。

为解决上述技术问题,本申请采用的第二个技术方案是,提供一种数据保护系统。该数据保护系统包括数据获取单元;数据处理单元,存储有用于调用运行算法模型的目标程序以及用于对加密数据进行解密的加密信息,所述数据处理单元与所述数据获取单元连接以实现如第一个技术方案中所述的方法,实现对算法模型密文的解密,得到算法模型。

为解决上述技术问题,本申请采用的第三个技术方案是:提供一种电子设备。该电子设备包括存储器和处理器,存储器用于存储程序数据,程序数据能够被处理器执行,以实现如第一个技术方案中所述的方法。

为解决上述技术问题,本申请采用的第四个技术方案是:提供一种计算机可读存储装置。该计算机可读存储装置存储有程序数据,能够被处理器执行,以实现如第一个技术方案中所述的方法。

本申请的有益效果是:通过获取设备信息,利用设备信息执行加密程序以得到加密文件,而在加密文件中存储了用于解密算法模型密文的第一解密信息,将算法模型密文与解密该算法模型的第一解密信息分开以防止算法模型密文和第一解密信息同时窃取,同时加密文件是利用设备信息完成加密过程的,当加密文件被窃取到其他的设备上时,加密文件是无法根据其他设备的设备信息进行解密的,使得在其他设备上无法获取到加密文件中存储的第一解密信息,也就无法对算法模型密文进行解密,有效实现对算法模型的保护。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请数据保护方法第一实施例的流程示意图;

图2是本申请数据保护方法第二实施例的流程示意图;

图3是本申请数据保护方法第三实施例的流程示意图;

图4是本申请数据保护系统一实施例结构示意图;

图5是本申请电子设备一实施例的结构示意图;

图6是本申请计算机可读存储装置一实施例的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

参照图1,图1为本申请数据保护方法第一实施例的流程示意图。其包括以下步骤:

S11:获取加密文件、算法模型密文以及设备信息,加密文件包括解密算法模型密文的第一解密信息。

算法模型密文是对算法模型进行加密后得到的。设备信息为需要使用该算法模型的当前设备的相关信息。加密文件为与该算法模型相关的文件,当某设备需要使用该算法模型时,会生成与该设备绑定的加密文件,与算法模型密文一同发送至该设备。且该加密文件存储有用于解密算法模型密文的第一解密信息,从而将算法模型密文和对应的解密信息分开,使算法模型被窃取后,其被解密和使用的可能大大降低。第一解密信息与第一加密信息相同,第一解密信息用于对算法模型密文的解密,第一加密信息用于对算法模型密文的加密。

第一解密信息为预设随机数据串,不同的设备对应不同的预设随机数据串,以将每个设备对于算法模型的调用使用区分开来,实现对算法模型的保护。当不同的设备获取该算法模型密文以及加密文件时,即使通过对加密文件进行解密获取了该第一解密信息,如果该加密文件与算法模型密文不是使用于同一设备中的配套文件,则无法通过获取的第一解密信息对该算法模型密文进行解密。

S12:利用设备信息对加密文件进行解密得到第一解密信息。

加密文件与该设备绑定,会利用该设备的相关信息来执行该加密文件的加密过程。因此在获取到加密文件后,能够基于获取的设备信息对该加密文件进行解密。

S13:利用第一解密信息对算法模型密文进行解密,得到算法模型。

对加密文件进行解密后能够得到用于解密算法模型密文的第一解密信息,利用第一解密信息对算法模型密文进行解密得到算法模型。

在本实施例中,通过获取设备信息,利用设备信息执行加密程序以得到加密文件,而在加密文件中存储了用于解密算法模型密文的第一解密信息,将算法模型密文与解密该算法模型的第一解密信息分开以防止算法模型密文和第一解密信息同时窃取,同时加密文件是利用设备信息完成加密过程的,当加密文件被窃取到其他的设备上时,加密文件是无法根据其他设备的设备信息进行解密的,使得在其他设备上无法获取到加密文件中存储的第一解密信息,也就无法对算法模型密文进行解密,有效实现对算法模型的保护。

相比于一些使用加密芯片对算法模型进行保护的常规技术,本申请不需要额外的硬件芯片就能够起到对算法模型的保护,降低了算法模型的使用保护成本,具有更广泛的适用性。无需使用加密芯片也就意味着算法模型能够使用于为算法业务优化过后的专用芯片,能够提高算法的使运行性能。

参照图2,图2为本申请数据保护方法第二实施例的流程示意图。该实施例是对步骤S12的进一步扩展。其包括以下步骤:

S21:基于设备信息获取设备标识。

基于设备的相关信息来获取设备标识。设备标识是能够唯一标识该设备的信息。设备标识可以是该设备对应的UID,或者也可以是该设备中一个或多个硬件的UID。

S22:按照设备标识生成用于解密加密文件的第二解密信息。

将该设备标识作为因子,经过一定的转换,生成用于解密加密文件的第二解密信息。

第二解密信息可以为对称加密算法的密钥,第二加密信息与第二解密信息相同,使用的对称加密算法可包括AES。

S23:利用第二解密信息对加密文件进行解密得到第一解密信息。

利用生成的第二解密信息对加密文件进行解密,从而得到其中包含的第一解密信息。

参照图3,图3为本申请数据保护方法第三实施例的流程示意图。该实施例是对步骤S23的进一步扩展。其包括以下步骤:

S31:利用第二解密信息对加密文件进行解密得到第一文件、文件签名。

加密文件包括第一文件、文件签名,而第一文件中包括第一解密信息。利用生成的第二解密信息对加密文件进行解密后,能够得到其中的第一文件和文件签名。

文件签名由第三加密信息基于第一文件生成,第三加密信息与第三解密信息对应,第三解密信息和第三加密信息为非对称加密算法的密钥对。使用的非对称加密算法可包括RSA、ECC或SM2等等。

S32:利用获取的第三解密信息基于第一文件对文件签名进行验证匹配。

第三解密信息混淆存储于目标程序中,目标程序用于实现调用运行算法模型,混淆存储的方式包括数据打散、二次加密、隐藏可见字符中至少一种。在执行调用该算法模型,运行该算法模型的过程中,会执行上述的步骤,而上述步骤会对应相应的程序代码,并且在执行过程中还可能与一些配套的数据或程序代码相关,这些配套的数据代码不一定直接对应上述步骤的执行,但是会对相应的程序代码起辅助作用,以帮助程序代码顺利完成对算法模型的调用运行。目标程序就是这些程序代码,或程序代码和数据代码的集合。

若签名匹配,执行步骤S33。若签名验证不匹配,执行步骤S34。

S33:基于第一文件获取第一解密信息。

若匹配,证明获取的第一文件是完整的第一文件,则其包含的第一解密信息也是完整的第一解密信息,能够基于该第一文件获取第一解密信息。

S34:重新获取加密文件进行解密和验证匹配。

若不匹配,证明获取的第一文件不完整,其包含的第一解密信息会有缺失,无法通过第一文件获取完整的第一解密信息,就无法对算法模型密文进行解密。其原因可能为在传输过程中受到各种因素的影响造成了第一文件的缺失,需要重新获取加密文件进行解密以获取完整的第一文件。若重新获取加密文件的次数超过了预设次数阈值,可能第一文件在生成的过程中存在了一些问题,导致文件错误,无法进行正确的解密和匹配验证,此时无需继续获取加密文件,向用户发送提示信息以排查错误原因。

下面在一具体实施例中对上述步骤进行更加详细的描述。

首先,设备上的算法程序会获取License。License是事先申请好的授权文件,用于获取对算法模型的使用许可。该文件与申请的设备绑定,存储有与加解密对应算法模型的密钥。该密钥是一个预先随机生成的数据串,且对于每个设备来说,其对解密该算法模型的密钥都不相同。生成授权文件的程序可以搭载于服务器中,该服务器可以是保密的授权服务器。当在服务器中生成授权文件时,服务器会将加密后的授权文件发送至申请的设备。

获取到授权文件的同时,会获取申请授权使用算法模型的设备的设备信息。该设备信息是指能够唯一标识该设备的标识信息。其可以是该设备的UID,或者是该设备中一个或多个硬件的UID。授权文件是加密文件,其加密时会使用到该设备信息。获取设备信息后,会将该设备信息作为转换因子,以生成解密该授权文件的密钥。该密钥为对称密钥,使用的对称算法可以是AES。

得到解密授权文件的密钥后,对授权文件进行解密后会得到文件明文以及文件签名。文件签名通常为与文件明文相关的哈希值。文件签名是通过非对称算法中的私钥生成,以用于验证文件明文的完整性。私钥会保存在设备的内部服务器,不会对外公开。而其对应的公钥会通过混淆的方式存储于目标程序中。目标程序是用于实现调用运行该算法模型的程序代码,或者程序代码和数据代码的集合。公钥混淆的方式可以是数据打散、二次加密或隐藏可见字符等等。使用的非对称算法可以包括RSA、ECC或SM2等。若公钥验证到签名不匹配,则重新获取授权文件License,再次执行解密获取文件明文的过程。

签名验证匹配后,就可以从文件明文中获取到能够解密算法模型密文的密钥。利用该密钥对事先存储的或获取的算法模型密文进行解密以得到能够被直接识别的算法模型明文。

参照图4,图4为本申请数据保护系统一实施例的结构示意图。

该数据保护系统包括数据获取单元10以及数据处理单元11。

数据获取单元10,可用于获取加密文件以及算法模型密文等数据信息。

数据处理单元11存储有用于调用运行算法模型的目标程序以及用于对加密数据进行解密的加密信息,该加密信息包括用于验证文件签名的非对称算法的公钥。数据处理单元11与数据获取单元10连接以实现上述实施例中任一项的方法以及可能的组合,实现对算法模型密文的解密,得到算法模型。

数据处理单元可进一步包括数据加密单元和数据解密单元。数据加密单元可用于执行对授权文件明文的加密以及算法模型明文的加密。数据解密单元则执行对应的对授权加密文件的解密以及算法模型密文的解密。数据加密单元和数据解密单元可设置于不同的设备或服务器上。

如图5所示,图5为本申请电子设备一实施例的结构示意图。

该电子设备包括处理器110、存储器120。

处理器110控制电子设备的操作,处理器110还可以称为CPU(Central ProcessingUnit,中央处理单元)。处理器110可能是一种集成电路芯片,具有信号序列的处理能力。处理器110还可以是通用处理器、数字信号序列处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器120存储处理器110工作所需要的指令和程序数据。

处理器110用于执行指令以实现本申请前数据保护方法的任一实施例及可能的组合所提供的方法。

如图6所示,图6为本申请计算机可读存储装置一实施例的结构示意图。

本申请可读存储装置一实施例包括存储器210,存储器210存储有程序数据,该程序数据被执行时实现本申请数据保护方法任一实施例及可能的组合所提供的方法。

存储器210可以包括U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等可以存储程序指令的介质,或者也可以为存储有该程序指令的服务器,该服务器可将存储的程序指令发送给其他设备运行,或者也可以自运行该存储的程序指令。

综上所述,通过获取设备信息,利用设备信息执行加密程序以得到加密文件,而在加密文件中存储了用于解密算法模型密文的第一解密信息,将算法模型密文与解密该算法模型的第一解密信息分开以防止算法模型密文和第一解密信息同时窃取,同时加密文件是利用设备信息完成加密过程的,当加密文件被窃取到其他的设备上时,加密文件是无法根据其他设备的设备信息进行解密的,使得在其他设备上无法获取到加密文件中存储的第一解密信息,也就无法对算法模型密文进行解密,有效实现对算法模型的保护。

在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。

另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述其他实施方式中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

相关技术
  • 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
  • 服务器数据保护方法、装置及计算机可读存储介质
  • 模态框构建方法、装置、电子设备、计算机可读存储介质
  • 电子设备、音量调节方法及装置、计算机可读存储介质
  • 数据库同步恢复方法、装置、计算机可读存储介质和电子设备
  • 数据保护方法、装置、电子设备及计算机可读存储介质
  • 数据保护方法、装置、电子设备及计算机可读存储介质
技术分类

06120115848512