CN113127814A - 软件防抄方法、装置、电子设备及可读存储介质 - Google Patents

软件防抄方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN113127814A
CN113127814A CN201911414401.0A CN201911414401A CN113127814A CN 113127814 A CN113127814 A CN 113127814A CN 201911414401 A CN201911414401 A CN 201911414401A CN 113127814 A CN113127814 A CN 113127814A
Authority
CN
China
Prior art keywords
ciphertext
public key
key pair
verification
copying
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911414401.0A
Other languages
English (en)
Other versions
CN113127814B (zh
Inventor
施伟康
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201911414401.0A priority Critical patent/CN113127814B/zh
Publication of CN113127814A publication Critical patent/CN113127814A/zh
Application granted granted Critical
Publication of CN113127814B publication Critical patent/CN113127814B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

本申请提供一种软件防抄方法、装置、电子设备及可读存储介质,该方法包括:当系统软件首次启动时,生成第一非对称密钥对,并将第一非对称密钥对中的第一公钥发送给加密服务器;接收并保存所述加密服务器发送的防抄密文;当所述系统软件非首次启动时,生成第三非对称密钥对;基于所述第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证;若验证通过,则允许所述系统软件启动;否则,禁止所述系统软件启动。该方法可以提高系统软件防抄验证的可靠性,并降低系统软件防抄的硬件成本和使用限制。

Description

软件防抄方法、装置、电子设备及可读存储介质
技术领域
本申请涉及通信技术,尤其涉及一种软件防抄方法、装置、电子设备及可读存储介质。
背景技术
软件作为企业的无形资产,已日益成为企业核心竞争力的动力源泉之一,厂商软件资产的保护也越来越重视,软件防抄技术是一种软件安全技术,能保护厂商的软件知识产权不受侵害。
目前,常见的系统软件防抄方法包括以下几种:
1、使用产品中某个芯片的序列号作为唯一产品标识,使用密钥对进行特定算法后保存到非易失存储。该方法的缺点是需要已经过时的芯片序列号特性。
2、采用MCU(Microcontroller Unit,微控制器)进行防抄板加密,即用一颗MCU加密,主系统通过和MCU通讯来实现合法性验证。该方法的缺点在于MCU比较容易被破解和模拟。
3、采用专业的加密芯片,即采用专业的加密芯片,主系统通过和它通讯进行合法性验证。这种方法的可靠性和稳定性较高,但会增加电子产品的硬件成本。
发明内容
有鉴于此,本申请提供一种软件防抄方法、装置、电子设备及可读存储介质。
具体地,本申请是通过如下技术方案实现的:
根据本申请实施例的第一方面,提供一种软件防抄方法,包括:
当系统软件首次启动时,生成第一非对称密钥对,并将第一非对称密钥对中的第一公钥发送给加密服务器,以使所述加密服务器使用第二非对称密钥对中的第二私钥对所述第一公钥进行加密,以得到防抄密文;
接收并保存所述加密服务器发送的防抄密文;
当所述系统软件非首次启动时,生成第三非对称密钥对;其中,生成所述第三非对称密钥对的生成参数和生成所述第一非对称密钥对的生成参数相同;
基于所述第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证;
若验证通过,则允许所述系统软件启动;否则,禁止所述系统软件启动。
根据本申请实施例的第二方面,提供一种软件防抄装置,包括:
生成单元,用于当系统软件首次启动时,生成第一非对称密钥对;
发送单元,用于将第一非对称密钥对中的第一公钥发送给加密服务器,以使所述加密服务器使用第二非对称密钥对中的第二私钥对所述第一公钥进行加密,以得到防抄密文;
接收单元,用于接收所述加密服务器发送的防抄密文;
保存单元,用于保存所述加密服务器发送的防抄密文;
所述生成单元,还用于当所述系统软件非首次启动时,生成第三非对称密钥对;其中,生成所述第三非对称密钥对的生成参数和生成所述第一非对称密钥对的生成参数相同;
验证单元,用于基于所述第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证;
控制单元,用于若验证通过,则允许所述系统软件启动;否则,禁止所述系统软件启动。
根据本申请实施例的第三方面,提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述软件防抄方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述软件防抄方法。
本申请实施例的软件防抄方法,当系统软件首次启动时,生成第一非对称密钥对,并将第一非对称密钥对中的第一公钥发送给加密服务器,以使所述加密服务器使用第二非对称密钥对中的第二私钥对所述第一公钥进行加密,以得到防抄密文;接收并保存所述加密服务器发送的防抄密文;当系统软件非首次启动时,生成第三非对称密钥对,并基于第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证;若验证通过,则允许系统软件启动;否则,禁止系统软件启动,提高了系统软件防抄验证的可靠性,并降低了系统软件防抄的硬件成本和使用限制。
附图说明
图1为本申请一示例性实施例示出的一种软件防抄方法的流程示意图;
图2为本申请一示例性实施例示出的一种基于第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证的流程示意图;
图3为本申请一示例性实施例示出的一种将第一非对称密钥对中的第一公钥发送给加密服务器的流程示意图;
图4为本申请一示例性实施例示出的另一种基于第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证的流程示意图;
图5为本申请一示例性实施例示出的一种防抄密文注入流程的示意图;
图6为本申请一示例性实施例示出的一种防抄验证的流程示意图;
图7为本申请一示例性实施例示出的一种软件防抄装置的结构示意图;
图8为本申请一示例性实施例示出的一种电子设备的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
请参见图1,为本申请实施例提供的一种软件防抄方法的流程示意图,其中,该软件防抄方法可以应用于任一使用本申请实施例提供方案进行防抄处理的系统软件,如图1所示,该软件防抄方法可以包括以下步骤:
步骤S100、当系统软件首次启动时,生成第一非对称密钥对,并将第一非对称密钥对中的第一公钥发送给加密服务器,以使加密服务器使用第二非对称密钥对中的第二私钥对第一公钥进行加密,以得到防抄密文。
本申请实施例中,当系统软件首次启动,如电子产品在生产过程中进行系统软件启动时,生成非对称密钥对(本文中称为第一非对称密钥对),如RSA密钥对。
示例性的,可以通过TPM(Trusted Platform Module,可信赖平台模块)模块或TCM(Trusted Cryptography Module,可信赖密码模块)模块等安全芯片生成非对称第一对称密钥对。
例如,当系统软件首次启动时,可以触发TPM2.0模块,生成第一非对称密钥对。
为了便于理解,下文中以通过TPM模块生成非对称密钥对为例进行说明。
示例性的,为了提高第一非对称密钥对的可靠性,可以通过TPM模块在平台层级生成第一非对称密钥对。
示例性的,TPM模块可以包括固件TPM、软件TPM或实体TPM。
系统软件触发TPM模块生成第一非对称密钥对之后,可以将第一非对称密钥对中的公钥(本文中称为第一公钥)作为防抄信息发送给加密服务器。
本申请实施例中,加密服务器中可以预置用于进行防抄加密处理的非对称密钥对(本文中称为第二非对称密钥对)。
当加密服务器接收到第一公钥时,可以使用第二非对称密钥对中的私钥(本文中称为第二私钥)对第一公钥进行加密,以得到防抄密文。
加密服务器得到防抄密文时,可以将防抄密文发送给系统软件。
步骤S110、接收并保存加密服务器发送的防抄密文。
本申请实施例中,系统软件接收到加密服务器发送的防抄密文时,可以对该防抄密文进行保存,如保存至电子产品的非易失存储的指定区域。
示例性的,非易失存储可以包括FLASH(闪存)或EEPROM(Electrically ErasableProgrammable read only memory,带电可擦可编程只读存储器)等。
步骤S120、当系统软件非首次启动时,生成第三非对称密钥对;其中,生成第三非对称密钥对的生成参数和生成第一非对称密钥对的生成参数相同。
本申请实施例中,当系统软件非首次启动,如电子产品出厂后再次进行系统软件启动时,可以触发TPM模块使用生成第一非对称密钥对的生成参数,生成非对称密钥对(本文中称为第三非对称密钥对)。
由于同一安全芯片(如TPM模块)使用相同的生成参数生成的非对称密钥对相同,因此,若步骤S120中与步骤S100中在同一电子产品中启动,则第三非对称密钥对与第一非对称密钥对相同。
步骤S130、基于第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证。若验证通过,则转至步骤S140;否则,转至步骤S150。
步骤S140、允许系统软件启动。
步骤S150、禁止系统软件启动。
本申请实施例中,TPM模块生成了第三非对称密钥对时,系统软件可以基于该第三非对称密钥对中的公钥(本文中称为第三密钥)以及电子产品的非易失存储的指定区域中存储的防抄密文,进行防抄验证,以确定该系统软件是否运行在正确的电子产品中。
当防抄验证通过时,系统软件确定运行在正确的电子产品中,此时,允许系统软件启动。
当防抄验证未通过时,系统软件确定运行在错误的电子产品中,此时,禁止系统软件启动。
可见,在图1所示方法流程中,利用电子产品中通常具备的安全芯片生成的非对称密钥对中的公钥作为防抄信息,并利用加密服务器中上用于进行防抄加密处理的非对称密钥对中的私钥对该防抄信息进行加密,得到防抄密文,进而,基于该防抄密文进行防抄验证,一方面,不需要部署额外的加密硬件(如MCU或专业的加密芯片),且不需要额外的ID芯片提供ID以标识产品,另一方面,利用非对称加密算法进行防抄信息的加密,加密服务器上的非对称密钥对中的私钥未泄漏的情况下,防抄密文被破解的可能性极低,大大提高了安全性。
在一个可选的实施例中,请参见图2,步骤S130中,基于第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证,可以通过以下步骤实现:
步骤S131、基于第二非对称密钥对中的第二公钥对防抄密文进行解密。
步骤S132、比较所述第三公钥以及解密后的防抄密文。若二者一致,则确定验证通过;否则,确定验证不通过。
示例性的,TPM模块生成了第三非对称密钥对时,系统软件可以从电子产品的非易失存储的指定区域中读取防抄密文,并基于第二非对称密钥对中的公钥(本文中称为第二公钥)对该防抄密文进行解密。
在一个示例中,第二公钥可以预置在系统软件的代码中。
系统软件对防抄密文进行解密后,可以比较第三公钥和解密后的防抄密文。
若二者一致,则确定验证通过;否则,确定验证不通过。
在一个可选的实施例中,请参见图3,步骤S100中,将第一非对称密钥对中的第一公钥发送给加密服务器,可以通过以下步骤实现:
步骤S101、利用预设算法对第一公钥进行处理。
步骤S102、将处理后的第一公钥发送给加密服务器,以使加密服务器使用第二私钥对处理后的第一公钥进行加密,以得到防抄密文。
示例性的,为了进一步提高防抄密文的安全性,系统软件在将第一公钥发送给加密服务器之前,还可以利用预设算法对第一公钥进行处理。
在一个示例中,该预设算法可以包括但不限于编码算法、散列算法或填充算法等可逆或不可逆的算法。
系统软件得到处理后的第一公钥时,可以将处理后的第一公钥发送给加密服务器。
加密服务器接收到处理后的第一公钥时,可以使用第二私钥对处理后的第一公钥进行加密,以得到防抄密文。
示例性的,加密服务器得到防抄密文时,可以将该防抄密文发送给系统软件,由系统软件保存该防抄密文,如保存在电子产品的非易失存储的指定区域,其具体实现可以参见上述实施例中的相关描述。
在一个示例中,请参见图4,步骤S130中,基于第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证,可以通过以下步骤实现:
步骤S133、基于第二非对称密钥对中的第二公钥对防抄密文进行解密。
步骤S134、利用预设算法对第三公钥进行处理。
步骤S135、比较处理后的第三公钥以及解密后的防抄密文;若二者一致,则确定验证通过;否则,确定验证不通过。
示例性的,TPM模块生成了第三非对称密钥对时,一方面,系统软件可以基于第二非对称密钥对中的第二公钥对防抄密文进行解密,以得到解密后的防抄密文。
另一方面,系统软件可以利用步骤S101中的预设算法对第三非对称密钥对中的第三公钥进行处理,以得到处理后的第三公钥。
系统软件可以比较处理后的第三公钥以及解密后的防抄密文。若二者一致,则确定验证通过;否则,确定验证不通过。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面结合具体实例对本申请实施例提供的技术方案进行说明。
在该实施例中,以TPM模块为TPM2.0,非对称密钥对为RSA密钥对为例。
在该实施例中,软件防抄实现流程可以包括防抄密文注入流程以及防抄验证流程,下面分别结合附图进行说明。
一、防抄密文注入流程
请参见图5,为本申请实施例提供的一种防抄密文注入的流程示意图,如图5所示,其可以包括以下步骤:
步骤S500、经预烧录、贴片、焊接等程序后,产品可上电开机。
步骤S510、系统软件启动时,触发TPM2.0在平台层级生成一对RSA密钥对(即上述第一非对称密钥对)。
步骤S520、自动化防抄密文注入进程读取TPM2.0生成的RSA密钥对的公钥(即上述第一公钥)作为防抄信息。
步骤S530、自动化防抄密文注入进程利用预设算法对防抄信息进行处理。
示例性的,预设算法可以包括但不限于编码算法、散列算法或填充算法等。
步骤S540、自动化防抄密文注入进程将处理后的防抄信息通过网络发送给加密服务器。
示例性的,加密服务器接收到处理后的防抄信息时,使用防抄RSA密钥对(即上述第二非对称密钥对)的私钥(即上述第二私钥)进行加密,以得到防抄密文,并返回给系统软件。
步骤S550、自动化防抄密文注入进程接收加密服务器返回的防抄密文,将防抄密文写入电子产品的非易失存储的预定区域。
二、防抄验证流程
请参见图6,为本申请实施例提供的一种防抄验证的流程示意图,如图6所示,其可以包括以下步骤:
步骤S600、电子产品上电开机进入正常启动流程。
示例性的,步骤S600中的产品上电指电子产品出厂后上电使用。
步骤S610、系统软件启动时,触发TPM2.0在平台层级生成一对RSA密钥对(即上述第三非对称密钥对)。
示例性的,TPM2.0生成的RSA密钥对受TPM2.0平台层级存储的随机种子和代码中指定的生成参数影响,因为不同的TPM2.0使用的随机种子不同,因此,不同的TPM2.0生成的RAS密钥对不同;而同一个TPM2.0,只要随机种子和生成参数不变,生成的RSA密钥对就不变。
步骤S620、防抄验证进程读取TPM2.0生成的RSA密钥对的公钥(即上述第三公钥)作为防抄信息。
步骤S630、防抄验证进程利用预设算法对防抄信息进行处理。
示例性的,步骤S630中的预设算法与步骤S530中的预设算法相同。
步骤S640、防抄验证进程读取非易失存储的预定区域中的防抄密文。
步骤S650、防抄验证进程使用预置的防抄RSA密钥对的公钥(即上述第二公钥)对防抄密文进行解密。
步骤S660、防抄验证进程比较解密后的数据和处理后的防抄信息;若一致,则表示产品经过正确的工厂防抄密文注入流程,允许继续启动;若不一致,则表示产品没有经过正确的工厂防抄密文注入流程,系统软件运行在错误的电子产品里,禁止系统软件启动,并进入异常状态。
本申请实施例中,当系统软件首次启动时,生成第一非对称密钥对,并将第一非对称密钥对中的第一公钥发送给加密服务器,以使所述加密服务器使用第二非对称密钥对中的第二私钥对所述第一公钥进行加密,以得到防抄密文;接收并保存所述加密服务器发送的防抄密文;当系统软件非首次启动时,生成第三非对称密钥对,并基于第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证;若验证通过,则允许系统软件启动;否则,禁止系统软件启动,提高了系统软件防抄验证的可靠性,并降低了系统软件防抄的硬件成本和使用限制。
以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
请参见图7,为本申请实施例提供的一种软件防抄装置的结构示意图,如图7所示,该软件防抄装置可以包括:
生成单元710,用于当系统软件首次启动时,生成第一非对称密钥对;
发送单元720,用于将第一非对称密钥对中的第一公钥发送给加密服务器,以使所述加密服务器使用第二非对称密钥对中的第二私钥对所述第一公钥进行加密,以得到防抄密文;
接收单元730,用于接收所述加密服务器发送的防抄密文;
保存单元740,用于保存所述加密服务器发送的防抄密文;
所述生成单元710,还用于当所述系统软件非首次启动时,生成第三非对称密钥对;其中,生成所述第三非对称密钥对的生成参数和生成所述第一非对称密钥对的生成参数相同;
验证单元750,用于基于所述第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证;
控制单元760,用于若验证通过,则允许所述系统软件启动;否则,禁止所述系统软件启动。
在一种可选的实施方式中,所述验证单元750,具体用于基于所述第二非对称密钥对中的第二公钥对所述防抄密文进行解密;
比较所述第三公钥以及解密后的防抄密文;
若二者一致,则确定验证通过;否则,确定验证不通过。
在一种可选的实施方式中,所述发送单元720,具体用于利用预设算法对所述第一公钥进行处理;
将处理后的第一公钥发送给所述加密服务器,以使所述加密服务器使用所述第二私钥对处理后的第一公钥进行加密,以得到防抄密文。
在一种可选的实施方式中,所述验证单元750,具体用于基于所述第二非对称密钥对中的第二公钥对所述防抄密文进行解密;
利用所述预设算法对所述第三公钥进行处理;
比较处理后的第三公钥以及解密后的防抄密文;
若二者一致,则确定验证通过;否则,确定验证不通过。
在一种可选的实施方式中,所述预设算法包括编码算法、散列算法或填充算法。
请参见图8,为本申请实施例提供的一种电子设备的硬件结构示意图。该电子设备可以包括处理器801、通信接口802、存储器803和通信总线804。处理器801、通信接口802以及存储器803通过通信总线804完成相互间的通信。其中,存储器803上存放有计算机程序;处理器801可以通过执行存储器803上所存放的程序,执行上文描述的软件防抄方法。
本文中提到的存储器803可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器802可以是:RAM(Radom AccessMemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
本申请实施例还提供了一种存储有计算机程序的机器可读存储介质,例如图8中的存储器803,所述计算机程序可由图8所示电子设备中的处理器801执行以实现上文中描述的软件防抄方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (12)

1.一种软件防抄方法,其特征在于,包括:
当系统软件首次启动时,生成第一非对称密钥对,并将第一非对称密钥对中的第一公钥发送给加密服务器,以使所述加密服务器使用第二非对称密钥对中的第二私钥对所述第一公钥进行加密,以得到防抄密文;
接收并保存所述加密服务器发送的防抄密文;
当所述系统软件非首次启动时,生成第三非对称密钥对;其中,生成所述第三非对称密钥对的生成参数和生成所述第一非对称密钥对的生成参数相同;
基于所述第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证;
若验证通过,则允许所述系统软件启动;否则,禁止所述系统软件启动。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证,包括:
基于所述第二非对称密钥对中的第二公钥对所述防抄密文进行解密;
比较所述第三公钥以及解密后的防抄密文;
若二者一致,则确定验证通过;否则,确定验证不通过。
3.根据权利要求1所述的方法,其特征在于,所述将所述第一非对称密钥对中的第一公钥发送给加密服务器,包括:
利用预设算法对所述第一公钥进行处理;
将处理后的第一公钥发送给所述加密服务器,以使所述加密服务器使用所述第二私钥对处理后的第一公钥进行加密,以得到防抄密文。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证,包括:
基于所述第二非对称密钥对中的第二公钥对所述防抄密文进行解密;
利用所述预设算法对所述第三公钥进行处理;
比较处理后的第三公钥以及解密后的防抄密文;
若二者一致,则确定验证通过;否则,确定验证不通过。
5.根据权利要求3或4所述的方法,其特征在于,所述预设算法包括编码算法、散列算法或填充算法。
6.一种软件防抄装置,其特征在于,包括:
生成单元,用于当系统软件首次启动时,生成第一非对称密钥对;
发送单元,用于将第一非对称密钥对中的第一公钥发送给加密服务器,以使所述加密服务器使用第二非对称密钥对中的第二私钥对所述第一公钥进行加密,以得到防抄密文;
接收单元,用于接收所述加密服务器发送的防抄密文;
保存单元,用于保存所述加密服务器发送的防抄密文;
所述生成单元,还用于当所述系统软件非首次启动时,生成第三非对称密钥对;其中,生成所述第三非对称密钥对的生成参数和生成所述第一非对称密钥对的生成参数相同;
验证单元,用于基于所述第三非对称密钥对中的第三公钥,以及所保存的防抄密文,进行防抄验证;
控制单元,用于若验证通过,则允许所述系统软件启动;否则,禁止所述系统软件启动。
7.根据权利要求6所述的装置,其特征在于,
所述验证单元,具体用于基于所述第二非对称密钥对中的第二公钥对所述防抄密文进行解密;
比较所述第三公钥以及解密后的防抄密文;
若二者一致,则确定验证通过;否则,确定验证不通过。
8.根据权利要求6所述的装置,其特征在于,
所述发送单元,具体用于利用预设算法对所述第一公钥进行处理;
将处理后的第一公钥发送给所述加密服务器,以使所述加密服务器使用所述第二私钥对处理后的第一公钥进行加密,以得到防抄密文。
9.根据权利要求8所述的装置,其特征在于,
所述验证单元,具体用于基于所述第二非对称密钥对中的第二公钥对所述防抄密文进行解密;
利用所述预设算法对所述第三公钥进行处理;
比较处理后的第三公钥以及解密后的防抄密文;
若二者一致,则确定验证通过;否则,确定验证不通过。
10.根据权利要求8或9所述的装置,其特征在于,所述预设算法包括编码算法、散列算法或填充算法。
11.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法。
CN201911414401.0A 2019-12-31 2019-12-31 软件防抄方法、装置、电子设备及可读存储介质 Active CN113127814B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911414401.0A CN113127814B (zh) 2019-12-31 2019-12-31 软件防抄方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911414401.0A CN113127814B (zh) 2019-12-31 2019-12-31 软件防抄方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN113127814A true CN113127814A (zh) 2021-07-16
CN113127814B CN113127814B (zh) 2023-03-14

Family

ID=76770539

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911414401.0A Active CN113127814B (zh) 2019-12-31 2019-12-31 软件防抄方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN113127814B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115168816A (zh) * 2022-08-03 2022-10-11 明阳产业技术研究院(沈阳)有限公司 一种软件防盗版方法、装置、设备和介质

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060048223A1 (en) * 2004-08-31 2006-03-02 Lee Michael C Method and system for providing tamper-resistant software
US20060198517A1 (en) * 2005-03-07 2006-09-07 Microsoft Corporation Method and system for asymmetric key security
US20090271321A1 (en) * 2006-05-31 2009-10-29 Grant Stafford Method and system for verification of personal information
US20110029783A1 (en) * 2007-06-29 2011-02-03 Oniteo Ab Method and system for secure hardware provisioning
CN103491097A (zh) * 2013-09-30 2014-01-01 华中师范大学 基于公钥密码体制的软件授权系统
CN103491098A (zh) * 2013-09-30 2014-01-01 华中师范大学 基于公钥密码体制的软件授权方法
CN103995991A (zh) * 2014-05-07 2014-08-20 华中师范大学 一种软件版权保护中绑定硬件信息与密钥的方法
CN107273720A (zh) * 2017-06-22 2017-10-20 山东超越数控电子有限公司 一种国产处理器平台软件注册方法
CA3041664A1 (en) * 2016-10-26 2018-05-03 Alibaba Group Holding Limited Data transmission method, apparatus and system
US10013560B1 (en) * 2017-04-05 2018-07-03 International Business Machines Corporation Securely exchanging information during application startup
CN108268781A (zh) * 2016-12-30 2018-07-10 瑞昱半导体股份有限公司 电子装置的电子元件、启动电子装置的方法及加密方法
CN108600182A (zh) * 2018-03-29 2018-09-28 深圳前海微众银行股份有限公司 区块链密钥管理方法、系统及密钥管理设备、存储介质
CN109684790A (zh) * 2018-12-26 2019-04-26 佛山市瑞德物联科技有限公司 软件启动方法、软件授权验证方法、设备和存储介质
CN109962784A (zh) * 2019-03-22 2019-07-02 西安电子科技大学 一种基于数字信封多证书的数据加解密及恢复方法
CN110071940A (zh) * 2019-05-06 2019-07-30 深圳市网心科技有限公司 软件包加解密方法、服务器、用户设备及存储介质
CN110072232A (zh) * 2019-03-20 2019-07-30 中国科学院数据与通信保护研究教育中心 一种可信执行环境用户界面的防伪造方法和系统
CN110245466A (zh) * 2019-06-19 2019-09-17 苏州科达科技股份有限公司 软件完整性保护和验证方法、系统、设备及存储介质
CN110494856A (zh) * 2017-03-28 2019-11-22 司亚乐无线通讯股份有限公司 用于计算设备安全启动的方法和装置

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060048223A1 (en) * 2004-08-31 2006-03-02 Lee Michael C Method and system for providing tamper-resistant software
US20060198517A1 (en) * 2005-03-07 2006-09-07 Microsoft Corporation Method and system for asymmetric key security
US20090271321A1 (en) * 2006-05-31 2009-10-29 Grant Stafford Method and system for verification of personal information
US20110029783A1 (en) * 2007-06-29 2011-02-03 Oniteo Ab Method and system for secure hardware provisioning
CN103491097A (zh) * 2013-09-30 2014-01-01 华中师范大学 基于公钥密码体制的软件授权系统
CN103491098A (zh) * 2013-09-30 2014-01-01 华中师范大学 基于公钥密码体制的软件授权方法
CN103995991A (zh) * 2014-05-07 2014-08-20 华中师范大学 一种软件版权保护中绑定硬件信息与密钥的方法
CA3041664A1 (en) * 2016-10-26 2018-05-03 Alibaba Group Holding Limited Data transmission method, apparatus and system
CN108268781A (zh) * 2016-12-30 2018-07-10 瑞昱半导体股份有限公司 电子装置的电子元件、启动电子装置的方法及加密方法
CN110494856A (zh) * 2017-03-28 2019-11-22 司亚乐无线通讯股份有限公司 用于计算设备安全启动的方法和装置
US10013560B1 (en) * 2017-04-05 2018-07-03 International Business Machines Corporation Securely exchanging information during application startup
CN107273720A (zh) * 2017-06-22 2017-10-20 山东超越数控电子有限公司 一种国产处理器平台软件注册方法
CN108600182A (zh) * 2018-03-29 2018-09-28 深圳前海微众银行股份有限公司 区块链密钥管理方法、系统及密钥管理设备、存储介质
CN109684790A (zh) * 2018-12-26 2019-04-26 佛山市瑞德物联科技有限公司 软件启动方法、软件授权验证方法、设备和存储介质
CN110072232A (zh) * 2019-03-20 2019-07-30 中国科学院数据与通信保护研究教育中心 一种可信执行环境用户界面的防伪造方法和系统
CN109962784A (zh) * 2019-03-22 2019-07-02 西安电子科技大学 一种基于数字信封多证书的数据加解密及恢复方法
CN110071940A (zh) * 2019-05-06 2019-07-30 深圳市网心科技有限公司 软件包加解密方法、服务器、用户设备及存储介质
CN110245466A (zh) * 2019-06-19 2019-09-17 苏州科达科技股份有限公司 软件完整性保护和验证方法、系统、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
曾瑶辉等: "基于RSA算法的非对称密钥加密及签名软件的自主实现", 《计算机时代》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115168816A (zh) * 2022-08-03 2022-10-11 明阳产业技术研究院(沈阳)有限公司 一种软件防盗版方法、装置、设备和介质
CN115168816B (zh) * 2022-08-03 2023-08-04 明阳产业技术研究院(沈阳)有限公司 一种软件防盗版方法、装置、设备和介质

Also Published As

Publication number Publication date
CN113127814B (zh) 2023-03-14

Similar Documents

Publication Publication Date Title
US8312269B2 (en) Challenge and response access control providing data security in data storage devices
EP2291787B1 (en) Techniques for ensuring authentication and integrity of communications
TWI567579B (zh) 用於對硬體裝置提供金鑰的方法和設備
EP2597588B1 (en) Information processing device, controller, certificate issuing authority, method of determining validity of revocation list, and method of issuing certificates
CN109918925A (zh) 数据存储方法、数据节点及存储介质
US20060005046A1 (en) Secure firmware update procedure for programmable security devices
JP5097130B2 (ja) 情報端末、セキュリティデバイス、データ保護方法及びデータ保護プログラム
US20070039046A1 (en) Proof of execution using random function
US20030188162A1 (en) Locking a hard drive to a host
US8600061B2 (en) Generating secure device secret key
US20180204004A1 (en) Authentication method and apparatus for reinforced software
CN110414248B (zh) 一种调试微处理器的方法及微处理器
US20120096280A1 (en) Secured storage device with two-stage symmetric-key algorithm
CN104868998A (zh) 一种向电子设备供应加密数据的系统、设备和方法
CN112417491A (zh) 固态硬盘的数据加密密钥获取、恢复方法和数据读写方法
CN111193743A (zh) 一种存储系统的身份认证方法、系统及相关装置
US10387653B2 (en) Secure provisioning of semiconductor chips in untrusted manufacturing factories
US20160301532A1 (en) Device security
CN113127814B (zh) 软件防抄方法、装置、电子设备及可读存储介质
CN110837643A (zh) 一种可信执行环境的激活方法和装置
CN110445774B (zh) IoT设备的安全防护方法、装置及设备
CN114189862A (zh) 无线终端及无线终端在Uboot模式下的接口访问鉴权方法
JP2009284231A (ja) 鍵生成装置、鍵生成方法及び鍵生成プログラム、並びに、電子機器
CN110502909B (zh) 一种文件加密方法及装置、一种文件解密方法及装置
CN111783069A (zh) 一种租赁设备的操作方法、装置及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant