CN107819572A - 命令传输方法、装置及电子设备 - Google Patents
命令传输方法、装置及电子设备 Download PDFInfo
- Publication number
- CN107819572A CN107819572A CN201710910377.4A CN201710910377A CN107819572A CN 107819572 A CN107819572 A CN 107819572A CN 201710910377 A CN201710910377 A CN 201710910377A CN 107819572 A CN107819572 A CN 107819572A
- Authority
- CN
- China
- Prior art keywords
- control
- order
- ore deposit
- control extension
- deposit machine
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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
- H04L9/3239—Cryptographic 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 involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0822—Key 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 key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0872—Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
- H04L9/16—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3297—Cryptographic 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 time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明是关于一种命令传输方法、装置及电子设备,属于信息技术领域。所述方法包括:根据当前时间,获取加密密钥;基于所述加密密钥,对控制命令进行加密,生成加密控制命令;将所述加密控制命令传输至矿机节点,由所述矿机节点对所述加密控制命令进行解密,并执行所述控制命令。本发明根据当前时间,获取加密密钥,并使用加密密钥对控制命令进行加密,生成加密控制命令,将加密控制命令传输至矿机节点,由矿机节点对加密控制命令进行解密,执行控制命令,使得加密密钥可以随着时间变化,恶意用户不能轻易使用固定的密码对加密控制命令进行解密,矿机节点不容易被恶意用户控制,保证了矿机节点的正常运行,提高了矿机节点的处理效率。
Description
技术领域
本发明涉及信息技术领域,特别涉及一种命令传输方法、装置及电子设备。
背景技术
随着信息技术的不断发展,区块链作为一项全新的技术得到大力的发展。区块链技术脱胎于2008年出现的比特币技术,是比特币的底层技术。区块链是指一串使用密码学方法相关联产生的区块,区块链中每个区块中的区块数据均与上一个区块中的区块数据存在关联。为了保证可以迅速的生成区块链中的区块,且保证区块中数据的正确性,在应用区块链技术的数据共享系统中,会存在生成区块的矿机节点,矿机节点通过P2P(Peer toPeer,对等网络)网络监听数据共享系统中的共享广播,对共享广播进行确认,并生成包括共享广播的区块,当完成上述工作后,矿机节点便可以赚取用于加速处理共享广播的手续费以及增发的数字货币。
相关技术中,矿机节点由用户基于控制终端进行远程控制,用户通过控制终端向矿机节点下发控制命令,当矿机节点接收到该控制命令时,执行该控制命令。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
由于用户通过控制终端远程控制矿机节点,导致恶意用户也可以通过其他控制终端向矿机节点发送控制命令,而由于矿机节点无法确认接收到的控制命令是否被恶意篡改,导致用户的矿机节点很容易被恶意用户控制,影响了矿机节点的正常运行,降低了矿机节点的处理效率。
发明内容
为克服相关技术中存在的矿机节点无法确认接收到的控制命令是否被恶意篡改,导致用户的矿机节点很容易被恶意用户控制,影响了矿机节点的正常运行,降低了矿机节点的处理效率的问题,本发明提供一种命令传输方法、装置及电子设备。
根据本发明实施例的第一方面,提供一种命令传输方法,所述方法应用于控制终端,所述方法包括:
根据当前时间,获取加密密钥;
基于所述加密密钥,对控制命令进行加密,生成加密控制命令;
将所述加密控制命令传输至矿机节点,由所述矿机节点对所述加密控制命令进行解密,并执行所述控制命令。
在另一个实施例中,所述根据当前时间,获取加密密钥包括:
当检测到用户请求发送控制命令时,确定所述当前时间;
根据所述当前时间,确定初始加密密钥;
基于第一预设算法,对所述初始加密密钥进行运算,生成所述加密密钥,所述第一预设算法至少包括哈希算法。
在另一个实施例中,所述将所述加密控制命令传输至矿机节点之前,所述方法还包括:
为所述加密控制命令添加时间戳;
相应的,所述将所述加密控制命令传输至矿机节点包括:
将所述加密控制命令和所述时间戳传输至所述矿机节点。
在另一个实施例中,所述方法还包括:
接收所述矿机节点返回的无效响应,所述无效响应由所述矿机节点对所述加密控制命令解密失败后发送,所述无效响应携带解密失败的加密控制命令的命令标识;
基于所述无效响应的命令标识,确定指定控制命令,所述指定控制命令为所述解密失败的加密控制命令中携带的控制命令;
对所述指定控制命令进行加密,生成指定加密控制命令;
将所述指定加密控制命令传输至所述矿机节点,以使所述矿机节点对所述指定加密控制命令进行解密,并执行所述指定加密控制命令携带的指定控制命令。
根据本发明实施例的第二方面,提供一种命令传输方法,所述方法应用于矿机节点,所述方法包括:
当接收到加密控制命令时,获取解密密钥,所述加密控制命令携带控制命令,所述加密控制命令由控制终端生成并传输至所述矿机节点;
基于所述解密密钥,对所述加密控制命令进行解密;
当基于所述解密密钥对所述加密控制命令解密成功时,得到控制命令,执行所述控制命令。
在另一个实施例中,所述当接收到加密控制命令时,获取解密密钥包括:
当接收到所述加密控制命令时,确定接收到所述加密控制命令的接收时间;
根据所述接收时间,获取初始解密密钥;
基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
在另一个实施例中,所述方法还包括:
当接收到所述加密控制命令和时间戳时,基于所述时间戳确定初始解密密钥;
基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
在另一个实施例中,所述方法还包括:
当基于所述解密密钥对所述加密控制命令解密失败时,确定接收到所述加密控制命令的接收时间对应的目标周期;
获取所述目标周期的上一周期对应的指定解密密钥,基于所述指定解密密钥对所述加密控制命令进行解密;
当基于所述指定解密密钥对所述加密控制命令解密成功,则执行所述控制命令;
当基于所述指定解密密钥对所述加密控制命令解密失败,则向所述控制终端返回无效响应,以使所述控制终端根据接收到的无效响应再次向所述矿机节点发送加密控制命令,所述无效响应携带解密失败的加密控制命令的命令标识。
根据本发明实施例的第三方面,提供一种命令传输装置,所述装置应用于控制终端,所述装置包括:
获取模块,用于根据当前时间,获取加密密钥;
生成模块,用于基于所述加密密钥,对控制命令进行加密,生成加密控制命令;
传输模块,用于将所述加密控制命令传输至矿机节点,由所述矿机节点对所述加密控制命令进行解密,并执行所述控制命令。
在另一个实施例中,所述获取模块包括:
第一确定子模块,用于当检测到用户请求发送控制命令时,确定所述当前时间;
第二确定子模块,用于根据所述当前时间,确定初始加密密钥;
生成子模块,用于基于第一预设算法,对所述初始加密密钥进行运算,生成所述加密密钥,所述第一预设算法至少包括哈希算法。
在另一个实施例中,所述装置还包括:
添加模块,用于为所述加密控制命令添加时间戳;
相应的,所述传输模块,还用于将所述加密控制命令和所述时间戳传输至所述矿机节点。
在另一个实施例中,所述装置还包括:
接收模块,用于接收所述矿机节点返回的无效响应,所述无效响应由所述矿机节点对所述加密控制命令解密失败后发送,所述无效响应携带解密失败的加密控制命令的命令标识;
确定模块,用于基于所述无效响应的命令标识,确定指定控制命令,所述指定控制命令为所述解密失败的加密控制命令中携带的控制命令;
所述生成模块,还用于对所述指定控制命令进行加密,生成指定加密控制命令;
所述传输模块,还用于将所述指定加密控制命令传输至所述矿机节点,以使所述矿机节点对所述指定加密控制命令进行解密,并执行所述指定加密控制命令携带的指定控制命令。
根据本发明实施例的第四方面,提供一种命令传输装置,所述装置应用于矿机节点,所述装置包括:
获取模块,用于当接收到加密控制命令时,获取解密密钥,所述加密控制命令携带控制命令,所述加密控制命令由控制终端生成并传输至所述矿机节点;
解密模块,用于基于所述解密密钥,对所述加密控制命令进行解密;
执行模块,用于当基于所述解密密钥对所述加密控制命令解密成功时,得到控制命令,执行所述控制命令。
在另一个实施例中,所述获取模块包括:
确定子模块,用于当接收到所述加密控制命令时,确定接收到所述加密控制命令的接收时间;
获取子模块,用于根据所述接收时间,获取初始解密密钥;
生成子模块,用于基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
在另一个实施例中,所述装置还包括:
第一确定模块,用于当接收到所述加密控制命令和时间戳时,基于所述时间戳确定初始解密密钥;
生成模块,用于基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
在另一个实施例中,所述装置还包括:
第二确定模块,用于当基于所述解密密钥对所述加密控制命令解密失败时,确定接收到所述加密控制命令的接收时间对应的目标周期;
所述获取模块,还用于获取所述目标周期的上一周期对应的指定解密密钥,基于所述指定解密密钥对所述加密控制命令进行解密;
所述执行模块,还用于当基于所述指定解密密钥对所述加密控制命令解密成功,则执行所述控制命令;
返回模块,用于当基于所述指定解密密钥对所述加密控制命令解密失败,则向所述控制终端返回无效响应,以使所述控制终端根据接收到的无效响应再次向所述矿机节点发送加密控制命令,所述无效响应携带解密失败的加密控制命令的命令标识。
根据本发明实施例的第五方面,提供一种电子设备,包括上述第三方面中任一项的命令传输装置。
根据本发明实施例的第六方面,提供一种电子设备,包括:存储器,用于存储可执行指令;
以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成上述第一方面任意一项所述的命令传输方法的操作。
根据本发明实施例的第七方面,提供一种电子设备,包括上述第四方面中任一项的命令传输装置。
根据本发明实施例的第八方面,提供一种电子设备,包括:存储器,用于存储可执行指令;
以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成上述第二方面任意一项所述的命令传输方法的操作。
根据本发明实施例的第九方面,提供一种控制系统,包括上述第七方面的电子设备和上述第八方面的电子设备。
本发明的实施例提供的技术方案可以包括以下有益效果:
根据当前时间,获取加密密钥,并使用加密密钥对控制命令进行加密,生成加密控制命令,将加密控制命令传输至矿机节点,由矿机节点对加密控制命令进行解密,执行控制命令,使得加密密钥可以随着时间变化,恶意用户不能轻易使用固定的密码对加密控制命令进行解密,矿机节点不容易被恶意用户控制,保证了矿机节点的正常运行,提高了矿机节点的处理效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种命令传输方法的流程图;
图2是根据一示例性实施例示出的一种命令传输方法的流程图;
图3是根据一示例性实施例示出的一种命令传输方法的流程图;
图4A是根据一示例性实施例示出的一种命令传输装置的框图;
图4B是根据一示例性实施例示出的一种命令传输装置的框图;
图4C是根据一示例性实施例示出的一种命令传输装置的框图;
图4D是根据一示例性实施例示出的一种命令传输装置的框图;
图5A是根据一示例性实施例示出的一种命令传输装置的框图;
图5B是根据一示例性实施例示出的一种命令传输装置的框图;
图5C是根据一示例性实施例示出的一种命令传输装置的框图;
图5D是根据一示例性实施例示出的一种命令传输装置的框图;
图6是根据一示例性实施例示出的一种命令传输装置的框图600。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种命令传输方法的流程图,如图1所示,该方法用于控制终端中,该方法包括以下步骤。
在步骤101中,根据当前时间,获取加密密钥。
在步骤102中,基于加密密钥,对控制命令进行加密,生成加密控制命令。
在步骤103中,将加密控制命令传输至矿机节点,由矿机节点对加密控制命令进行解密,并执行控制命令。
本发明实施例提供的方法,根据当前时间,获取加密密钥,并使用加密密钥对控制命令进行加密,生成加密控制命令,将加密控制命令传输至矿机节点,由矿机节点对加密控制命令进行解密,执行控制命令,使得加密密钥可以随着时间变化,恶意用户不能轻易使用固定的密码对加密控制命令进行解密,矿机节点不容易被恶意用户控制,保证了矿机节点的正常运行,提高了矿机节点的处理效率。
在另一个实施例中,根据当前时间,获取加密密钥包括:
当检测到用户请求发送控制命令时,确定当前时间;
根据当前时间,确定初始加密密钥;
基于第一预设算法,对初始加密密钥进行运算,生成加密密钥,第一预设算法至少包括哈希算法。
在另一个实施例中,将加密控制命令传输至矿机节点之前,方法还包括:
为加密控制命令添加时间戳;
相应的,将加密控制命令传输至矿机节点包括:
将加密控制命令和时间戳传输至矿机节点。
在另一个实施例中,方法还包括:
接收矿机节点返回的无效响应,无效响应由矿机节点对加密控制命令解密失败后发送,无效响应携带解密失败的加密控制命令的命令标识;
基于无效响应的命令标识,确定指定控制命令,指定控制命令为解密失败的加密控制命令中携带的控制命令;
对指定控制命令进行加密,生成指定加密控制命令;
将指定加密控制命令传输至矿机节点,以使矿机节点对指定加密控制命令进行解密,并执行指定加密控制命令携带的指定控制命令。
图2是根据一示例性实施例示出的一种命令传输方法的流程图,如图2所示,该方法用于控制终端矿机节点中,该方法包括以下步骤。
在步骤201中,当接收到加密控制命令时,获取解密密钥,加密控制命令携带控制命令,加密控制命令由控制终端生成并传输至矿机节点。
在步骤202中,基于解密密钥,对加密控制命令进行解密。
在步骤203中,当基于解密密钥对加密控制命令解密成功时,得到控制命令,执行控制命令。
本发明实施例提供的方法,矿机节点在接收到加密控制命令时,通过解密密钥对加密控制命令进行解密,得到控制命令,并执行该控制命令,使得矿机节点仅会执行解密成功后得到的控制命令,矿机节点不容易被恶意用户控制,保证了矿机节点的正常运行,提高了矿机节点的处理效率。
在另一个实施例中,当接收到加密控制命令时,获取解密密钥包括:
当接收到加密控制命令时,确定接收到加密控制命令的接收时间;
根据接收时间,获取初始解密密钥;
基于第二预设算法,对初始解密密钥进行运算,生成解密密钥,第二预设算法至少包括哈希算法。
在另一个实施例中,方法还包括:
当接收到加密控制命令和时间戳时,基于时间戳确定初始解密密钥;
基于第二预设算法,对初始解密密钥进行运算,生成解密密钥,第二预设算法至少包括哈希算法。
在另一个实施例中,方法还包括:
当基于解密密钥对加密控制命令解密失败时,确定接收到加密控制命令的接收时间对应的目标周期;
获取目标周期的上一周期对应的指定解密密钥,基于指定解密密钥对加密控制命令进行解密;
当基于指定解密密钥对加密控制命令解密成功,则执行控制命令;
当基于指定解密密钥对加密控制命令解密失败,则向控制终端返回无效响应,以使控制终端根据接收到的无效响应再次向矿机节点发送加密控制命令,无效响应携带解密失败的加密控制命令的命令标识。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
图3是根据一示例性实施例示出的一种命令传输方法的流程图,如图3所示,该方法包括以下步骤。
在步骤301中,当检测到用户请求发送控制命令时,控制终端确定当前时间,根据当前时间,确定初始加密密钥。
在本发明实施例中,控制终端为用户的终端,用于向数据共享系统中的矿工节点发送控制命令,以使矿工节点执行该控制命令。由于矿机节点没有统一的部署标准,因此,为了屏蔽不同矿机厂家的矿机硬件和矿机协议的不同,可以把控制终端划分为主动控制终端和被动控制终端。主动控制终端由用户输入控制命令,并由主动控制终端将控制命令发送给被动控制终端,由被动控制终端屏蔽矿机节点的不同属性,对各厂商的矿机节点进行命令统一设置,从而确定初始加密密钥,对控制命令进行加密,使得矿机节点在后续接收到加密控制命令时,不会由于属性原因导致无法正常解密。
发明人认识到,对于同处于网络中的矿工节点和控制终端来说,矿工节点的时间与控制终端的时间是一致的,因此,可以根据时间生成加密密钥和解密密钥,在保证加密密钥和解密密钥可以随着时间变化的同时,还可以保证加密密钥和解密密钥是对称密钥,提高了控制命令传输的安全性,也降低了矿工节点使用解密密钥进行解密时的失败率。
为了使控制终端确定的初始加密密钥与矿机节点在接收到加密控制命令后确定的初始解密密钥是相对应的,可在互相对应的控制终端与矿机节点中预先设置相同的共享密钥,不同用户的控制节点和矿机节点的共享密钥是不相同的。由于控制终端根据当前的时间生成初始加密密钥,而时间是持续变化的,因此,生成的初始加密密钥为一次性密钥,可以通过执行下述公式1得到初始加密密钥:
公式1:Truncate(HMAC-SHA-1(K,C)),
其中,Truuncate为初始加密密钥;K为控制终端的共享密钥;C为时间参数,T为当前时间,T0为常数,通常为0,X为步数常数,通常为30秒,在特殊情况下还可以另行设置,本发明对X的取值不进行具体限定;HMAC-SHA-1是从SHA1哈希函数构造的一种键控哈希算法,被用作HMAC Trancate方法。
在HMAC Trancate方法中,当执行HMAC-SHA-1算法后,可以得到20字节长度的字节串,将这个字节串中最后一个字节的第4位作为偏移量,从偏移量开始获取4个字节,按照高位字节排放在内存的低地址段,低位字节排放在内存的高地址端的模式组成一个整数,截取这个整数的后6位作为初始加密密钥,也即得到Truuncate。
需要说明的是,为了避免每一次用户请求控制终端向矿机节点发送控制命令时均要生成初始加密密钥,导致工作量过大,可以在控制终端和矿机节点中设置相同的预设时间间隔,使得当检测到经过预设时间间隔时,控制终端才会生成新的初始加密密钥,矿机节点才会生成新的初始解密密钥。例如,可以将预设时间间隔设置为5分钟,这样,控制终端每隔5分钟便重新生成一次初始加密密钥,矿机节点每隔5分钟重新生成一次初始解密密钥。
在步骤302中,控制终端基于第一预设算法,对初始加密密钥进行运算,生成加密密钥,第一预设算法至少包括哈希算法。
发明人认识到,由于在步骤301中生成的初始加密密钥的位数较短,且生成过程固定,比较容易被破解,为了提高控制命令传输的安全性,可以采用第一预设算法对初始加密密钥进行运算,获得长序列密钥,将该长序列密钥作为加密密钥,并在后续使用该长序列密钥对控制命令进行加密。
由于控制终端与矿机节点是对应的,为了保证矿机节点也可以对应生成长序列密钥作为解密密钥,可为相互对应的控制终端与矿机节点设置相同的哈希盐,使得后续矿机节点生成的长序列密钥形式的解密密钥与本步骤生成的加密密钥是相互对应的,提高了矿机节点对加密控制命令解密的成功率。其中,第一预设算法可为PBKDF2算法,PBKDF2算法应用一个伪随机函数,使得可以生成长序列密钥。当第一预设算法为PBKDF2算法时,可以采用下述公式2生成长序列密钥:
公式2:DK=PBKDF2(Truncate,S,c,dkLen)
其中,DK为长序列密钥;Truncate为初始加密密码;S为哈希盐;c为迭代次数,通常为正整数常数;dkLen为长序列密钥的长度,通常可由用户自行设置。
需要说明的是,在实际应用中,为了简化控制命令的传输过程,也可以不执行步骤302中所示的内容,直接将确定的初始加密密钥作为加密密钥,对控制命令进行加密即可,也即当完成执行步骤301后,直接执行步骤303。本发明实施例对生成加密密钥的方式不进行具体限定。
在步骤303中,控制终端基于加密密钥,对控制命令进行加密,生成加密控制命令,并将加密控制命令传输至矿机节点。
在本发明实施例中,控制命令可为矿机重启命令、矿机休眠命令以及矿机待机命令等。当控制终端确定加密密钥后,便使用加密密钥对控制命令进行加密,生成加密控制命令,并将加密控制命令传输至矿机节点。由于控制终端与矿机节点之间存在一一对应的关系,因此,控制终端在传输加密控制命令时,直接将加密控制命令传输至与其对应的矿机节点即可。
需要说明的是,在实际应用的过程中,为了使矿机节点在接收到加密控制命令时可以更加准确的确定解密密钥,避免对加密控制命令进行解密时发生失败,还可以为加密控制命令添加时间戳,并将加密控制命令和时间戳传输至矿机节点,以使矿机节点直接确定时间戳对应的加密密钥,并基于加密密钥对加密控制命令进行解密。
在步骤304中,当矿机节点接收到加密控制命令时,确定接收到加密控制命令的接收时间,根据接收时间,获取初始解密密钥。
在本发明实施例中,当矿机节点接收到加密控制命令时,由于矿机节点与控制终端之间存在对应关系,矿机节点中也会预设有共存密钥,且矿机节点与控制终端共存的网络中的时间是一致的,因此,根据接收到加密控制命令的接收时间和共存密钥,矿机节点可生成与初始加密密钥一致的初始解密密钥。其中,可以采用公式1生成初始解密密钥,生成过程与步骤301中所示的步骤一致,此处不再进行赘述。本发明实施例对生成初始解密密钥的方式不进行具体限定。
需要说明的是,由于控制终端在发送加密控制命令时可能会为加密控制命令添加时间戳,且时间戳可以直接确定初始解密密钥,因此,矿机节点在接收到加密控制命令时,可以先在加密控制命令中检测是否添加有时间戳,如果检测到时间戳,则直接基于时间戳确定初始解密密钥;如果未检测到时间戳,则采用公式1生成初始解密密钥。
其中,矿机节点中可以设置如表1所示的用于存储时间戳与初始解密密钥之间对应关系的时间戳-密钥列表,该时间戳-密钥列表可以以天为单位进行更新,设置各个时间戳在这一天中对应的初始解密密钥,以使矿机节点在接收到时间戳后,可以直接根据时间戳确定初始解密密钥,无需再进行计算,减轻了矿机节点的工作量。
表1
时间戳 | 初始解密密钥 |
1506415881 | KH2J9-PC326 |
1506415886 | TFP9Y-VCY3P |
1506415891 | 236TW-X778T |
… | … |
在步骤305中,矿机节点基于第二预设算法,对初始解密密钥进行运算,生成解密密钥,第二预设算法至少包括哈希算法。
在本发明实施例中,第二预设算法可以为与第一预设算法相同的哈希算法。其中,矿机节点基于第二预设算法对初始解密密钥进行运算,生成解密密钥的过程与上述步骤302中所示的过程一致,此处不再进行赘述。
需要说明的是,如果控制终端在对控制命令进行解密时使用的是初始加密密钥,则矿机节点在对加密控制命令进行解密时,可直接使用初始解密密钥进行解密,无需再使用第二预设算法对初始解密密码进行运算。
在步骤306中,矿机节点基于解密密钥,对加密控制命令进行解密,当基于解密密钥对加密控制命令的解密成功时,执行下述步骤307;当基于解密密钥对加密控制命令的解密失败时,执行下述步骤308和步骤309。
在本发明实施例中,矿机节点基于解密密钥对加密控制命令进行解密时,当对加密控制命令解密成功时,则可以获取控制命令,并执行该控制命令,也即执行下述步骤307。在实际应用的过程中,控制终端与矿机节点所在的网络中可能由于信号差等原因使得矿机节点接收到加密控制命令发生延迟,这样就会导致矿机节点根据接收到加密控制命令的接收时间获取的解密密钥是错误的,矿机节点无法成功对加密控制命令进行解锁,这样,矿机节点便需要执行下述步骤308和步骤309。
需要说明的是,如果矿机节点可以成功对加密控制命令进行解锁,则无需执行下述步骤308至步骤313,直接执行获取到的控制命令即可。
在步骤307中,当基于解密密钥对加密控制命令的解密成功时,矿机节点得到控制命令,执行控制命令。
在本发明实施例中,当矿机节点基于解密密钥对加密控制命令解密成功时,矿机节点便可以获取到控制命令,并根据控制命令执行相应的操作。
在步骤308中,当基于解密密钥对加密控制命令解密失败时,矿机节点确定接收到加密控制命令的接收时间对应的目标周期,获取目标周期的上一周期对应的指定解密密钥。
在本发明实施例中,当矿机节点基于解密密钥对加密控制命令解密失败后,考虑到网络中存在延迟的情况,可以采用在时间上相对于解密密钥来说的上一个解密密钥尝试进行解密,也即指定解密密钥对加密控制命令进行解密。其中,在获取指定解密密钥时,可以确定接收时间所对应的目标周期,并确定该目标周期的上一周期,将上一周期对应的解密密钥作为指定解密密钥。需要说明的是,如果矿机节点和控制终端中设置有预设时间周期,且按照预设时间周期对加密密钥和解密密钥进行更新,则矿机节点可以直接获取上一个周期的解密密钥作为指定解密密钥;而如果矿机节点和控制终端中并未设置预设时间间隔,则可以查询上一次接收到加密控制命令时生成的解密密钥,将该解密密钥作为指定解密密钥。
在步骤309中,矿机节点基于指定解密密钥对加密控制命令进行解密,当基于指定解密密钥对加密控制命令解密成功,则执行下述步骤310;当基于指定解密密钥对加密控制命令解密失败,则执行下述步骤311至步骤313。
在本发明实施例中,矿机节点基于指定解密密钥对加密控制命令进行解密,当解密成功,则可以获取控制命令,便执行控制命令,也即执行下述步骤310;当解密失败,则矿机节点确定当前接收到的加密控制命令失效,需要再次向控制终端请求加密控制指令,也即执行下述步骤311至步骤313。
在步骤310中,当矿机节点基于指定解密密钥对加密控制命令解密成功,则执行控制命令。
在本发明实施例中,当矿机节点基于指定解密密钥对加密控制命令解密成功时,矿机节点便可以获取到控制命令,并根据控制命令执行相应的操作。
需要说明的是,如果矿机节点基于指定解密密钥对加密控制命令解密成功,则表示该加密控制命令中的控制命令是有效的,直接执行获取到的控制命令即可,无需再执行下述步骤311至步骤313。
在步骤311中,当矿机节点基于指定解密密钥对加密控制命令解密失败,则向控制终端返回无效响应。
在本发明实施例中,无效响应携带解密失败的加密控制命令的命令标识。当矿机节点基于指定解密密钥对加密控制命令解密失败时,则矿机节点可获取该加密控制命令的命令标识,生成携带该命令标识的无效响应,将该无效响应返回至控制终端,以使控制终端可以根据无效响应中的命令标识确定控制命令,并为矿机节点补发携带该控制命令的加密控制命令。
在步骤312中,控制终端接收矿机节点返回的无效响应,基于无效响应的命令标识,确定指定控制命令,指定控制命令为解密失败的加密控制命令中携带的控制命令。
在本发明实施例中,当控制终端接收到矿机节点返回的无效响应后,首先在无效响应中提取命令标识;随后,根据该命令标识,确定命令标识对应的控制命令,将该控制命令作为指定控制命令。
在步骤313中,控制终端对指定控制命令进行加密,生成指定加密控制命令,将指定加密控制命令传输至矿机节点。
在本发明实施例中,为了保证指定控制命令在传输过程中的安全,当获取到指定控制命令后,控制终端可以对指定控制命令进行加密,生成指定加密控制命令,将指定加密控制命令传输至矿机节点。
需要说明的是,控制终端在对控制命令加密时,可以根据当前时间确定加密密钥,使用加密密钥对指定控制命令进行加密。其中,确定加密密钥的过程与上述步骤301至步骤302中所示的过程一致,控制终端对指定控制命令进行加密的过程与上述步骤303中所示的过程一致,此处不再进行赘述。在实际应用的过程中,为了矿机节点在接收到指定加密控制命令后可以直接确定解密密钥,也可在指定加密控制命令中添加时间戳,本发明实施例对指定加密控制命令中是否添加了时间戳不进行具体限定。
当矿机节点接收到指定加密控制命令后,便可以再次执行步骤304至步骤306中的内容,对指定加密命令进行解密,并当对指定加密命令解密成功时,执行上述步骤307;当对指定加密命令解密失败时,执行上述步骤308至步骤311。
本发明实施例提供的方法,根据当前时间,获取加密密钥,并使用加密密钥对控制命令进行加密,生成加密控制命令,将加密控制命令传输至矿机节点,由矿机节点对加密控制命令进行解密,执行控制命令,使得加密密钥可以随着时间变化,恶意用户不能轻易使用固定的密码对加密控制命令进行解密,矿机节点不容易被恶意用户控制,保证了矿机节点的正常运行,提高了矿机节点的处理效率。
图4A是根据一示例性实施例示出的一种命令传输装置的框图。参照图4A,该装置包括获取模块401,生成模块402和传输模块403。
该获取模块401,用于根据当前时间,获取加密密钥;
该生成模块402,用于基于加密密钥,对控制命令进行加密,生成加密控制命令;
该传输模块403,用于将加密控制命令传输至矿机节点,由矿机节点对加密控制命令进行解密,并执行控制命令。
本发明实施例提供的装置,根据当前时间,获取加密密钥,并使用加密密钥对控制命令进行加密,生成加密控制命令,将加密控制命令传输至矿机节点,由矿机节点对加密控制命令进行解密,执行控制命令,使得加密密钥可以随着时间变化,恶意用户不能轻易使用固定的密码对加密控制命令进行解密,矿机节点不容易被恶意用户控制,保证了矿机节点的正常运行,提高了矿机节点的处理效率。
在另一个实施例中,参见图4B,该获取模块401,包括第一确定子模块4011,第二确定子模块4012和生成子模块4013。
该第一确定子模块4011,用于当检测到用户请求发送控制命令时,确定当前时间;
该第二确定子模块4012,用于根据当前时间,确定初始加密密钥;
该生成子模块4013,用于基于第一预设算法,对初始加密密钥进行运算,生成加密密钥,第一预设算法至少包括哈希算法。
在另一个实施例中,参见图4C,该装置还包括添加模块404。
该添加模块404,用于为加密控制命令添加时间戳;
相应的,该传输模块403,还用于将加密控制命令和时间戳传输至矿机节点。
在另一个实施例中,参见图4D,该装置还包括接收模块405和确定模块406。
该接收模块405,用于接收矿机节点返回的无效响应,无效响应由矿机节点对加密控制命令解密失败后发送,无效响应携带解密失败的加密控制命令的命令标识;
该确定模块406,用于基于无效响应的命令标识,确定指定控制命令,指定控制命令为解密失败的加密控制命令中携带的控制命令;
该生成模块402,还用于对指定控制命令进行加密,生成指定加密控制命令;
该传输模块403,还用于将指定加密控制命令传输至矿机节点,以使矿机节点对指定加密控制命令进行解密,并执行指定加密控制命令携带的指定控制命令。
图5A是根据一示例性实施例示出的一种命令传输装置的框图。参照图5A,该装置包括获取模块501,解密模块502和执行模块503。
该获取模块501,用于当接收到加密控制命令时,获取解密密钥,所述加密控制命令携带控制命令,所述加密控制命令由控制终端生成并传输至所述矿机节点;
该解密模块502,用于基于所述解密密钥,对所述加密控制命令进行解密;
该执行模块503,用于当基于所述解密密钥对所述加密控制命令解密成功时,得到控制命令,执行所述控制命令。
本发明实施例提供的装置,矿机节点在接收到加密控制命令时,通过解密密钥对加密控制命令进行解密,得到控制命令,并执行该控制命令,使得矿机节点仅会执行解密成功后得到的控制命令,矿机节点不容易被恶意用户控制,保证了矿机节点的正常运行,提高了矿机节点的处理效率。
在另一个实施例中,参见图5B,该获取模块501,包括确定子模块5011,获取子模块5012和生成子模块5013。
该确定子模块5011,用于当接收到加密控制命令时,确定接收到加密控制命令的接收时间;
该获取子模块5012,用于根据接收时间,获取初始解密密钥;
该生成子模块5013,用于基于第二预设算法,对初始解密密钥进行运算,生成解密密钥,第二预设算法至少包括哈希算法。
在另一个实施例中,参见图5C,该装置还包括第一确定模块504和生成模块505。
该第一确定模块504,用于当接收到加密控制命令和时间戳时,基于时间戳确定初始解密密钥;
该生成模块505,用于基于第二预设算法,对初始解密密钥进行运算,生成解密密钥,第二预设算法至少包括哈希算法。
在另一个实施例中,参见图5D,该装置还包括第二确定模块506和返回模块507。
该第二确定模块506,用于当基于解密密钥对加密控制命令解密失败时,确定接收到加密控制命令的接收时间对应的目标周期;
该获取模块501,还用于获取目标周期的上一周期对应的指定解密密钥,基于指定解密密钥对加密控制命令进行解密;
该执行模块503,还用于当基于指定解密密钥对加密控制命令解密成功,则执行控制命令;
该返回模块507,用于当基于指定解密密钥对加密控制命令解密失败,则向控制终端返回无效响应,以使控制终端根据接收到的无效响应再次向矿机节点发送加密控制命令,无效响应携带解密失败的加密控制命令的命令标识。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种命令传输装置600的框图。例如,装置600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图6,装置600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,I/O(Input/Output,输入/输出)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制装置600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在装置600的操作。这些数据的示例包括用于在装置600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如SRAM(Static Random Access Memory,静态随机存取存储器),EEPROM(Electrically-Erasable Programmable Read-Only Memory,电可擦除可编程只读存储器),EPROM(Erasable Programmable Read Only Memory,可擦除可编程只读存储器),PROM(Programmable Read-Only Memory,可编程只读存储器),ROM(Read-Only Memory,只读存储器),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为装置600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为装置600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述装置600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括LCD(Liquid Crystal Display,液晶显示器)和TP(TouchPanel,触摸面板)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当装置600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个MIC(Microphone,麦克风),当装置600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为装置600提供各个方面的状态评估。例如,传感器组件614可以检测到设备600的打开/关闭状态,组件的相对定位,例如组件为装置600的显示器和小键盘,传感器组件614还可以检测装置600或装置600一个组件的位置改变,用户与装置600接触的存在或不存在,装置600方位或加速/减速和装置600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS(Complementary Metal OxideSemiconductor,互补金属氧化物)或CCD(Charge-coupled Device,电荷耦合元件)图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于装置600和其他设备之间有线或无线方式的通信。装置600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括NFC(Near Field Communication,近场通信)模块,以促进短程通信。例如,在NFC模块可基于RFID(Radio FrequencyIdentification,射频识别)技术,IrDA(Infra-red Data Association,红外数据协会)技术,UWB(Ultra Wideband,超宽带)技术,BT(Bluetooth,蓝牙)技术和其他技术来实现。
在示例性实施例中,装置600可以被一个或多个ASIC(Application SpecificIntegrated Circuit,应用专用集成电路)、DSP(Digital signal Processor,数字信号处理器)、DSPD(Digital signal Processor Device,数字信号处理设备)、PLD(ProgrammableLogic Device,可编程逻辑器件)、FPGA)(Field Programmable Gate Array,现场可编程门阵列)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述命令传输方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由装置600的处理器620执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、RAM(Random Access Memory,随机存取存储器)、CD-ROM(Compact Disc Read-Only Memory,光盘只读存储器)、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由命令传输装置的处理器执行时,使得命令传输装置能够执行上述命令传输方法。
A1、一种命令传输方法,其特征在于,所述方法应用于控制终端,所述方法包括:
根据当前时间,获取加密密钥;
基于所述加密密钥,对控制命令进行加密,生成加密控制命令;
将所述加密控制命令传输至矿机节点,由所述矿机节点对所述加密控制命令进行解密,并执行所述控制命令。
A2、根据权利要求1所述的方法,其特征在于,所述根据当前时间,获取加密密钥包括:
当检测到用户请求发送控制命令时,确定所述当前时间;
根据所述当前时间,确定初始加密密钥;
基于第一预设算法,对所述初始加密密钥进行运算,生成所述加密密钥,所述第一预设算法至少包括哈希算法。
A3、根据权利要求1所述的方法,其特征在于,所述将所述加密控制命令传输至矿机节点之前,所述方法还包括:
为所述加密控制命令添加时间戳;
相应的,所述将所述加密控制命令传输至矿机节点包括:
将所述加密控制命令和所述时间戳传输至所述矿机节点。
A4、根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述矿机节点返回的无效响应,所述无效响应由所述矿机节点对所述加密控制命令解密失败后发送,所述无效响应携带解密失败的加密控制命令的命令标识;
基于所述无效响应的命令标识,确定指定控制命令,所述指定控制命令为所述解密失败的加密控制命令中携带的控制命令;
对所述指定控制命令进行加密,生成指定加密控制命令;
将所述指定加密控制命令传输至所述矿机节点,以使所述矿机节点对所述指定加密控制命令进行解密,并执行所述指定加密控制命令携带的指定控制命令。
A5、一种命令传输方法,其特征在于,所述方法应用于矿机节点,所述方法包括:
当接收到加密控制命令时,获取解密密钥,所述加密控制命令携带控制命令,所述加密控制命令由控制终端生成并传输至所述矿机节点;
基于所述解密密钥,对所述加密控制命令进行解密;
当基于所述解密密钥对所述加密控制命令解密成功时,得到控制命令,执行所述控制命令。
A6、根据权利要求5所述的方法,其特征在于,所述当接收到加密控制命令时,获取解密密钥包括:
当接收到所述加密控制命令时,确定接收到所述加密控制命令的接收时间;
根据所述接收时间,获取初始解密密钥;
基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
A7、根据权利要求5所述的方法,其特征在于,所述方法还包括:
当接收到所述加密控制命令和时间戳时,基于所述时间戳确定初始解密密钥;
基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
A8、根据权利要求5所述的方法,其特征在于,所述方法还包括:
当基于所述解密密钥对所述加密控制命令解密失败时,确定接收到所述加密控制命令的接收时间对应的目标周期;
获取所述目标周期的上一周期对应的指定解密密钥,基于所述指定解密密钥对所述加密控制命令进行解密;
当基于所述指定解密密钥对所述加密控制命令解密成功,则执行所述控制命令;
当基于所述指定解密密钥对所述加密控制命令解密失败,则向所述控制终端返回无效响应,以使所述控制终端根据接收到的无效响应再次向所述矿机节点发送加密控制命令,所述无效响应携带解密失败的加密控制命令的命令标识。
A9、一种命令传输装置,其特征在于,所述装置应用于控制终端,所述装置包括:
获取模块,用于根据当前时间,获取加密密钥;
生成模块,用于基于所述加密密钥,对控制命令进行加密,生成加密控制命令;
传输模块,用于将所述加密控制命令传输至矿机节点,由所述矿机节点对所述加密控制命令进行解密,并执行所述控制命令。
A10、根据权利要求9所述的装置,其特征在于,所述获取模块包括:
第一确定子模块,用于当检测到用户请求发送控制命令时,确定所述当前时间;
第二确定子模块,用于根据所述当前时间,确定初始加密密钥;
生成子模块,用于基于第一预设算法,对所述初始加密密钥进行运算,生成所述加密密钥,所述第一预设算法至少包括哈希算法。
A11、根据权利要求9所述的装置,其特征在于,所述装置还包括:
添加模块,用于为所述加密控制命令添加时间戳;
相应的,所述传输模块,还用于将所述加密控制命令和所述时间戳传输至所述矿机节点。
A12、根据权利要求9所述的装置,其特征在于,所述装置还包括:
接收模块,用于接收所述矿机节点返回的无效响应,所述无效响应由所述矿机节点对所述加密控制命令解密失败后发送,所述无效响应携带解密失败的加密控制命令的命令标识;
确定模块,用于基于所述无效响应的命令标识,确定指定控制命令,所述指定控制命令为所述解密失败的加密控制命令中携带的控制命令;
所述生成模块,还用于对所述指定控制命令进行加密,生成指定加密控制命令;
所述传输模块,还用于将所述指定加密控制命令传输至所述矿机节点,以使所述矿机节点对所述指定加密控制命令进行解密,并执行所述指定加密控制命令携带的指定控制命令。
A13、一种命令传输装置,其特征在于,所述装置应用于矿机节点,所述装置包括:
获取模块,用于当接收到加密控制命令时,获取解密密钥,所述加密控制命令携带控制命令,所述加密控制命令由控制终端生成并传输至所述矿机节点;
解密模块,用于基于所述解密密钥,对所述加密控制命令进行解密;
执行模块,用于当基于所述解密密钥对所述加密控制命令解密成功时,得到控制命令,执行所述控制命令。
A14、根据权利要求13所述的装置,其特征在于,所述获取模块包括:
确定子模块,用于当接收到所述加密控制命令时,确定接收到所述加密控制命令的接收时间;
获取子模块,用于根据所述接收时间,获取初始解密密钥;
生成子模块,用于基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
A15、根据权利要求13所述的装置,其特征在于,所述装置还包括:
第一确定模块,用于当接收到所述加密控制命令和时间戳时,基于所述时间戳确定初始解密密钥;
生成模块,用于基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
A16、根据权利要求13所述的装置,其特征在于,所述装置还包括:
第二确定模块,用于当基于所述解密密钥对所述加密控制命令解密失败时,确定接收到所述加密控制命令的接收时间对应的目标周期;
所述获取模块,还用于获取所述目标周期的上一周期对应的指定解密密钥,基于所述指定解密密钥对所述加密控制命令进行解密;
所述执行模块,还用于当基于所述指定解密密钥对所述加密控制命令解密成功,则执行所述控制命令;
返回模块,用于当基于所述指定解密密钥对所述加密控制命令解密失败,则向所述控制终端返回无效响应,以使所述控制终端根据接收到的无效响应再次向所述矿机节点发送加密控制命令,所述无效响应携带解密失败的加密控制命令的命令标识。
A17、一种电子设备,其特征在于,包括权利要求9至12任意一项所述的命令传输装置。
A18、一种电子设备,其特征在于,包括:存储器,用于存储可执行指令;
以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成权利要求1至4任意一项所述的命令传输方法的操作。
A19、一种电子设备,其特征在于,包括权利要求13至16任意一项所述的命令传输装置。
A20、一种电子设备,其特征在于,包括:存储器,用于存储可执行指令;
以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成权利要求5至8任意一项所述的命令传输方法的操作。
A21、一种控制系统,其特征在于,包括权利要求17所述的一种电子设备和权利要求19所述的一种电子设备。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种命令传输方法,其特征在于,所述方法应用于控制终端,所述方法包括:
根据当前时间,获取加密密钥;
基于所述加密密钥,对控制命令进行加密,生成加密控制命令;
将所述加密控制命令传输至矿机节点,由所述矿机节点对所述加密控制命令进行解密,并执行所述控制命令。
2.根据权利要求1所述的方法,其特征在于,所述根据当前时间,获取加密密钥包括:
当检测到用户请求发送控制命令时,确定所述当前时间;
根据所述当前时间,确定初始加密密钥;
基于第一预设算法,对所述初始加密密钥进行运算,生成所述加密密钥,所述第一预设算法至少包括哈希算法。
3.根据权利要求1所述的方法,其特征在于,所述将所述加密控制命令传输至矿机节点之前,所述方法还包括:
为所述加密控制命令添加时间戳;
相应的,所述将所述加密控制命令传输至矿机节点包括:
将所述加密控制命令和所述时间戳传输至所述矿机节点。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述矿机节点返回的无效响应,所述无效响应由所述矿机节点对所述加密控制命令解密失败后发送,所述无效响应携带解密失败的加密控制命令的命令标识;
基于所述无效响应的命令标识,确定指定控制命令,所述指定控制命令为所述解密失败的加密控制命令中携带的控制命令;
对所述指定控制命令进行加密,生成指定加密控制命令;
将所述指定加密控制命令传输至所述矿机节点,以使所述矿机节点对所述指定加密控制命令进行解密,并执行所述指定加密控制命令携带的指定控制命令。
5.一种命令传输方法,其特征在于,所述方法应用于矿机节点,所述方法包括:
当接收到加密控制命令时,获取解密密钥,所述加密控制命令携带控制命令,所述加密控制命令由控制终端生成并传输至所述矿机节点;
基于所述解密密钥,对所述加密控制命令进行解密;
当基于所述解密密钥对所述加密控制命令解密成功时,得到控制命令,执行所述控制命令。
6.根据权利要求5所述的方法,其特征在于,所述当接收到加密控制命令时,获取解密密钥包括:
当接收到所述加密控制命令时,确定接收到所述加密控制命令的接收时间;
根据所述接收时间,获取初始解密密钥;
基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当接收到所述加密控制命令和时间戳时,基于所述时间戳确定初始解密密钥;
基于第二预设算法,对所述初始解密密钥进行运算,生成所述解密密钥,所述第二预设算法至少包括哈希算法。
8.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当基于所述解密密钥对所述加密控制命令解密失败时,确定接收到所述加密控制命令的接收时间对应的目标周期;
获取所述目标周期的上一周期对应的指定解密密钥,基于所述指定解密密钥对所述加密控制命令进行解密;
当基于所述指定解密密钥对所述加密控制命令解密成功,则执行所述控制命令;
当基于所述指定解密密钥对所述加密控制命令解密失败,则向所述控制终端返回无效响应,以使所述控制终端根据接收到的无效响应再次向所述矿机节点发送加密控制命令,所述无效响应携带解密失败的加密控制命令的命令标识。
9.一种命令传输装置,其特征在于,所述装置应用于控制终端,所述装置包括:
获取模块,用于根据当前时间,获取加密密钥;
生成模块,用于基于所述加密密钥,对控制命令进行加密,生成加密控制命令;
传输模块,用于将所述加密控制命令传输至矿机节点,由所述矿机节点对所述加密控制命令进行解密,并执行所述控制命令。
10.一种命令传输装置,其特征在于,所述装置应用于矿机节点,所述装置包括:
获取模块,用于当接收到加密控制命令时,获取解密密钥,所述加密控制命令携带控制命令,所述加密控制命令由控制终端生成并传输至所述矿机节点;
解密模块,用于基于所述解密密钥,对所述加密控制命令进行解密;
执行模块,用于当基于所述解密密钥对所述加密控制命令解密成功时,得到控制命令,执行所述控制命令。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710910377.4A CN107819572B (zh) | 2017-09-29 | 2017-09-29 | 命令传输方法、装置及电子设备 |
PCT/CN2018/108556 WO2019062886A1 (en) | 2017-09-29 | 2018-09-29 | METHOD AND APPARATUS FOR TRANSMITTING INSTRUCTIONS |
US16/832,551 US11196553B2 (en) | 2017-09-29 | 2020-03-27 | Command transmission method and apparatus, electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710910377.4A CN107819572B (zh) | 2017-09-29 | 2017-09-29 | 命令传输方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107819572A true CN107819572A (zh) | 2018-03-20 |
CN107819572B CN107819572B (zh) | 2021-01-22 |
Family
ID=61607656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710910377.4A Active CN107819572B (zh) | 2017-09-29 | 2017-09-29 | 命令传输方法、装置及电子设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11196553B2 (zh) |
CN (1) | CN107819572B (zh) |
WO (1) | WO2019062886A1 (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108429618A (zh) * | 2018-05-16 | 2018-08-21 | 安徽问天量子科技股份有限公司 | 一种无信道的对称密钥同步方法及装置 |
CN108520183A (zh) * | 2018-04-13 | 2018-09-11 | 杭州橙鹰数据技术有限公司 | 一种数据存储方法及装置 |
CN109358520A (zh) * | 2018-11-01 | 2019-02-19 | 刘伟良 | 一种智能家居物联网络局域动态解锁系统 |
WO2019062886A1 (en) * | 2017-09-29 | 2019-04-04 | Bitmain Technologies Inc. | METHOD AND APPARATUS FOR TRANSMITTING INSTRUCTIONS |
CN111741034A (zh) * | 2020-08-27 | 2020-10-02 | 北京安帝科技有限公司 | 数据传输方法、第一终端和第二终端 |
CN111970109A (zh) * | 2020-08-13 | 2020-11-20 | 山东英信计算机技术有限公司 | 一种数据传输方法及系统 |
CN112073188A (zh) * | 2020-08-31 | 2020-12-11 | 北京市商汤科技开发有限公司 | 鉴权方法、装置、设备及计算机可读存储介质 |
CN113794700A (zh) * | 2021-08-30 | 2021-12-14 | 合肥致存微电子有限责任公司 | 一种远程u盘数据通信加密方法及装置 |
CN113872970A (zh) * | 2021-09-28 | 2021-12-31 | 北京天融信网络安全技术有限公司 | 数据访问方法、装置及存储介质 |
CN114095920A (zh) * | 2020-07-29 | 2022-02-25 | 阿里巴巴集团控股有限公司 | 通信方法、系统、装置、设备和存储介质 |
CN115086389A (zh) * | 2022-06-10 | 2022-09-20 | 武汉思普崚技术有限公司 | 一种基于可信地址通信的远程控制系统和方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230300118A1 (en) * | 2022-03-18 | 2023-09-21 | Arris Enterprises Llc | Tunnelled remote intent mechanism |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1423451A (zh) * | 2001-11-28 | 2003-06-11 | 派威公司 | 基于时间的加密密钥 |
CN1831834A (zh) * | 2006-04-20 | 2006-09-13 | 成都昊芯科技有限公司 | 信息的动态加密方法和加密电路 |
CN101330379A (zh) * | 2007-06-22 | 2008-12-24 | 华为技术有限公司 | 一种密钥下发方法和设备 |
CN102724207A (zh) * | 2012-06-28 | 2012-10-10 | 上海西本网络科技有限公司 | 服务请求的发送/处理方法和装置、客户端及服务端 |
CN105933318A (zh) * | 2016-05-26 | 2016-09-07 | 乐视控股(北京)有限公司 | 数据保密方法、装置及系统 |
US20170046652A1 (en) * | 2015-08-13 | 2017-02-16 | The Toronto-Dominion Bank | Systems and method for tracking behavior of networked devices using hybrid public-private blockchain ledgers |
CN107038383A (zh) * | 2016-02-03 | 2017-08-11 | 华为技术有限公司 | 一种数据处理的方法和设备 |
WO2017147503A1 (en) * | 2016-02-24 | 2017-08-31 | Whitewood Encryption Systems, Inc. | Techniques for confidential delivery of random data over a network |
CN107171791A (zh) * | 2017-05-24 | 2017-09-15 | 舒翔 | 一种基于生物特征的数据加解密方法及加解密系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8856511B2 (en) * | 2006-12-14 | 2014-10-07 | Blackberry Limited | System and method for wiping and disabling a removed device |
CN101299752B (zh) * | 2008-06-26 | 2010-12-22 | 上海交通大学 | 基于信任的新鲜性建立密码协议安全性的方法 |
CN101651508B (zh) * | 2008-08-15 | 2012-07-04 | 威盛电子(中国)有限公司 | 安全广播方法以及相关的安全广播系统与前端系统 |
CN101894282A (zh) * | 2010-06-17 | 2010-11-24 | 深圳市科陆软件有限公司 | 大量数据在rfid电子标签的存取方法 |
JP2014197726A (ja) * | 2013-03-29 | 2014-10-16 | 株式会社東芝 | 計測装置、情報処理装置、鍵管理装置および使用量計算システム |
CN104852800B (zh) * | 2015-05-25 | 2018-12-25 | 小米科技有限责任公司 | 数据传输方法及装置 |
WO2017118002A1 (zh) * | 2016-01-04 | 2017-07-13 | 杭州亚美利嘉科技有限公司 | 机器人与服务器同步的方法及系统 |
US11924353B2 (en) * | 2017-01-25 | 2024-03-05 | Ford Global Technologies, Llc | Control interface for autonomous vehicle |
CN107819572B (zh) * | 2017-09-29 | 2021-01-22 | 北京比特大陆科技有限公司 | 命令传输方法、装置及电子设备 |
-
2017
- 2017-09-29 CN CN201710910377.4A patent/CN107819572B/zh active Active
-
2018
- 2018-09-29 WO PCT/CN2018/108556 patent/WO2019062886A1/en active Application Filing
-
2020
- 2020-03-27 US US16/832,551 patent/US11196553B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1423451A (zh) * | 2001-11-28 | 2003-06-11 | 派威公司 | 基于时间的加密密钥 |
CN1831834A (zh) * | 2006-04-20 | 2006-09-13 | 成都昊芯科技有限公司 | 信息的动态加密方法和加密电路 |
CN101330379A (zh) * | 2007-06-22 | 2008-12-24 | 华为技术有限公司 | 一种密钥下发方法和设备 |
CN102724207A (zh) * | 2012-06-28 | 2012-10-10 | 上海西本网络科技有限公司 | 服务请求的发送/处理方法和装置、客户端及服务端 |
US20170046652A1 (en) * | 2015-08-13 | 2017-02-16 | The Toronto-Dominion Bank | Systems and method for tracking behavior of networked devices using hybrid public-private blockchain ledgers |
CN107038383A (zh) * | 2016-02-03 | 2017-08-11 | 华为技术有限公司 | 一种数据处理的方法和设备 |
WO2017147503A1 (en) * | 2016-02-24 | 2017-08-31 | Whitewood Encryption Systems, Inc. | Techniques for confidential delivery of random data over a network |
CN105933318A (zh) * | 2016-05-26 | 2016-09-07 | 乐视控股(北京)有限公司 | 数据保密方法、装置及系统 |
CN107171791A (zh) * | 2017-05-24 | 2017-09-15 | 舒翔 | 一种基于生物特征的数据加解密方法及加解密系统 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019062886A1 (en) * | 2017-09-29 | 2019-04-04 | Bitmain Technologies Inc. | METHOD AND APPARATUS FOR TRANSMITTING INSTRUCTIONS |
US11196553B2 (en) | 2017-09-29 | 2021-12-07 | Bitmain Technologies Inc. | Command transmission method and apparatus, electronic device |
CN108520183B (zh) * | 2018-04-13 | 2020-03-24 | 杭州橙鹰数据技术有限公司 | 一种数据存储方法及装置 |
CN108520183A (zh) * | 2018-04-13 | 2018-09-11 | 杭州橙鹰数据技术有限公司 | 一种数据存储方法及装置 |
CN108429618A (zh) * | 2018-05-16 | 2018-08-21 | 安徽问天量子科技股份有限公司 | 一种无信道的对称密钥同步方法及装置 |
CN109358520A (zh) * | 2018-11-01 | 2019-02-19 | 刘伟良 | 一种智能家居物联网络局域动态解锁系统 |
CN109358520B (zh) * | 2018-11-01 | 2022-01-07 | 南京仁程智能科技有限公司 | 一种智能家居物联网络局域动态解锁系统 |
CN114095920A (zh) * | 2020-07-29 | 2022-02-25 | 阿里巴巴集团控股有限公司 | 通信方法、系统、装置、设备和存储介质 |
CN111970109A (zh) * | 2020-08-13 | 2020-11-20 | 山东英信计算机技术有限公司 | 一种数据传输方法及系统 |
CN111970109B (zh) * | 2020-08-13 | 2023-01-24 | 山东英信计算机技术有限公司 | 一种数据传输方法及系统 |
CN111741034A (zh) * | 2020-08-27 | 2020-10-02 | 北京安帝科技有限公司 | 数据传输方法、第一终端和第二终端 |
CN112073188A (zh) * | 2020-08-31 | 2020-12-11 | 北京市商汤科技开发有限公司 | 鉴权方法、装置、设备及计算机可读存储介质 |
CN112073188B (zh) * | 2020-08-31 | 2023-01-24 | 北京市商汤科技开发有限公司 | 鉴权方法、装置、设备及计算机可读存储介质 |
CN113794700A (zh) * | 2021-08-30 | 2021-12-14 | 合肥致存微电子有限责任公司 | 一种远程u盘数据通信加密方法及装置 |
CN113872970A (zh) * | 2021-09-28 | 2021-12-31 | 北京天融信网络安全技术有限公司 | 数据访问方法、装置及存储介质 |
CN113872970B (zh) * | 2021-09-28 | 2022-12-20 | 北京天融信网络安全技术有限公司 | 数据访问方法、装置及存储介质 |
CN115086389A (zh) * | 2022-06-10 | 2022-09-20 | 武汉思普崚技术有限公司 | 一种基于可信地址通信的远程控制系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US11196553B2 (en) | 2021-12-07 |
CN107819572B (zh) | 2021-01-22 |
US20200228330A1 (en) | 2020-07-16 |
WO2019062886A1 (en) | 2019-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107819572A (zh) | 命令传输方法、装置及电子设备 | |
EP3657370B1 (en) | Methods and devices for authenticating smart card | |
EP3605989B1 (en) | Information sending method, information receiving method, apparatus, and system | |
EP3001640B1 (en) | Secure information exchange methods and wearable device | |
CN104219058B (zh) | 身份认证、身份授权方法及装置 | |
CN106888206B (zh) | 密钥交换方法、装置及系统 | |
CN104869612A (zh) | 接入网络的方法及装置 | |
CN104955031A (zh) | 信息传输方法及装置 | |
CN105243318A (zh) | 确定用户设备控制权限的方法、装置及终端设备 | |
JP7204680B2 (ja) | ドアガードを制御する方法、装置、プログラム、及び記憶媒体 | |
CN104093119B (zh) | 解锁方法及装置 | |
CN108022349A (zh) | 信息录入方法、设备、智能锁及存储介质 | |
WO2016011739A1 (zh) | 防伪验证方法、装置和系统 | |
CN108763895A (zh) | 图像处理方法和装置、电子设备、存储介质 | |
CN106778225A (zh) | 处理密码的方法和装置 | |
CN105120452B (zh) | 传输信息的方法、装置及系统 | |
CN104735139B (zh) | 终端信息统计方法、装置、终端及服务器 | |
CN112115464A (zh) | 解锁处理方法、装置、电子设备及存储介质 | |
CN106062762A (zh) | 应用加密方法及装置 | |
CN105812339A (zh) | 加密、解密方法及装置 | |
CN114189950A (zh) | 信息交互方法、信息交互装置、服务器及存储介质 | |
WO2023245356A1 (zh) | 电子设备的充电方法、充电装置、电子设备及存储介质 | |
WO2023236042A1 (zh) | 一种生物特征识别方法、装置、电子设备及存储介质 | |
CN114221788B (zh) | 登录方法、装置、电子设备及存储介质 | |
CN114826567A (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 |