一种TLS证书管理系统的制作方法

文档序号:37780376发布日期:2024-04-30 16:51阅读:10来源:国知局
一种TLS证书管理系统的制作方法

本发明涉及数据处理,特别涉及一种tls证书管理系统。


背景技术:

1、为保证数据传输的安全性,物联网服务商提供的各类服务端(诸如应用接口、服务接口)大多都采用糅合了传输层安全性协议(transport layer secur ity,tls)的网络报文协议(诸如https、ftps等)进行数据传输。在使用tls协议时需要预先通过ca中心为各服务端签发对应的tls证书,各服务端在自身tls证书有效期内可基于该证书与其他服务端或客户端之间构建数据加密传输通道。但若某服务端的证书过期则会导致该服务端的数据传输失败、若大量服务端同时发生证书过期事件则可能导致整个服务网络瘫痪。


技术实现思路

1、本发明的目的,就是针对现有技术的缺陷,提供一种tls证书管理系统,该系统包括:第一证书库、第一管理端和多个第一服务端;其中,第一证书库用于存储第一机构域名清单、第一服务证书列表和第一证书数据库;第一管理端用于定期从外部的第一网络运营商获得相关信息更新第一机构域名清单并基于该清单对当下新增或关停的服务进行及时检查并基于检查结果进行对应的新增/关停服务证书管理,还用于定期根据第一服务证书列表和第一ca中心对第一证书数据库和第一服务证书列表进行临过期证书更新,还用于定期根据第一机构域名清单、第一服务证书列表和第一证书数据库对各个第一服务端进行临过期证书更新。由此可见,本发明可及时地根据最新的域名清单为各个新增服务端提供tls证书自动申请服务、并为各个已注销服务端提供自动关停服务,还可及时地通过查询第一服务证书列表来发现临近过期的tls证书并对第一证书库提供tls证书自动更新服务,还可及时地通过遍历所有服务端的https响应中的tls证书链来识别服务端证书是否临近过期并基于第一证书库对证书临近过期的服务端提供tls证书自动更新服务。通过本发明可以避免因服务端证书过期导致的数据传输失败问题,可以降低因数据传输故障导致的服务网络瘫痪风险。

2、为实现上述目的,本发明实施例提供了一种tls证书管理系统,所述系统包括:第一证书库、第一管理端和多个第一服务端;

3、所述第一管理端分别与所述第一证书库以及各个所述第一服务端连接,还分别与外部的各个第一ca中心和各个第一网络运营商连接;

4、所述第一证书库用于存储第一机构域名清单、第一服务证书列表和第一证书数据库;

5、所述第一管理端用于定期从所述第一网络运营商处获取最新的域名清单对所述第一机构域名清单进行更新;并根据更新后的所述第一机构域名清单和所述第一服务证书列表进行新增与关停服务检查并基于检查结果进行对应的新增与关停服务证书管理;

6、所述第一管理端还用于定期根据所述第一服务证书列表和所述第一ca中心对所述第一证书数据库和所述第一服务证书列表进行临过期证书更新处理;

7、所述第一管理端还用于定期根据所述第一机构域名清单、所述第一服务证书列表和所述第一证书数据库对各个所述第一服务端进行临过期证书更新处理;

8、各个所述第一服务端用于在本地存储对应的第一服务tls证书链;所述第一服务tls证书链包括第一服务tls证书和一个或多个第一上级签发机构tls证书。

9、优选的,所述第一ca中心为签发tls证书的证书管理机构;

10、所述第一网络运营商至少包括互联网运营商。

11、优选的,所述第一机构域名清单包括多个第一服务域名;所述第一服务域名与所述第一服务端一一对应;

12、所述第一服务证书列表包括多个第一服务证书记录;所述第一服务证书记录包括第一服务域名字段、第一服务状态字段和第一服务证书链字段;所述第一服务证书记录与所述第一服务端一一对应;所述第一服务状态字段包括运行状态和关停状态;所述第一服务证书链字段包括第一服务证书子字段和一个或多个第一上级签发机构证书子字段;所述第一服务证书子字段包括第一证书所有者名称、第一证书上级签发机构名称、第一证书有效期和第一证书校验码,所述第一证书有效期包括第一起始时间和第一结束时间;所述第一上级签发机构证书子字段包括第二证书所有者名称、第二证书上级签发机构名称、第二证书有效期和第二证书校验码,所述第二证书有效期包括第二起始时间和第二结束时间;

13、所述第一证书数据库包括多个第一证书数据记录;所述第一证书数据记录包括第一tls证书校验码字段、第一tls证书公钥字段、第一tls证书私钥字段和第一tls证书信息字段;每个所述第一证书数据记录对应一个tls证书;所述第一tls证书公钥字段和所述第一tls证书私钥字段用于存储对应tls证书的公、私钥数据;所述第一tls证书信息字段用于存储对应tls证书的基本信息,至少包括第一tls证书版本号、第一tls证书序列号、第一tls证书加解密算法类型、第一tls证书签名算法类型、第一tls证书所有者名称、第一tls证书上级签发机构名称和第一tls证书有效期,所述第一tls证书有效期包括第三起始时间和第三结束时间。

14、优选的,所述第一管理端具体用于在所述定期从所述第一网络运营商处获取最新的域名清单对所述第一机构域名清单进行更新时,

15、定期将本地存储的网络运营商账户名称提取出来作为对应的第一机构账户名;并设置对应的第一查询申请类型为域名清单查询;并通过预设的第一网络运营商服务接口将携带了所述第一机构账户名和所述第一查询申请类型的第一域名清单查询申请向所述第一网络运营商发送;并将所述第一网络运营商回发的域名清单作为对应的最新域名清单;所述最新域名清单包括所述第一机构账户名和多个第一机构服务域名;

16、并对所述最新域名清单的所述第一机构服务域名进行遍历;并在遍历时,将当前遍历的所述第一机构服务域名作为对应的当前服务域名;并将所述第一机构域名清单中与所述当前服务域名匹配的所述第一服务域名作为对应的当前匹配域名;并在所述当前匹配域名为空时,在所述第一机构域名清单新增一个所述第一服务域名作为对应的当前新增域名,并设置所述当前新增域名为对应的所述当前服务域名;

17、并对所述第一机构域名清单的所述第一服务域名进行遍历;并在遍历时,将当前遍历的所述第一服务域名作为对应的当前服务域名;并将所述最新域名清单中与所述当前服务域名匹配的所述第一机构服务域名作为对应的当前匹配域名;并在所述当前匹配域名为空时,将所述当前服务域名从所述第一机构域名清单中删除。

18、优选的,所述第一管理端具体用于在所述根据更新后的所述第一机构域名清单和所述第一服务证书列表进行新增与关停服务检查并基于检查结果进行对应的新增与关停服务证书管理时,

19、对所述第一机构域名清单的所述第一服务域名进行遍历;并在遍历时,将当前遍历的所述第一服务域名作为对应的当前服务域名;并对所述第一服务证书列表中是否存在所述第一服务域名字段与所述当前服务域名匹配的所述第一服务证书记录进行确认;若确认不存在,则根据所述当前服务域名和所述第一ca中心进行证书申请处理得到对应的第一证书链,并根据所述第一证书链对所述第一证书数据库和所述第一服务证书列表进行数据添加处理并对所述当前服务域名对应的所述第一服务端进行证书链更新处理;

20、并对所述第一服务证书列表的所述第一服务证书记录进行遍历;并在遍历时,将当前遍历的所述第一服务证书记录作为对应的当前记录;并对所述第一机构域名清单中是否存在与所述当前记录的所述第一服务域名字段匹配的所述第一服务域名进行确认;若确认存在,则设置所述前记录的所述第一服务状态字段为运行状态;若确认不存在,则设置所述前记录的所述第一服务状态字段为关停状态,并对所述当前记录对应的所述第一服务端进行服务关停操作。

21、进一步的,所述第一管理端具体用于在所述根据所述当前服务域名和所述第一ca中心进行证书申请处理得到对应的第一证书链时,通过预设的第一ca中心服务接口将携带了所述当前服务域名的第一tls证书申请向所述第一ca中心发送;并将所述第一ca中心回发的tls证书链作为对应的所述第一证书链;其中,所述第一证书链由两个或两个以上第一证书顺序排序组成;所述第一证书包括第一版本号、第一序列号、第一加解密算法类型、第一签名算法类型、第一公钥、第一私钥、第一所有者名称、第一上级签发机构名称和第一有效期,所述第一有效期由起始和结束时间组成;所述第一证书链中的第一个所述第一证书的第一所有者名称与所述当前服务域名匹配且所述第一私钥不为空;所述第一证书链中除第一个所述第一证书之外的其他所有所述第一证书的所述第一私钥均为空。

22、进一步的,所述第一管理端具体用于在所述根据所述第一证书链对所述第一证书数据库和所述第一服务证书列表进行数据添加处理并对所述当前服务域名对应的所述第一服务端进行证书链更新处理时,

23、对所述第一证书链的所述第一证书进行依次遍历;并在遍历时,将当前遍历的所述第一证书作为对应的当前证书,并将所述当前证书的所述第一公钥和所述第一私钥作为对应的第一证书公钥和第一证书私钥;并对所述第一证书私钥是否为空进行识别,若所述第一证书私钥不为空则基于预设的数字摘要算法对所述第一证书私钥进行数字摘要计算并将计算结果作为对应的第一校验码,若所述第一证书私钥为空则基于所述数字摘要算法对所述第一证书公钥进行数字摘要计算并将计算结果作为对应的所述第一校验码;并由所述当前证书的所述第一版本号、所述第一序列号、所述第一加解密算法类型、所述第一签名算法类型、所述第一所有者名称、所述第一上级签发机构名称和所述第一有效期作为对应的所述第一tls证书版本号、所述第一tls证书序列号、所述第一tls证书加解密算法类型、所述第一tls证书签名算法类型、所述第一tls证书所有者名称、所述第一tls证书上级签发机构名称和所述第一tls证书有效期组成一个对应的第一证书基本信息;并由得到的所述第一校验码、所述第一证书公钥、所述第一证书私钥和所述第一证书基本信息作为对应的所述第一tls证书校验码字段、所述第一tls证书公钥字段、所述第一tls证书私钥字段和所述第一tls证书信息字段组成一个新的所述第一证书数据记录向所述第一证书数据库中添加;

24、并由所述第一证书链的第一个所述第一证书对应的所述第一所有者名称、所述第一上级签发机构名称、所述第一有效期和所述第一校验码作为对应的所述第一证书所有者名称、所述第一证书上级签发机构名称、所述第一证书有效期和所述第一证书校验码组成一个对应的所述第一服务证书子字段;并由所述第一证书链的第二个及以后的各个所述第一证书对应的所述第一所有者名称、所述第一上级签发机构名称、所述第一有效期和所述第一校验码作为对应的所述第二证书所有者名称、所述第二证书上级签发机构名称、所述第二证书有效期和所述第二证书校验码组成一个对应的所述第一上级签发机构证书子字段;并由得到的所述第一服务证书子字段和一个或多个所述第一上级签发机构证书子字段按在所述第一证书链中的对应顺序排序组成一个对应的所述第一服务证书链字段;并设置一个对应的所述第一服务域名字段为所述当前服务域名;并设置一个对应的所述第一服务状态字段为运行状态;并由本次得到的所述第一服务域名字段、所述第一服务状态字段和所述第一服务证书链字段组成一个新的所述第一服务证书记录向所述第一服务证书列表中添加;

25、并将所述第一证书链的第一个所述第一证书作为对应的所述第一服务tls证书,并将所述第一证书链的第二个及以后的各个所述第一证书作为对应的所述第一上级签发机构tls证书;并由得到的所述第一服务tls证书和一个或多个所述第一上级签发机构tls证书按在所述第一证书链中的对应顺序排序组成一个对应的所述第一服务tls证书链;并将所述当前服务域名对应的所述第一服务端作为对应的当前服务端;并将本次得到的所述第一服务tls证书链发送至所述当前服务端对其本地存储的证书链进行更新。

26、优选的,所述第一管理端具体用于在所述定期根据所述第一服务证书列表和所述第一ca中心对所述第一证书数据库和所述第一服务证书列表进行临过期证书更新处理时,

27、定期对所述第一服务证书列表的所述第一服务证书记录进行遍历;并在遍历时,将当前遍历的所述第一服务证书记录作为对应的当前记录,并将所述当前记录的所述第一服务域名字段、所述第一服务状态字段和所述第一服务证书链字段作为对应的当前服务域名、当前服务状态和当前服务证书链,并将所述当前服务证书链的所述第一服务证书子字段的所述第一证书有效期的所述第一结束时间作为对应的当前结束时间;并在所述当前服务状态为运行状态时,对所述当前结束时间与当前时间的时间间隔进行计算得到对应的第一时间间隔;并在所述第一时间间隔小于或等于预设的第一间隔阈值时,通过预设的第一ca中心服务接口将携带了所述当前服务域名的第二tls证书申请向所述第一ca中心发送,并将所述第一ca中心回发的tls证书链作为对应的第二证书链;并根据所述当前服务域名和所述第二证书链对所述第一证书数据库和所述第一服务证书列表进行更新处理;

28、其中,所述第二证书链由两个或两个以上第二证书顺序排序组成;所述第二证书包括第二版本号、第二序列号、第二加解密算法类型、第二签名算法类型、第二公钥、第二私钥、第二所有者名称、第二上级签发机构名称和第二有效期,所述第二有效期由起始和结束时间组成;所述第二证书链中的第一个所述第二证书的第二所有者名称与所述当前服务域名匹配且所述第二私钥不为空;所述第二证书链中除第一个所述第二证书之外的其他所有所述第二证书的所述第二私钥均为空。

29、进一步的,所述第一管理端具体用于在所述根据所述当前服务域名和所述第二证书链对所述第一证书数据库和所述第一服务证书列表进行更新处理时,

30、对所述第二证书链的所述第二证书进行依次遍历;并在遍历时,将当前遍历的所述第二证书作为对应的当前证书,并将所述当前证书的所述第二公钥和所述第二私钥作为对应的第二证书公钥和第二证书私钥;并对所述第二证书私钥是否为空进行识别,若所述第二证书私钥不为空则基于预设的数字摘要算法对所述第二证书私钥进行数字摘要计算并将计算结果作为对应的第二校验码,若所述第二证书私钥为空则基于所述数字摘要算法对所述第二证书公钥进行数字摘要计算并将计算结果作为对应的所述第二校验码;并由所述当前证书的所述第二版本号、所述第二序列号、所述第二加解密算法类型、所述第二签名算法类型、所述第二所有者名称、所述第二上级签发机构名称和所述第二有效期作为对应的所述第一tls证书版本号、所述第一tls证书序列号、所述第一tls证书加解密算法类型、所述第一tls证书签名算法类型、所述第一tls证书所有者名称、所述第一tls证书上级签发机构名称和所述第一tls证书有效期组成一个对应的第二证书基本信息;并由得到的所述第二校验码、所述第二证书公钥、所述第二证书私钥和所述第二证书基本信息作为对应的所述第一tls证书校验码字段、所述第一tls证书公钥字段、所述第一tls证书私钥字段和所述第一tls证书信息字段组成一个新的所述第一证书数据记录向所述第一证书数据库中添加;

31、并将所述第一服务证书列表中所述第一服务域名字段与所述当前服务域名匹配的所述第一服务证书记录作为对应的当前记录;并由所述第二证书链的第一个所述第二证书对应的所述第二所有者名称、所述第二上级签发机构名称、所述第二有效期和所述第二校验码作为对应的所述第一证书所有者名称、所述第一证书上级签发机构名称、所述第一证书有效期和所述第一证书校验码组成一个对应的所述第一服务证书子字段;并由所述第二证书链的第二个及以后的各个所述第二证书对应的所述第二所有者名称、所述第二上级签发机构名称、所述第二有效期和所述第二校验码作为对应的所述第二证书所有者名称、所述第二证书上级签发机构名称、所述第二证书有效期和所述第二证书校验码组成一个对应的所述第一上级签发机构证书子字段;并由本次得到的所述第一服务证书子字段和一个或多个所述第一上级签发机构证书子字段按在所述第二证书链中的对应顺序排序组成一个新的所述第一服务证书链字段;并基于该新的所述第一服务证书链字段对所述当前记录的所述第一服务证书链字段进行字段内容替换。

32、优选的,所述第一管理端具体用于在所述定期根据所述第一机构域名清单、所述第一服务证书列表和所述第一证书数据库对各个所述第一服务端进行临过期证书更新处理时,

33、对所述第一机构域名清单的所述第一服务域名进行遍历;并在遍历时,将当前遍历的所述第一服务域名作为对应的当前服务域名,并将与所述当前服务域名对应的所述第一服务端作为对应的当前服务端;并基于tls协议向所述当前服务域名发送指定格式的https请求;并将所述当前服务端返回的所述第一服务tls证书链作为对应的当前证书链;并在所述当前证书链不为空时,对所述当前证书链的所述第一服务tls证书的有效期的结束时间与当前时间的时间间隔进行计算得到对应的第二时间间隔;并在所述第二时间间隔小于或等于预设的第二间隔阈值时,将所述当前证书链的所述第一服务tls证书的有效期的结束时间作为对应的当前结束时间;并根据所述当前服务域名、所述当前结束时间、所述第一服务证书列表和所述第一证书数据库对所述当前服务端进行更新处理。

34、进一步的,所述第一管理端具体用于在所述根据所述当前服务域名、所述当前结束时间、所述第一服务证书列表和所述第一证书数据库对所述当前服务端进行更新处理时,

35、将所述第一服务证书列表中所述第一服务域名字段与所述当前服务域名匹配的所述第一服务证书记录作为对应的当前记录;

36、并在所述当前记录的所述第一服务状态字段为运行状态且所述当前记录的所述第一服务证书子字段的所述第一证书有效期的所述第一结束时间不早于所述当前结束时间时,对所述当前记录的所述第一服务证书链字段中所述第一证书校验码以及各个所述第二证书校验码进行顺次遍历;并在遍历时,将当前遍历的所述第一证书校验码或所述第二证书校验码作为对应的当前校验码;并将所述第一证书数据库中所述第一tls证书校验码字段与所述当前校验码匹配的所述第一证书数据记录作为对应的当前匹配记录;并在所述当前匹配记录不为空且所述当前校验码与所述第一证书校验码对应时,基于所述当前匹配记录的所述第一tls证书公钥字段、所述第一tls证书私钥字段和所述第一tls证书信息字段生成一个对应的所述第一服务tls证书;并在所述当前匹配记录不为空且所述当前校验码与一个所述第二证书校验码对应时,基于所述当前匹配记录的所述第一tls证书公钥字段、所述第一tls证书私钥字段和所述第一tls证书信息字段生成一个对应的所述第一上级签发机构tls证书;并在遍历结束时,将所述当前服务域名对应的所述第一服务端作为对应的当前服务端,并由得到的所述第一服务tls证书和一个或多个所述第一上级签发机构tls证书按遍历顺序进行顺次排序组成一个新的所述第一服务tls证书链,并将该新的所述第一服务tls证书链发送至所述当前服务端对其本地存储的证书链进行更新。

37、优选的,所述第一服务端还用于在每次收到所述第一管理端发送的所述第一服务tls证书链时,就将当次收到的所述第一服务tls证书链作为对应的最新服务tls证书链;并对本地是否存有旧的所述第一服务tls证书链进行识别;若本地没有旧的所述第一服务tls证书链,则将所述最新服务tls证书链存于本地作为最新的所述第一服务tls证书链;若本地有旧的所述第一服务tls证书链,则对旧的所述第一服务tls证书链进行备份,再基于所述最新服务tls证书链对旧的所述第一服务tls证书链进行替换;

38、所述第一服务端还用于在每次收到所述第一管理端发送的https请求时,就对本地是否存有所述第一服务tls证书链进行识别;若有,则将所述第一服务tls证书链向所述第一管理端返回。

39、本发明实施例提供了一种tls证书管理系统,该系统包括:第一证书库、第一管理端和多个第一服务端;其中,第一证书库用于存储第一机构域名清单、第一服务证书列表和第一证书数据库;第一管理端用于定期从外部的第一网络运营商获得相关信息更新第一机构域名清单并基于该清单对当下新增或关停的服务进行及时检查并基于检查结果进行对应的新增/关停服务证书管理,还用于定期根据第一服务证书列表和第一ca中心对第一证书数据库和第一服务证书列表进行临过期证书更新,还用于定期根据第一机构域名清单、第一服务证书列表和第一证书数据库对各个第一服务端进行临过期证书更新。由此可见,本发明可及时地根据最新的域名清单为各个新增服务端提供tls证书自动申请服务、并为各个已注销服务端提供自动关停服务,还可及时地通过查询第一服务证书列表来发现临近过期的tls证书并对第一证书库提供tls证书自动更新服务,还可及时地通过遍历所有服务端的https响应中的tls证书链来识别服务端证书是否临近过期并基于第一证书库对证书临近过期的服务端提供tls证书自动更新服务。通过本发明不但避免了因服务端证书过期导致的数据传输失败问题,还降低了因数据传输故障导致的服务网络瘫痪风险。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1