CN108809651A - 密钥对管理方法和终端 - Google Patents

密钥对管理方法和终端 Download PDF

Info

Publication number
CN108809651A
CN108809651A CN201810422682.3A CN201810422682A CN108809651A CN 108809651 A CN108809651 A CN 108809651A CN 201810422682 A CN201810422682 A CN 201810422682A CN 108809651 A CN108809651 A CN 108809651A
Authority
CN
China
Prior art keywords
private key
terminal
server
hard disk
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.)
Granted
Application number
CN201810422682.3A
Other languages
English (en)
Other versions
CN108809651B (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.)
Shenzhen Dapu Microelectronics Co Ltd
Original Assignee
Shenzhen Dapu Microelectronics 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 Shenzhen Dapu Microelectronics Co Ltd filed Critical Shenzhen Dapu Microelectronics Co Ltd
Priority to CN201810422682.3A priority Critical patent/CN108809651B/zh
Publication of CN108809651A publication Critical patent/CN108809651A/zh
Application granted granted Critical
Publication of CN108809651B publication Critical patent/CN108809651B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/3247Cryptographic 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 digital signatures
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/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/3236Cryptographic 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 using cryptographic hash functions

Landscapes

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

Abstract

本发明实施例提供了一种密钥对管理方法和终端,用于简化密钥对的管理过程。本发明实施例的方法包括:终端根据产品标识生成第一私钥;所述终端使用数字签名算法,根据所述第一私钥生成公钥;所述终端向服务器发送所述产品标识,以使所述服务器根据所述产品标识生成第二私钥,所述第一私钥和所述第二私钥相同;所述终端获取所述服务器发送的所述第二私钥;所述终端使用所述第二私钥对预设命令进行签名,得到加密信息;当使用所述公钥对所述加密信息验证通过时,所述终端执行所述预设命令。在终端上生成了公钥,在服务器上生成了私钥,该私钥和公钥为一密钥对,通过该密钥对可实现服务器对终端的管理,这样,管理过程得到了简化。

Description

密钥对管理方法和终端
技术领域
本发明涉及信息安全领域,尤其涉及一种密钥对管理方法和终端。
背景技术
为了实现对产品的授权和管理,常会使用密钥对。
在现有的使用密钥对进行管理的方式中,参考图1,常见的方式如下:
开发方生成大量的密钥对,并使用列表对这些密钥对进行管理。然后,开发方将该列表发送到生产方。从而,生产方将该列表的密钥对中的公钥加载到设备上,例如通过加贴标签、写配置信息等方式实现。跟着,生产方将各个设备和设备加载的公钥对应的私钥发送给销售方。销售方法分别管理各个设备和其对应的私钥,并进行销售。在销售完成后,销售方不会长期管理此类信息。通过销售等方式,销售方将设备和其对应的私钥发送到用户处。用户可以使用私钥对执行的命令进行签名,从而正常地使用设备。当用户的私钥丢失或需要功能升级时,用户向销售方重新申请私钥或需要的功能,为此,用户将设备或产品的信息发送给销售方,然后销售方将这些信息发送给生产方法。生产方法通过设备或产品的信息查找到对应的产品私钥.升级信息后,将产品的私钥/升级信息返回给销售方,由销售方法将产品的私钥/升级信息发送给用户,然后,用户使用私钥执行的命令进行签名,从而正常使用设备。
这样的方式,导致了如下的问题:
1.由于每个产品个体的标识都是唯一,因此生产方需要专门增加一道工序,为每一个产品注入其唯一标识,如贴上标签、注入唯一ID等等,效率很低。
2.在产品生命周期内,生产方需要一直维护每个产品个体及其对应的唯一标识,以跟踪每个产品的资料及售后状况,维护复杂度和成本很高。
3.由于每个产品及其唯一标识是明文的一一对应,导致了用户的隐私对生产方的暴露,造成了很大的安全隐患。由于产能和交货期的问题,同一类产品可能会由多个生产厂家进行生产;这导致了产品个体及其唯一标识的管理更加复杂,更进一步放大了隐私暴露的可能性。
4.由于产品开发方,生产方和销售方通常不是同一家企业,在生产量/销售量控制、授权量统计、产品更新维护等方面,需要多方共同参与,管理维护的复杂度和成本过高,响应周期过长。
发明内容
针对上述技术问题,本发明实施例提供了一种密钥对管理方法和终端,用于简化密钥对的管理过程。
本发明实施例的第一方面提供一种密钥对管理方法,包括:
终端根据产品标识生成第一私钥,所述产品标识为所述终端上的标识信息;
所述终端使用数字签名算法,根据所述第一私钥生成公钥;
所述终端向服务器发送所述产品标识,以使所述服务器根据所述产品标识生成第二私钥,所述第一私钥和所述第二私钥相同;
所述终端获取所述服务器发送的所述第二私钥;
所述终端使用所述第二私钥对预设命令进行签名,得到加密信息;
当使用所述公钥对所述加密信息验证通过时,所述终端执行所述预设命令。
可选地,所述产品标识为硬盘标识号。
可选地,所述终端包括主机端和硬盘端;
所述终端根据产品标识生成第一私钥,包括:
所述硬盘端根据所述硬盘标识号生成第一私钥;
所述终端使用数字签名算法,根据所述第一私钥生成公钥,包括:
所述硬盘端使用数字签名算法,根据所述第一私钥生成公钥;
所述终端向服务器发送所述产品标识,包括:
所述主机端向服务器发送所述硬盘标识号;
所述终端获取所述服务器发送的所述第二私钥,包括:
所述主机端获取所述服务器发送的所述第二私钥;
所述终端使用所述第二私钥对预设命令进行签名,得到加密信息,包括:
所述主机端使用所述第二私钥对预设命令进行签名,得到加密信息;
所述当使用所述公钥对所述加密信息验证通过时,所述终端执行所述预设命令,包括:
所述硬盘端获取所述主机端发送的所述加密信息;
当使用所述公钥对所述加密信息验证通过时,所述硬盘端执行所述预设命令。
可选地,所述硬盘端根据所述硬盘标识号生成第一私钥之前,所述方法还包括:
所述主机端使用通用私钥对硬盘标识号进行签名,得到加密标识;
所述主机端向所述硬盘端发送所述加密标识;
所述硬盘端根据所述硬盘标识号生成第一私钥,包括:
当使用通用公钥对所述加密标识验证通过时,所述硬盘端根据所述硬盘标识号生成第一私钥。
可选地,所述终端向服务器发送所述产品标识之前,所述方法还包括:
所述终端使用通用私钥对所述产品标识进行签名,得到终端加密信息;
所述终端向服务器发送所述产品标识,包括:
所述终端向服务器发送所述终端加密信息,以使所述服务器使用通用公钥对所述终端加密信息验证通过时,根据所述产品标识生成第二私钥;
所述终端获取所述服务器发送的所述第二私钥,包括:
所述终端获取所述服务器发送的服务器加密信息,其中所述服务器加密信息由所述服务器使用通用私钥对所述第二私钥进行签名得到;
所述终端当使用通用公钥对所述服务器加密信息验证通过时,得到第二私钥。
可选地,所述终端根据产品标识生成第一私钥,包括:
终端使用单向密码散列函数,根据产品标识生成第一私钥;
其中,所述单向密码散列函数还用于供所述服务器使用,以根据所述产品标识生成第二私钥。
可选地,所述终端使用数字签名算法,根据所述第一私钥生成公钥之后,所述方法还包括:
所述终端关闭根据所述第一私钥生成所述公钥的功能。
可选地,所述终端获取所述服务器发送的所述第二私钥之后,所述方法还包括:
所述终端向所述服务器发送请求指令,所述请求指令包括所述产品标识,以使所述服务器根据所述产品标识生成第三私钥后,从所述第二私钥和用户信息的对应关系中确定与所述第三私钥对应的用户信息,以根据所述用户信息生成答复指令,所述第三私钥和所述第二私钥相同,所述服务器预先建立有所述第二私钥和用户信息的对应关系;
所述终端获取所述服务器发送的所述答复指令;
所述终端根据所述答复指令执行操作。
本发明实施例第二方面提供了一种终端,包括:
生成单元,用于根据产品标识生成第一私钥,所述产品标识为所述终端上的标识信息;
所述生成单元,还用于使用数字签名算法,根据所述第一私钥生成公钥;
发送单元,用于向服务器发送所述产品标识,以使所述服务器根据所述产品标识生成第二私钥,所述第一私钥和所述第二私钥相同;
获取单元,用于获取所述服务器发送的所述第二私钥;
签名单元,用于使用所述第二私钥对预设命令进行签名,得到加密信息;
执行单元,用于当使用所述公钥对所述加密信息验证通过时,执行所述预设命令。
可选地,所述终端包括主机端和硬盘端;
所述硬盘端包括所述生成单元、所述执行单元和硬盘获取单元,其中,所述硬盘获取单元,用于获取所述主机端发送的所述加密信息;
所述主机端包括所述发送单元、所述获取单元、和所述签名单元。
本发明实施例提供的技术方案中,终端根据产品标识生成第一私钥,该产品标识为终端上的标识信息。然后,终端使用数字签名算法,根据第一私钥生成公钥,终端向服务器发送产品标识,以使服务器根据产品标识生成第二私钥,第一私钥和第二私钥相同。终端获取服务器发送的第二私钥后,终端使用第二私钥对预设命令进行签名,得到加密信息,从而,当使用公钥对加密信息验证通过时,终端执行预设命令。因此相对于现有技术,本发明实施例通过使用同一产品标识,在终端上生成了公钥,在服务器上生成了私钥,该私钥和公钥为一密钥对,通过该密钥对可实现服务器对终端的管理,这样的密钥对管理方式,管理过程得到了简化。
附图说明
图1为现有的使用密钥对进行管理的方法流程图;
图2为本发明实施例涉及的数字签名和数字签名验证的过程示意图;
图3为本发明实施例涉及的密钥对的产生过程示意图;
图4为本发明实施例提供的一种密钥对管理方法涉及的使用场景图;
图5为本发明实施例提供的一种密钥对管理方法的方法流程图;
图6为本发明实施例提供的一种密钥对管理方法的流程图;
图7为图6所示实施例的方法涉及的一使用场景图;
图8为图6所示实施例的方法涉及的另一使用场景图;
图9为图6所示实施例的方法涉及的另一使用场景图;
图10为本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了对本发明实施例的方法和设备有准确的理解,下面先对本发明实施例的方法和设备涉及到的一些术语进行介绍。
1、数字签名
数字签名指只有信息发送者的私钥才能产生的且别人无法伪造的一段数字串,这段数字串同时也是对信息发送者发送的信息真实性的一个有效证明。
数字签名是非对称密钥加密技术与数字摘要技术的应用。其主要作用是保证信息传输的完整性、发送者的身份认证、和防止交易中的抵赖现象发生。
数字签名技术为,根据原文生成摘要信息,然后,将摘要信息用发送者的私钥加密,得到加密信息后,将加密信息与原文一起传送给接收者。接收者只有用发送者的公钥才能解密被加密的摘要信息,然后用HASH函数对收到的原文产生一个摘要信息,与解密的摘要信息对比。如果摘要信息对比相同,则说明收到的信息是完整的,在传输过程中没有被修改,否则说明信息被修改过。由此可见,数字签名能够验证信息的完整性。
如图2所示,数字签名是个加密的过程,数字签名验证是个解密的过程。
在一些具体场景中,数字签名算法至少应该满足三个条件:
1)接收者能够核实发送者对报文的签名;
2)发送者事后不能抵赖对其报文的签名;
3)接收者无法伪造对报文的签名。
2、非对称加密技术
非对称加密技术需要两个密钥:公开密钥(publickey,简称公钥)和私有密钥(privatekey,简称私钥)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以非对称加密技术的算法叫作非对称加密算法。
其中,密钥对的产生过程,可参阅图3。
图4为本发明实施例提供的一种密钥对管理方法涉及的使用场景图。在该使用场景中,涉及到终端和服务器,该终端和服务器可以进行通讯。
其中,该终端包括但不限于手机、平板电脑和计算机等设备。该终端可以包括主机端和硬件端,主机端可以和用户进行交互,该硬件端可以存储程序产品。
在终端上,可以运行程序产品或程序服务,这些程序产品或程序服务可由服务器进行授权控制,该服务器也可以对程序产品或程序服务的操作命令进行控制。具体的控制方式例如可以通过密钥对实现。
图5为本发明实施例提供的一种密钥对管理方法的方法流程图。该方法可应用于图4所示实施例的终端上。
参阅图5,本发明实施例的密钥对管理方法,包括:
步骤501:终端根据产品标识生成第一私钥。
其中,产品标识为终端上的标识信息,用于对终端进行标识。该产品标识包括但不限于硬盘标识号、MAC地址、和CPU序列号等等。
在终端上,可预先存储有该产品标识。终端获取该产品标识后,根据产品标识生成第一私钥。
具体的生成第一私钥的方式可以为,以产品标识为输入算法的数据,该算法根据该产品标识生成随机数,该随机数可作为第一私钥。
步骤502:终端使用数字签名算法,根据第一私钥生成公钥。
终端生成了第一私钥后,使用数字签名算法,根据该第一私钥生成公钥,该第一私钥和公钥为一密钥对。
关于数字签名算法的详情可参阅上文的术语介绍部分。
在本发明的一些实施例中,终端在生成公钥后,可保存该公钥,以及删除该第一私钥。
可选地,步骤502之后,本发明实施例的方法还包括:终端关闭根据第一私钥生成公钥的功能。这样,在终端上只能生成一次公钥,从而可提高根据该公钥对终端进行管理的安全性。
步骤503:终端向服务器发送产品标识。
终端获取产品标识后,终端还向服务器发送该产品标识,以使服务器根据产品标识生成第二私钥。
步骤504:服务器根据产品标识生成第二私钥。
服务器获取了终端发送的产品标识后,服务器可根据产品标识生成第二私钥。因终端生成的第一私钥使用的是产品标识,和服务器生成的第二私钥使用的产品标识相同,从而,第一私钥和第二私钥相同。因第一私钥和公钥为一密钥对,从而,第二私钥和公钥为一密钥对。
这样,在终端上的公钥和在服务器上的第二私钥为密钥对,从而可以使用该密钥对对终端进行管理。
具体的管理方式例如如下:
步骤505:终端获取服务器发送的第二私钥。
通过上述的方式,服务器生成了与上述公钥对应的第二私钥。服务器在需要对终端进行管理时,服务器向终端发送该第二私钥。
具体的触发事件,例如,在服务器需要向终端执行产品授权操作时,服务器向终端发送该第二私钥。
步骤506:终端使用第二私钥对预设命令进行签名,得到加密信息。
终端获取到该第二私钥后,可使用该第二私钥对预设命令进行签名,以得到加密信息,从而可根据该加密信息是否能解密来实现服务器对终端的管理,具体为是否执行该预设命令的管理。
该预设命令包括但不限于产品授权命令、身份验证命令等等。在终端上,使用第二私钥对预设命令进行签名,可给以终端或者终端的使用用户一定的选择权,从而提高了本发明实施例的方法的灵活性。
步骤507:当使用公钥对加密信息验证通过时,终端执行预设命令。
因在步骤502生成的公钥和第二私钥为密钥对,从而可以使用该公钥对加密信息进行解密。当使用公钥对加密信息验证通过时,表示该加密信息是被服务器上的第二私钥加密得到,从而该加密信息记录的预设命令得到了服务器的授权,从而终端可执行预设命令。
对本发明实施例的密钥对的管理还可以为如下的方式:
可选地,步骤505之后,本发明实施例的方法还包括:终端向服务器发送请求指令,其中,该请求指令包括产品标识,以使服务器根据产品标识生成第三私钥后,从第二私钥和用户信息的对应关系中确定与第三私钥对应的用户信息,以根据用户信息生成答复指令,其中,第三私钥和第二私钥相同。该服务器预先建立有第二私钥和用户信息的对应关系,具体可以为在步骤504之后服务器建立第二私钥和用户信息的对应关系。
然后,终端获取服务器发送的答复指令,从而终端根据答复指令执行操作。
上述的请求指令例如可以为当终端的使用用户需要重新获得第一/第二私钥或者要获得升级服务时,终端生成的请求指令,从而该请求指令表示获取第一/第二私钥或者要获得升级服务。该升级服务例如为固件更新或者硬盘寿命评估等的服务。
例如,当终端的用户需要重新获得私钥或者获得升级服务时,使用公用私钥对其产品标识(例如为硬盘标识号)进行签名,得到请求指令。然后终端向开发方的服务器发送请求指令。开发方的服务器根据该请求指令中的产品标识生成第三私钥,并以该第三私钥为索引,管理用户信息(该用户信息可不包含用户的私隐信息)。具体为,服务器从预先建立的第二私钥和用户信息的对应关系中确定与第三私钥对应的用户信息。然后,服务器根据该用户信息回复用户的申请。
由于使用了私钥为索引,开发方的工作人员无法看到用户的产品标识,由此实现了屏蔽用户的私隐信息,从而达到保护终端用户的隐私的目的。
综上所述,终端根据产品标识生成第一私钥,该产品标识为终端上的标识信息。然后,终端使用数字签名算法,根据第一私钥生成公钥,终端向服务器发送产品标识,以使服务器根据产品标识生成第二私钥,第一私钥和第二私钥相同。终端获取服务器发送的第二私钥后,终端使用第二私钥对预设命令进行签名,得到加密信息,从而,当使用公钥对加密信息验证通过时,终端执行预设命令。因此相对于现有技术,本发明实施例通过使用同一产品标识,在终端上生成了公钥,在服务器上生成了私钥,该私钥和公钥为一密钥对,通过该密钥对可实现服务器对终端的管理,这样的密钥对管理方式,管理过程得到了简化。
图6为本发明实施例提供的一种密钥对管理方法的流程图。其中,图6所示的方法可基于图5所示的方法实现。图6所示的方法可应用于上述图4所示的使用场景中。
图6所示的方法可应用于但不局限于产品授权、量产管理等领域。
参阅图6,本发明实施例的密钥对管理方法,包括:
步骤601:主机端使用通用私钥对硬盘标识号进行签名,得到加密标识。
在本发明实施例中,终端包括主机端和硬盘端,该主机端可和硬盘端进行通讯,该主机端还可和服务器进行通讯。用户可以直接控制主机端。
在主机端上存储有通用私钥。在本发明实施例中涉及到通用私钥和通用公钥这一对密钥对,所有由制造商生产的硬盘共用该密钥对。
在本发明实施例中,生成第一密钥需要硬盘标识号,该生成操作由硬盘端执行。其中,由主机端向硬盘端提供该硬盘标识号。用户通过主机端使用通用私钥对硬盘标识号进行签名后,得到加密标识。该加密标识包括硬盘标识号,但需要对加密标识使用通用公钥进行解密才能得到硬盘标识号。
步骤602:主机端向硬盘端发送加密标识。
得到加密标识后,主机端向硬盘端发送加密标识。
具体来说,主机端将加密标识作为数据包与硬盘公钥初始化命令一同下发到硬盘端。
步骤603:当使用通用公钥对加密标识验证通过时,硬盘端根据硬盘标识号生成第一私钥。
在本发明实施例中,以产品标识为硬盘标识号为例进行说明,该硬盘标识号也为终端上的标识信息,可用于对具体的硬盘进行唯一标识。通过使用硬盘标识号保证了用户使用权限与硬盘的一对一关系,从而,建立了对硬盘个体的跟踪,以识别硬盘个体的批次、型号等等参数,后续的产品维护、授权费收取等等都可以此为基础进行。
在硬盘端上,使用通用公钥对加密标识进行验证,当使用通用公钥对加密标识验证通过时,即可根据硬盘标识号生成第一私钥;当使用通用公钥对加密标识验证不通过时,则硬盘端执行异常处理。
硬盘端根据硬盘标识号生成第一私钥的具体实现方式有多种,例如使用预设规则对硬盘标识号进行处理以生成第一私钥。或者,终端使用单向密码散列函数,根据硬盘标识号生成第一私钥。从而实现终端根据产品标识生成第一私钥。
例如,硬盘端获取到主机端发送的硬盘公钥初始化命令与作为数据包的加密标识后,硬盘端上的固件使用通用公钥对该数据包进行验证,若通过,则硬盘端使用单向密码散列函数,根据硬盘标识号生成一个256bit的随机数作为第一私钥。若验证不通过,则硬盘端执行预设的异常处理。
在本发明实施例中,使用通用公钥和通用私钥增加了一层数字签名验证,确保了硬盘标识号的有效性和唯一性,确保该硬盘标识号是由开发方通过的驱动程序下发的,而不是其它版本的驱动下发的。由于该初始化过程会使用定制的命令(即命令号是开发方定制),若用户错误的使用了其它版本的驱动,会有命令号冲突的可能。
可以理解,步骤603为硬盘端根据硬盘标识号生成第一私钥的具体实现方式之一。
步骤604:硬盘端使用数字签名算法,根据第一私钥生成公钥。
硬盘端获取到第一私钥后,便可使用数字签名算法,根据第一私钥生成对应的公钥。该第一私钥和公钥为一密钥对,由上可见,第一私钥和公钥是根据硬盘标识号唯一生成的。根据数字签名算法,该公钥能有效地验证该第一私钥签名的有效性和唯一性。
在本发明实施例中,硬盘端将公钥保存在硬盘中,而将第一私钥删除。
硬盘端执行了上述操作后,硬盘端向主机端返回硬盘公钥初始化命令执行结果,以通知主机端公钥是否生成成功。
上述步骤601-605的具体执行场景可参阅图7。
步骤605:主机端使用通用私钥对硬盘标识号进行签名,得到终端加密信息。
为了在向服务器发送硬盘标识号时,对硬盘标识号进行保密处理,主机端使用通用私钥对硬盘标识号进行签名,得到终端加密信息。
可以理解,步骤605是终端使用通用私钥对产品标识进行签名,得到终端加密信息的具体实现方式之一。
步骤606:主机端向服务器发送终端加密信息。
主机端向服务器发送终端加密信息,以使服务器获取该终端加密信息,从而进行验证,以使服务器生成第二私钥。
因终端加密信息包括硬盘标识号,从而步骤606实现了主机端向服务器发送硬盘标识号。
步骤607:服务器使用通用公钥对终端加密信息验证通过时,服务器根据硬盘标识号生成第二私钥。
其中,第一私钥和第二私钥相同。
具体来说,服务器获取到主机端发送的终端加密信息后,服务器使用通用公钥通过数字签名验证,确认主机端发送的硬盘标识号是否能验证通过。若硬盘标识号能验证通过,则服务器使用与步骤603中相同的方式生成第二私钥,例如使用与上述的固件相同的单向密码散列函数生成一个256bit的随机数作为第二私钥。换言之,单向密码散列函数还用于供服务器使用,以根据产品标识生成第二私钥,而第一私钥和第二私钥相同。
可以理解,在本发明的具体示例中,利用哈希算法f(K)=x的特性,以产品标识(例如小于64bit的标识)作为输入,分别在用户的终端和开发方的服务器端执行f(K)以产生固定长度(如256bit)的随机数作为私钥(第一私钥和第二私钥)。由于该产品标识(在本发明实施例中为硬盘标识号)是唯一的,因此两次执行所产生的私钥的值是一致的,即第一私钥和第二私钥相同。由此,在终端基于第一私钥生成的公钥也会与在服务器生成的第二私钥对应。进一步地,本发明实施例选择单向密码散列函数(cryptographic hash)作为私钥生成的函数,更进一步减少实际应用中所生成私钥的冲突的可能。
本发明实施例根据单向密码散列函数(cryptographic hash)以及数字签名的特性,分别在已销售的终端以及开发商的服务器端产生对应的数字签名密钥对。或者,用户在终端使用开发商提供的私钥对生成器(例如,原本就在终端中的生成器),生成并加载密钥对到设备及用户侧的应用。由此,可简化终端上的产品在量产过程中密钥对的管理,减少了逐个加载公钥到设备的工艺环节。
可以理解,步骤605为可选的步骤,在本发明的其它实施例中,主机端可以直接向服务器发送硬盘标识号,以使服务器根据硬盘标识号生成第二私钥。
步骤608:服务器使用通用私钥对第二私钥进行签名,得到服务器加密信息。
得到第二私钥后,服务器使用通用私钥对第二私钥进行签名,得到服务器加密信息,从而使得传送第二私钥的保密性得到了保障,以及使得接收方能确定从服务器加密信息得到的第二私钥来源于该服务器。
步骤609:主机端获取服务器发送的服务器加密信息。
其中,服务器加密信息由服务器使用通用私钥对第二私钥进行签名得到。
服务器生成了服务器加密信息后,实现了对第二私钥的签名,然后,服务器向主机端发送服务器加密信息。
上述步骤605-609的具体执行场景可参阅图8。
步骤610:主机端当使用通用公钥对服务器加密信息验证通过时,得到第二私钥。
主机端获取到服务器加密信息后,主机端使用通用公钥对服务器加密信息进行数字签名验证,若验证通过,表示得到的第二私钥由服务器发送来。
步骤611:主机端使用第二私钥对预设命令进行签名,得到加密信息。
主机端得到了第二私钥后,表示获取了服务器的授权,从而可指示硬盘端执行预设命令。
为了给硬盘端进行验证,主机端使用第二私钥对将要下发的预设命令进行签名,得到加密信息。
步骤612:硬盘端获取主机端发送的加密信息。
得到加密信息后,主机端向硬盘端发送加密信息,以使硬盘端获取主机端发送的加密信息。
步骤613:当使用公钥对加密信息验证通过时,硬盘端执行预设命令。
因公钥和第二私钥为密钥对,从而可以使用该公钥对加密信息进行解密。当使用公钥对加密信息验证通过时,表示该加密信息是被服务器上的第二私钥加密得到,从而该加密信息记录的预设命令得到了服务器的授权,从而硬盘端可执行预设命令。
若使用公钥对加密信息验证不通过,则硬盘端可执行预设的异常处理。
在本发明实施例中,硬盘端还可以向主机端返回执行结果。
上述步骤610-步骤613的具体执行场景可参阅图9。
可以理解,在本发明其它的实施例中,若终端的使用用户需要再次申请私钥或申请升级服务,终端可以再次执行步骤606-613。另外,开发方在服务器端可以以私钥为索引管理用户信息,硬盘标识号与私钥的对应关系由服务器后台黑盒完成,换言之,将由硬盘标识号生成私钥的过程黑盒进行。具体为,在服务器上,对外接口接收用户的终端发送的信息,对内接口则输出私钥以作为索引。这样,开发方员工无法获得用户的个人信息。对此的具体描述可参阅图5所示实施例的详细内容。
这样,本发明实施例的方法可以大幅的减少销售方和生产方的工作量和管理复杂度,进而降低整个产品生命周期的生成、销售和维护成本,以及售后的响应周期。以及提高用户信息的安全性,方便用户关系管理(CRM)和产品升级。
综上所述,终端根据产品标识生成第一私钥,该产品标识为终端上的标识信息。然后,终端使用数字签名算法,根据第一私钥生成公钥,终端向服务器发送产品标识,以使服务器根据产品标识生成第二私钥,第一私钥和第二私钥相同。终端获取服务器发送的第二私钥后,终端使用第二私钥对预设命令进行签名,得到加密信息,从而,当使用公钥对加密信息验证通过时,终端执行预设命令。因此相对于现有技术,本发明实施例通过使用同一产品标识,在终端上生成了公钥,在服务器上生成了私钥,该私钥和公钥为一密钥对,通过该密钥对可实现服务器对终端的管理,这样的密钥对管理方式,管理过程得到了简化。
图10为本发明实施例提供的一种终端的结构示意图,图10所示的终端可用于执行上述图5和图6所示的方法,图10所示的终端可集成在图4所示的终端上。
参阅图10,本发明实施例的终端包括:
生成单元1001,用于根据产品标识生成第一私钥,产品标识为终端上的标识信息;
生成单元1001,还用于使用数字签名算法,根据第一私钥生成公钥;
发送单元1002,用于向服务器发送产品标识,以使服务器根据产品标识生成第二私钥,第一私钥和第二私钥相同;
获取单元1003,用于获取服务器发送的第二私钥;
签名单元1004,用于使用第二私钥对预设命令进行签名,得到加密信息;
执行单元1005,用于当使用公钥对加密信息验证通过时,执行预设命令。
可选地,产品标识为硬盘标识号。
可选地,终端包括主机端和硬盘端;
硬盘端包括生成单元1001、执行单元1005和硬盘获取单元1006,其中,硬盘获取单元1006,用于获取主机端发送的加密信息;
主机端包括发送单元1002、获取单元1003、和签名单元1004。
可选地,签名单元1004,还用于使用通用私钥对硬盘标识号进行签名,得到加密标识;
发送单元1002,还用于向硬盘端发送加密标识;
生成单元1001,还用于当使用通用公钥对加密标识验证通过时,根据硬盘标识号生成第一私钥。
可选地,签名单元1004,还用于使用通用私钥对产品标识进行签名,得到终端加密信息;
发送单元1002,还用于向服务器发送终端加密信息,以使服务器使用通用公钥对终端加密信息验证通过时,根据产品标识生成第二私钥;
获取单元1003,还用于获取服务器发送的服务器加密信息,其中服务器加密信息由服务器使用通用私钥对第二私钥进行签名得到;以及,当使用通用公钥对服务器加密信息验证通过时,得到第二私钥。
可选地,生成单元1001,还用于使用单向密码散列函数,根据产品标识生成第一私钥;
其中,单向密码散列函数还用于供服务器使用,以根据产品标识生成第二私钥。
可选地,终端还包括:
关闭单元1007,用于关闭根据第一私钥生成公钥的功能。
可选地,终端还包括指令执行单元1008;
发送单元1002,还用于向服务器发送请求指令,请求指令包括产品标识,以使服务器根据产品标识生成第三私钥后,从第二私钥和用户信息的对应关系中确定与第三私钥对应的用户信息,以根据用户信息生成答复指令,第三私钥和第二私钥相同,服务器预先建立有第二私钥和用户信息的对应关系;
获取单元1003,还用于获取服务器发送的答复指令。
指令执行单元1008,用于根据答复指令执行操作。
综上所述,生成单元1001根据产品标识生成第一私钥,该产品标识为终端上的标识信息。然后,生成单元1001使用数字签名算法,根据第一私钥生成公钥,发送单元1002向服务器发送产品标识,以使服务器根据产品标识生成第二私钥,第一私钥和第二私钥相同。获取单元1003获取服务器发送的第二私钥后,签名单元1004使用第二私钥对预设命令进行签名,得到加密信息,从而,当使用公钥对加密信息验证通过时,执行单元1005执行预设命令。因此相对于现有技术,本发明实施例通过使用同一产品标识,在终端上生成了公钥,在服务器上生成了私钥,该私钥和公钥为一密钥对,通过该密钥对可实现服务器对终端的管理,这样的密钥对管理方式,管理过程得到了简化。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种密钥对管理方法,其特征在于,包括:
终端根据产品标识生成第一私钥,所述产品标识为所述终端上的标识信息;
所述终端使用数字签名算法,根据所述第一私钥生成公钥;
所述终端向服务器发送所述产品标识,以使所述服务器根据所述产品标识生成第二私钥,所述第一私钥和所述第二私钥相同;
所述终端获取所述服务器发送的所述第二私钥;
所述终端使用所述第二私钥对预设命令进行签名,得到加密信息;
当使用所述公钥对所述加密信息验证通过时,所述终端执行所述预设命令。
2.根据权利要求1所述的方法,其特征在于,
所述产品标识为硬盘标识号。
3.根据权利要求2所述的方法,其特征在于,
所述终端包括主机端和硬盘端;
所述终端根据产品标识生成第一私钥,包括:
所述硬盘端根据所述硬盘标识号生成第一私钥;
所述终端使用数字签名算法,根据所述第一私钥生成公钥,包括:
所述硬盘端使用数字签名算法,根据所述第一私钥生成公钥;
所述终端向服务器发送所述产品标识,包括:
所述主机端向服务器发送所述硬盘标识号;
所述终端获取所述服务器发送的所述第二私钥,包括:
所述主机端获取所述服务器发送的所述第二私钥;
所述终端使用所述第二私钥对预设命令进行签名,得到加密信息,包括:
所述主机端使用所述第二私钥对预设命令进行签名,得到加密信息;
所述当使用所述公钥对所述加密信息验证通过时,所述终端执行所述预设命令,包括:
所述硬盘端获取所述主机端发送的所述加密信息;
当使用所述公钥对所述加密信息验证通过时,所述硬盘端执行所述预设命令。
4.根据权利要求3所述的方法,其特征在于,
所述硬盘端根据所述硬盘标识号生成第一私钥之前,所述方法还包括:
所述主机端使用通用私钥对硬盘标识号进行签名,得到加密标识;
所述主机端向所述硬盘端发送所述加密标识;
所述硬盘端根据所述硬盘标识号生成第一私钥,包括:
当使用通用公钥对所述加密标识验证通过时,所述硬盘端根据所述硬盘标识号生成第一私钥。
5.根据权利要求1所述的方法,其特征在于,
所述终端向服务器发送所述产品标识之前,所述方法还包括:
所述终端使用通用私钥对所述产品标识进行签名,得到终端加密信息;
所述终端向服务器发送所述产品标识,包括:
所述终端向服务器发送所述终端加密信息,以使所述服务器使用通用公钥对所述终端加密信息验证通过时,根据所述产品标识生成第二私钥;
所述终端获取所述服务器发送的所述第二私钥,包括:
所述终端获取所述服务器发送的服务器加密信息,其中所述服务器加密信息由所述服务器使用通用私钥对所述第二私钥进行签名得到;
所述终端当使用通用公钥对所述服务器加密信息验证通过时,得到第二私钥。
6.根据权利要求1-5任一项所述的方法,其特征在于,
所述终端根据产品标识生成第一私钥,包括:
终端使用单向密码散列函数,根据产品标识生成第一私钥;
其中,所述单向密码散列函数还用于供所述服务器使用,以根据所述产品标识生成第二私钥。
7.根据权利要求1-5任一项所述的方法,其特征在于,
所述终端使用数字签名算法,根据所述第一私钥生成公钥之后,所述方法还包括:
所述终端关闭根据所述第一私钥生成所述公钥的功能。
8.根据权利要求1-5任一项所述的方法,其特征在于,
所述终端获取所述服务器发送的所述第二私钥之后,所述方法还包括:
所述终端向所述服务器发送请求指令,所述请求指令包括所述产品标识,以使所述服务器根据所述产品标识生成第三私钥后,从所述第二私钥和用户信息的对应关系中确定与所述第三私钥对应的用户信息,以根据所述用户信息生成答复指令,所述第三私钥和所述第二私钥相同,所述服务器预先建立有所述第二私钥和用户信息的对应关系;
所述终端获取所述服务器发送的所述答复指令;
所述终端根据所述答复指令执行操作。
9.一种终端,其特征在于,包括:
生成单元,用于根据产品标识生成第一私钥,所述产品标识为所述终端上的标识信息;
所述生成单元,还用于使用数字签名算法,根据所述第一私钥生成公钥;
发送单元,用于向服务器发送所述产品标识,以使所述服务器根据所述产品标识生成第二私钥,所述第一私钥和所述第二私钥相同;
获取单元,用于获取所述服务器发送的所述第二私钥;
签名单元,用于使用所述第二私钥对预设命令进行签名,得到加密信息;
执行单元,用于当使用所述公钥对所述加密信息验证通过时,执行所述预设命令。
10.根据权利要求9所述的终端,其特征在于,
所述终端包括主机端和硬盘端;
所述硬盘端包括所述生成单元、所述执行单元和硬盘获取单元,其中,所述硬盘获取单元,用于获取所述主机端发送的所述加密信息;
所述主机端包括所述发送单元、所述获取单元、和所述签名单元。
CN201810422682.3A 2018-05-05 2018-05-05 密钥对管理方法和终端 Active CN108809651B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810422682.3A CN108809651B (zh) 2018-05-05 2018-05-05 密钥对管理方法和终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810422682.3A CN108809651B (zh) 2018-05-05 2018-05-05 密钥对管理方法和终端

Publications (2)

Publication Number Publication Date
CN108809651A true CN108809651A (zh) 2018-11-13
CN108809651B CN108809651B (zh) 2021-08-10

Family

ID=64093338

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810422682.3A Active CN108809651B (zh) 2018-05-05 2018-05-05 密钥对管理方法和终端

Country Status (1)

Country Link
CN (1) CN108809651B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114296756A (zh) * 2021-12-16 2022-04-08 合肥大唐存储科技有限公司 一种固态硬盘更新方法、固态硬盘和后台服务器

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101359991A (zh) * 2008-09-12 2009-02-04 湖北电力信息通信中心 基于标识的公钥密码体制私钥托管系统
CN101441601A (zh) * 2007-11-22 2009-05-27 中国长城计算机深圳股份有限公司 一种硬盘ata指令的加密传输的方法
US20110185177A1 (en) * 2010-01-25 2011-07-28 Compugroup Holding Ag Method for generating an asymmetric cryptographic key pair and its application
CN102449631A (zh) * 2009-05-26 2012-05-09 惠普开发有限公司 用于执行管理操作的系统和方法
CN103560882A (zh) * 2013-10-29 2014-02-05 武汉理工大学 一种基于标识的椭圆曲线密码系统
CN105516948A (zh) * 2014-09-26 2016-04-20 华为技术有限公司 一种设备控制方法及装置
CN107026874A (zh) * 2017-06-02 2017-08-08 李维刚 一种指令签名与验证方法及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101441601A (zh) * 2007-11-22 2009-05-27 中国长城计算机深圳股份有限公司 一种硬盘ata指令的加密传输的方法
CN101359991A (zh) * 2008-09-12 2009-02-04 湖北电力信息通信中心 基于标识的公钥密码体制私钥托管系统
CN102449631A (zh) * 2009-05-26 2012-05-09 惠普开发有限公司 用于执行管理操作的系统和方法
US20110185177A1 (en) * 2010-01-25 2011-07-28 Compugroup Holding Ag Method for generating an asymmetric cryptographic key pair and its application
CN103560882A (zh) * 2013-10-29 2014-02-05 武汉理工大学 一种基于标识的椭圆曲线密码系统
CN105516948A (zh) * 2014-09-26 2016-04-20 华为技术有限公司 一种设备控制方法及装置
CN107026874A (zh) * 2017-06-02 2017-08-08 李维刚 一种指令签名与验证方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114296756A (zh) * 2021-12-16 2022-04-08 合肥大唐存储科技有限公司 一种固态硬盘更新方法、固态硬盘和后台服务器
CN114296756B (zh) * 2021-12-16 2024-08-06 合肥大唐存储科技有限公司 一种固态硬盘更新方法、固态硬盘和后台服务器

Also Published As

Publication number Publication date
CN108809651B (zh) 2021-08-10

Similar Documents

Publication Publication Date Title
CN110460439A (zh) 信息传输方法、装置、客户端、服务端及存储介质
CN1985466B (zh) 使用分发cd按签署组向设备传递直接证据私钥的方法
US8495383B2 (en) Method for the secure storing of program state data in an electronic device
Hao et al. Deleting secret data with public verifiability
TW201914254A (zh) 資料加密和解密的方法、裝置和系統
US11831753B2 (en) Secure distributed key management system
CN111147432B (zh) 具隐密性的kyc数据共享系统及其方法
JP2005537559A (ja) トランザクションの安全な記録
CN111160908B (zh) 基于区块链的供应链交易隐私保护系统、方法及相关设备
TW201824809A (zh) 資訊安全的驗證方法、裝置和系統
CN111523110A (zh) 基于链代码的权限查询配置方法及装置
CN104967612A (zh) 一种数据加密存储方法、服务器及系统
CN112332975A (zh) 物联网设备安全通信方法及系统
CN111131416A (zh) 业务服务的提供方法和装置、存储介质、电子装置
WO2021169767A1 (zh) 一种数据处理方法、装置、设备及介质
CN107994995A (zh) 一种低安全介质的交易方法、系统及终端设备
US20220286291A1 (en) Secure environment for cryptographic key generation
CN111079190A (zh) 区块链供应链交易隐藏动态监管系统及方法
CN114462067A (zh) 基于区块链的数字资产可信交换管理方法及装置
EP2948893A1 (en) Automated content signing for point-of-sale applications in fuel dispensing environments
US20230259926A1 (en) Address generation method, blockchain information processing method, and related device
CN108809651A (zh) 密钥对管理方法和终端
Rezaeighaleh Improving security of crypto wallets in blockchain technologies
JP2020127109A (ja) プログラム及び端末を製造する方法
CN108985079A (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