CN115174063A - 软件许可生成、验证方法及装置 - Google Patents

软件许可生成、验证方法及装置 Download PDF

Info

Publication number
CN115174063A
CN115174063A CN202210768903.9A CN202210768903A CN115174063A CN 115174063 A CN115174063 A CN 115174063A CN 202210768903 A CN202210768903 A CN 202210768903A CN 115174063 A CN115174063 A CN 115174063A
Authority
CN
China
Prior art keywords
software license
tpm
ciphertext
public key
key
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.)
Pending
Application number
CN202210768903.9A
Other languages
English (en)
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.)
International Network Technology Shanghai Co Ltd
Original Assignee
International Network Technology Shanghai 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 International Network Technology Shanghai Co Ltd filed Critical International Network Technology Shanghai Co Ltd
Priority to CN202210768903.9A priority Critical patent/CN115174063A/zh
Publication of CN115174063A publication Critical patent/CN115174063A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种软件许可生成、验证方法及装置,涉及计算机软件技术领域,该生成方法包括:接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求;验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文;根据所述TPM公钥和所述软件许可明文生成软件许可密文;将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。本发明克服了运行环境易被模拟及授权信息易被篡改的安全性问题。

Description

软件许可生成、验证方法及装置
技术领域
本发明涉及计算机软件技术领域,尤其涉及一种软件许可生成、验证方法及装置。
背景技术
软件许可(License)的生成和验证是商用软件发布的重要组成部分,特别是对于收费的商业软件。软件运行之前,安全高效的软件许可验证机制,能有效控制使用软件的目标群体数量,以及授权群体对软件使用的期限,从而使收费产品实现利益最大化,也能很好的保护软件开发者的知识产权。
传统的软件许可授权方案中,对于授权给A机器的软件许可,攻击者可以通过在其它同类机器上模拟A的运行环境,通过不断复制A的软件许可的方式,使同样的软件许可在其它未授权机器上运行。软件的授权使用期限,通常也以明文的方式存储在配置文件中,破解者能相对容易的修改软件的授权使用期限,实现在非授权的情况下无限期使用软件。软件许可生成和验证的漏洞不利于软件开发商知识产权的保护,给软件开发商造成巨大的经济损失。
发明内容
本发明提供一种软件许可生成、验证方法及装置,用以解决现有技术的软件许可方式中运行环境易被模拟及授权信息易被篡改的安全性问题。
第一方面,本发明提供一种软件许可生成方法,包括:
接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求;
验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文;
根据所述TPM公钥和所述软件许可明文生成软件许可密文;
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。
根据本发明提供的一种软件许可生成方法,
根据所述TPM公钥和所述软件许可明文生成软件许可密文,包括:
生成中间密钥对所述软件许可明文加密,得到第一中间密文;
根据所述TPM公钥对所述中间密钥进行加密,得到第二中间密文;
将所述第一中间密文和第二中间密文拼接成所述软件许可密文,
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,包括:
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥解密所述第二中间密文,得到所述中间密钥,采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
根据本发明提供的一种软件许可生成方法,
在将所述软件许可密文发送至所述待授权设备之前,还包括:
采用预设的签名私钥对所述软件许可密文进行数字签名,得到签名数据;
将所述签名数据添加到所述软件许可密文中,
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,包括:
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据预先获得的签名公钥对签名数据验证通过后,采用内置的TPM私钥解密所述第二中间密文,得到所述中间密钥,采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
根据本发明提供的一种软件许可生成方法,验证所述TPM公钥证书通过后,还包括:
生成TPM公钥的摘要信息,并存储所述摘要信息,所述摘要信息用于在待授权设备更新所述软件许可时,验证所述待授权设备发送的TPM公钥。
第二方面,本发明提供一种软件许可验证方法,包括:
将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文;
接收所述服务器发送的所述软件许可密文;
采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,所述TPM私钥与所述TPM公钥相对应;
根据恢复出的软件许可明文中的授权信息进行软件许可验证。
根据本发明提供的一种软件许可验证方法,所述软件许可密文包括:第一中间密文和第二中间密文,所述第一中间密文是根据服务器产生的中间密钥对所述软件许可明文加密得到,所述第二中间密文根据所述TPM公钥对所述中间密钥进行加密得到,
采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,包括:
采用内置的TPM私钥对所述第二中间密文解密,以得到所述中间密钥;
采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
根据本发明提供的一种软件许可验证方法,所述软件许可密文还包括:签名数据,所述签名数据是服务器根据预设的签名私钥对所述软件许可密文进行数字签名得到,
所述采用内置的TPM私钥对所述第二中间密文解密,以得到所述中间密钥之前,还包括:
根据预先获得的签名公钥验证所述签名数据。
根据本发明提供的一种软件许可验证方法,根据恢复出的软件许可明文中的授权信息进行软件许可验证之前,还包括:判断恢复出的软件许可明文的数据格式,在不符合预定数据格式的情况下,输出验证失败信息。
根据本发明提供的一种软件许可验证方法,将包括TPM公钥和授权信息的软件许可生成请求上传至服务器之前,还包括:
判断TPM安全存储区域内是否生成所述TPM密钥;
在生成所述TPM密钥的情况下,读取所述TPM密钥的TPM公钥;
在未生成所述TPM密钥的情况下,生成所述TPM密钥,并将生成的TPM密钥存储在所述TPM安全存储区域。
第三方面,本发明提供一种软件许可生成装置,包括:
软件许可生成请求接收模块,用于接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求;
软件许可明文生成模块,用于验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文;
加密模块,用于根据所述TPM公钥和所述软件许可明文生成软件许可密文;
软件许可密文发送模块,用于将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。
第四方面,本发明提供一种软件许可验证装置,包括:
软件许可生成请求上传模块,用于将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文;
软件许可密文接收模块,用于接收所述服务器发送的软件许可密文;
解密模块,用于采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,所述TPM私钥与所述TPM公钥相对应;
验证模块,用于根据所述软件许可明文中的授权信息进行软件许可验证。
第五方面,本发明提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的软件许可生成方法,或实现上述任一种所述的软件许可验证方法。
第六方面,本发明提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述的软件许可生成方法,或实现上述任一种所述的软件许可验证方法。
本发明提供的软件许可生成、验证方法及装置,通过接收待授权设备发送的TPM公钥、TPM公钥证书和授权信息,根据授权信息生成软件许可明文,并根据TPM公钥和软件许可明文生成软件许可密文,从而避免了授权信息被篡改;并且在生成软件明文前需要验证TPM公钥证书,通过验证TPM公钥证书来确保TPM公钥一定是来自待授权设备的物理TPM芯片(而非软件模拟的TPM),而且后续软件许可密文被发送到待授权设备后,根据待授权设备内置的与所述TPM公钥对应的TPM私钥和所述软件许可密文恢复出软件许可明文,从而保证生成的软件许可与待授权设备属于物理一对一绑定,避免了运行环境被模拟的问题。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的软件许可生成方法的流程示意图;
图2是本发明提供的软件许可验证方法的流程示意图;
图3是本发明提供的软件许可生成装置的结构示意图;
图4是本发明提供的软件许可验证装置的结构示意图;
图5是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
可信任安全平台(Trusted Platform Module,简称TPM)技术是由TCG(TrustedComputing Group)制定的安全加密协处理器的技术标准,该技术标准已经被ISO(国际标准化组织)所采纳,作为安全加密协处理器的国际标准。目前,各大芯片厂商根据TPM的技术标准,生产的TPM芯片已经广泛应用于基于各种主流处理器架构的个人电脑和工控计算机中,并且被Windows和Linux等主流操作系统有完备的支持。
TPM芯片可作为计算机系统的可信任根存在,其可信任性是基于出厂时就预制在其芯片安全存储区域的随机数PS(Primary Seed,简称种子数)。TPM的协议保证了在芯片的整个生命周期内,除非以物理暴力破坏的方式,种子数以及基于其派生出的非对称密钥(Primary Key,简称TPM密钥)的私钥部分(简称:TPM私钥)不可能通过任何软件的方式被获取。种子数的真随机性,也保证了每一片TPM芯片内的TPM私钥的唯一性。另外,TPM芯片厂商通过给TPM密钥的公钥部分(简称:TPM公钥)提供证书的方式,保证了TPM公钥的完整性和来源可靠性。使用携带TPM芯片厂商提供证书的TPM公钥可以保证:
1)此公钥一定来自于真实的物理TPM器件(非软件模拟的TPM设备,或者通过算法生成的公钥数据);
2)由此公钥加密的数据,仅可以通过安装了TPM芯片的计算设备解密,并且此TPM芯片必须存储了与此TPM公钥对应的TPM私钥。这里所指的基于种子数派生出的TPM密钥可以是针对不同类型的非对称算法生成的非对称密钥,包括但不限于主流的RSA非对称加密算法和椭圆曲线密码学(Elliptic Curve Cryptography,ECC)非对称加密算法。
利用TPM公钥和TPM芯片的相关性,从而实现了被TPM公钥加密的数据与安装了TPM的计算设备在硬件层面上的绑定。
基于上述原理,本发明实施例提供的软件许可生成方法如图1所示,用于服务器,例如:软件开发商的云服务器,该方法包括:
步骤S110、接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求,所述授权信息包括:待授权设备标识、待授权软件信息及期望授权时间。当然,待授权设备是指上述的具有TPM芯片的设备,TPM芯片会生成TPM公钥和TPM私钥。其中,TPM公钥证书并非TPM芯片产生的数据,而是TPM芯片制造商为TPM芯片生成的TPM公钥颁发的数字签名,以保证此证书指向的TPM公钥一定是来自本品牌的物理TPM芯片(而非软件模拟的TPM)。
步骤S120、验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文。本步骤中,生成软件许可失效时间的时间戳数据,该失效时间的时间戳数据由服务器当前时间与计算机基准时间的差,再加上期望授权时间的长度获得,待授权设备标识可以是设备序列号(Serial Number,SN)或者车辆识别码(Vehicle Identification Number,VIN),待授权软件信息包括:软件版本等信息。将待授权设备标识、待授权软件信息和时间戳数据按预定数据格式(如:Yaml的数据格式)组织形成软件许可明文。若TPM公钥证书验证失败,云服务器会记录TPM公钥证书验证失败的信息,并向待授权设备返回软件许可生成请求失败的信息。具体地,验证所述TPM公钥证书的方式为:将接收到的TPM公钥证书发送到相应地TPM厂商的CA(Certificate Authority)服务器,由CA服务器验证TPM公钥证书是否合法,并返回验证结果。或者直接从TPM厂商的CA服务器获取根证书以及各级中间证书,并计算接收到的TPM公钥证书与从CA服务器获取的证书的密码学相关性,来验证TPM公钥证书的合法性。
步骤S130、根据所述TPM公钥和所述软件许可明文生成软件许可密文。生成软件许可密文后,软件许可在传输过程中以及在待授权设备中都是以密文的形式存在,避免了被篡改,而且软件许可密文仅可以通过安装了TPM芯片的计算设备才能解密,避免了在其它相同或相似的机型上模拟运行环境而在未授权的条件下使用软件的情况。
步骤S140、将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的与所述TPM公钥对应的TPM私钥和所述软件许可密文恢复出软件许可明文,即软件许可。如上所述,待授权设备是指上述的具有TPM芯片的设备,而且TPM公钥对应的TPM私钥均是由该TPM芯片产生的TPM密钥对。
本实施例提供的软件许可生成方法,通过接收待授权设备发送的TPM公钥、TPM公钥证书和授权信息,根据授权信息生成软件许可明文,并根据TPM公钥和软件许可明文生成软件许可密文,从而避免了授权信息被篡改;并且在生成软件明文前需要验证TPM公钥证书,通过验证TPM公钥证书来确保TPM公钥一定是来自待授权设备的物理TPM芯片(而非软件模拟的TPM),而且后续软件许可密文被发送到待授权设备后,根据待授权设备内置的与所述TPM公钥对应的TPM私钥和软件许可密文恢复出所述软件许可明文,从而保证生成的软件许可与待授权设备属于物理一对一绑定,避免了运行环境被模拟的问题。因此,本实施例的软件许可生成方法能够保证软件只能在在特定设备中被授权许可后使用,避免了非法破解、盗版的情况。
步骤S130的一种实施方式可以是直接采用TPM公钥对软件许可明文进行加密,但软件许可明文数据量较大,且TPM芯片属于低速运算器,在后续解密时,解密效率低且稳定性差。为了提高解密的高效性和稳定性,因此,本实施例中,步骤S130包括:
生成中间密钥对所述软件许可明文加密,得到第一中间密文。本步骤中,中间密钥可以是采用对称加密算法生成的对称密钥(比如256bit随机二进制序列),对称加密算法可采用AES-256或者安全等级相当的对称加密算法。随机生成的对称密钥对软件许可明文的加解密可以放在高速的主CPU器件上运行(加密时在服务器端的CPU上,解密时在待授权设备的CPU上,而非TPM芯片),高效验证软件许可的同时,对软件许可数据量的大小也有极大的可拓展空间,方便未来对软件许可信息内容进行扩充。
根据所述TPM公钥对所述中间密钥进行加密,得到第二中间密文。软件许可明文由随机生成的中间密钥加密,中间密钥为对称密钥,TPM公钥仅加密此随机生成的对称密钥,对称密钥的长度固定而且数据量小,对于是低速运算器件的TPM芯片,后续在待授权设备上对长度固定而且数据量小的对称密钥解密,保证了解密验证的高效和稳定。而且对称密钥由TPM公钥加密,避免了在对称密钥传输过程中被窃听的问题,保证了安全性。
将所述第一中间密文和第二中间密文拼接成所述软件许可密文。在软件许可密文包括第一中间密文和第二中间密文的情况下,上述步骤S140包括:
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的与所述TPM公钥对应的TPM私钥解密所述第二中间密文,得到所述中间密钥,采用中间密钥对所述第一中间密文解密,从而得到软件许可明文。
进一步地,在将所述软件许可密文发送至所述待授权设备之前,还包括:
采用预设的签名私钥对所述软件许可密文进行数字签名,得到签名数据。数字签名可以采用但不限于以下方式进行:
a)采用SHA-256算法对第一中间密文和第二中间密文拼接得到软件许可密文运算,以生成第一数字摘要。
b)将第一数字摘要内容采用签名私钥通过RSA算法加密,生成最终签名数据。
将所述签名数据添加到所述软件许可密文中,即此时的软件许可密文由第一中间密文、第二中间密文和签名数据三部分组成,具体地,可以由三者按Yaml的数据格式组织形成软件许可密文。
在软件许可密文包括第一中间密文、第二中间密文和签名数据的情况下,上述步骤S140包括:
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据预先获得的签名公钥对签名数据验证通过后,采用内置的与所述TPM公钥对应的TPM私钥解密所述第二中间密文,得到所述中间密钥,采用中间密钥对所述第一中间密文解密,从而得到软件许可明文。
本实施例中,对第一中间密文和第二中间密文拼接的软件许可密文进行数字签名,并且在待授权设备中预置签名私钥对应的签名公钥,以进行对应的验签操作,保证了软件许可的不可伪造性,也进一步增强了软件许可的不可篡改性。签名密钥不同于TPM密钥,可以是软件厂商通过相应算法在生成软件许可的服务器(即上述软件开发商的云服务器)上生成,并且该签名私钥仅由生成软件许可的服务器知晓。
本实施例中,软件开发商的云服务器和待授权设备可能采用不同的编码环境,为了方便数据在不同的编码环境中传输,第一中间密文、第二中间密文和签名数据为十六进制字符串(0~9,a~f)。只需要在上述相应的步骤中将生成的第一中间密文、第二中间密文和签名数据的二进制字符串转换成十六进制字符串即可。
步骤S120中,验证所述TPM公钥证书通过后,还包括:生成TPM公钥的摘要信息,并存储所述摘要信息,所述摘要信息用于在待授权设备更新所述软件许可时,验证所述待授权设备发送的TPM公钥。
具体地,在待授权设备后续需要更新软件许可时,接收待授权设备发送的TPM公钥和授权信息,在更新软件许可时,不需要发送TPM公钥证书。
计算接收到的TPM公钥的摘要信息,并将当前计算的摘要信息与之前存储的摘要信息对比验证,若两者一致,则表示验证通过,继续执行上述根据所述授权信息生成软件许可明文之后的步骤,即可得到更新后的软件许可;否则返回错误信息至待授权设备,并停止更新操作。
本实施例中,在第一次生成软件许可时,将TPM公钥的摘要信息存储在软件开发商的云服务器上,便于已经安装过授权软件的待授权设备需要更新软件许可时,可以快速更新,即不需要再次验证TPM公钥证书。同时也避免了同样有TPM芯片但是从来没有为其授权过的其它设备,也发起软件许可更新操作以获得更新后的软件许可。
本发明还提供了一种软件许可验证方法,用于待授权设备,如图2所示,包括:
步骤S210、将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文,所述授权信息包括:待授权设备标识、待授权软件信息及期望授权时间,该服务器通常为软件开发商的云服务器。
步骤S220、接收所述服务器发送的所述软件许可密文,软件许可密文在上述步骤S130中生成。软件许可在传输过程中以及在待授权设备中都是以密文的形式存在,避免了被篡改。
步骤S230、采用内置的与所述TPM公钥对应的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文。具体地,由于TPM私钥不会离开TPM芯片,软件许可密文通过TPM芯片的I/O接口输入,解密后的软件许可明文通过TPM芯片的I/O接口输出。如果软件许可密文被修改,TPM芯片在对其解密时会返回错误,使得软件许可验证过程停止,返回验证失败信息。
步骤S240、根据恢复出的软件许可明文中的授权信息进行软件许可验证。具体地,读取解密出的软件许可明文的数据进行验证,验证步骤包括:待授权设备标识,例如:SN与该待授权设备实际SN比对是否一致,若不一致,则验证失败,返回验证失败信息,若一致,则读取时间戳数据,与待授权设备当前时间比对,如果时间戳数据大于当前时间,则返回验证通过,验证程序结束,如果时间戳数据小于当前时间,表示软件许可已经过期,返回验证失败。
本实施例提供的软件许可验证方法,用于对上述软件许可生成方法生成的软件许可密文进行解密和验证,由于软件许可以密文的形式发送并存在于待授权设备中,从而避免了授权信息被篡改;通过TPM公钥证书验证确保TPM公钥一定是来自待授权设备的物理TPM芯片(而非软件模拟的TPM),而且软件许可密文被发送到待授权设备后,只能由待授权设备根据内置的与所述TPM公钥对应的TPM私钥才能从所述软件许可密文中恢复出软件许可明文,从而保证生成的软件许可与待授权设备属于物理一对一绑定,避免了运行环境被模拟的问题。因此,本实施例的软件许可验证方法能够保证软件只能在特定设备中被授权许可后使用,避免了非法破解、盗版的情况。
本实施例中,若所述软件许可密文包括:第一中间密文和第二中间密文,所述第一中间密文是根据服务器产生的中间密钥对所述软件许可明文加密得到,所述第二中间密文根据所述TPM公钥对所述中间密钥进行加密得到,则步骤S230包括:
采用内置的与所述TPM公钥对应的TPM私钥对所述第二中间密文解密,以得到所述中间密钥。
采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
具体地,将第二中间密文通过TPM芯片的I/O输入TPM芯片,并获得TPM芯片中TPM私钥解密得到的解密信息。如果第二中间密文被修改,则TPM芯片会返回错误,软件许可验证过程停止,返回验证失败信息;如果成功返回解密数据,即成功解密出中间密钥,则采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文,若解密失败,返回验证失败信息,若解密成功,则执行上述步骤S240。
本实施例中,若所述软件许可密文还包括:签名数据,所述签名数据是服务器根据预设的签名私钥对所述软件许可密文进行数字签名得到,则采用内置的与所述TPM公钥对应的TPM私钥对所述第二中间密文解密,以得到所述中间密钥之前,还包括:
根据预先获得的签名公钥验证所述签名数据。具体地,从软件许可密文中获取第一中间密文、第二中间密文和签名数据,拼接第一中间密文和第二中间密文成中间字符串,并采用SHA-256计算中间字符串的第二数字摘要;采用预置的签名公钥对签名数据解密,得到上述步骤a)中的第一数字摘要,比对第一数字摘要和第二数字摘要的信息,若不一致,则软件许可验证过程停止,返回验证失败信息,若一致,则签名验证通过。本实施例中,在对第一中间密文和第二中间密文解密之前,对签名数据进行验签操作,保证了软件许可的不可伪造性,也进一步增强了软件许可的不可篡改性。
验证通过后,采用内置的与所述TPM公钥对应的TPM私钥对所述第二中间密文解密,以得到所述中间密钥。具体地,将第二中间密文通过TPM芯片的I/O输入TPM,并获得TPM芯片的解密信息,如果第二中间密文被修改,则TPM芯片会返回错误,软件许可验证过程停止,返回验证失败信息;如果成功返回解密数据,即成功解密出中间密钥,则采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文,若解密失败,返回验证失败信息,若解密成功,则执行上述步骤S240。
需要说明的是:若在上述软件许可生成的方法中,将第一中间密文、第二中间密文和签名数据转换为十六进制字符串,那么在接收到包括第一中间密文、第二中间密文和签名数据的软件密文后,先将对应的十六进制字符串转换二进制字符串,再进行后续处理。
进一步地,为了快速判断软件许可密文是否被成功恢复为软件许可明文,步骤S240之前先判断恢复出的软件许可明文格式是否为预定数据格式(软件许可明文肯定是按一定数据格式生成,如:Yaml数据格式),如果软件许可密文有被修改,或者由TPM私钥解密出的中间密钥不正确,那么解密出的数据格式与软件许可明文的数据格式肯定不一致,解密出的数据内容也不一致。因此,如果数据格式判断失败,返回验证失败信息,如果数据格式判断成功,则读取解密出的软件许可明文的数据进行验证。
本实施例中,将包括TPM公钥和授权信息的软件许可生成请求上传至服务器之前,还包括:
判断TPM安全存储区域内是否生成所述TPM密钥,若未生成,则说明是待授权设备第一次请求软件许可。
在生成所述TPM密钥的情况下,读取所述TPM密钥的TPM公钥。
在未生成所述TPM密钥的情况下,生成所述TPM密钥,并将生成的TPM密钥存储在所述TPM安全存储区域,在TPM安全存储区域。由于生成TPM密钥是比较耗时的过程,通常在第一次请求时生成,以后TPM密钥直接从TPM安全存储区域读取即可,方便快捷。
下面对本发明提供的软件许可生成装置进行描述,下文描述的软件许可生成装置与上文描述的软件许可生成方法可相互对应参照。
如图3所示,本发明的软件许可生成装置包括:
软件许可生成请求接收模块310,用于接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求,所述授权信息包括:待授权设备标识、待授权软件信息及期望授权时间。
软件许可明文生成模块320,用于验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文。
加密模块330,用于根据所述TPM公钥和所述软件许可明文生成软件许可密文。
软件许可密文发送模块340,用于将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。
本发明提供的软件许可生成装置,通过接收待授权设备发送的TPM公钥、TPM公钥证书和授权信息,根据授权信息生成软件许可明文,并根据TPM公钥和软件许可明文生成软件许可密文,从而避免了授权信息被篡改;并且在生成软件明文前需要验证TPM公钥证书,通过验证TPM公钥证书来确保TPM公钥一定是来自待授权设备的物理TPM芯片(而非软件模拟的TPM),而且后续软件许可密文被发送到待授权设备后,根据待授权设备内置的与所述TPM公钥对应的TPM私钥和所述软件许可密文恢复出所述软件许可明文,从而保证生成的软件许可与待授权设备属于物理一对一绑定,避免了运行环境被模拟的问题。因此,本实施例的软件许可生成方法能够保证软件只能在在特定设备中被授权许可后使用,避免了非法破解、盗版的情况。
可选地,所述加密模块330包括:
第一加密模块,用于生成中间密钥对所述软件许可明文加密,得到第一中间密文。
第二加密模块,用于根据所述TPM公钥对所述中间密钥进行加密,得到第二中间密文。
密文拼接模块,用于将所述第一中间密文和第二中间密文拼接成所述软件许可密文。
软件许可密文发送模块340具体用于将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥解密所述第二中间密文,得到所述中间密钥,采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
可选地,本发明提供的软件许可生成装置还包括:数字签名模块,用于采用预设的签名私钥对所述软件许可密文进行数字签名,得到签名数据;将所述签名数据添加到所述软件许可密文中。
软件许可密文发送模块340具体用于将所述软件许可密文发送至所述待授权设备,以使待授权设备根据预先获得的签名公钥对签名数据验证通过后,采用内置的TPM私钥解密所述第二中间密文,得到所述中间密钥,采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
可选地,本发明提供的软件许可生成装置还包括:TPM公钥摘要生成模块,用于生成TPM公钥的摘要信息,并存储所述摘要信息,所述摘要信息用于在待授权设备更新所述软件许可时,验证所述待授权设备发送的TPM公钥。
下面对本发明提供的软件许可验证装置进行描述,下文描述的软件许可验证装置与上文描述的软件许可验证方法可相互对应参照。
如图4所示,本发明的软件许可验证装置包括:
软件许可生成请求上传模块410,用于将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文,所述授权信息包括:待授权设备标识、待授权软件信息及期望授权时间。
软件许可密文接收模块420,用于接收所述服务器发送的软件许可密文。
解密模块430,用于采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,所述TPM私钥与所述TPM公钥相对应。
验证模块440,用于根据所述软件许可明文中的授权信息进行软件许可验证。
本发明提供的软件许可验证装置,用于对上述软件许可生成装置生成的软件许可密文进行解密和验证,由于软件许可以密文的形式发送并存在于待授权设备中,从而避免了授权信息被篡改;通过TPM公钥证书验证确保TPM公钥一定是来自待授权设备的物理TPM芯片(而非软件模拟的TPM),而且软件许可密文被发送到待授权设备后,只能由待授权设备根据内置的与所述TPM公钥对应的TPM私钥才能从所述软件许可密文中恢复出软件许可明文,从而保证生成的软件许可与待授权设备属于物理一对一绑定,避免了运行环境被模拟的问题。因此,本实施例的软件许可验证装置能够保证软件只能在特定设备中被授权许可后使用,避免了非法破解、盗版的情况。
可选地,所述软件许可密文包括:第一中间密文和第二中间密文,所述第一中间密文是根据服务器产生的中间密钥对所述软件许可明文加密得到,所述第二中间密文根据所述TPM公钥对所述中间密钥进行加密得到,所述所解密模块430包括:
第一解密模块,用于采用内置的TPM私钥对所述第二中间密文解密,以得到所述中间密钥。
第二解密模块,用于采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
可选地,所述软件许可密文还包括:签名数据,所述签名数据是服务器根据预设的签名私钥对所述软件许可密文进行数字签名得到,所述解密模块430还包括:
验签模块,用于根据预先获得的签名公钥对签名数据验证。
可选地,本发明提供的软件许可验证装置还包括:明文格式判断模块,用于判断恢复出的软件许可明文的数据格式,在不符合预定数据格式的情况下,输出验证失败信息。当然,若符合预定的数据格式,则执行验证模块440。
可选地,本发明提供的软件许可验证装置还包括:
TPM密钥判断模块,用于判断TPM安全存储区域内是否生成所述TPM密钥。
TPM公钥读取模块,用于在生成所述TPM密钥的情况下,读取所述TPM密钥的TPM公钥。
TPM公钥生成模块,用于在未生成所述TPM密钥的情况下,生成所述TPM密钥,并将生成的TPM密钥存储在所述TPM安全存储区域。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。
在一种电子设备中,如:云服务器,其处理器510可以调用存储器530中的逻辑指令,以执行软件许可生成方法,该方法包括:
接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求。
验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文。
根据所述TPM公钥和所述软件许可明文生成软件许可密文。
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。
在另一种电子设备中,如:待授权服务器,其处理器510可以调用存储器530中的逻辑指令,以执行软件许可验证方法,该方法包括:
将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文。
接收所述服务器发送的所述软件许可密文。
采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,所述TPM私钥与所述TPM公钥相对应。
根据恢复出的软件许可明文中的授权信息进行软件许可验证。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法提供的软件许可生成方法,该方法包括:
接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求。
验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文。
根据所述TPM公钥和所述软件许可明文生成软件许可密文。
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。
或执行上述各方法提供的软件许可验证方法,该方法包括:
将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文。
接收所述服务器发送的所述软件许可密文。
采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,所述TPM私钥与所述TPM公钥相对应。
根据恢复出的软件许可明文中的授权信息进行软件许可验证。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的软件许可生成方法,该方法包括:
接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求。
验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文。
根据所述TPM公钥和所述软件许可明文生成软件许可密文。
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。
或执行上述各方法提供的软件许可验证方法,该方法包括:
将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文。
接收所述服务器发送的所述软件许可密文。
采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,所述TPM私钥与所述TPM公钥相对应。
根据恢复出的软件许可明文中的授权信息进行软件许可验证。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (13)

1.一种软件许可生成方法,其特征在于,包括:
接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求;
验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文;
根据所述TPM公钥和所述软件许可明文生成软件许可密文;
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。
2.根据权利要求1所述的软件许可生成方法,其特征在于,根据所述TPM公钥和所述软件许可明文生成软件许可密文,包括:
生成中间密钥对所述软件许可明文加密,得到第一中间密文;
根据所述TPM公钥对所述中间密钥进行加密,得到第二中间密文;
将所述第一中间密文和第二中间密文拼接成所述软件许可密文,
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,包括:
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥解密所述第二中间密文,得到所述中间密钥,采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
3.根据权利要求2所述的软件许可生成方法,其特征在于,在将所述软件许可密文发送至所述待授权设备之前,还包括:
采用预设的签名私钥对所述软件许可密文进行数字签名,得到签名数据;
将所述签名数据添加到所述软件许可密文中,
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,包括:
将所述软件许可密文发送至所述待授权设备,以使待授权设备根据预先获得的签名公钥对签名数据验证通过后,采用内置的TPM私钥解密所述第二中间密文,得到所述中间密钥,采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
4.根据权利要求1~3中任一项所述的软件许可生成方法,其特征在于,验证所述TPM公钥证书通过后,还包括:
生成TPM公钥的摘要信息,并存储所述摘要信息,所述摘要信息用于在待授权设备更新所述软件许可时,验证所述待授权设备发送的TPM公钥。
5.一种软件许可验证方法,其特征在于,包括:
将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文;
接收所述服务器发送的所述软件许可密文;
采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,所述TPM私钥与所述TPM公钥相对应;
根据恢复出的软件许可明文中的授权信息进行软件许可验证。
6.根据权利要求5所述的软件许可验证方法,其特征在于,所述软件许可密文包括:第一中间密文和第二中间密文,所述第一中间密文是根据服务器产生的中间密钥对所述软件许可明文加密得到,所述第二中间密文根据所述TPM公钥对所述中间密钥进行加密得到,
采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,包括:
采用内置的TPM私钥对所述第二中间密文解密,以得到所述中间密钥;
采用所述中间密钥对所述第一中间密文解密,以得到所述软件许可明文。
7.根据权利要求6所述的软件许可验证方法,其特征在于,所述软件许可密文还包括:签名数据,所述签名数据是服务器根据预设的签名私钥对所述软件许可密文进行数字签名得到,
所述采用内置的TPM私钥对所述第二中间密文解密,以得到所述中间密钥之前,还包括:
根据预先获得的签名公钥验证所述签名数据。
8.根据权利要求5所述的软件许可验证方法,其特征在于,根据恢复出的软件许可明文中的授权信息进行软件许可验证之前,还包括:判断恢复出的软件许可明文的数据格式,在不符合预定数据格式的情况下,输出验证失败信息。
9.根据权利要求5~8中任一项所述的软件许可验证方法,其特征在于,将包括TPM公钥和授权信息的软件许可生成请求上传至服务器之前,还包括:
判断TPM安全存储区域内是否生成所述TPM密钥;
在生成所述TPM密钥的情况下,读取所述TPM密钥的TPM公钥;
在未生成所述TPM密钥的情况下,生成所述TPM密钥,并将生成的TPM密钥存储在所述TPM安全存储区域。
10.一种软件许可生成装置,其特征在于,包括:
软件许可生成请求接收模块,用于接收待授权设备发送的包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求;
软件许可明文生成模块,用于验证所述TPM公钥证书通过后,根据所述授权信息生成软件许可明文;
加密模块,用于根据所述TPM公钥和所述软件许可明文生成软件许可密文;
软件许可密文发送模块,用于将所述软件许可密文发送至所述待授权设备,以使待授权设备根据内置的TPM私钥和所述软件许可密文恢复出所述软件许可明文,所述TPM私钥与所述TPM公钥相对应。
11.一种软件许可验证装置,其特征在于,包括:
软件许可生成请求上传模块,用于将包括TPM公钥、TPM公钥证书和授权信息的软件许可生成请求上传至服务器,以请求所述服务器在验证TPM公钥证书通过后,根据所述授权信息生成软件许可明文,并根据所述TPM公钥和所述软件许可明文生成软件许可密文;
软件许可密文接收模块,用于接收所述服务器发送的软件许可密文;
解密模块,用于采用内置的TPM私钥和所述软件许可密文恢复出包含所述授权信息的软件许可明文,所述TPM私钥与所述TPM公钥相对应;
验证模块,用于根据所述软件许可明文中的授权信息进行软件许可验证。
12.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~4中任一项所述的软件许可生成方法,或实现如权利要求5~9中任一项所述的软件许可验证方法。
13.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1~4中任一项所述的软件许可生成方法,或实现如权利要求5~9中任一项所述的软件许可验证方法。
CN202210768903.9A 2022-06-30 2022-06-30 软件许可生成、验证方法及装置 Pending CN115174063A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210768903.9A CN115174063A (zh) 2022-06-30 2022-06-30 软件许可生成、验证方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210768903.9A CN115174063A (zh) 2022-06-30 2022-06-30 软件许可生成、验证方法及装置

Publications (1)

Publication Number Publication Date
CN115174063A true CN115174063A (zh) 2022-10-11

Family

ID=83489899

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210768903.9A Pending CN115174063A (zh) 2022-06-30 2022-06-30 软件许可生成、验证方法及装置

Country Status (1)

Country Link
CN (1) CN115174063A (zh)

Similar Documents

Publication Publication Date Title
US11876791B2 (en) Message authentication with secure code verification
EP3804213B1 (en) Shared secret establishment
CN107742212B (zh) 基于区块链的资产验证方法、装置及系统
KR100670005B1 (ko) 모바일 플랫폼을 위한 메모리의 무결성을 원격으로 확인하는 확인장치 및 그 시스템 그리고 무결성 확인 방법
CN101145906B (zh) 对单向网络中的接收终端进行合法性认证的方法及系统
TW201732669A (zh) 受控的安全碼鑑認
US7693286B2 (en) Method of delivering direct proof private keys in signed groups to devices using a distribution CD
US20180204004A1 (en) Authentication method and apparatus for reinforced software
CN103269271A (zh) 一种备份电子签名令牌中私钥的方法和系统
CN110414248B (zh) 一种调试微处理器的方法及微处理器
JP6387908B2 (ja) 認証システム
CN114662087B (zh) 一种多端验证的安全芯片固件更新方法及装置
CN117556430B (zh) 一种安全启动方法、装置、设备及存储介质
CN114726536A (zh) 一种时间戳生成方法、装置、电子设备及存储介质
CN115549910B (zh) 一种数据传输方法、设备以及存储介质
CN103281188A (zh) 一种备份电子签名令牌中私钥的方法和系统
CN114040221B (zh) 基于机顶盒服务器端双签名的安全认证的防拷贝方法
CN108242997B (zh) 安全通信的方法与设备
CN113221074B (zh) 一种离线授权方法
CN115174063A (zh) 软件许可生成、验证方法及装置
CN103248490A (zh) 一种备份电子签名令牌中信息的方法和系统
CN107292172B (zh) 用于相对于参考计算机文件自动验证目标计算机文件的方法
KR100897075B1 (ko) 배포 cd를 사용하는 장치에 서명 그룹의 다이렉트 증명개인 키들을 전달하는 방법
CN113194090B (zh) 鉴权方法、鉴权装置、终端设备及计算机可读存储介质
CN112737790B (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