本说明书一个或多个实施例涉及区块链,尤其涉及一种区块链证书管理方法及装置、电子设备及存储介质。
背景技术:
1、区块链是一种不依赖第三方、通过自身分布式节点服务器进行网络数据的存储、验证、传递和交流的技术,本质上是一个去中心化的数据库。无论是区块链的节点服务器之间的通信,还是客户端与节点服务器之间的通信,都需要使用证书进行互相认证;如果证书过期则会导致通信异常,即无法进行通信。相关技术中,区块链中的证书管理效果较差,经常因证书过期导致业务异常。
技术实现思路
1、有鉴于此,本说明书一个或多个实施例提供一种区块链证书管理方法及装置、电子设备及存储介质。
2、为实现上述目的,本说明书一个或多个实施例提供技术方案如下:
3、根据本说明书一个或多个实施例的第一方面,提出了一种区块链证书管理方法,所述方法包括:
4、在与区块链的第一节点服务器进行通信的情况下,获取所述第一节点服务器的第一连接证书的剩余有效期,其中,所述第一节点服务器为所述区块链的任一节点服务器;
5、在所述第一连接证书的剩余有效期小于预设时长阈值的情况下,向所述证书管理系统发送证书更新通知,以使所述证书管理系统为所述第一节点服务器签发第二连接证书,其中,所述第二连接证书用于使所述第一节点服务器将所述第一连接证书更新为所述第二连接证书并重启。
6、在本说明书的一个实施例中,在所述向所述证书管理系统发送证书更新通知之后,所述方法还包括:
7、接收所述证书管理系统发送的所述第二连接证书;
8、在使用所述第二连接证书与所述第一节点服务器建立通信的情况下,分别获取所述第一节点服务器内的数据,和所述区块链中除所述第一节点服务器之外的至少一个节点服务器内的数据;
9、在所述第一节点服务器内的数据和所述至少一个节点服务器内的数据一致的情况下,将所述第一节点服务器标记为正常服务器。
10、在本说明书的一个实施例中,所述方法还包括:
11、在所述第二节点服务器内的数据和所述至少一个节点服务器内的数据不一致的情况下,将所述第一节点服务器标记为异常服务器。
12、在本说明书的一个实施例中,所述方法还包括:
13、在所述第一节点服务器内的区块数量和所述至少一个节点服务器内的区块数量一致,且所述第一节点服务器内最新的区块的哈希值,和所述至少一个节点服务器内最新的区块的哈希值一致的情况下,确定所述第一节点服务器内的数据和所述至少一个节点服务器内的数据一致;
14、否则,确定所述第一节点服务器内的数据和所述至少一个节点服务器内的数据不一致。
15、在本说明书的一个实施例中,所述至少一个节点服务器中每个节点服务器中的数据均一致。
16、在本说明书的一个实施例中,所述将所述第一节点服务器标记为正常服务器,包括:
17、向所述证书管理系统发送标记通知,以使所述证书管理系统将所述第一节点服务器标记为正常服务器;和/或,
18、所述将所述第一节点服务器标记为异常服务器,包括:
19、向所述证书管理系统发送标记通知,以使所述证书管理系统将所述第一节点服务器标记为异常服务器。
20、在本说明书的一个实施例中,所述将所述第一节点服务器标记为正常服务器,包括:
21、向所述第一节点服务器发送正常通知,以使所述第一节点服务器自标记为正常服务器;和/或,
22、所述将所述第一节点服务器标记为异常服务器,包括:
23、向所述第一节点服务器发送异常通知,以使所述第一节点服务器自标记为异常服务器。
24、在本说明书的一个实施例中,所述分别获取所述第一节点服务器内的数据,和所述区块链中除所述第一节点服务器之外的至少一个节点服务器内的数据,包括:
25、每间隔第一时长,分别获取所述第一节点服务器内的数据,和所述区块链中除所述第一节点服务器之外的至少一个节点服务器内的数据,直至所述第一节点服务器内的数据和所述至少一个节点服务器内的数据一致。
26、在本说明书的一个实施例中,所述方法还包括:
27、每间隔第二时长,分别与区块链的每个节点服务器进行通信。
28、根据本说明书一个或多个实施例的第二方面,提出了一种区块链证书管理方法,所述方法包括:
29、在安装有第一连接证书的情况下,接收所述证书管理系统签发的第二连接证书;
30、将所述第一连接证书更新为所述第二连接证书,并重启。
31、在本说明书的一个实施例中,所述方法还包括:
32、在被标记为异常服务器的情况下,停止提供服务。
33、根据本说明书一个或多个实施例的第三方面,提出了一种区块链证书管理装置,所述装置包括:
34、获取模块,用于在与区块链的第一节点服务器进行通信的情况下,获取所述第一节点服务器的第一连接证书的剩余有效期,其中,所述第一节点服务器为所述区块链的任一节点服务器;
35、更新模块,用于在所述第一连接证书的剩余有效期小于预设时长阈值的情况下,向所述证书管理系统发送证书更新通知,以使所述证书管理系统为所述第一节点服务器签发第二连接证书,其中,所述第二连接证书用于使所述第一节点服务器将所述第一连接证书更新为所述第二连接证书并重启。
36、在本说明书的一个实施例中,所述装置还包括标记模块,用于:
37、在所述向所述证书管理系统发送证书更新通知之后,接收所述证书管理系统发送的所述第二连接证书;
38、在使用所述第二连接证书与所述第一节点服务器建立通信的情况下,分别获取所述第一节点服务器内的数据,和所述区块链中除所述第一节点服务器之外的至少一个节点服务器内的数据;
39、在所述第一节点服务器内的数据和所述至少一个节点服务器内的数据一致的情况下,将所述第一节点服务器标记为正常服务器。
40、在本说明书的一个实施例中,所述标记模块还用于:
41、在所述第二节点服务器内的数据和所述至少一个节点服务器内的数据不一致的情况下,将所述第一节点服务器标记为异常服务器。
42、在本说明书的一个实施例中,所述装置还包括一致性判断模块,用于:
43、在所述第一节点服务器内的区块数量和所述至少一个节点服务器内的区块数量一致,且所述第一节点服务器内最新的区块的哈希值,和所述至少一个节点服务器内最新的区块的哈希值一致的情况下,确定所述第一节点服务器内的数据和所述至少一个节点服务器内的数据一致;
44、否则,确定所述第一节点服务器内的数据和所述至少一个节点服务器内的数据不一致。
45、在本说明书的一个实施例中,所述至少一个节点服务器中每个节点服务器中的数据均一致。
46、在本说明书的一个实施例中,所述标记模块用于将所述第一节点服务器标记为正常服务器时,具体用于:
47、向所述证书管理系统发送标记通知,以使所述证书管理系统将所述第一节点服务器标记为正常服务器;和/或,
48、所述标记模块用于将所述第一节点服务器标记为异常服务器时,具体用于:
49、向所述证书管理系统发送标记通知,以使所述证书管理系统将所述第一节点服务器标记为异常服务器。
50、在本说明书的一个实施例中,所述标记模块用于将所述第一节点服务器标记为正常服务器时,具体用于:
51、向所述第一节点服务器发送正常通知,以使所述第一节点服务器自标记为正常服务器;和/或,
52、所述标记模块用于将所述第一节点服务器标记为异常服务器时,具体用于:
53、向所述第一节点服务器发送异常通知,以使所述第一节点服务器自标记为异常服务器。
54、在本说明书的一个实施例中,所述标记模块用于分别获取所述第一节点服务器内的数据,和所述区块链中除所述第一节点服务器之外的至少一个节点服务器内的数据时,具体用于:
55、每间隔第一时长,分别获取所述第一节点服务器内的数据,和所述区块链中除所述第一节点服务器之外的至少一个节点服务器内的数据,直至所述第一节点服务器内的数据和所述至少一个节点服务器内的数据一致。
56、在本说明书的一个实施例中,所述装置还包括轮询模块,用于:
57、每间隔第二时长,分别与区块链的每个节点服务器进行通信。
58、根据本说明书一个或多个实施例的第四方面,提出了一种区块链证书管理装置,所述装置包括:
59、接收模块,用于在安装有第一连接证书的情况下,接收所述证书管理系统签发的第二连接证书;
60、重启模块,用于将所述第一连接证书更新为所述第二连接证书,并重启。
61、在本说明书的一个实施例中,所述装置还包括停止模块,用于:
62、在被标记为异常服务器的情况下,停止提供服务。
63、根据本说明书一个或多个实施例的第五方面,提出了一种电子设备,包括:
64、处理器;
65、用于存储处理器可执行指令的存储器;
66、其中,所述处理器通过运行所述可执行指令以实现如第一方面所述的方法。
67、根据本说明书一个或多个实施例的第六方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。
68、本说明书的实施例提供的技术方案可以包括以下有益效果:
69、本说明书实施例所提供的区块链证书管理方法中,在与区块链的任一节点服务器,即第一节点服务器进行通信的情况下,获取所述第一节点服务器的第一连接证书的剩余有效期,并在所述第一连接证书的剩余有效期小于预设时长阈值的情况下,向所述证书管理系统发送证书更新通知,以使所述证书管理系统为所述第一节点服务器签发第二连接证书。也就是说,在客户端或节点服务器与任一节点服务器进行通信时会检查该节点服务器的连接证书的剩余有效期,并在该节点服务器的连接证书临期(即将到期)时向证书管理系统上报,从而可以使证书管理系统在节点服务器的连接证书临期时准确且及时的进行新证书的签发,避免节点服务器因证书到期而通信异常。