CN106778084A - 软件激活方法及装置和软件激活系统 - Google Patents

软件激活方法及装置和软件激活系统 Download PDF

Info

Publication number
CN106778084A
CN106778084A CN201611024140.8A CN201611024140A CN106778084A CN 106778084 A CN106778084 A CN 106778084A CN 201611024140 A CN201611024140 A CN 201611024140A CN 106778084 A CN106778084 A CN 106778084A
Authority
CN
China
Prior art keywords
software
information
client
activation
server
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
CN201611024140.8A
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.)
CHANJET INFORMATION TECHNOLOGY Co Ltd
Original Assignee
CHANJET INFORMATION 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 CHANJET INFORMATION TECHNOLOGY Co Ltd filed Critical CHANJET INFORMATION TECHNOLOGY Co Ltd
Priority to CN201611024140.8A priority Critical patent/CN106778084A/zh
Publication of CN106778084A publication Critical patent/CN106778084A/zh
Pending legal-status Critical Current

Links

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
    • 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
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • 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)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种软件激活方法及装置和软件激活系统。其中,一种方法,用于客户端,包括:检测软件是否具有RSA数字证书;在软件具有RSA数字证书的情况下,获取软件的激活认证信息,并将激活认证信息通过RSA数字证书中的公钥加密后发送至服务器;接收并保存服务器发送的签名激活信息;通过公钥验证激活信息;根据激活信息激活软件。通过本发明的技术方案,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。

Description

软件激活方法及装置和软件激活系统
技术领域
本发明涉及软件激活技术领域,具体而言,涉及一种软件激活方法及装置,还涉及一种软件激活系统。
背景技术
在目前的大环境下,互联网已经成为一个基础设施,支撑着各种业务的开展。网络开放的广泛性和交互的便捷性为资源的获取提供了便利条件,然而也促进了盗版及侵权行为的产生,使得软件产品的版权保护随着讯息的传播速度和广度的加剧,变得越来越困难,破解手段越来越多样。
因此,如何提供一种软件激活和持续验证的流程,在联网交互环节保障信息的合法性和一致性,成为目前亟待解决的问题。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的一个目的在于提出了一种软件激活方法,用于客户端及一种软件激活方法,用于服务器。
本发明的另一个目的在于提出了一种软件激活装置,用于客户端及一种软件激活装置,用于服务器。
本发明的又一个目的在于提出了一种软件激活系统。
有鉴于此,本发明提出了一种软件激活方法,用于客户端,该软件激活方法包括:检测软件是否具有RSA数字证书;在软件具有RSA数字证书的情况下,获取软件的激活认证信息,并将激活认证信息通过RSA数字证书中的公钥加密后发送至服务器;接收并保存服务器发送的签名激活信息;通过公钥验证激活信息;根据激活信息激活软件。
根据本发明的软件激活方法,通过将软件的激活认证信息使用公钥加密后发送至服务器,能够保证激活认证信息只有服务器能接收到;接收并保存服务器发送的签名激活信息,并通过公钥验证激活信息,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
另外,根据本发明上述的软件激活方法,用于客户端,还可以具有如下附加的技术特征:
在上述技术方案中,优选地,在软件不具有RSA数字证书的情况下,向服务器发送RSA数字证书的申请请求;接收服务器发送的RSA数字证书。
在该技术方案中,通过服务器发送RSA数字证书的申请请求并接收服务器发送的RSA数字证书,保证了用户的身份认证与信息安全。
在上述技术方案中,优选地,验证激活信息是否有效,具体包括:将激活信息发送至服务器,并发送验证请求至服务器;接收并显示验证结果,通过公钥验证验证结果。
在该技术方案中,通过将激活信息发送至服务器并发送验证请求,接收服务器发送的验证结果,并通过公钥验证验证结果,实现了软件激活和持续验证的流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
在上述任一技术方案中,优选地,RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
在该技术方案中,通过RSA数字证书保证了用户的身份认证与信息安全;通过激活认证信息进一步保证了用户的身份认证与信息安全。
本领域技术人员应该理解,RSA数字证书包括但不限于以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括但不限于以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
本发明还提出一种软件激活方法,用于服务器,与上述任一技术方案的软件激活方法,用于客户端,配合使用,该软件激活方法包括:接收客户端发送的软件的激活认证信息;通过私钥解密激活认证信息;判断激活认证信息是否符合激活条件;在激活认证信息符合激活条件的情况下,生成一个预设长度的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;将激活信息及发布时间通过私钥签名后发送至客户端,以供客户端激活软件。
根据本发明的软件激活方法,通过私钥解密客户端发送的激活认证信息,判断激活认证信息是否符合激活条件,能够保证激活信息来源于客户端,通过将激活信息及发布时间通过私钥签名后发送至客户端,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
另外,根据本发明上述的软件激活方法,用于服务器,还可以具有如下附加的技术特征:
在上述技术方案中,优选地,在软件不具有RSA数字证书的情况下,接收客户端发送的RSA数字证书的申请请求;根据申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书;将RSA数字证书发送至客户端。
在该技术方案中,通过根据客户端的申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书,保证了用户的身份认证与信息安全。
在上述技术方案中,优选地,验证激活信息是否有效,具体包括:接收客户端发送的验证请求;通过公钥验证激活信息,并判断是否成功解密;在成功解密后判断发布时间是否在预定时间范围内;当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录;并在判断结果为是的情况下,再次生成一个预设长度的随机数做为激活验证信息,并根据当前时间生成发布时间;将激活验证信息及发布时间通过私钥签名后发送至客户端。
在该技术方案中,通过判断公钥是否成功解密激活信息,在成功解密后判断发布时间是否在预定时间范围内,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录,能够准确确认用户的身份信息,避免未经授权的客户端冒充已经授权的客户端申请验证,保证软件的安全性;将激活验证信息及发布时间通过私钥签名后发送至客户端,能够保证激活验证信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性。
在上述技术方案中,优选地,当不能成功解密时,向客户端发送错误提示,并结束验证;当发布时间不在预定时间范围内时,向客户端发送错误提示,并结束验证;当激活信息在服务器没有记录时,向客户端发送错误提示,并结束验证。
在该技术方案中,当不能成功解密时,说明激活信息不是来源于已授权的客户端,当发布时间不在预定时间范围内时,说明软件授权已不在有效期范围内,当激活信息在服务器没有记录时,说明激活信息不是服务器所发送的,当这样的情况发生时,服务器向客户端发送错误提示,并终止验证,避免软件被恶意破解,保证了软件的安全性、合法性、一致性。
在上述技术方案中,优选地,所述将所述激活验证信息及所述发布时间通过所述私钥签名后发送至所述客户端之前,还包括:记录预定次数的激活验证信息,根据激活验证信息进行容错验证。
在该技术方案中,通过记录预定次数的激活验证信息,为激活验证信息提供了容错验证,以利于软件的激活与持续验证的顺利进行,节省时间,方便用户快速通过验证。
在上述任一技术方案中,优选地,RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址;
在该技术方案中,通过RSA数字证书保证了用户的身份认证与信息安全;通过激活认证信息进一步保证了用户的身份认证与信息安全。
本领域技术人员应该理解,RSA数字证书包括但不限于以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括但不限于以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
本发明还提出一种软件激活装置,用于客户端,该软件激活装置包括:检测单元,用于检测软件是否具有RSA数字证书;加密单元,用于在软件具有RSA数字证书的情况下,获取软件的激活认证信息,并将激活认证信息通过RSA数字证书中的公钥加密;发送单元,用于将激活认证信息通过RSA数字证书中的公钥加密后发送至服务器;接收单元,用于接收并保存服务器发送的签名激活信息;加密单元,还用于通过公钥验证激活信息;激活单元,用于根据激活信息激活软件。
根据本发明的软件激活装置,通过将软件的激活认证信息使用公钥加密后发送至服务器,能够保证激活认证信息只有服务器能接收到;接收并保存服务器发送的签名激活信息,并通过公钥验证激活信息,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
另外,根据本发明上述的软件激活装置,用于客户端,还可以具有如下附加的技术特征:
在上述技术方案中,优选地,发送单元,用于在软件不具有RSA数字证书的情况下,向服务器发送RSA数字证书的申请请求;接收单元,还接收服务器发送的RSA数字证书。
在该技术方案中,通过服务器发送RSA数字证书的申请请求并接收服务器发送的RSA数字证书,保证了用户的身份认证与信息安全。
在上述技术方案中,优选地,还包括:验证激活信息是否有效,具体包括:发送单元,还用于将激活信息发送至服务器,并发送验证请求至服务器;接收单元,用于接收并显示验证结果;加密单元,用于通过公钥验证验证结果。
在该技术方案中,通过将激活信息发送至服务器并发送验证请求,接收服务器发送的验证结果,并通过公钥验证验证结果,实现了软件激活和持续验证的流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
在上述任一技术方案中,优选地,RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
在该技术方案中,通过RSA数字证书保证了用户的身份认证与信息安全;通过激活认证信息进一步保证了用户的身份认证与信息安全。
本领域技术人员应该理解,RSA数字证书包括但不限于以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括但不限于以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
本发明还提出一种软件激活装置,用于服务器,与上述任一技术方案的软件激活装置,用于客户端,配合使用,该软件激活装置包括:接收单元,接收客户端发送的软件的激活认证信息;加密单元,通过私钥解密激活认证信息;第一判断单元,判断激活认证信息是否符合激活条件;第一生成单元,在激活认证信息符合激活条件的情况下,生成一个足够长的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;发送单元,将激活信息及发布时间通过私钥签名后发送至客户端,以供客户端激活软件。
根据本发明的软件激活装置,通过私钥解密客户端发送的激活认证信息,判断激活认证信息是否符合激活条件,能够保证激活信息来源于客户端,通过将激活信息及发布时间通过私钥签名后发送至客户端,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
另外,根据本发明上述的软件激活装置,用于服务器,还可以具有如下附加的技术特征:
在上述技术方案中,优选地,接收单元,在软件不具有RSA数字证书的情况下,接收客户端发送的RSA数字证书的申请请求;第二生成单元,根据申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书;发送单元,将RSA数字证书发送至客户端。
在该技术方案中,通过根据客户端的申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书,保证了用户的身份认证与信息安全。
在上述技术方案中,优选地,验证激活信息是否有效,具体包括:接收单元,接收客户端发送的验证请求;第二判断单元,通过公钥验证相关信息,并判断是否成功解密;第三判断单元,在成功解密后判断发布时间是否在预定时间范围内;第四判断单元,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录;第三生成单元,在判断结果为是的情况下,再次生成一个足够长的随机数做为激活验证信息,并根据当前时间生成发布时间;发送单元,将激活验证信息及发布时间通过私钥签名后发送至客户端。
在该技术方案中,通过判断公钥是否成功解密激活信息,在成功解密后判断发布时间是否在预定时间范围内,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录,能够准确确认用户的身份信息,避免未经授权的客户端冒充已经授权的客户端申请验证,保证软件的安全性;将激活验证信息及发布时间通过私钥签名后发送至客户端,能够保证激活验证信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性。
在上述技术方案中,优选地,当不能成功解密时,向客户端发送错误提示,并结束验证;当发布时间不在预定时间范围内时,向客户端发送错误提示,并结束验证;当激活信息在服务器没有记录时,向客户端发送错误提示,并结束验证。
在该技术方案中,当不能成功解密时,说明激活信息不是来源于已授权的客户端,当发布时间不在预定时间范围内时,说明软件授权已不在有效期范围内,当激活信息在服务器没有记录时,说明激活信息不是服务器所发送的,当这样的情况发生时,服务器向客户端发送错误提示,并终止验证,避免软件被恶意破解,保证了软件的安全性、合法性、一致性。
在上述技术方案中,优选地,所述发送单元将所述激活验证信息及所述发布时间通过所述私钥签名后发送至所述客户端之前,还包括:容错单元,用于记录预定次数的激活验证信息,根据激活验证信息进行容错验证。
在该技术方案中,通过记录预定次数的激活验证信息,为激活验证信息提供了容错验证,以利于软件的激活与持续验证的顺利进行,节省时间,方便用户快速通过验证。
在上述任一技术方案中,优选地,RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址;
在该技术方案中,通过RSA数字证书保证了用户的身份认证与信息安全;通过激活认证信息进一步保证了用户的身份认证与信息安全。
本领域技术人员应该理解,RSA数字证书包括但不限于以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括但不限于以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
本发明还提出一种软件激活系统,包括上述任一技术方案的软件激活装置,用于客户端,以及上述任一技术方案的软件激活装置,用于服务器。该软件激活系统具有客户端软件激活装置和服务器端软件激活装置的任一技术效果,再次不在赘述。
本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1a示出了根据本发明的一个实施例的客户端软件激活方法的流程示意图;
图1b示出了根据本发明的再一个实施例的客户端软件激活方法的流程示意图;
图2示出了根据本发明的又一个实施例的客户端软件激活方法的流程示意图;
图3示出了根据本发明的一个实施例的服务器端软件激活方法的流程示意图;
图4示出了根据本发明的另一个实施例的服务器端软件激活方法的流程示意图;
图5a示出了根据本发明的再一个实施例的服务器端软件激活方法的流程示意图;
图5b示出了根据本发明的又一个实施例的服务器端软件激活方法的流程示意图;
图5c示出了根据本发明的又一个实施例的服务器端软件激活方法的流程示意图;
图6示出了根据本发明的一个实施例的客户端向服务器申请RSA数字证书的交互流程示意图;
图7示出了根据本发明的一个实施例的客户端与服务器交互的软件激活方法的流程示意图;
图8示出了根据本发明的再一个实施例的客户端与服务器交互的软件激活方法的流程示意图;
图9示出了根据本发明的一个实施例的客户端软件激活装置的示意框图;
图10a示出了根据本发明的一个实施例的服务器软件激活装置的示意框图;
图10b示出了根据本发明的一个实施例的服务器软件激活装置的示意框图;
图10c示出了根据本发明的一个实施例的服务器软件激活装置的示意框图;
图10d示出了根据本发明的一个实施例的服务器软件激活装置的示意框图;
图11示出了根据本发明的一个实施例的软件激活系统的示意框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
如图1a所示,根据本发明的一个实施例的客户端软件激活方法的流程示意图:
步骤102,检测软件是否具有RSA数字证书;
步骤104,在软件具有RSA数字证书的情况下,获取软件的激活认证信息,并将激活认证信息通过RSA数字证书中的公钥加密后发送至服务器;
步骤106,接收并保存服务器发送的加密激活信息;
步骤108,通过公钥验证激活信息;
步骤110,根据激活信息激活软件。
在该实施例中,通过将软件的激活认证信息使用公钥加密后发送至服务器,能够保证激活认证信息只有服务器能接收到;接收并保存服务器发送的加密激活信息,并通过公钥验证激活信息,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
如图1b所示,根据本发明的再一个实施例的客户端软件激活方法的流程示意图:
步骤102,检测软件是否具有RSA数字证书;若是,执行步骤104,否则,执行步骤112;
步骤104,在软件具有RSA数字证书的情况下,获取软件的激活认证信息,并将激活认证信息通过RSA数字证书中的公钥加密后发送至服务器;
步骤106,接收并保存服务器发送的加密激活信息;
步骤108,通过公钥验证激活信息;
步骤110,根据激活信息激活软件;
步骤112,在软件不具有RSA数字证书的情况下,向服务器发送RSA数字证书的申请请求;
步骤114,接收服务器发送的RSA数字证书。
在该实施例中,通过服务器发送RSA数字证书的申请请求并接收服务器发送的RSA数字证书,保证了用户的身份认证与信息安全。
如图2所示,根据本发明的又一个实施例的客户端软件激活方法的流程示意图:该软件激活方法,用于客户端,还包括:验证激活信息是否有效,具体包括:
步骤202,将激活信息发送至服务器,并发送验证请求至服务器;
步骤204,接收并显示验证结果,通过公钥验证验证结果。
在该实施例中,通过将激活信息发送至服务器并发送验证请求,接收服务器发送的验证结果,并通过公钥验证验证结果,实现了软件激活和持续验证的流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
在上述任一实施例中,优选地,RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
在该实施例中,通过RSA数字证书保证了用户的身份认证与信息安全;通过激活认证信息进一步保证了用户的身份认证与信息安全。
本领域技术人员应该理解,RSA数字证书包括但不限于以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括但不限于以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
如图3所示,根据本发明的一个实施例的服务器软件激活方法的流程示意图:
步骤302,接收客户端发送的软件的激活认证信息;
步骤304,通过私钥解密激活认证信息;
步骤306,判断激活认证信息是否符合激活条件;
步骤308,在激活认证信息符合激活条件的情况下,生成一个预设长度的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;
步骤310,将激活信息及发布时间通过私钥签名后发送至客户端,以供客户端激活软件。
在该实施例中,通过私钥解密客户端发送的激活认证信息,判断激活认证信息是否符合激活条件,能够保证激活信息来源于客户端,通过将激活信息及发布时间通过私钥签名后发送至客户端,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
如图4所示,根据本发明的另一个实施例的服务器软件激活方法的流程示意图:
步骤402,在软件不具有RSA数字证书的情况下,接收客户端发送的RSA数字证书的申请请求;
步骤404,根据申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书;
步骤406,将RSA数字证书发送至客户端。
在该实施例中,通过根据客户端的申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书,保证了用户的身份认证与信息安全。
如图5a所示,根据本发明的再一个实施例的服务器软件激活方法的流程示意图:该软件激活方法,用于服务器,还包括:验证激活信息是否有效,具体包括:
步骤502,接收客户端发送的验证请求;
步骤504,通过公钥验证激活信息,并判断是否成功解密;
步骤506,在成功解密后判断发布时间是否在预定时间范围内;
步骤508,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录;
步骤510,并在判断结果为是的情况下,再次生成一个预设长度的随机数做为激活验证信息,并根据当前时间生成发布时间;
步骤512,将激活验证信息及发布时间通过私钥签名后发送至客户端。
在该实施例中,通过判断公钥是否成功解密激活信息,在成功解密后判断发布时间是否在预定时间范围内,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录,能够准确确认用户的身份信息,避免未经授权的客户端冒充已经授权的客户端申请验证,保证软件的安全性;将激活验证信息及发布时间通过私钥签名后发送至客户端,能够保证激活验证信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性。
如图5b所示,根据本发明的又一个实施例的服务器软件激活方法的流程示意图:
步骤502,接收客户端发送的验证请求;
步骤504,通过公钥验证激活信息,并判断是否成功解密;
步骤506,在成功解密后判断发布时间是否在预定时间范围内;
步骤508,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录;
步骤510,并在判断结果为是的情况下,再次生成一个预设长度的随机数做为激活验证信息,并根据当前时间生成发布时间;
步骤512,将激活验证信息及发布时间通过私钥签名后发送至客户端;
步骤514,向客户端发送错误提示,并结束验证。
在该实施例中,当不能成功解密时,说明激活信息不是来源于已授权的客户端,当发布时间不在预定时间范围内时,说明软件授权已不在有效期范围内,当激活信息在服务器没有记录时,说明激活信息不是服务器所发送的,当这样的情况发生时,服务器向客户端发送错误提示,并终止验证,避免软件被恶意破解,保证了软件的安全性、合法性、一致性。
如图5c所示,根据本发明的又一个实施例的服务器软件激活方法的流程示意图:
步骤502,接收客户端发送的验证请求;
步骤504,通过公钥验证激活信息,并判断是否成功解密;
步骤506,在成功解密后判断发布时间是否在预定时间范围内;
步骤508,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录;
步骤510,并在判断结果为是的情况下,再次生成一个预设长度的随机数做为激活验证信息,并根据当前时间生成发布时间;
步骤512,记录预定次数的激活验证信息,根据激活验证信息进行容错验证;
步骤514,将激活验证信息及发布时间通过私钥签名后发送至客户端;
步骤516,向客户端发送错误提示,并结束验证。
在该实施例中,通过记录预定次数的激活验证信息,为激活验证信息提供了容错验证,以利于软件的激活与持续验证的顺利进行,节省时间,方便用户快速通过验证。
在上述任一实施例中,优选地,RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址;
在该实施例中,通过RSA数字证书保证了用户的身份认证与信息安全;通过激活认证信息进一步保证了用户的身份认证与信息安全。
本领域技术人员应该理解,RSA数字证书包括但不限于以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括但不限于以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
如图6所示,根据本发明的一个实施例的客户端向服务器申请RSA数字证书的交互流程示意图:
步骤602包括:步骤6022,向服务器发送RSA数字证书的申请请求;步骤6024,接收服务器发送的RSA数字证书;
步骤604包括:步骤6042,接收客户端发送的RSA数字证书的申请请求;步骤6044,根据申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书;步骤6046,将RSA数字证书发送至客户端。
在该实施例中,通过客户端与服务器交互,客户端获得了RSA数字证书,保证了用户的身份认证与信息安全。
如图7所示,根据本发明的一个实施例的客户端与服务器交互的软件激活方法的流程示意图:
步骤702包括:步骤7022,向服务器发起激活请求,提交产品激活认证信息并通过可靠方式发送至服务器;步骤7024,接收并保存服务器发送的加密激活信息;通过公钥验证激活信息;根据激活信息激活所述软件;
步骤704包括:步骤7042,接收激活请求验证产品信息步骤;步骤7043,检查激活认证信息是否符合激活条件;步骤7044,根据当前时间做为issueTime,并生成一个足够长的随机数做为activationCode,带着产品信息,生成激活信息,并用私钥签名;步骤7045,向客户端发送错误代码,结束激活;步骤7046,清除之前验证保留的activationCode,并记录新的activationCode;步骤7047,将加密的激活信息发送至客户端。
在该实施例中,通过将软件的激活认证信息使用公钥加密后发送至服务器,能够保证激活认证信息只有服务器能接收到;接收并保存服务器发送的加密激活信息,并通过公钥验证激活信息,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
如图8所示,根据本发明的再一个实施例的客户端与服务器交互的软件激活方法的流程示意图:
步骤802包括:步骤8022,向服务器发起验证请求,加载产品信息和之前激活或验证信息并发送至服务器;步骤8024,接收并显示验证结果,通过所述公钥验证所述验证结果;
步骤804包括:步骤8042,接收验证请求并验证产品信息;步骤8043,公钥验证激活信息,判断是否成功解密;步骤8044,发布时间是否在预定时间范围内;步骤8045,激活信息是否在服务器有所记录;步骤8046,生成一个预设长度的随机数做为激活验证信息,并根据当前时间生成发布时间;步骤8047,向客户端发送错误代码,结束验证;步骤8048,记录预定次数的激活验证信息,根据激活验证信息进行容错验证;步骤8049,将激活验证信息及发布时间通过私钥签名后发送至客户端。
在该实施例中,通过判断公钥是否成功解密激活信息,在成功解密后判断发布时间是否在预定时间范围内,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录,能够准确确认用户的身份信息,避免未经授权的客户端冒充已经授权的客户端申请验证,保证软件的安全性;将激活验证信息及发布时间通过私钥签名后发送至客户端,能够保证激活验证信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性。
如图9所示,根据本发明的一个实施例的客户端软件激活装置的示意框图:
检测单元902,用于检测软件是否具有RSA数字证书;还用于通过公钥验证激活信息;
加密单元904,用于在软件具有RSA数字证书的情况下,获取软件的激活认证信息,并将激活认证信息通过RSA数字证书中的公钥加密;
发送单元906,用于将激活认证信息通过RSA数字证书中的公钥加密后发送至服务器;
接收单元908,用于接收并保存服务器发送的加密激活信息;
激活单元910,用于根据激活信息激活软件。
在该实施例中,通过将软件的激活认证信息使用公钥加密后发送至服务器,能够保证激活认证信息只有服务器能接收到;接收并保存服务器发送的加密激活信息,并通过公钥验证激活信息,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
在上述实施例中,优选地,发送单元906,用于在软件不具有RSA数字证书的情况下,向服务器发送RSA数字证书的申请请求;接收单元908,还接收服务器发送的RSA数字证书。
在该实施例中,通过服务器发送RSA数字证书的申请请求并接收服务器发送的RSA数字证书,保证了用户的身份认证与信息安全。
在上述实施例中,优选地,还包括:验证激活信息是否有效,具体包括:发送单元906,还用于将激活信息发送至服务器,并发送验证请求至服务器;接收单元908,用于接收并显示验证结果;加密单元904,用于通过公钥验证验证结果。
在该实施例中,通过将激活信息发送至服务器并发送验证请求,接收服务器发送的验证结果,并通过公钥验证验证结果,实现了软件激活和持续验证的流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
在上述任一实施例中,优选地,RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
在该实施例中,通过RSA数字证书保证了用户的身份认证与信息安全;通过激活认证信息进一步保证了用户的身份认证与信息安全。
本领域技术人员应该理解,RSA数字证书包括但不限于以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括但不限于以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
如图10a所示,根据本发明的一个实施例的服务器软件激活装置的示意框图:
接收单元1002,接收客户端发送的软件的激活认证信息;
加密单元1004,通过私钥解密激活认证信息;
第一判断单元1006,判断激活认证信息是否符合激活条件;
第一生成单元1008,在激活认证信息符合激活条件的情况下,生成一个足够长的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;
发送单元1010,将激活信息及发布时间通过私钥签名后发送至客户端,以供客户端激活软件。
在该实施例中,通过私钥解密客户端发送的激活认证信息,判断激活认证信息是否符合激活条件,能够保证激活信息来源于客户端,通过将激活信息及发布时间通过私钥签名后发送至客户端,能够保证激活信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性,并且,增加了软件破解难度,有效地保护软件数据,防止监听和攻击,从而避免了用户数据泄露,提升了软件使用安全性。
如图10b所示,根据本发明的另一个实施例的服务器软件激活装置的示意框图:
接收单元1002,用于接收客户端发送的软件的激活认证信息;还用于在软件不具有RSA数字证书的情况下,接收客户端发送的RSA数字证书的申请请求;
加密单元1004,用于通过私钥解密激活认证信息;
第一判断单元1006,用于判断激活认证信息是否符合激活条件;
第一生成单元1008,用于在激活认证信息符合激活条件的情况下,生成一个足够长的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;
发送单元1010,用于将激活信息及发布时间通过私钥签名后发送至客户端,以供客户端激活软件;还用于将RSA数字证书发送至客户端;
第二生成单元1012,根据申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书。
在该实施例中,通过根据客户端的申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书,保证了用户的身份认证与信息安全。
如图10c所示,根据本发明的再一个实施例的服务器软件激活装置的示意框图:
接收单元1002,用于接收客户端发送的软件的激活认证信息;还用于在软件不具有RSA数字证书的情况下,接收客户端发送的RSA数字证书的申请请求;还用于接收客户端发送的验证请求;
加密单元1004,用于通过私钥解密激活认证信息;
第一判断单元1006,用于判断激活认证信息是否符合激活条件;
第一生成单元1008,用于在激活认证信息符合激活条件的情况下,生成一个足够长的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;
发送单元1010,用于将激活信息及发布时间通过私钥签名后发送至客户端,以供客户端激活软件;还用于将RSA数字证书发送至客户端;还用于将激活验证信息及发布时间通过私钥签名后发送至客户端
第二生成单元1012,根据申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书;
第二判断单元1014,通过公钥验证相关信息,并判断是否成功解密;
第三判断单元1016,在成功解密后判断发布时间是否在预定时间范围内;
第四判断单元1018,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录;
第三生成单元1020,在判断结果为是的情况下,再次生成一个足够长的随数做为激活验证信息,并根据当前时间生成发布时间。
在该实施例中,通过判断公钥是否成功解密激活信息,在成功解密后判断发布时间是否在预定时间范围内,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录,能够准确确认用户的身份信息,避免未经授权的客户端冒充已经授权的客户端申请验证,保证软件的安全性;将激活验证信息及发布时间通过私钥签名后发送至客户端,能够保证激活验证信息是服务器发送的原始信息,而没有受到篡改,实现了基于RSA非对称加密算法的软件激活和持续验证流程,在联网交互环节保障信息的合法性和一致性。
在上述实施例中,优选地,当不能成功解密时,向客户端发送错误提示,并结束验证;当发布时间不在预定时间范围内时,向客户端发送错误提示,并结束验证;当激活信息在服务器没有记录时,向客户端发送错误提示,并结束验证。
在该实施例中,当不能成功解密时,说明激活信息不是来源于已授权的客户端,当发布时间不在预定时间范围内时,说明软件授权已不在有效期范围内,当激活信息在服务器没有记录时,说明激活信息不是服务器所发送的,当这样的情况发生时,服务器向客户端发送错误提示,并终止验证,避免软件被恶意破解,保证了软件的安全性、合法性、一致性。
如图10d所示,根据本发明的再一个实施例的服务器软件激活装置的示意框图:
接收单元1002,用于接收客户端发送的软件的激活认证信息;还用于在软件不具有RSA数字证书的情况下,接收客户端发送的RSA数字证书的申请请求;还用于接收客户端发送的验证请求;
加密单元1004,用于通过私钥解密激活认证信息;
第一判断单元1006,用于判断激活认证信息是否符合激活条件;
第一生成单元1008,用于在激活认证信息符合激活条件的情况下,生成一个足够长的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;
发送单元1010,用于将激活信息及发布时间通过私钥签名后发送至客户端,以供客户端激活软件;还用于将RSA数字证书发送至客户端;还用于将激活验证信息及发布时间通过私钥签名后发送至客户端
第二生成单元1014,根据申请请求生成RSA密钥对,并对应生成包含公钥的RSA数字证书;
第二判断单元1018,通过公钥验证相关信息,并判断是否成功解密;
第三判断单元1020,在成功解密后判断发布时间是否在预定时间范围内;
第四判断单元1022,当发布时间在预定时间范围内时,进一步判断激活信息是否在服务器有所记录;
第三生成单元1024,在判断结果为是的情况下,再次生成一个足够长的随机数做为激活验证信息,并根据当前时间生成发布时间;
容错单元1026,用于记录预定次数的激活验证信息,根据激活验证信息进行容错验证。
在该实施例中,通过记录预定次数的激活验证信息,为激活验证信息提供了容错验证,以利于软件的激活与持续验证的顺利进行,节省时间,方便用户快速通过验证。
在上述任一实施例中,优选地,RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
在该实施例中,通过RSA数字证书保证了用户的身份认证与信息安全;通过激活认证信息进一步保证了用户的身份认证与信息安全。
本领域技术人员应该理解,RSA数字证书包括但不限于以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;激活认证信息包括但不限于以下至少一项或其组合:软件的卡号及对应的密码、客户端的IP地址。
如图11所示,根据本发明的一个实施例的软件激活系统的示意框图:包括客户端软件激活装置1102和服务器端软件激活装置1104。该软件激活系统1100具有客户端软件激活装置1102和服务器端软件激活装置1104的任一技术效果,再次不在赘述。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (21)

1.一种软件激活方法,用于客户端,其特征在于,所述软件激活方法包括:
检测所述软件是否具有RSA数字证书;
在所述软件具有RSA数字证书的情况下,获取所述软件的激活认证信息,并将所述激活认证信息通过所述RSA数字证书中的公钥加密后发送至服务器;
接收并保存所述服务器发送的签名激活信息;
通过所述公钥验证所述激活信息;
根据所述激活信息激活所述软件。
2.根据权利要求1所述的软件激活方法,其特征在于,
在所述软件不具有RSA数字证书的情况下,向所述服务器发送所述RSA数字证书的申请请求;
接收所述服务器发送的所述RSA数字证书。
3.根据权利要求1所述的软件激活方法,其特征在于,还包括,验证所述激活信息是否有效,具体包括:
将所述激活信息发送至所述服务器,并发送验证请求至所述服务器;
接收并显示验证结果,通过所述公钥验证所述验证结果。
4.根据权利要求1至3中任一项所述的软件激活方法,其特征在于,
所述RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;
所述激活认证信息包括以下至少一项或其组合:所述软件的卡号及对应的密码、所述客户端的IP地址。
5.一种软件激活方法,用于服务器,与如权利要求1至4所述的软件激活方法,用于客户端,配合使用,其特征在于,所述软件激活方法包括:
接收所述客户端发送的所述软件的激活认证信息;
通过私钥解密所述激活认证信息;
判断所述激活认证信息是否符合激活条件;
在所述激活认证信息符合激活条件的情况下,生成一个预设长度的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;
将所述激活信息及发布时间通过所述私钥签名后发送至所述客户端,以供所述客户端激活所述软件。
6.根据权利要求5所述的软件激活方法,其特征在于,
在所述软件不具有所述RSA数字证书的情况下,接收所述客户端发送的所述RSA数字证书的申请请求;
根据所述申请请求生成RSA密钥对,并对应生成包含公钥的所述RSA数字证书;
将所述RSA数字证书发送至所述客户端。
7.根据权利要求5所述的软件激活方法,其特征在于,还包括:验证所述激活信息是否有效,具体包括:
接收所述客户端发送的验证请求;
通过所述公钥验证所述激活信息,并判断是否成功解密;
在所述成功解密后判断所述发布时间是否在预定时间范围内;
当所述发布时间在所述预定时间范围内时,进一步判断所述激活信息是否在所述服务器有所记录;
并在判断结果为是的情况下,再次生成一个预设长度的随机数做为激活验证信息,并根据当前时间生成发布时间;
将所述激活验证信息及所述发布时间通过所述私钥签名后发送至所述客户端。
8.根据权利要求7所述的软件激活方法,其特征在于,
当不能成功解密时,向所述客户端发送错误提示,并结束所述验证;
当所述发布时间不在预定时间范围内时,向所述客户端发送错误提示,并结束所述验证;
当所述激活信息在所述服务器没有记录时,向所述客户端发送错误提示,并结束所述验证。
9.根据权利要求7所述的软件激活方法,其特征在于,所述将所述激活验证信息及所述发布时间通过所述私钥签名后发送至所述客户端之前,还包括:
记录预定次数的所述激活验证信息,根据所述激活验证信息进行容错验证。
10.根据权利要求5至9中任一项所述的软件激活方法,其特征在于,
所述RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;
所述激活认证信息包括以下至少一项或其组合:所述软件的卡号及对应的密码、所述客户端的IP地址。
11.一种软件激活装置,用于客户端,其特征在于,所述软件激活装置包括:
检测单元,用于检测所述软件是否具有RSA数字证书;
加密单元,用于在所述软件具有RSA数字证书的情况下,获取所述软件的激活认证信息,并将所述激活认证信息通过所述RSA数字证书中的公钥加密;
发送单元,用于将所述激活认证信息通过所述RSA数字证书中的公钥加密后发送至服务器;
接收单元,用于接收并保存所述服务器发送的签名激活信息;
所述加密单元,还用于通过所述公钥验证所述激活信息;
激活单元,用于根据所述激活信息激活所述软件。
12.根据权利要求11所述的软件激活装置,其特征在于,所述发送单元,用于在所述软件不具有RSA数字证书的情况下,向所述服务器发送所述RSA数字证书的申请请求;
所述接收单元,还接收所述服务器发送的所述RSA数字证书。
13.根据权利要求11所述的软件激活装置,其特征在于,还包括:验证所述激活信息是否有效,具体包括:
所述发送单元,还用于将所述激活信息发送至所述服务器,并发送验证请求至所述服务器;
所述接收单元,用于接收并显示验证结果;
所述加密单元,用于通过所述公钥验证所述验证结果。
14.根据权利要求11至13中任一项所述的软件激活装置,其特征在于,
所述RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;
所述激活认证信息包括以下至少一项或其组合:所述软件的卡号及对应的密码、所述客户端的IP地址。
15.一种软件激活装置,用于服务器,与如权利要求11至14所述的软件激活装置,用于客户端,配合使用,其特征在于,所述软件激活装置包括:
接收单元,接收所述客户端发送的所述软件的激活认证信息;
加密单元,通过私钥解密所述激活认证信息;
第一判断单元,判断所述激活认证信息是否符合激活条件;
第一生成单元,在所述激活认证信息符合激活条件的情况下,生成一个足够长的随机数做为激活信息并覆盖原有激活信息,并根据当前时间生成发布时间;发送单元,将所述激活信息及发布时间通过所述私钥签名后发送至客户端,以供所述客户端激活所述软件。
16.根据权利要求15所述的软件激活装置,其特征在于,
接收单元,在所述软件不具有所述RSA数字证书的情况下,接收所述客户端发送的RSA数字证书的申请请求;
第二生成单元,根据所述申请请求生成RSA密钥对,并对应生成包含公钥的所述RSA数字证书;
发送单元,将所述RSA数字证书发送至所述客户端。
17.根据权利要求15所述的软件激活装置,其特征在于,还包括:验证所述激活信息是否有效,具体包括:
所述接收单元,接收所述客户端发送的验证请求;
第二判断单元,通过所述公钥验证所述相关信息,并判断是否成功解密;
第三判断单元,在所述成功解密后判断所述发布时间是否在预定时间范围内;
第四判断单元,当所述发布时间在所述预定时间范围内时,进一步判断所述激活信息是否在所述服务器有所记录;并
第三生成单元,在判断结果为是的情况下,再次生成一个足够长的随机数做为激活验证信息,并根据当前时间生成发布时间;
所述发送单元,将所述激活验证信息及所述发布时间通过所述私钥签名后发送至所述客户端。
18.根据权利要求17所述的软件激活方法,其特征在于,
当不能成功解密时,向所述客户端发送错误提示,并结束所述验证;
当所述发布时间不在预定时间范围内时,向所述客户端发送错误提示,并结束所述验证;
当所述激活信息在所述服务器没有记录时,向所述客户端发送错误提示,并结束所述验证。
19.根据权利要求17所述的软件激活装置,其特征在于,所述发送单元将所述激活验证信息及所述发布时间通过所述私钥签名后发送至所述客户端之前,还包括:
容错单元,还用于记录预定次数的所述激活验证信息,根据所述激活验证信息进行容错验证。
20.根据权利要求15至18中任一项所述的软件激活装置,其特征在于,
所述RSA数字证书包括以下至少一项或其组合:ID、公钥、发布机构、所有者、有效期;
所述激活认证信息包括以下至少一项或其组合:所述软件的卡号及对应的密码、所述客户端的IP地址。
21.一种软件激活系统,其特征在于,包括如权利要求10至13中任一项所述的软件激活装置,用于客户端,以及如权利要求14至18中任一项所述的软件激活装置,用于服务器。
CN201611024140.8A 2016-11-18 2016-11-18 软件激活方法及装置和软件激活系统 Pending CN106778084A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611024140.8A CN106778084A (zh) 2016-11-18 2016-11-18 软件激活方法及装置和软件激活系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611024140.8A CN106778084A (zh) 2016-11-18 2016-11-18 软件激活方法及装置和软件激活系统

Publications (1)

Publication Number Publication Date
CN106778084A true CN106778084A (zh) 2017-05-31

Family

ID=58968356

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611024140.8A Pending CN106778084A (zh) 2016-11-18 2016-11-18 软件激活方法及装置和软件激活系统

Country Status (1)

Country Link
CN (1) CN106778084A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107451430A (zh) * 2017-07-03 2017-12-08 广州视源电子科技股份有限公司 一种激活软件的方法和系统、嵌入式设备和联网设备
CN109302370A (zh) * 2017-07-24 2019-02-01 上海牛卡网络科技有限公司 一种客户端验证方法、终端和服务器
CN110996319A (zh) * 2019-11-01 2020-04-10 北京握奇智能科技有限公司 一种对软件服务做激活授权管理的系统及方法
CN111092734A (zh) * 2019-12-19 2020-05-01 南京莱斯电子设备有限公司 一种基于自组网络通信的产品激活认证方法
CN112632481A (zh) * 2020-12-11 2021-04-09 深圳市英威腾电气股份有限公司 用于对软件进行授权的方法、终端设备及存储介质
CN112861168A (zh) * 2019-11-27 2021-05-28 山东云缦智能科技有限公司 一种机顶盒的软件保护方法
CN115134154A (zh) * 2022-06-30 2022-09-30 长城汽车股份有限公司 认证方法、装置、远程控制车辆的方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1971578A (zh) * 2005-10-31 2007-05-30 捷讯研究有限公司 安全许可密钥方法和系统
CN102780699A (zh) * 2012-07-09 2012-11-14 广州杰赛科技股份有限公司 认证服务器软件版权保护方法和系统
CN104361267A (zh) * 2014-11-19 2015-02-18 厦门海迈科技股份有限公司 基于非对称加密算法的软件授权与保护装置及方法
CN105160210A (zh) * 2015-09-08 2015-12-16 浪潮通用软件有限公司 一种软件授权方法和系统、软件终端及软件管理方

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1971578A (zh) * 2005-10-31 2007-05-30 捷讯研究有限公司 安全许可密钥方法和系统
CN102780699A (zh) * 2012-07-09 2012-11-14 广州杰赛科技股份有限公司 认证服务器软件版权保护方法和系统
CN104361267A (zh) * 2014-11-19 2015-02-18 厦门海迈科技股份有限公司 基于非对称加密算法的软件授权与保护装置及方法
CN105160210A (zh) * 2015-09-08 2015-12-16 浪潮通用软件有限公司 一种软件授权方法和系统、软件终端及软件管理方

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘志凌: "《电子商务核心理论与技术实现》", 31 July 2001 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107451430A (zh) * 2017-07-03 2017-12-08 广州视源电子科技股份有限公司 一种激活软件的方法和系统、嵌入式设备和联网设备
CN109302370A (zh) * 2017-07-24 2019-02-01 上海牛卡网络科技有限公司 一种客户端验证方法、终端和服务器
CN109302370B (zh) * 2017-07-24 2021-11-02 上海牛卡网络科技有限公司 一种客户端验证方法、终端和服务器
CN110996319A (zh) * 2019-11-01 2020-04-10 北京握奇智能科技有限公司 一种对软件服务做激活授权管理的系统及方法
CN110996319B (zh) * 2019-11-01 2024-05-28 北京握奇智能科技有限公司 一种对软件服务做激活授权管理的系统及方法
CN112861168A (zh) * 2019-11-27 2021-05-28 山东云缦智能科技有限公司 一种机顶盒的软件保护方法
CN111092734A (zh) * 2019-12-19 2020-05-01 南京莱斯电子设备有限公司 一种基于自组网络通信的产品激活认证方法
CN111092734B (zh) * 2019-12-19 2021-12-28 南京莱斯电子设备有限公司 一种基于自组网络通信的产品激活认证方法
CN112632481A (zh) * 2020-12-11 2021-04-09 深圳市英威腾电气股份有限公司 用于对软件进行授权的方法、终端设备及存储介质
CN115134154A (zh) * 2022-06-30 2022-09-30 长城汽车股份有限公司 认证方法、装置、远程控制车辆的方法及系统

Similar Documents

Publication Publication Date Title
CN106778084A (zh) 软件激活方法及装置和软件激活系统
CN109243045B (zh) 一种投票方法、装置、计算机设备及计算机可读存储介质
CN108684041B (zh) 登录认证的系统和方法
CN111181928B (zh) 车辆诊断方法、服务器及计算机可读存储介质
CN112861089B (zh) 授权认证的方法、资源服务器、资源用户端、设备和介质
US20080189772A1 (en) Method for generating digital fingerprint using pseudo random number code
CN104735065B (zh) 一种数据处理方法、电子设备及服务器
CN112000951B (zh) 一种访问方法、装置、系统、电子设备及存储介质
JP2010525448A5 (zh)
CN109150535A (zh) 一种身份认证方法、设备、计算机可读存储介质及装置
US9280650B2 (en) Authenticate a fingerprint image
CN105871899B (zh) 验证码的验证方法和系统
TWM623435U (zh) 使用多安全層級驗證客戶身分與交易服務之系統
CN105207776A (zh) 一种指纹认证方法及系统
CN109347875A (zh) 物联网设备、物联网平台及接入物联网平台的方法和系统
CN103560883A (zh) 一种基于用户权限的安卓应用程序间的安全性鉴定方法
CN109347887A (zh) 一种身份认证的方法及装置
CN106027251A (zh) 一种身份证读卡终端与云认证平台数据传输方法和系统
CN106027473A (zh) 身份证读卡终端与云认证平台数据传输方法和系统
CN100377525C (zh) 流媒体业务服务实现方法、业务提供系统及运营支撑系统
CN114338201B (zh) 数据处理方法及其装置、电子设备及存储介质
CN104463584A (zh) 实现移动端App安全支付的方法
CN105024813A (zh) 一种服务器、用户设备以及用户设备与服务器的交互方法
CN117424709B (zh) 终端设备的登录方法、设备以及可读存储介质
CN112383577A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20170531

RJ01 Rejection of invention patent application after publication