CN106254339B - 挖矿业务的安全认证方法和系统 - Google Patents

挖矿业务的安全认证方法和系统 Download PDF

Info

Publication number
CN106254339B
CN106254339B CN201610621224.3A CN201610621224A CN106254339B CN 106254339 B CN106254339 B CN 106254339B CN 201610621224 A CN201610621224 A CN 201610621224A CN 106254339 B CN106254339 B CN 106254339B
Authority
CN
China
Prior art keywords
response message
authentication response
authentication
result data
data
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.)
Active
Application number
CN201610621224.3A
Other languages
English (en)
Other versions
CN106254339A (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.)
Beijing Bitmain Technology Co Ltd
Original Assignee
Beijing Bitmain 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 Beijing Bitmain Technology Co Ltd filed Critical Beijing Bitmain Technology Co Ltd
Priority to CN201610621224.3A priority Critical patent/CN106254339B/zh
Publication of CN106254339A publication Critical patent/CN106254339A/zh
Application granted granted Critical
Publication of CN106254339B publication Critical patent/CN106254339B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • 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
    • H04L9/3249Cryptographic 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 using RSA or related signature schemes, e.g. Rabin scheme

Abstract

本发明实施例公开了一种挖矿业务的安全认证方法和系统,其中,方法包括:认证中心服务器接收挖矿机上报的认证请求,其中包括输出结果数据和芯片ID;认证中心服务器从所述矿池获取工作任务信息,并基于获取到的工作任务信息对所述输出结果数据进行认证;若所述输出结果数据通过认证,对所述输出结果数据进行签名,得到签名数据,并向所述挖矿机反馈认证响应消息,所述认证响应消息中包括所述签名数据与所述芯片ID;挖矿机基于是否接收到认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。本发明实施例可以提高比特币挖矿业务的安全性。

Description

挖矿业务的安全认证方法和系统
技术领域
本发明涉及互联网技术,尤其是一种挖矿业务的安全认证方法和系统。
背景技术
比特币(Bitcoin)是一种由开源的点对点(P2P)软件产生的电子币、数字币,是一种网络虚拟资产。比特币也被意译为“比特金”。任何人都可以下载并运行比特币客户端参与制造比特币。比特币矿工最早是通过Intel或超微半导体公司的中央控制单元(CPU)产品来挖矿。
随着比特币的逐渐推广应用,作为“挖矿神器”的比特币挖矿机也迅速走红,同时网络安全问题也随之而来。比特币挖矿面临比特币“挖矿木马”、挖矿用户账户盗号以及交易市场沦陷三类威胁。其中,比特币“挖矿木马”是由黑客通过木马控制大量肉鸡电脑,为其制造比特币的恶意程序。被植入比特币“挖矿木马”的电脑,系统性能会受到较大影响,电脑操作会明显变慢、散热风扇狂转;另一个危害在于,“挖矿木马”会大量耗电,并造成显卡、CPU等硬件急剧损耗。
上述网络安全问题严重影响了比特币挖矿业务的正常运行。
发明内容
本发明实施例所要解决的一个技术问题是:提供一种挖矿业务的安全认证方法和系统,以提高比特币挖矿业务的安全性。
根据本发明实施例的一个方面,提供的一种挖矿业务的安全认证方法,包括:
认证中心服务器接收挖矿机上报的认证请求,所述认证请求中包括待认证数据和所述挖矿机中发送所述认证请求的当前芯片的芯片标识ID;其中,芯片ID唯一标识一个芯片,所述待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据,所述工作任务由所述挖矿机加入的矿池分配给所述挖矿机;
认证中心服务器从所述矿池获取工作任务信息,并基于获取到的工作任务信息对所述输出结果数据进行认证;
若所述输出结果数据通过认证,对所述输出结果数据进行签名,得到签名数据,并向所述挖矿机反馈认证响应消息,所述认证响应消息中包括所述签名数据与所述芯片ID;
挖矿机基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
根据本发明实施例的另一个方面,提供的一种挖矿业务的安全认证系统,包括:
认证中心服务器,用于接收挖矿机上报的认证请求,所述认证请求中包括待认证数据和所述挖矿机中发送所述认证请求的当前芯片的芯片标识ID;其中,芯片ID唯一标识一个芯片,所述待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据,所述工作任务由所述挖矿机加入的矿池分配给所述挖矿机;从所述矿池获取工作任务信息,并基于获取到的工作任务信息对所述输出结果数据进行认证;若所述输出结果数据通过认证,对所述输出结果数据进行签名,得到签名数据,并向所述挖矿机反馈认证响应消息,所述认证响应消息中包括所述签名数据与所述芯片ID;
矿池,用于向加入的挖矿机分配工作任务,存储有分配给各挖矿机的工作任务信息;
挖矿机,用于基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
基于本发明上述实施例提供的挖矿业务的安全认证方法和系统,挖矿机可以向认证中心服务器发送认证请求,其中包括待认证数据和芯片ID,待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据,工作任务由挖矿机加入的矿池分配给挖矿机;认证中心服务器从矿池获取工作任务信息对输出结果数据进行认证;若输出结果数据通过认证,对输出结果数据进行签名得到签名数据,并发送给挖矿机;挖矿机基于是否接收到认证响应消息、以及认证响应消息中的签名数据是否正确确认是否进行挖矿工作。由此,本发明实施例实现了对挖矿机的安全认证,避免了各种网络安全问题,从而提高了比特币挖矿业务的安全性。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明挖矿业务的安全认证方法一个实施例的流程图。
图2为本发明挖矿业务的安全认证方法另一个实施例的流程图。
图3为本发明挖矿业务的安全认证方法又一个实施例的流程图。
图4为本发明挖矿业务的安全认证方法再一个实施例的流程图。
图5为本发明挖矿业务的安全认证方法还一个实施例的流程图。
图6为本发明挖矿业务的安全认证系统一个实施例的结构示意图。
图7为本发明挖矿业务的安全认证系统另一个实施例的结构示意图。
图8为本发明挖矿业务的安全认证系统又一个实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本发明实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
图1为本发明挖矿业务的安全认证方法一个实施例的流程图。如图1所示,该实施例挖矿业务的安全认证方法包括:
102,认证中心服务器接收挖矿机上报的认证请求,该认证请求中包括待认证数据和挖矿机中发送认证请求的当前芯片的芯片标识(ID)。
其中,芯片ID唯一标识一个芯片,待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据(nonce),其中的工作任务由挖矿机加入的矿池分配给挖矿机。
104,认证中心服务器从矿池获取工作任务信息,并基于获取到的工作任务信息对认证请求中的输出结果数据进行认证。
若输出结果数据通过认证,执行操作106。若输出结果数据未通过认证,不执行本实施例的后续流程,可以选择性地向挖矿机反馈认证失败相应消息。
106,认证中心服务器对输出结果数据进行签名,得到签名数据。
108,认证中心服务器向挖矿机反馈认证响应消息,该认证响应消息中包括签名数据与芯片ID。
110,挖矿机基于是否接收到针对发送的认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
基于本发明上述实施例提供的挖矿业务的安全认证方法,挖矿机可以向认证中心服务器发送认证请求,其中包括待认证数据和芯片ID,待认证数据包括基于工作任务的工作数据产生的输出结果数据,工作任务由挖矿机加入的矿池分配给挖矿机;认证中心服务器从矿池获取工作任务信息对输出结果数据进行认证;若输出结果数据通过认证,对输出结果数据进行签名得到签名数据,并发送给挖矿机;挖矿机基于是否接收到认证响应消息、以及认证响应消息中的签名数据是否正确确认是否进行挖矿工作。由此,本发明实施例实现了对挖矿机的安全认证,避免了各种网络安全问题,从而提高了比特币挖矿业务的安全性。
图2为本发明挖矿业务的安全认证方法另一个实施例的流程图。如图2所示,该实施例挖矿业务的安全认证方法包括:
202,挖矿机中的控制板从矿池获取工作任务并向当前芯片下发工作任务的工作数据。
204,当前芯片基于预设算法对工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据。
在一个示例性实施例中,向操作202中,控制板向当前芯片下发工作任务的工作数据时,可以先生成工作数据的循环冗余码校验(CRC)校验码并写入所述工作数据中,即:控制板向当前芯片下发的工作数据中还包括所述工作数据的CRC校验码。相应地,在操作204之前,当前芯片还可以基于所述工作数据中的CRC校验码对工作数据进行校验;若工作数据通过校验,执行操作204;否则,不执行本实施例自操作204之后的流程。
另外,在另一个示例性实施例中,基于工作任务的工作数据产生输出结果数据时,可以生成输出结果数据的CRC校验码并写入输出结果数据中,即:输出结果数据中还包括输出结果数据的CRC校验码。
另外,在另一个示例性实施例中,当前芯片获得输出结果数据之后,还可以通过寄存器存储输出结果数据,寄存器中还存储有当前芯片的芯片ID,以便用于对后续接收到签名数据进行验证。
206,控制板基于当前芯片的芯片ID和获得的输出结果数据生成认证请求并上报认证中心服务器。
其中的认证请求中包括待认证数据和当前芯片的芯片ID。
若操作204中输出结果数据中还包括输出结果数据的CRC校验码,该操作206中,控制板生成认证请求时,可以先基于输出结果数据中的CRC校验码对输出结果数据进行校验;在输出结果数据通过校验时,基于输出结果数据和当前芯片的芯片ID生成认证请求。
208,认证中心服务器从矿池获取工作任务信息,并基于获取到的工作任务信息对认证请求中的输出结果数据进行认证。
其中,矿池向认证中心提供的工作任务信息中包括加入该矿池的芯片对该工作任务的工作数据进行计算获得的nonce。
若输出结果数据通过认证,执行操作210。若输出结果数据未通过认证,不执行本实施例的后续流程,可以选择性地向挖矿机反馈认证失败相应消息。
示例性地,该操作具体可以通过如下方式实现:
认证中心服务器从矿池获取工作任务,通过识别获取到的工作任务信息是否包括输出结果数据,判断输出结果数据是否属于矿池;
若获取到的工作任务信息包括输出结果数据,判定输出结果数据属于矿池,则输出结果数据通过认证;
否则,若获取到的工作任务信息中不包括输出结果数据,则输出结果数据未通过认证。
210,认证中心服务器对输出结果数据进行签名,得到签名数据。
示例性地,该操作210具体可以通过如下方式实现:
认证中心服务器从密钥库中获取芯片ID对应的私钥。其中的私钥具体可以是非对称算法的密钥对中的私钥,非对称算法例如可以是椭圆曲线密码编码学(ECC)加密算法、RSA(Ron Rivest,AdiShamir和Leonard Adleman)算法等;
利用芯片ID对应的私钥对输出结果数据进行签名,即加密,得到签名数据。
212,认证中心服务器向挖矿机反馈认证响应消息,该认证响应消息中包括签名数据与芯片ID。
214,挖矿机基于是否接收到针对发送的认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
在本发明上述挖矿业务的安全认证方法实施例的一个具体示例中,操作110或214中,挖矿机基于是否接收到针对发送的认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作的操作,具体可以包括:
挖矿机判断是否在发送认证请求的第一预设时间内接收到认证响应消息。其中的第一预设时间的取值例如可以是10分钟;
若在第一预设时间内接收到认证响应消息,验证接收到的认证响应消息中的签名数据是否正确;
若签名数据正确,挖矿机继续进行挖矿工作;
否则,若在第一预设时间内未接收到认证响应消息,或者第一预设时间内接收到的认证响应消息中规定签名数据不正确,挖矿机停止挖矿工作。
在本发明各实施例的安全认证方法中,认证中心服务器向挖矿机反馈认证响应消息中还可以选择性地包括认证请求中的输出结果数据。
示例性地,验证认证响应消息中的签名数据是否正确时,具体可以通过如下操作实现:
当前芯片基于认证响应消息中的输出结果数据、预先存储的、非对称算法方式的密钥对中的公钥,对输出结果数据进行签名,并比较签名得到的签名数据与认证响应消息中的签名数据是否一致,从而验证认证响应消息中的签名数据是否正确。若签名得到的签名数据与认证响应消息中的签名数据一致,认证响应消息中的签名数据正确;否则,若二者不一致,则认证响应消息中的签名数据不正确。此处的输出结果数据可以是认证响应消息中携带的输出结果数据,也可以是寄存器中存储的输出结果数据。
例如,当前芯片可以基于预先存储的、非对称算法方式的密钥对中的公钥,对认证响应消息中的签名数据进行解密,并比较解密获得的数据是否与认证响应消息中的输出结果数据一致;若一致,确认签名数据正确;否则,若不一致,确认签名数据不正确。
再如,当前芯片可以基于预先存储的、非对称算法方式的密钥对中的公钥,对认证响应消息中携带的、或者寄存器中存储的输出结果数据进行签名,并比较签名获得的签名数据是否与认证响应消息中的签名数据一致;若一致,确认签名数据正确;否则,若不一致,确认签名数据不正确。
在本发明上述挖矿业务的安全认证方法实施例的另一个具体示例中,还可以包括:
挖矿机监测在发送认证请求后在第二预设时间内是否接收到认证响应消息。其中的第二预设时间小于第一预设时间。其中,第二预设时间的取值例如可以是2分钟;
若在第二预设时间内接收到认证响应消息,验证认证响应消息中的的签名数据是否正确;
若认证响应消息中的签名数据正确,则确定在第一预设时间内接收到认证响应消息,且认证响应消息中的签名数据正确;
否则,若在第二预设时间内未接收到认证响应消息,或者第二预设时间内接收到的认证响应消息中的签名数据不正确,判断第一预设时间是否超时;
若第一预设时间超时,则确定在第一预设时间内未接收到认证响应消息;
否则,若第一预设时间未超时,则挖矿机生成新的认证请求并上报认证中心服务器,之后以新的认证请求作为本次认证请求,执行监测在发送认证请求后在第二预设时间内是否接收到认证响应消息的操作。
基于上述实施例,芯片在第一预设时间这一特定周期内某一次发送的认证请求未被正确签名时,可以继续进行发送认证请求,进行签名验证,只要芯片在第一预设时间这一特定周期内被正确签名即可。避免了由于网络故障导致某次签名失败从而影响挖矿机的正常挖矿工作。
其中,为了便于区分同一个芯片连续两次发送的输出结果数据,当前芯片可以分别在相邻两次产生的输出结果数据中携带奇、偶位标识,相应地,挖矿机相邻两次上报认证请求中的输出结果数据中分别携带奇、偶位标识。
相应地,判断是否接收到针对认证请求的认证响应消息可以通过如下方式实现:
当前芯片基于认证响应消息中输出结果数据中的奇、偶位标识,识别该认证响应消息针对的是哪一个认证请求,从而判断针对各认证请求是否接收到认证响应消息。
图3为本发明挖矿业务的安全认证方法又一个实施例的流程图。如图3所示,该实施例挖矿业务的安全认证方法包括:
302,挖矿机中的控制板从矿池获取工作任务并向当前芯片下发工作任务的工作数据。
304,当前芯片基于预设算法对工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据。
306,控制板基于当前芯片的芯片ID和获得的输出结果数据生成认证请求并上报认证中心服务器。
其中的认证请求中包括待认证数据和当前芯片的芯片ID。
308,认证中心服务器校验认证请求中输出结果数据的难度是否符合矿池的预设难度要求。
其中,认证中心服务器可以预先存储各矿池的预设难度要求。
若认证请求中输出结果数据的难度符合预设难度要求,执行操作310。否则,不执行本实施例的后续流程,可以选择性地向挖矿机反馈认证失败相应消息。
310,认证中心服务器从矿池获取工作任务信息,并基于获取到的工作任务信息对认证请求中的输出结果数据进行认证。
若输出结果数据通过认证,执行操作312。若输出结果数据未通过认证,不执行本实施例的后续流程,可以选择性地向挖矿机反馈认证失败相应消息。
312,认证中心服务器对输出结果数据进行签名,得到签名数据。
314,认证中心服务器向挖矿机反馈认证响应消息,该认证响应消息中包括签名数据与芯片ID。
316,控制板向当前芯片发送认证响应消息。
318,当前芯片基于是否接收到针对发送的认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
图4为本发明挖矿业务的安全认证方法再一个实施例的流程图。如图4所示,该实施例挖矿业务的安全认证方法包括:
402,挖矿机中的控制板从矿池获取工作任务并向当前芯片下发工作任务的工作数据。
404,当前芯片基于预设算法对工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据。
406,控制板基于当前芯片的芯片ID和获得的输出结果数据生成认证请求并上报认证中心服务器。
其中的认证请求中包括待认证数据和当前芯片的芯片ID。
408,矿池校验认证请求中输出结果数据的难度是否符合预设难度要求。
若认证请求中输出结果数据的难度符合预设难度要求,执行操作410。否则,不执行本实施例的后续流程,可以选择性地向挖矿机反馈认证失败相应消息。
410,矿池将认证请求转发给认证中心服务器。
412,认证中心服务器从矿池获取工作任务信息,并基于获取到的工作任务信息对认证请求中的输出结果数据进行认证。
若输出结果数据通过认证,执行操作414。若输出结果数据未通过认证,不执行本实施例的后续流程,可以选择性地向挖矿机反馈认证失败相应消息。
414,认证中心服务器对输出结果数据进行签名,得到签名数据。
416,认证中心服务器向矿池反馈认证响应消息,该认证响应消息中包括签名数据与芯片ID。
418,矿池根据认证响应消息中的芯片ID,将认证响应消息发送给挖矿机中的控制板。
420,控制板向当前芯片发送认证响应消息。
422,当前芯片基于是否接收到针对发送的认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
在上述实施例中,通过矿池对认证请求和认证响应消息进行转发,认证中心不直接与挖矿机直接通信,可以有效防止认证中心遭到分布式拒绝服务(DDOS)攻击。
图5为本发明挖矿业务的安全认证方法还一个实施例的流程图。如图5所示,与上述各实施例相比,该实施例中在上述各实施例的流程之前,还包括:
502,当前芯片上电复位后,生成一个随机数,并将随机数与芯片ID发送给控制板。
504,控制板基于随机数与芯片ID生成认证请求,并将该认证请求发送给认证中心服务器。
506,认证中心服务器对随机数进行签名,得到签名数据,并向控制板反馈认证响应消息,该认证响应消息中包括签名数据、上述随机数与芯片ID。
508,控制板将认证响应消息转发给当前芯片。
510,当前芯片基于是否接收到针对初始认证请求的初始认证响应消息、以及初始认证响应消息中的签名数据是否正确,确认是否进入激活状态以便进行挖矿。
当前芯片接收到初始认证响应消息后,可以基于与对输出结果数据的签名数据的验证方法类似的方法,对初始认证响应消息中的初始签名数据进行验证,只有在当前芯片在第一预设时间内接收到针对初始认证请求的初始认证响应消息、且初始认证响应消息中的初始签名数据正确时,才进入激活状态以便进行挖矿,以及发起后续发送认证请求的流程。
在图5所示实施例的一个具体示例中,操作504中,控制板将该初始认证请求发送给认证中心服务器时,具体可以包括:控制板将该初始认证请求发送给矿池;矿池将初始认证请求转发给认证中心服务器。
相应地,操作506中,认证中心服务器向控制板反馈初始认证响应消息时,具体可以包括:认证中心服务器向矿池反馈初始认证响应消息;矿池根据初始认证响应消息中的芯片ID,将初始认证响应消息发送给控制板。
在图5所示实施例的另一个具体示例中,操作504中,控制板将该初始认证请求发送给认证中心服务器时,具体直接将该初始认证请求发送给认证中心服务器。相应地,操作506中,认证中心服务器向控制板反馈初始认证响应消息时,具体可以包括:认证中心服务器向控制板反馈初始认证响应消息。
进一步地,在本发明各实施例中,挖矿机可以包括多个芯片,该多个芯片中可以分别作为上述当前芯片,基于预设算法对工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据。相应地,该实施例中,控制板分别基于多个芯片的芯片ID和输出结果数据生成多个认证请求并上报认证中心服务器;控制板向当前芯片发送认证响应消息或初始认证响应消息时,具体可以广播该认证响应消息或初始认证响应消息,由相应的芯片基于认证响应消息或初始认证响应消息中的芯片ID识别接收各自的认证响应消息或初始认证响应消息。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图6为本发明挖矿业务的安全认证系统一个实施例的结构示意图。该实施例的系统可用于实现本发明上述各方法实施例。如图6所示,该实施例的系统包括:认证中心服务器,矿池和挖矿机。其中的矿池和挖矿机可以是一个或多个,图6中仅示例性地示出一个,本领域技术人员基于本发明的记载可以知悉各矿池和挖矿机在系统中的位置和通信连接关系与图中类似。其中:
认证中心服务器,用于接收挖矿机上报的认证请求,认证请求中包括待认证数据和挖矿机中发送认证请求的当前芯片的芯片ID。其中,芯片ID唯一标识一个芯片,待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据,工作任务由挖矿机加入的矿池分配给挖矿机;从矿池获取工作任务信息,并基于获取到的工作任务信息对输出结果数据进行认证;以及若输出结果数据通过认证,对输出结果数据进行签名,得到签名数据,并向挖矿机反馈认证响应消息,认证响应消息中包括签名数据与芯片ID。
矿池,用于向加入的挖矿机分配工作任务,存储有分配给各挖矿机的工作任务信息。
挖矿机,用于向认证中心服务器上报认证请求;以及基于是否接收到签名数据、以及签名数据是否正确,确认是否进行挖矿工作。
基于本发明上述实施例提供的挖矿业务的安全认证系统,挖矿机可以向认证中心服务器发送认证请求,其中包括待认证数据和芯片ID,待认证数据包括基于工作任务的工作数据计算获得的输出结果数据,工作任务由挖矿机加入的矿池分配给挖矿机;认证中心服务器从矿池获取工作任务信息对输出结果数据进行认证;若输出结果数据通过认证,对输出结果数据进行签名得到签名数据,并发送给挖矿机;挖矿机基于是否接收到认证响应消息、以及认证响应消息中的签名数据是否正确确认是否进行挖矿工作。由此,本发明实施例实现了对挖矿机的安全认证,避免了各种网络安全问题,从而提高了比特币挖矿业务的安全性。
图7为本发明挖矿业务的安全认证系统另一个实施例的结构示意图。如图7所示,与图6所示的实施例相比,该实施例中,挖矿机具体包括控制板和芯片,其中的芯片包括当前芯片。该实施例中:
控制板,用于从矿池获取工作任务并向当前芯片下发工作任务的工作数据;以及基于芯片ID和当前芯片产生的输出结果数据生成认证请求并上报认证中心服务器。
当前芯片,基于预设算法对工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据。
可选地,控制板向当前芯片下发工作任务的工作数据时,具体生成工作数据的CRC校验码并写入工作数据中,即:控制板向当前芯片下发的工作数据中还包括工作数据的CRC校验码;相应地,当前芯片还可用于在基于预设算法对工作任务的工作数据进行计算之前,基于工作数据中的CRC校验码对工作数据进行校验;若工作数据通过校验,执行基于预设算法对工作任务的工作数据进行计算的操作。
进一步可选地,当前芯片还可用于在获得符合预设输出条件的输出结果数据之后,生成输出结果数据的CRC校验码并写入输出结果数据中,即:当前芯片发送给控制板的输出结果数据中还包括输出结果数据的CRC校验码。相应地,控制板生成认证请求时,具体可基于输出结果数据中的CRC校验码对输出结果数据进行校验;若输出结果数据通过校验,基于输出结果数据和当前芯片的芯片ID生成认证请求。
本发明挖矿业务的安全认证系统的又一个实施例中,当前芯片还可用于获得符合预设输出条件的输出结果数据之后,通过寄存器存储输出结果数据,以便后续进行差错,该寄存器中还存储有当前芯片的芯片ID。
在本发明上述各挖矿业务的安全认证系统实施例的一个具体示例中,认证中心服务器基于获取到的工作任务信息对输出结果数据进行认证时,具体用于:认证中心服务器从矿池获取工作任务,通过识别获取到的工作任务信息是否包括输出结果数据,判断输出结果数据是否属于矿池;若获取到的工作任务信息包括输出结果数据,输出结果数据属于矿池,则输出结果数据通过认证;否则,若获取到的工作任务信息包括输出结果数据,则输出结果数据未通过认证。
在本发明上述各挖矿业务的安全认证系统实施例的另一个具体示例中,认证中心服务器对输出结果数据进行签名时,具体用于:从密钥库中获取芯片ID对应的私钥;以及利用芯片ID对应的私钥对输出结果数据进行签名。
其中的私钥可以是非对称算法方式的密钥对中的私钥。
在本发明上述各挖矿业务的安全认证系统实施例的又一个具体示例中,挖矿机基于是否接收到针对认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作时,具体用于:
判断是否在发送认证请求的第一预设时间内接收到认证响应消息;
若在第一预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,继续进行挖矿工作;
否则,若在第一预设时间内未接收到认证响应消息,或者第一预设时间内接收到的认证响应消息中的签名数据不正确,停止挖矿工作。
在本发明上述各挖矿业务的安全认证系统实施例的再一个具体示例中,当前芯片验证接收到的认证响应消息中的签名数据是否正确时,具体用于:
基于输出结果数据和预先存储的、非对称算法方式的密钥对中的公钥对输出结果数据进行签名,并比较签名得到的签名数据与认证响应消息中的签名数据是否一致,从而验证认证响应消息中的签名数据是否正确;若签名得到的签名数据与认证响应消息中的签名数据一致,认证响应消息中的签名数据正确;否则,若二者不一致,则认证响应消息中的签名数据不正确。此处的输出结果数据可以是认证响应消息中携带的输出结果数据,也可以是寄存器中存储的输出结果数据。
进一步地,在本发明挖矿业务的安全认证系统的再一个实施例中,挖矿机还用于:
监测在发送认证请求后在第二预设时间内是否接收到认证响应消息;第二预设时间小于第一预设时间;
若在第二预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,则确定在第一预设时间内接收到认证响应消息,且认证响应消息中的签名数据正确;
否则,若在第二预设时间内未接收到认证响应消息,或者第二预设时间内接收到的认证响应消息中的签名数据不正确,判断第一预设时间是否超时;
若第一预设时间超时,则确定在第一预设时间内未接收到认证响应消息;
否则,若第一预设时间未超时,则生成新的认证请求并上报认证中心服务器,之后以新的认证请求作为本次认证请求,执行监测在发送认证请求后在第二预设时间内是否接收到认证响应消息的操作。
示例性地,当前芯片可以分别在相邻两次产生的输出结果数据中携带奇、偶位标识。相应地,挖矿机相邻两次上报认证请求中的输出结果数据中分别携带奇、偶位标识。
示例性地,挖矿机判断是否接收到针对认证请求的认证响应消息时,具体用于:基于认证响应消息中输出结果数据中的奇、偶位标识,识别该认证响应消息针对的认证请求,从而判断针对各认证请求是否接收到认证响应消息。
图8为本发明挖矿业务的安全认证系统又一个实施例的结构示意图。如图8所示,该实施例中,挖矿机具体通过矿池向认证中心服务器发送认证请求;矿池将认证请求转发给认证中心服务器。认证中心服务器具体通过矿池向挖矿机中的控制板反馈认证响应消息;控制板还用于向当前芯片发送认证响应消息。
在图8所示实施例的进一步实施例中,矿池还可用于在接收到认证请求后,校验认证请求中输出结果数据的难度是否符合预设难度要求;若认证请求中输出结果数据的难度符合预设难度要求,执行将认证请求转发给认证中心服务器的操作。
进一步地,在基于图6至图7所示任一实施例的安全认证系统中,认证中心服务器还可用于在接收挖矿机上报的认证请求之后:校验认证请求中输出结果数据的难度是否符合矿池的预设难度要求;若认证请求中输出结果数据的难度符合预设难度要求,执行从矿池获取工作任务信息的操作。
进一步地,在上述任一实施例的安全认证系统中,当前芯片还可用于在上电复位后,生成一个随机数,并将随机数与芯片ID发送给控制板;以及基于是否接收到针对初始认证请求的初始认证响应消息、以及初始认证响应消息中的初始签名数据是否正确,确认是否进入激活状态以便进行挖矿。相应地,该实施例中:
控制板,还用于基于随机数与芯片ID生成初始认证请求,并将该初始认证请求发送给认证中心服务器;以及将认证中心服务器反馈的初始认证响应消息转发给当前芯片;
认证中心服务器,还用于对随机数进行签名,得到初始签名数据,并向控制板反馈初始认证响应消息,初始认证响应消息中包括初始签名数据与芯片ID,也可以选择性地包括上述随机数。
示例性地,控制板具体通过矿池将初始认证请求转发给认证中心服务器;认证中心服务器向控制板反馈初始认证响应消息时,具体用于向矿池反馈初始认证响应消息;矿池还用于根据初始认证响应消息中的芯片ID,将初始认证响应消息发送给控制板。
进一步地,在上述任一实施例的安全认证系统中,挖矿机具体可以包括多个芯片,分别作为多个当前芯片,基于预设算法对工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据;以及基于控制板广播的认证响应消息或初始认证响应消息中的芯片ID接收各自的认证响应消息或初始认证响应消息。相应地,控制板具体分别基于多个芯片的芯片ID和输出结果数据生成多个认证请求并上报认证中心服务器;以及向当前芯片发送认证响应消息或初始认证响应消息时,具体广播认证响应消息或初始认证响应消息,以便各当前芯片基于认证响应消息或初始认证响应消息中的芯片ID接收各自的认证响应消息或初始认证响应消息。
芯片接收到初始认证响应消息后,可以基于与对输出结果数据的签名数据的验证方法类似的方法,对初始认证响应消息中的初始签名数据进行验证,只有在芯片在第一预设时间内接收到针对初始认证请求的初始认证响应消息、且初始认证响应消息中的初始签名数据正确时,才进入激活状态以便进行挖矿,以及发起后续发送认证请求的流程。
本发明实施例至少提供了如下技术方案:
1、一种挖矿业务的安全认证方法,包括:
认证中心服务器接收挖矿机上报的认证请求,所述认证请求中包括待认证数据和所述挖矿机中发送所述认证请求的当前芯片的芯片标识ID;其中,芯片ID唯一标识一个芯片,所述待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据,所述工作任务由所述挖矿机加入的矿池分配给所述挖矿机;
认证中心服务器从所述矿池获取工作任务信息,并基于获取到的工作任务信息对所述输出结果数据进行认证;
若所述输出结果数据通过认证,对所述输出结果数据进行签名,得到签名数据,并向所述挖矿机反馈认证响应消息,所述认证响应消息中包括所述签名数据与所述芯片ID;
挖矿机基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
2、根据权利要求1所述的方法,所述认证中心服务器接收挖矿机上报的认证请求之前,还包括:
挖矿机中的控制板从矿池获取工作任务并向所述当前芯片下发所述工作任务的工作数据;
所述当前芯片基于预设算法对所述工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据;
所述控制板生成所述认证请求并上报所述认证中心服务器。
3、根据权利要求2所述的方法,向所述当前芯片下发所述工作任务的工作数据包括:控制板生成所述工作数据的循环冗余码校验CRC校验码并写入所述工作数据中,所述工作数据中还包括所述工作数据的CRC校验码;
所述基于预设算法对所述工作任务的工作数据进行计算之前,还包括:当前芯片基于所述工作数据中的CRC校验码对所述工作数据进行校验;若所述工作数据通过校验,执行所述基于预设算法对所述工作任务的工作数据进行计算的操作。
4、根据权利要求2或3所述的方法,所述获得符合预设输出条件的输出结果数据之后,还包括:
生成所述输出结果数据的CRC校验码并写入所述输出结果数据中,所述输出结果数据中还包括所述输出结果数据的CRC校验码。
5、根据权利要求4所述的方法,所述控制板生成所述认证请求包括:
所述控制板基于所述输出结果数据中的CRC校验码对所述输出结果数据进行校验;
若所述输出结果数据通过校验,基于所述输出结果数据和所述当前芯片的芯片ID生成认证请求。
6、根据权利要求2至5任意一项所述的方法,所述获得符合预设输出条件的输出结果数据之后,还包括:
所述当前芯片通过寄存器存储所述输出结果数据,所述寄存器中还存储有所述当前芯片的芯片ID。
7、根据权利要求1至6任意一项所述的方法,所述基于获取到的工作任务信息对所述认证请求中的输出结果数据进行认证包括:
认证中心服务器识别获取到的工作任务信息中是否包括所述输出结果数据,判断所述输出结果数据是否属于所述矿池;
若获取到的工作任务信息包括所述输出结果数据,所述输出结果数据属于所述矿池,则所述输出结果数据通过认证;
否则,若获取到的工作任务信息未包括所述输出结果数据,则所述输出结果数据未通过认证。
8、根据权利要求1至7任意一项所述的方法,对所述输出结果数据进行签名包括:
认证中心服务器从密钥库中获取所述芯片ID对应的私钥;
利用所述芯片ID对应的私钥对所述输出结果数据进行签名。
9、根据权利要求8所述的方法,所述私钥为非对称算法算法方式的密钥对中的私钥。
10、根据权利要求1至9任意一项所述的方法,挖矿机基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作包括:
挖矿机判断是否在发送认证请求的第一预设时间内接收到认证响应消息;
若在第一预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,挖矿机继续进行挖矿工作;
否则,若在第一预设时间内未接收到认证响应消息,或者第一预设时间内接收到的认证响应消息中的签名数据不正确,挖矿机停止挖矿工作。
11、根据权利要求10所述的方法,所述验证认证响应消息中的的签名数据是否正确包括:
所述当前芯片基于所述输出结果数据和预先存储的、非对称算法方式的密钥对中的公钥,验证所述认证响应消息中的签名数据是否正确。
12、根据权利要求10或11所述的方法,还包括:
所述挖矿机监测在发送所述认证请求后在第二预设时间内是否接收到认证响应消息;所述第二预设时间小于所述第一预设时间;
若在第二预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,则确定在第一预设时间内接收到的认证响应消息,且认证响应消息中的签名数据正确;
否则,若在第二预设时间内未接收到认证响应消息,或者第二预设时间内接收到的认证响应消息中的签名数据不正确,判断所述第一预设时间是否超时;
若所述第一预设时间超时,则确定在第一预设时间内未接收到认证响应消息;
否则,若所述第一预设时间未超时,则挖矿机生成新的认证请求并上报所述认证中心服务器,之后以新的认证请求作为本次认证请求,执行所述监测在发送所述认证请求后在第二预设时间内是否接收到认证响应消息的操作。
13、根据权利要求12所述的方法,所述当前芯片分别在相邻两次产生的输出结果数据中携带奇、偶位标识;
所述挖矿机相邻两次上报所述认证请求中的数据出结果数据中分别携带奇、偶位标识。
14、根据权利要求13所述的方法,所述是否接收到针对所述认证请求的认证响应消息包括:
所述当前芯片基于认证响应消息中所述输出结果数据中的奇、偶位标识,识别所述认证响应消息针对的认证请求,从而判断针对各认证请求是否接收到认证响应消息。
15、根据权利要求1至14任意一项所述的方法,所述认证中心服务器接收挖矿机上报的认证请求包括:挖矿机向矿池发送认证请求;矿池将所述认证请求转发给认证中心服务器;
所述将该签名数据发送给所述挖矿机包括:
认证中心服务器向矿池反馈所述认证响应消息;
矿池根据所述认证响应消息中的芯片ID,将所述认证响应消息发送给所述挖矿机中的控制板;
所述控制板向所述当前芯片发送所述认证响应消息。
16、根据权利要求15所述的方法,挖矿机向矿池发送认证请求之后,还包括:
矿池校验所述认证请求中输出结果数据的难度是否符合预设难度要求;
若所述认证请求中输出结果数据的难度符合预设难度要求,执行所述矿池将所述认证请求转发给认证中心服务器的操作。
17、根据权利要求1至14任意一项所述的方法,所述认证中心服务器接收挖矿机上报的认证请求包括:挖矿机向认证中心服务器发送所述认证请求;
所述将该签名数据发送给所述挖矿机包括:
所述认证中心服务器根据所述认证响应消息中的芯片ID,将所述认证响应消息发送给挖矿机中的控制板;
所述控制板向所述当前芯片发送所述认证响应消息。
18、根据权利要求17所述的方法,所述认证中心服务器接收挖矿机上报的认证请求之后,还包括:
认证中心服务器校验所述认证请求中输出结果数据的难度是否符合所述矿池的预设难度要求;
若所述认证请求中输出结果数据的难度符合预设难度要求,执行所述认证中心服务器从所述矿池获取工作任务信息的操作。
19、根据权利要求1至18任意一项所述的方法,所述认证中心服务器接收挖矿机上报的认证请求之前,还包括:
所述当前芯片上电复位后,生成一个随机数,并将所述随机数与所述芯片ID发送给控制板;
控制板基于所述随机数与所述芯片ID生成初始认证请求,并将该初始认证请求发送给认证中心服务器;
认证中心服务器对所述随机数进行签名,得到初始签名数据,并向所述控制板反馈初始认证响应消息,所述初始认证响应消息中包括所述初始签名数据、所述随机数与所述芯片ID;
控制板将所述初始认证响应消息转发给所述当前芯片;
所述当前芯片基于是否接收到针对所述初始认证请求的初始认证响应消息、以及初始认证响应消息中的初始签名数据是否正确,确认是否进入激活状态以便进行挖矿。
20、根据权利要求19所述的方法,控制板将该初始认证请求发送给认证中心服务器包括:控制板将该初始认证请求发送给矿池;矿池将所述初始认证请求转发给认证中心服务器;
向所述控制板反馈初始认证响应消息包括:认证中心服务器向矿池反馈所述初始认证响应消息;矿池根据所述初始认证响应消息中的芯片ID,将所述初始认证响应消息发送给所述控制板。
21、根据权利要求19所述的方法,控制板将该初始认证请求发送给认证中心服务器包括:控制板将该初始认证请求发送给认证中心服务器;
向所述控制板反馈初始认证响应消息包括:认证中心服务器向控制板反馈所述初始认证响应消息。
22、根据权利要求15至21任意一项所述的方法,所述挖矿机包括多个芯片,分别作为多个当前芯片,基于预设算法对所述工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据;
所述控制板分别基于多个芯片的芯片ID和输出结果数据生成多个认证请求并上报所述认证中心服务器;
控制板向所述当前芯片发送认证响应消息或初始认证响应消息包括:
控制板广播所述认证响应消息或初始认证响应消息,以便各当前芯片基于认证响应消息或初始认证响应消息中的芯片ID接收各自的认证响应消息或初始认证响应消息。
23、一种挖矿业务的安全认证系统,包括:
认证中心服务器,用于接收挖矿机上报的认证请求,所述认证请求中包括待认证数据和所述挖矿机中发送所述认证请求的当前芯片的芯片标识ID;其中,芯片ID唯一标识一个芯片,所述待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据,所述工作任务由所述挖矿机加入的矿池分配给所述挖矿机;从所述矿池获取工作任务信息,并基于获取到的工作任务信息对所述输出结果数据进行认证;若所述输出结果数据通过认证,对所述输出结果数据进行签名,得到签名数据,并向所述挖矿机反馈认证响应消息,所述认证响应消息中包括所述签名数据与所述芯片ID;
矿池,用于向加入的挖矿机分配工作任务,存储有分配给各挖矿机的工作任务信息;
挖矿机,用于基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
24、根据权利要求23所述的系统,所述挖矿机包括控制板和芯片;所述芯片包括所述当前芯片;
所述控制板,用于从矿池获取工作任务并向所述当前芯片下发所述工作任务的工作数据;以及基于所述芯片ID和当前芯片产生的随机数生成所述认证请求并上报所述认证中心服务器;
所述当前芯片,基于预设算法对所述工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据。
25、根据权利要求24所述的系统,所述控制板向所述当前芯片下发所述工作任务的工作数据时,具体生成所述工作数据的循环冗余码校验CRC校验码并写入所述工作数据中,所述工作数据中还包括所述工作数据的CRC校验码;
所述当前芯片,还用于在基于预设算法对所述工作任务的工作数据进行计算之前,基于所述工作数据中的CRC校验码对所述工作数据进行校验;若所述工作数据通过校验,执行所述基于预设算法对所述工作任务的工作数据进行计算的操作。
26、根据权利要求24或25所述的系统,所述当前芯片,还用于在获得符合预设输出条件的输出结果数据之后,生成所述输出结果数据的CRC校验码并写入所述输出结果数据中,所述输出结果数据中还包括所述输出结果数据的CRC校验码。
27、根据权利要求26所述的系统,所述控制板生成所述认证请求时,具体基于所述输出结果数据中的CRC校验码对所述输出结果数据进行校验;若所述输出结果数据通过校验,基于所述输出结果数据和所述当前芯片的芯片ID生成认证请求。
28、根据权利要求24至27任意一项所述的系统,所述当前芯片,还用于在获得符合预设输出条件的输出结果数据之后,通过寄存器存储所述输出结果数据,所述寄存器中还存储有所述当前芯片的芯片ID。
29、根据权利要求23至28任意一项所述的系统,所述认证中心服务器基于获取到的工作任务信息对所述获得符合预设输出条件的输出结果数据进行认证时,具体用于:
识别获取到的工作任务信息中是否包括所述输出结果数据,判断所述输出结果数据是否属于所述矿池;
若获取到的工作任务信息包括所述随机数,所述输出结果数据属于所述矿池,则所述输出结果数据通过认证;
否则,若获取到的工作任务信息未包括所述输出结果数据,则所述输出结果数据未通过认证。
30、根据权利要求23至29任意一项所述的系统,所述认证中心服务器对所述输出结果数据进行签名时,具体用于:从密钥库中获取所述芯片ID对应的私钥;以及利用所述芯片ID对应的私钥对所述输出结果数据进行签名。
31、根据权利要求30所述的系统,所述私钥为非对称算法方式的密钥对中的私钥。
32、根据权利要求23至31任意一项所述的系统,所述挖矿机基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作时,具体用于:
判断是否在发送认证请求的第一预设时间内接收到认证响应消息;
若在第一预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,继续进行挖矿工作;
否则,若在第一预设时间内未接收到认证响应消息,或者第一预设时间内接收到的认证响应消息中的签名数据不正确,停止挖矿工作。
33、根据权利要求32所述的系统,所述当前芯片验证认证响应消息中的的签名数据是否正确时,具体用于:
基于所述输出结果数据和预先存储的、非对称算法方式的密钥对中的公钥,验证所述认证响应消息中的签名数据是否正确。
34、根据权利要求32或33所述的系统,所述挖矿机,还用于:
监测在发送所述认证请求后在第二预设时间内是否接收到认证响应消息;所述第二预设时间小于所述第一预设时间;
若在第二预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,则确定在第一预设时间内接收到的认证响应消息,且认证响应消息中的签名数据正确;
否则,若在第二预设时间内未接收到认证响应消息,或者第二预设时间内接收到的认证响应消息中的签名数据不正确,判断所述第一预设时间是否超时;
若所述第一预设时间超时,则确定在第一预设时间内未接收到认证响应消息;
否则,若所述第一预设时间未超时,则挖矿机生成新的认证请求并上报所述认证中心服务器,之后以新的认证请求作为本次认证请求,执行所述监测在发送所述认证请求后在第二预设时间内是否接收到认证响应消息的操作。
35、根据权利要求34所述的系统,所述当前芯片分别在相邻两次产生的输出结果数据中携带奇、偶位标识;
所述挖矿机相邻两次上报所述认证请求中的数据出结果数据中分别携带奇、偶位标识。
36、根据权利要求35所述的系统,所述挖矿机判断是否接收到针对所述认证请求的认证响应消息时,具体用于:
所述当前芯片基于认证响应消息中输出结果数据中的奇、偶位标识,识别所述认证响应消息针对的认证请求,从而判断针对各认证请求是否接收到认证响应消息。
37、根据权利要求33至36任意一项所述的系统,所述挖矿机具体通过矿池向所述认证中心服务器发送认证请求;矿池将所述认证请求转发给认证中心服务器;
所述认证中心服务器具体通过矿池向所述挖矿机中的控制板反馈所述认证响应消息;所述控制板还用于向所述当前芯片发送所述认证响应消息。
38、根据权利要求37所述的系统,所述矿池还用于在接收到所述认证请求后,校验所述认证请求中输出结果数据的难度是否符合预设难度要求;
若所述认证请求中输出结果数据的难度符合预设难度要求,执行将所述认证请求转发给认证中心服务器的操作。
39、根据权利要求23至36任意一项所述的系统,所述认证中心服务器,还用于在接收挖矿机上报的认证请求之后:
校验所述认证请求中输出结果数据的难度是否符合所述矿池的预设难度要求;
若所述认证请求中输出结果数据的难度符合预设难度要求,执行从所述矿池获取工作任务信息的操作。
40、根据权利要求23至39任意一项所述的系统,所述当前芯片,还用于在上电复位后,生成一个随机数,并将所述随机数与所述芯片ID发送给控制板;以及基于是否接收到针对所述初始认证请求的初始认证响应消息、以及初始认证响应消息中的初始签名数据是否正确,确认是否进入激活状态以便进行挖矿;
所述控制板,还用于基于所述随机数与所述芯片ID生成初始认证请求,并将该初始认证请求发送给认证中心服务器;以及将所述认证中心服务器反馈的初始认证响应消息转发给所述当前芯片;
所述认证中心服务器,还用于对所述随机数进行签名,得到初始签名数据,并向所述控制板反馈初始认证响应消息,所述初始认证响应消息中包括所述初始签名数据、所述随机数与所述芯片ID。
41、根据权利要求40所述的系统,所述控制板具体通过矿池将所述初始认证请求转发给认证中心服务器;
所述认证中心服务器向所述控制板反馈初始认证响应消息时,具体用于向矿池反馈所述初始认证响应消息;
所述矿池,还用于根据所述初始认证响应消息中的芯片ID,将所述初始认证响应消息发送给所述控制板。
42、根据权利要求37至41任意一项所述的系统,所述挖矿机包括多个芯片分别作为多个当前芯片,基于预设算法对所述工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据;以及基于控制板广播的认证响应消息或初始认证响应消息中的芯片ID接收各自的认证响应消息或初始认证响应消息;
所述控制板具体分别基于多个芯片的芯片ID和输出结果数据生成多个认证请求并上报所述认证中心服务器;向所述当前芯片发送认证响应消息或初始认证响应消息时,具体广播所述认证响应消息或初始认证响应消息,以便各当前芯片基于认证响应消息或初始认证响应消息中的芯片ID接收各自的认证响应消息或初始认证响应消息。本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

Claims (42)

1.一种挖矿业务的安全认证方法,包括:
认证中心服务器接收挖矿机上报的认证请求,所述认证请求中包括待认证数据和所述挖矿机中发送所述认证请求的当前芯片的芯片标识ID;其中,芯片ID唯一标识一个芯片,所述待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据,所述工作任务由所述挖矿机加入的矿池分配给所述挖矿机;
认证中心服务器从所述矿池获取工作任务信息,并基于获取到的工作任务信息对所述输出结果数据进行认证;
若所述输出结果数据通过认证,对所述输出结果数据进行签名,得到签名数据,并向所述挖矿机反馈认证响应消息,所述认证响应消息中包括所述签名数据与所述芯片ID;
挖矿机基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
2.根据权利要求1所述的方法,所述认证中心服务器接收挖矿机上报的认证请求之前,还包括:
挖矿机中的控制板从矿池获取工作任务并向所述当前芯片下发所述工作任务的工作数据;
所述当前芯片基于预设算法对所述工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据;
所述控制板生成所述认证请求并上报所述认证中心服务器。
3.根据权利要求2所述的方法,向所述当前芯片下发所述工作任务的工作数据包括:控制板生成所述工作数据的循环冗余码校验CRC校验码并写入所述工作数据中,所述工作数据中还包括所述工作数据的CRC校验码;
所述基于预设算法对所述工作任务的工作数据进行计算之前,还包括:当前芯片基于所述工作数据中的CRC校验码对所述工作数据进行校验;若所述工作数据通过校验,执行所述基于预设算法对所述工作任务的工作数据进行计算的操作。
4.根据权利要求2所述的方法,所述获得符合预设输出条件的输出结果数据之后,还包括:
生成所述输出结果数据的CRC校验码并写入所述输出结果数据中,所述输出结果数据中还包括所述输出结果数据的CRC校验码。
5.根据权利要求4所述的方法,所述控制板生成所述认证请求包括:
所述控制板基于所述输出结果数据中的CRC校验码对所述输出结果数据进行校验;
若所述输出结果数据通过校验,基于所述输出结果数据和所述当前芯片的芯片ID生成认证请求。
6.根据权利要求2至5任意一项所述的方法,所述获得符合预设输出条件的输出结果数据之后,还包括:
所述当前芯片通过寄存器存储所述输出结果数据,所述寄存器中还存储有所述当前芯片的芯片ID。
7.根据权利要求1至5任意一项所述的方法,所述基于获取到的工作任务信息对所述认证请求中的输出结果数据进行认证包括:
认证中心服务器识别获取到的工作任务信息中是否包括所述输出结果数据,判断所述输出结果数据是否属于所述矿池;
若获取到的工作任务信息包括所述输出结果数据,所述输出结果数据属于所述矿池,则所述输出结果数据通过认证;
否则,若获取到的工作任务信息未包括所述输出结果数据,则所述输出结果数据未通过认证。
8.根据权利要求1至5任意一项所述的方法,对所述输出结果数据进行签名包括:
认证中心服务器从密钥库中获取所述芯片ID对应的私钥;
利用所述芯片ID对应的私钥对所述输出结果数据进行签名。
9.根据权利要求8所述的方法,所述私钥为非对称算法算法方式的密钥对中的私钥。
10.根据权利要求1至5任意一项所述的方法,挖矿机基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作包括:
挖矿机判断是否在发送认证请求的第一预设时间内接收到认证响应消息;
若在第一预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,挖矿机继续进行挖矿工作;
否则,若在第一预设时间内未接收到认证响应消息,或者第一预设时间内接收到的认证响应消息中的签名数据不正确,挖矿机停止挖矿工作。
11.根据权利要求10所述的方法,所述验证认证响应消息中的的签名数据是否正确包括:
所述当前芯片基于所述输出结果数据和预先存储的、非对称算法方式的密钥对中的公钥,验证所述认证响应消息中的签名数据是否正确。
12.根据权利要求10所述的方法,还包括:
所述挖矿机监测在发送所述认证请求后在第二预设时间内是否接收到认证响应消息;所述第二预设时间小于所述第一预设时间;
若在第二预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,则确定在第一预设时间内接收到的认证响应消息,且认证响应消息中的签名数据正确;
否则,若在第二预设时间内未接收到认证响应消息,或者第二预设时间内接收到的认证响应消息中的签名数据不正确,判断所述第一预设时间是否超时;
若所述第一预设时间超时,则确定在第一预设时间内未接收到认证响应消息;
否则,若所述第一预设时间未超时,则挖矿机生成新的认证请求并上报所述认证中心服务器,之后以新的认证请求作为本次认证请求,执行所述监测在发送所述认证请求后在第二预设时间内是否接收到认证响应消息的操作。
13.根据权利要求12所述的方法,所述当前芯片分别在相邻两次产生的输出结果数据中携带奇、偶位标识;
所述挖矿机相邻两次上报所述认证请求中的输出结果数据中分别携带奇、偶位标识。
14.根据权利要求13所述的方法,所述是否接收到针对所述认证请求的认证响应消息包括:
所述当前芯片基于认证响应消息中所述输出结果数据中的奇、偶位标识,识别所述认证响应消息针对的认证请求,从而判断针对各认证请求是否接收到认证响应消息。
15.根据权利要求1至5或11至14任意一项所述的方法,所述认证中心服务器接收挖矿机上报的认证请求包括:挖矿机向矿池发送认证请求;矿池将所述认证请求转发给认证中心服务器;
所述向所述挖矿机反馈认证响应消息包括:
认证中心服务器向矿池反馈所述认证响应消息;
矿池根据所述认证响应消息中的芯片ID,将所述认证响应消息发送给所述挖矿机中的控制板;
所述控制板向所述当前芯片发送所述认证响应消息。
16.根据权利要求15所述的方法,挖矿机向矿池发送认证请求之后,还包括:
矿池校验所述认证请求中输出结果数据的难度是否符合预设难度要求;
若所述认证请求中输出结果数据的难度符合预设难度要求,执行所述矿池将所述认证请求转发给认证中心服务器的操作。
17.根据权利要求1至5或11至14任意一项所述的方法,所述认证中心服务器接收挖矿机上报的认证请求包括:挖矿机向认证中心服务器发送所述认证请求;
所述向所述挖矿机反馈认证响应消息包括:
所述认证中心服务器根据所述认证响应消息中的芯片ID,将所述认证响应消息发送给挖矿机中的控制板;
所述控制板向所述当前芯片发送所述认证响应消息。
18.根据权利要求17所述的方法,所述认证中心服务器接收挖矿机上报的认证请求之后,还包括:
认证中心服务器校验所述认证请求中输出结果数据的难度是否符合所述矿池的预设难度要求;
若所述认证请求中输出结果数据的难度符合预设难度要求,执行所述认证中心服务器从所述矿池获取工作任务信息的操作。
19.根据权利要求1至5或11至14任意一项所述的方法,所述认证中心服务器接收挖矿机上报的认证请求之前,还包括:
所述当前芯片上电复位后,生成一个随机数,并将所述随机数与所述芯片ID发送给控制板;
控制板基于所述随机数与所述芯片ID生成初始认证请求,并将该初始认证请求发送给认证中心服务器;
认证中心服务器对所述随机数进行签名,得到初始签名数据,并向所述控制板反馈初始认证响应消息,所述初始认证响应消息中包括所述初始签名数据、所述随机数与所述芯片ID;
控制板将所述初始认证响应消息转发给所述当前芯片;
所述当前芯片基于是否接收到针对所述初始认证请求的初始认证响应消息、以及初始认证响应消息中的初始签名数据是否正确,确认是否进入激活状态以便进行挖矿。
20.根据权利要求19所述的方法,控制板将该初始认证请求发送给认证中心服务器包括:控制板将该初始认证请求发送给矿池;矿池将所述初始认证请求转发给认证中心服务器;
向所述控制板反馈初始认证响应消息包括:认证中心服务器向矿池反馈所述初始认证响应消息;矿池根据所述初始认证响应消息中的芯片ID,将所述初始认证响应消息发送给所述控制板。
21.根据权利要求19所述的方法,控制板将该初始认证请求发送给认证中心服务器包括:控制板将该初始认证请求发送给认证中心服务器;
向所述控制板反馈初始认证响应消息包括:认证中心服务器向控制板反馈所述初始认证响应消息。
22.根据权利要求15所述的方法,所述挖矿机包括多个芯片,分别作为多个当前芯片,基于预设算法对所述工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据;
所述控制板分别基于多个芯片的芯片ID和输出结果数据生成多个认证请求并上报所述认证中心服务器;
控制板向所述当前芯片发送认证响应消息或初始认证响应消息包括:
控制板广播所述认证响应消息或初始认证响应消息,以便各当前芯片基于认证响应消息或初始认证响应消息中的芯片ID接收各自的认证响应消息或初始认证响应消息。
23.一种挖矿业务的安全认证系统,包括:
认证中心服务器,用于接收挖矿机上报的认证请求,所述认证请求中包括待认证数据和所述挖矿机中发送所述认证请求的当前芯片的芯片标识ID;其中,芯片ID唯一标识一个芯片,所述待认证数据包括基于工作任务的工作数据进行计算获得的输出结果数据,所述工作任务由所述挖矿机加入的矿池分配给所述挖矿机;从所述矿池获取工作任务信息,并基于获取到的工作任务信息对所述输出结果数据进行认证;若所述输出结果数据通过认证,对所述输出结果数据进行签名,得到签名数据,并向所述挖矿机反馈认证响应消息,所述认证响应消息中包括所述签名数据与所述芯片ID;
矿池,用于向加入的挖矿机分配工作任务,存储有分配给各挖矿机的工作任务信息;
挖矿机,用于基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作。
24.根据权利要求23所述的系统,所述挖矿机包括控制板和芯片;所述芯片包括所述当前芯片;
所述控制板,用于从矿池获取工作任务并向所述当前芯片下发所述工作任务的工作数据;以及基于所述芯片ID和当前芯片产生的随机数生成所述认证请求并上报所述认证中心服务器;
所述当前芯片,基于预设算法对所述工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据。
25.根据权利要求24所述的系统,所述控制板向所述当前芯片下发所述工作任务的工作数据时,具体生成所述工作数据的循环冗余码校验CRC校验码并写入所述工作数据中,所述工作数据中还包括所述工作数据的CRC校验码;
所述当前芯片,还用于在基于预设算法对所述工作任务的工作数据进行计算之前,基于所述工作数据中的CRC校验码对所述工作数据进行校验;若所述工作数据通过校验,执行所述基于预设算法对所述工作任务的工作数据进行计算的操作。
26.根据权利要求24所述的系统,所述当前芯片,还用于在获得符合预设输出条件的输出结果数据之后,生成所述输出结果数据的CRC校验码并写入所述输出结果数据中,所述输出结果数据中还包括所述输出结果数据的CRC校验码。
27.根据权利要求26所述的系统,所述控制板生成所述认证请求时,具体基于所述输出结果数据中的CRC校验码对所述输出结果数据进行校验;若所述输出结果数据通过校验,基于所述输出结果数据和所述当前芯片的芯片ID生成认证请求。
28.根据权利要求24至27任意一项所述的系统,所述当前芯片,还用于在获得符合预设输出条件的输出结果数据之后,通过寄存器存储所述输出结果数据,所述寄存器中还存储有所述当前芯片的芯片ID。
29.根据权利要求23至27任意一项所述的系统,所述认证中心服务器基于获取到的工作任务信息对所述获得符合预设输出条件的输出结果数据进行认证时,具体用于:
识别获取到的工作任务信息中是否包括所述输出结果数据,判断所述输出结果数据是否属于所述矿池;
若获取到的工作任务信息包括所述输出结果数据,所述输出结果数据属于所述矿池,则所述输出结果数据通过认证;
否则,若获取到的工作任务信息未包括所述输出结果数据,则所述输出结果数据未通过认证。
30.根据权利要求23至27任意一项所述的系统,所述认证中心服务器对所述输出结果数据进行签名时,具体用于:从密钥库中获取所述芯片ID对应的私钥;以及利用所述芯片ID对应的私钥对所述输出结果数据进行签名。
31.根据权利要求30所述的系统,所述私钥为非对称算法方式的密钥对中的私钥。
32.根据权利要求23至27任意一项所述的系统,所述挖矿机基于是否接收到针对所述认证请求的认证响应消息、以及认证响应消息中的签名数据是否正确,确认是否进行挖矿工作时,具体用于:
判断是否在发送认证请求的第一预设时间内接收到认证响应消息;
若在第一预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,继续进行挖矿工作;
否则,若在第一预设时间内未接收到认证响应消息,或者第一预设时间内接收到的认证响应消息中的签名数据不正确,停止挖矿工作。
33.根据权利要求32所述的系统,所述当前芯片验证认证响应消息中的的签名数据是否正确时,具体用于:
基于所述输出结果数据和预先存储的、非对称算法方式的密钥对中的公钥,验证所述认证响应消息中的签名数据是否正确。
34.根据权利要求32所述的系统,所述挖矿机,还用于:
监测在发送所述认证请求后在第二预设时间内是否接收到认证响应消息;所述第二预设时间小于所述第一预设时间;
若在第二预设时间内接收到认证响应消息,验证认证响应消息中的签名数据是否正确;
若认证响应消息中的签名数据正确,则确定在第一预设时间内接收到的认证响应消息,且认证响应消息中的签名数据正确;
否则,若在第二预设时间内未接收到认证响应消息,或者第二预设时间内接收到的认证响应消息中的签名数据不正确,判断所述第一预设时间是否超时;
若所述第一预设时间超时,则确定在第一预设时间内未接收到认证响应消息;
否则,若所述第一预设时间未超时,则挖矿机生成新的认证请求并上报所述认证中心服务器,之后以新的认证请求作为本次认证请求,执行所述监测在发送所述认证请求后在第二预设时间内是否接收到认证响应消息的操作。
35.根据权利要求34所述的系统,所述当前芯片分别在相邻两次产生的输出结果数据中携带奇、偶位标识;
所述挖矿机相邻两次上报所述认证请求中的输出结果数据中分别携带奇、偶位标识。
36.根据权利要求35所述的系统,所述挖矿机判断是否接收到针对所述认证请求的认证响应消息时,具体用于:
所述当前芯片基于认证响应消息中输出结果数据中的奇、偶位标识,识别所述认证响应消息针对的认证请求,从而判断针对各认证请求是否接收到认证响应消息。
37.根据权利要求23至27或33至36任意一项所述的系统,所述挖矿机具体通过矿池向所述认证中心服务器发送认证请求;矿池将所述认证请求转发给认证中心服务器;
所述认证中心服务器具体通过矿池向所述挖矿机中的控制板反馈所述认证响应消息;所述控制板还用于向所述当前芯片发送所述认证响应消息。
38.根据权利要求37所述的系统,所述矿池还用于在接收到所述认证请求后,校验所述认证请求中输出结果数据的难度是否符合预设难度要求;
若所述认证请求中输出结果数据的难度符合预设难度要求,执行将所述认证请求转发给认证中心服务器的操作。
39.根据权利要求23至27或33至36任意一项所述的系统,所述认证中心服务器,还用于在接收挖矿机上报的认证请求之后:
校验所述认证请求中输出结果数据的难度是否符合所述矿池的预设难度要求;
若所述认证请求中输出结果数据的难度符合预设难度要求,执行从所述矿池获取工作任务信息的操作。
40.根据权利要求23至27或33至36任意一项所述的系统,所述当前芯片,还用于在上电复位后,生成一个随机数,并将所述随机数与所述芯片ID发送给控制板;以及基于是否接收到针对初始认证请求的初始认证响应消息、以及初始认证响应消息中的初始签名数据是否正确,确认是否进入激活状态以便进行挖矿;
所述控制板,还用于基于所述随机数与所述芯片ID生成初始认证请求,并将该初始认证请求发送给认证中心服务器;以及将所述认证中心服务器反馈的初始认证响应消息转发给所述当前芯片;
所述认证中心服务器,还用于对所述随机数进行签名,得到初始签名数据,并向所述控制板反馈初始认证响应消息,所述初始认证响应消息中包括所述初始签名数据、所述随机数与所述芯片ID。
41.根据权利要求40所述的系统,所述控制板具体通过矿池将所述初始认证请求转发给认证中心服务器;
所述认证中心服务器向所述控制板反馈初始认证响应消息时,具体用于向矿池反馈所述初始认证响应消息;
所述矿池,还用于根据所述初始认证响应消息中的芯片ID,将所述初始认证响应消息发送给所述控制板。
42.根据权利要求37所述的系统,所述挖矿机包括多个芯片分别作为多个当前芯片,基于预设算法对所述工作任务的工作数据进行计算,获得符合预设输出条件的输出结果数据;以及基于控制板广播的认证响应消息或初始认证响应消息中的芯片ID接收各自的认证响应消息或初始认证响应消息。
CN201610621224.3A 2016-08-01 2016-08-01 挖矿业务的安全认证方法和系统 Active CN106254339B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610621224.3A CN106254339B (zh) 2016-08-01 2016-08-01 挖矿业务的安全认证方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610621224.3A CN106254339B (zh) 2016-08-01 2016-08-01 挖矿业务的安全认证方法和系统

Publications (2)

Publication Number Publication Date
CN106254339A CN106254339A (zh) 2016-12-21
CN106254339B true CN106254339B (zh) 2019-05-07

Family

ID=57606299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610621224.3A Active CN106254339B (zh) 2016-08-01 2016-08-01 挖矿业务的安全认证方法和系统

Country Status (1)

Country Link
CN (1) CN106254339B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850775B (zh) * 2017-01-13 2020-05-12 比特大陆科技有限公司 矿池与矿机交互数据的方法、代理端、矿池和系统
CN106844608B (zh) * 2017-01-18 2020-12-11 比特大陆科技有限公司 探测和切换数据的方法、装置和电子设备
CN108959335B (zh) * 2017-12-08 2021-05-25 普华云创科技(北京)有限公司 基于区块链技术的共识方法及系统
CN108363925B (zh) * 2018-03-16 2021-06-25 北京奇虎科技有限公司 网页挖矿脚本的识别方法及装置
CN109190387B (zh) * 2018-08-01 2022-07-26 浙江微片科技有限公司 一种用于对数字区块链计算设备远程标识的方法及系统
CN109921906B (zh) * 2019-01-21 2022-04-05 奥科塞尔控股公司 一种将多种不同的矿机统一接入矿池的方法
CN110879887B (zh) * 2019-11-15 2022-03-04 杭州安恒信息技术股份有限公司 一种挖矿木马程序修复方法、装置、设备、介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320262A (zh) * 2014-11-05 2015-01-28 中国科学院合肥物质科学研究院 基于加密数字货币公开账本技术的用户公钥地址绑定、检索和校验的方法及系统
CN104915249A (zh) * 2015-05-21 2015-09-16 北京比特大陆科技有限公司 矿池中挖虚拟数字币的方法和装置
CN105045364A (zh) * 2015-07-21 2015-11-11 北京比特大陆科技有限公司 串联供电电路、虚拟数字币挖矿机和计算机服务器
CN105245327A (zh) * 2015-08-21 2016-01-13 北京比特大陆科技有限公司 比特币工作量证明哈希计算芯片优化的方法、装置和电路
CN105701372A (zh) * 2015-12-18 2016-06-22 布比(北京)网络技术有限公司 一种区块链身份构建及验证方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150302357A1 (en) * 2014-04-18 2015-10-22 Rohit Chandra Method and system for evaluating user assertions
US10346814B2 (en) * 2014-06-04 2019-07-09 MONI Limited System and method for executing financial transactions

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320262A (zh) * 2014-11-05 2015-01-28 中国科学院合肥物质科学研究院 基于加密数字货币公开账本技术的用户公钥地址绑定、检索和校验的方法及系统
CN104915249A (zh) * 2015-05-21 2015-09-16 北京比特大陆科技有限公司 矿池中挖虚拟数字币的方法和装置
CN105045364A (zh) * 2015-07-21 2015-11-11 北京比特大陆科技有限公司 串联供电电路、虚拟数字币挖矿机和计算机服务器
CN105245327A (zh) * 2015-08-21 2016-01-13 北京比特大陆科技有限公司 比特币工作量证明哈希计算芯片优化的方法、装置和电路
CN105701372A (zh) * 2015-12-18 2016-06-22 布比(北京)网络技术有限公司 一种区块链身份构建及验证方法

Also Published As

Publication number Publication date
CN106254339A (zh) 2016-12-21

Similar Documents

Publication Publication Date Title
CN106254339B (zh) 挖矿业务的安全认证方法和系统
CN109067539B (zh) 联盟链交易方法、设备及计算机可读存储介质
US9838205B2 (en) Network authentication method for secure electronic transactions
CN109756485A (zh) 电子合同签署方法、装置、计算机设备及存储介质
CN103051628B (zh) 基于服务器获取认证令牌的方法及系统
CN109672539A (zh) Sm2算法协同签名及解密方法、装置及系统
CN108965230A (zh) 一种安全通信方法、系统及终端设备
CN109274503A (zh) 分布式协同签名方法及分布式协同签名装置、软盾系统
US9900148B1 (en) System and method for encryption
CN109039628A (zh) 密钥协商方法、云服务器、设备、存储介质以及系统
CN109040149A (zh) 密钥协商方法、云服务器、设备、存储介质以及系统
CN103078742B (zh) 数字证书的生成方法和系统
CN109918888B (zh) 基于公钥池的抗量子证书颁发方法及颁发系统
CN110930147B (zh) 离线支付方法、装置、电子设备及计算机可读存储介质
CN110290102A (zh) 基于应用的业务安全系统及方法
CN109361508A (zh) 数据传输方法、电子设备及计算机可读存储介质
CN103036681B (zh) 一种密码安全键盘装置及系统
CN110380859B (zh) 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和系统
CN108964922A (zh) 移动终端令牌激活方法、终端设备及服务器
CN112910660B (zh) 区块链系统的证书颁发方法、添加方法及交易处理方法
CN106850207A (zh) 无ca的身份认证方法和系统
CN111418182B (zh) 信息处理装置、登记装置、信息处理方法、登记方法和计算机程序
JP2021506151A (ja) ブラインド化された帰結選択のためのブロックチェーンで実装されるセキュリティー・システムおよび方法
CN109815659A (zh) 基于web项目的安全认证方法、装置、电子设备及存储介质
CN115242553B (zh) 一种支持安全多方计算的数据交换方法及系统

Legal Events

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