CN112422551B - 一种ssl证书更新方法、装置、电子设备及存储介质 - Google Patents

一种ssl证书更新方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN112422551B
CN112422551B CN202011281587.XA CN202011281587A CN112422551B CN 112422551 B CN112422551 B CN 112422551B CN 202011281587 A CN202011281587 A CN 202011281587A CN 112422551 B CN112422551 B CN 112422551B
Authority
CN
China
Prior art keywords
certificate
ssl
ssl certificate
client
verification
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
CN202011281587.XA
Other languages
English (en)
Other versions
CN112422551A (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.)
Weiyiyun Hangzhou Holding Co ltd
Original Assignee
Weiyiyun Hangzhou Holding 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 Weiyiyun Hangzhou Holding Co ltd filed Critical Weiyiyun Hangzhou Holding Co ltd
Priority to CN202011281587.XA priority Critical patent/CN112422551B/zh
Publication of CN112422551A publication Critical patent/CN112422551A/zh
Application granted granted Critical
Publication of CN112422551B publication Critical patent/CN112422551B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例公开了一种SSL证书更新方法、装置、电子设备及存储介质,该方法包括:当接收到设定指令时,向服务端发送证书更新接口的请求命令;根据服务端基于所述请求命令返回的第一SSL证书对证书更新接口进行安全套接层证书锁定SSL Pinning校验;若校验通过,则获取服务端通过证书更新接口返回的第二SSL证书;基于第二SSL证书对客户端内置SSL证书进行更新。本发明实施例的技术方案解决了SSL证书更新不及时就会导致客户端瘫痪,需要强制进行更新的问题,实现了确保客户端的SSL证书能被及时更新的技术效果。

Description

一种SSL证书更新方法、装置、电子设备及存储介质
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种SSL证书更新方法、装置、电子设备及存储介质。
背景技术
为了保证客户端与服务端之间的通信安全,确保用户数据不被第三方窃取和篡改,客户端通常采用内置SSL(Secure Sockets Layer,安全套接层)证书的方式,即在客户端与服务端正式通信之前,客户端通过比对本地的SSL证书与服务端反馈的SSL证书是否一致来确定所述服务端是否是真正的服务端,而不是由第三方伪装的服务端,从而保证客户端发送至服务端的数据不被第三方窃取。
但是,每个SSL证书有有效期,有效期到时需要及时更新为新的SSL证书,否则会导致客户端瘫痪,出现用户无法使用的情况。目前常用的客户端SSL证书更新方法为:通过发布客户端版本定期更新SSL证书,以保证客户端的可用性。
上述更新方法必须依赖用户将客户端更新到最新版本,否则达不到SSL证书被更新的目的,依然会存在客户端瘫痪、用户无法使用的风险。
发明内容
本发明实施例提供一种SSL证书更新方法、装置、电子设备及存储介质,以确保客户端的SSL证书被及时更新。
第一方面,本发明实施例提供了一种SSL证书更新方法,该方法包括:
当接收到设定指令时,向服务端发送证书更新接口的请求命令;
根据服务端基于所述请求命令返回的第一SSL证书对所述证书更新接口进行安全套接层证书锁定SSL Pinning校验;
若校验通过,则获取服务端通过所述证书更新接口返回的第二SSL证书;
基于所述第二SSL证书对客户端内置SSL证书进行更新。
第二方面,本发明实施例还提供了一种SSL证书更新装置,该装置包括:
发送模块,用于当接收到设定指令时,向服务端发送证书更新接口的请求命令;
校验模块,用于根据服务端基于所述请求命令返回的第一SSL证书对所述证书更新接口进行安全套接层证书锁定SSL Pinning校验;
获取模块,用于若校验通过,则获取服务端通过所述证书更新接口返回的第二SSL证书;
更新模块,用于基于所述第二SSL证书对客户端内置SSL证书进行更新。
第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例任一所述的SSL证书更新方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明实施例任一所述的SSL证书更新方法。
本发明实施例的技术方案,通过当接收到设定指令时,向服务端发送证书更新接口的请求命令,如果服务端返回的第一SSL证书对证书更新接口校验通过,则获取服务端返回的第二SSL证书并基于第二SSL证书对客户端内置SSL证书进行更新,解决了SSL证书更新不及时就会导致客户端瘫痪,需要强制进行更新的问题,实现了确保客户端的SSL证书能被及时更新的技术效果。
附图说明
结合附图并参考以下具体实施方式,本发明各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1为本发明实施例一所提供的一种SSL证书更新方法流程示意图;
图2为本发明实施例二所提供的一种SSL证书更新方法流程示意图;
图3为本发明实施例二所提供的服务端配置新的SSL证书的流程示意图;
图4为本发明实施例二所提供的服务端将SSL证书下发至客户端的流程示意图;
图5为本发明实施例二所提供的一种使用客户端内置的、有效期错开的双证书动态更新方案的流程示意图;
图6为本发明实施例二所提供的在发起HTTP请求时更新SSL证书的流程示意图;
图7为本发明实施例三所提供的一种SSL证书更新装置结构示意图;
图8为本发明实施例四所提供的一种电子设备结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
应当理解,本发明的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本发明中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
实施例一
图1为本发明实施例一所提供的一种SSL证书更新方法流程示意图。该方法适用于SSL证书更新系统。所述方法可以由SSL证书更新装置来执行,该装置可以通过软件和/或硬件的形式实现。
在介绍本发明实施例的技术方案之前,先简单介绍下应用场景。现有技术中,使用SSL Pinning(证书锁定)保障了客户端与服务端通信的唯一性和安全性,因此客户端与服务端之间的通信可以保证安全。但是,其缺点是SSL证书存在有效期问题,当SSL证书过期后,客户端将因SSL Pinnning验证错误而导致无法与服务端通信,导致客户端瘫痪。在本实施例中,为了保证客户端内置SSL证书的可用性,设计了通过证书更新接口向服务端请求新证书的方案。
如图1所示,本发明实施例提供的SSL证书更新方法包括如下步骤:
S110、当接收到设定指令时,向服务端发送证书更新接口的请求命令。
其中,设定指令是客户端发出的用于下载和更新SSL证书的指令,该指令可以是在客户端启动时发出,也可以是在客户端与服务端进行通行时发出。服务端为客户端提供服务,服务的内容包括如向客户端提供资源,保存客户端数据等。客户端与服务端相对应,可以为客户提供服务的程序,需要与服务端互相配合运行。证书更新接口是用来进行SSL证书更新数据传输的接口。请求命令指的是请求证书更新接口的命令。
SSL证书是具有有效期限的,有效期限的长短具体取决于证书类型以及购买的年限。从2018年3月开始,所有CA(Certificate Authority,证书颁发机构)颁发的证书有效期最长不能超过825天,即两年的有效期。但是,从2020年9月1日开始,新颁发的SSL证书仅具有最长有效期13个月,即397天。因此,当SSL证书到达或即将到达有效期时,需要申请签发新的SSL证书。进一步的,需要更新客户端的SSL证书,使得服务端与客户端之间正常通信,保证客户端的正常使用。
具体的,当客户端发出设定指令时,可以向服务端请求下载新版本的SSL证书,此时,客户端向服务端发送证书更新接口请求命令,以通过证书更新接口获得新版本的SSL证书。新版本的SSL证书由运维人员定期更新至服务端。
S120、根据服务端基于请求命令返回的第一SSL证书对证书更新接口进行安全套接层证书锁定SSL Pinning校验。
其中,第一SSL证书是服务端发送至客户端的,服务端当前正在使用的SSL证书。安全套接层证书锁定SSL Pinning校验是对SSL证书进行校验的方法,使用SSL Pinning校验以确保接收到的SSL证书信息是未经信息攻击或篡改的信息。
具体的,当服务端接收到请求命令时,会基于请求命令通过证书更新接口向客户端发送第一SSL证书。此时,客户端可以接收到上述第一SSL证书,并根据第一SSL证书对证书更新接口进行SSL Pinning校验。SSL Pinning校验具体是将服务端返回的所述第一SSL证书与客户端本地存储的正在使用的SSL证书进行比对,若两者一致,则确定SSL Pinning校验通过,否则确定SSL Pinning校验不通过。
S130、若校验通过,则获取服务端通过证书更新接口返回的第二SSL证书。
其中,第二SSL证书是服务端存储的当第一SSL证书到达有效期限后使用的新版本的SSL证书。证书更新接口可以从服务端的数据库获取新版本的SSL证书,即第二SSL证书,服务端数据库中的SSL证书由专门的人员定期进行部署。
具体的,若校验通过,表明客户端接收到的SSL证书信息是未经信息攻击或篡改的信息,可以在客户端与服务端之间的进行通信传输。此时,服务端将会通过证书更新接口向客户端发送第二SSL证书,以使客户端在其内置SSL证书过期时,利用所述第二SSL证书进行更新,从而实现确保客户端的SSL证书能被及时更新的技术效果,且不是通过频繁地更新客户端版本实现。
S140、基于第二SSL证书对客户端内置SSL证书进行更新。
其中,可以是当第二SSL证书下载完成就立即更新客户端内置SSL证书,也可以是当客户端内置SSL证书过期时,再使用第二SSL证书更新客户端内置的SSL证书。
本实施例的技术方案,通过当接收到设定指令时,向服务端发送证书更新接口的请求命令,如果服务端返回的第一SSL证书对证书更新接口校验通过,则获取服务端返回的第二SSL证书并基于第二SSL证书对客户端内置SSL证书进行更新,解决了SSL证书更新不及时就会导致客户端瘫痪,需要强制进行更新的问题,实现了确保客户端的SSL证书能被及时更新的技术效果。
实施例二
图2为本发明实施例二所提供的一种SSL证书更新方法流程示意图,本实施例在上述实施例的基础上,针对证书更新接口进行安全套接层证书锁定SSL Pinning校验以及基于第二SSL证书对客户端内置SSL证书进行更新的步骤进行优化。其中与上述实施例相同或相应的术语的解释在此不再赘述。
具体参见图2所示,该方法可以包括如下步骤:
S210、当接收到设定指令时,向服务端发送证书更新接口的请求命令,并接收服务端基于所述请求命令返回的第一SSL证书。
S220、将第一SSL证书与客户端已有的第三SSL证书进行比对,若相同,则执行S230,若不同,则执行S240。
可以理解的是,SSL Pinning技术的弊端决定了用户必须在每次证书有效期到达后更新客户端才能保证客户端继续可用。本实施例基于常规SSL Pinning方案提供了一套安全可靠的动态更新内置证书的方式,来保证用户在无感知的情况下平滑更新客户端内置SSL证书,从而不受旧SSL证书过期导致客户端无法使用的影响。同时,采用了双证书错开有效期共同内置策略来延长动态更新方案的生命周期,使动态更新方案的生命周期由一年变为两年。具体的,由于所述证书更新接口也需要接受SSL Pinning的校验,因此本实施例通过在客户端内置两张有效期错开的SSL证书的方式来延长所述证书更新接口的有效周期,比如单张SSL证书的有效期为13个月,则两张SSL证书的有效期理论上可以达到26个月。
示例性的,客户端分别内置第三SSL证书和第四SSL证书,其中,所述第三SSL证书有效期的截止日期为所述第四SSL证书有效期的起始日期,即第三SSL证书和第四SSL证书的有效期错开。在对证书更新接口进行SSL Pinning校验时,将所述第一SSL证书优先与客户端已有的第三SSL证书进行比对;若所述第一SSL证书与所述第三SSL证书相同,则确定校验通过;若所述第一SSL证书与所述第三SSL证书不相同,再将所述第一SSL证书与客户端已有的第四SSL证书进行比对;若所述第一SSL证书与所述第四SSL证书相同,则确定校验通过,否则确定校验不通过。
S230、获取服务端通过证书更新接口返回的第二SSL证书,并继续执行S260。
示例性的,服务端配置新的SSL证书(即所述第二SSL证书)的流程示意图如图3所示。服务端通过管理后台可以配置新的SSL证书,并将新的SSL证书保存至服务端的数据库中,以便客户端可以下载和使用。服务端将SSL证书下发至客户端的流程示意图如图4所示。当客户端发起证书更新请求时,读取服务端数据库中的SSL证书,并将读取到的SSL证书通过证书更新接口返回给客户端,以供使用。
S240、将第一SSL证书与客户端已有的第四SSL证书进行比对,若相同,则执行S230,若不同,则执行S250。
其中,第四SSL证书是客户端存储的,有效期位于第三SSL证书之后,具体的,第三SSL证书有效期的截止日期为第四SSL证书有效期的起始日期。
具体的,若第一SSL证书与客户端已有的第三SSL证书不相同时,可能是第三SSL证书过期,因此,可以进一步调用客户端已有的第四SSL证书来进行校验。将第一SSL证书与客户端已有的第四SSL证书进行比对,若两个证书相同,则确定校验通过,可以进行后续通信,以获取第二SSL证书;若两个证书不相同,则确定校验不通过,需要更新客户端来对SSL证书进行更新。
进一步的,可参考图5所示的一种使用客户端内置的、有效期错开的双证书动态更新方案的流程示意图。具体的,客户端内置A证书和B证书,其中,A证书相当于上述的第三SSL证书,B证书相当于上述的第四SSL证书,A证书有效期的截止日期为B证书有效期的起始日期,当客户端启动时,优先使用A证书请求证书更新接口,此时,使用A证书对证书更新接口进行SSL Pinning校验。若校验通过,则可以通过证书更新接口从服务端获取新的SSL证书,并将新的SSL证书与本地内置的SSL证书进行比对,若本地内置的SSL证书中不存在与新的SSL证书一致的证书,那么将新的SSL证书存储至本地并更新内存证书。若校验不通过,再使用B证书请求证书更新接口,此时使用B证书对证书更新接口进行SSL Pinning校验,若校验通过,则通过证书更新接口从服务端获取新的SSL证书,并将新的SSL证书存储至本地以更新内存证书;若校验不通过,则需要引导用户对客户端进行版本更新,以通过更新客户端版本实现对SSL证书的更新,从而保证客户端的可用性。
S250、进行客户端更新提示,以提醒用户将客户端更新至新版本。
其中,新版本的客户端的安装包包括第二SSL证书。
具体的,可以是向用户发出提醒消息,以提醒用户将客户端更新至新版本。进行客户端更新提示的原因在于,能够及时提醒用户更新客户端,避免因请求证书更新接口校验失败而无法使用的情况。更新后的新版本的客户端中包括第二SSL证书,以保证客户端的可用性、保证客户端不瘫痪,可以继续与服务端进行安全通信。
S260、当客户端向服务端发送HTTP请求时,基于客户端内置SSL证书对请求进行SSL Pinning校验,若校验通过,则执行S300,若校验不通过,则执行S270。
可选的,从服务端获取到第二SSL证书之后,仍需要一套校验流程来保证新证书即第二SSL证书用于SSL Pinning的校验中,以使新证书能够在用户无感知的情况下投入使用,使客户端平滑过渡到新证书中。具体的,如图6所示:当客户端发起HTTP请求后,优先读取客户端内置的SSL证书(即上述第三SSL证书以及第四SSL证书)进行SSL Pinning校验,如果通过校验确定客户端内置的SSL证书过期,则读取之前下载的SSL证书(即所述第二SSL证书)进行SSL Pinning校验。如此,只要服务端保持证书的更新,客户端就可以采用新的证书进行校验,既保证了数据传输的安全性也保证了用户的体验度。
S270、如果通过SSL Pinning校验确定客户端内置SSL证书已过期,则基于第二SSL证书对请求进行SSL Pinning校验,若校验通过,则执行S280,若校验不通过,则执行S290。
S280、将第二SSL证书更新为客户端的内存证书,并删除客户端内置SSL证书。
S290、触发设定指令,以向服务端请求新证书。
具体的,当客户端内所有的SSL证书均不可用的时候,为了保证客户端与服务端能够正常通信,需要向服务端请求新证书。
S300、进入后续HTTP流程。
本实施例的技术方案,通过使用客户端内置的、有效期错开的双证书对证书更新接口进行SSL Pinning校验,延长了证书更新接口的有效周期,通过利用证书更新接口从服务端获取新版本的SSL证书,解决了SSL证书更新不及时就会导致客户端瘫痪,需要强制进行更新的问题,实现了确保客户端的SSL证书能被及时更新的技术效果。
实施例三
图7为本发明实施例三所提供的一种SSL证书更新装置结构示意图,该装置包括:发送模块310,校验模块320,获取模块330以及更新模块340。
其中,发送模块310,用于当接收到设定指令时,向服务端发送证书更新接口的请求命令;校验模块320,用于根据服务端基于请求命令返回的第一SSL证书对证书更新接口进行安全套接层证书锁定SSL Pinning校验;获取模块330,用于若校验通过,则获取服务端通过证书更新接口返回的第二SSL证书;更新模块340,用于基于第二SSL证书对客户端内置SSL证书进行更新。
可选的,校验模块320,还用于将第一SSL证书与客户端已有的第三SSL证书进行比对;若第一SSL证书与第三SSL证书相同,则确定校验通过;若第一SSL证书与第三SSL证书不相同,则进行下一级校验流程。
可选的,校验模块320,还用于将第一SSL证书与客户端已有的第四SSL证书进行比对;若第一SSL证书与第四SSL证书相同,则确定校验通过,否则确定校验不通过;其中,第三SSL证书有效期的截止日期为第四SSL证书有效期的起始日期。
可选的,校验模块320,还用于进行客户端更新提示,以提醒用户将客户端更新至新版本;其中,新版本的客户端包括第二SSL证书。
可选的,更新模块340,还用于当客户端向服务端发送HTTP请求时,基于客户端内置SSL证书对请求进行SSL Pinning校验;如果通过SSL Pinning校验确定客户端内置SSL证书已过期,则基于第二SSL证书对请求进行SSL Pinning校验,并基于校验结果对客户端内置SSL证书进行更新。
可选的,更新模块340,还用于若基于第二SSL证书对请求进行SSL Pinning校验的校验结果为通过,则将第二SSL证书更新为客户端的内存证书,并删除客户端内置SSL证书。
可选的,更新模块340,还用于若基于第二SSL证书对所述请求进行SSL Pinning校验的校验结果为不通过,则触发设定指令,以向服务端请求新证书。
本实施例的技术方案,通过当接收到设定指令时,向服务端发送证书更新接口的请求命令,如果服务端返回的第一SSL证书对证书更新接口校验通过,则获取服务端返回的第二SSL证书并基于第二SSL证书对客户端内置SSL证书进行更新,解决了SSL证书更新不及时就会导致客户端瘫痪,需要强制进行更新的问题,实现了确保客户端的SSL证书能被及时更新的技术效果。
本发明实施例所提供的SSL证书更新装置可执行本发明任意实施例所提供的SSL证书更新方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述装置所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护范围。
实施例四
下面参考图8,其示出了适于用来实现本发明实施例的电子设备400的结构示意图。本发明实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图8示出的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,电子设备400可以包括处理装置(例如中央处理器、图形处理器等)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储装置408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM 403中,还存储有电子设备400操作所需的各种程序和数据。处理装置401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
通常,以下装置可以连接至I/O接口405:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置406;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置407;包括例如磁带、硬盘等的存储装置408;以及通信装置409。通信装置409可以允许电子设备400与其他设备进行无线或有线通信以交换数据。虽然图8示出了具有各种装置的电子设备400,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置409从网络上被下载和安装,或者从存储装置408被安装,或者从ROM 402被安装。在该计算机程序被处理装置401执行时,执行本发明实施例的方法中限定的上述功能。
本发明实施例提供的电子设备与上述实施例提供的SSL证书更新方法属于同一发明构思,未在本发明实施例中详尽描述的技术细节可参见上述实施例,并且本发明实施例与上述实施例具有相同的有益效果。
实施例五
本发明实施例提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述实施例所提供的SSL证书更新方法。
需要说明的是,本发明上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
当接收到设定指令时,向服务端发送证书更新接口的请求命令;
根据服务端基于请求命令返回的第一SSL证书对证书更新接口进行安全套接层证书锁定SSL Pinning校验;
若校验通过,则获取服务端通过证书更新接口返回的第二SSL证书;
基于第二SSL证书对客户端内置SSL证书进行更新。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,可编辑内容显示单元还可以被描述为“编辑单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本发明的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
以上描述仅为本发明的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本发明的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (8)

1.一种SSL证书更新方法,其特征在于,包括:
当接收到设定指令时,向服务端发送证书更新接口的请求命令;
根据服务端基于所述请求命令返回的第一SSL证书对所述证书更新接口进行安全套接层证书锁定SSL Pinning校验;
若校验通过,则获取服务端通过所述证书更新接口返回的第二SSL证书;
基于所述第二SSL证书对客户端内置SSL证书进行更新;
所述根据服务端基于所述请求命令返回的第一SSL证书对所述证书更新接口进行安全套接层证书锁定SSL Pinning校验,包括:
将所述第一SSL证书与客户端已有的第三SSL证书进行比对;
若所述第一SSL证书与所述第三SSL证书相同,则确定校验通过;
若所述第一SSL证书与所述第三SSL证书不相同,则进行下一级校验流程;
所述进行下一级校验流程,包括:
将所述第一SSL证书与客户端已有的第四SSL证书进行比对;
若所述第一SSL证书与所述第四SSL证书相同,则确定校验通过,否则确定校验不通过;
其中,所述第三SSL证书有效期的截止日期为所述第四SSL证书有效期的起始日期。
2.根据权利要求1所述的方法,其特征在于,若确定校验不通过,所述方法还包括:
进行客户端更新提示,以提醒用户将客户端更新至新版本;
其中,新版本的所述客户端包括所述第二SSL证书。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第二SSL证书对客户端内置SSL证书进行更新,包括:
当客户端向服务端发送HTTP请求时,基于客户端内置SSL证书对所述请求进行SSLPinning校验;
如果通过所述SSL Pinning校验确定客户端内置SSL证书已过期,则基于所述第二SSL证书对所述请求进行SSL Pinning校验,并基于校验结果对客户端内置SSL证书进行更新。
4.根据权利要求3所述的方法,其特征在于,所述基于校验结果对客户端内置SSL证书进行更新,包括:
若基于所述第二SSL证书对所述请求进行SSL Pinning校验的校验结果为通过,则将所述第二SSL证书更新为客户端的内存证书,并删除客户端内置SSL证书。
5.根据权利要求3所述的方法,其特征在于,所述基于校验结果对客户端内置SSL证书进行更新,包括:
若基于所述第二SSL证书对所述请求进行SSL Pinning校验的校验结果为不通过,则触发所述设定指令,以向服务端请求新证书。
6.一种SSL证书更新装置,其特征在于,包括:
发送模块,用于当接收到设定指令时,向服务端发送证书更新接口的请求命令;
校验模块,用于根据服务端基于所述请求命令返回的第一SSL证书对所述证书更新接口进行安全套接层证书锁定SSL Pinning校验;
获取模块,用于若校验通过,则获取服务端通过所述证书更新接口返回的第二SSL证书;
更新模块,用于基于所述第二SSL证书对客户端内置SSL证书进行更新;
所述校验模块,还用于将第一SSL证书与客户端已有的第三SSL证书进行比对;若第一SSL证书与第三SSL证书相同,则确定校验通过;若第一SSL证书与第三SSL证书不相同,则进行下一级校验流程;
所述校验模块,还用于将第一SSL证书与客户端已有的第四SSL证书进行比对;若第一SSL证书与第四SSL证书相同,则确定校验通过,否则确定校验不通过;其中,第三SSL证书有效期的截止日期为第四SSL证书有效期的起始日期。
7.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一项所述的SSL证书更新方法。
8.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-5中任一项所述的SSL证书更新方法。
CN202011281587.XA 2020-11-16 2020-11-16 一种ssl证书更新方法、装置、电子设备及存储介质 Active CN112422551B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011281587.XA CN112422551B (zh) 2020-11-16 2020-11-16 一种ssl证书更新方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011281587.XA CN112422551B (zh) 2020-11-16 2020-11-16 一种ssl证书更新方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112422551A CN112422551A (zh) 2021-02-26
CN112422551B true CN112422551B (zh) 2022-08-23

Family

ID=74832439

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011281587.XA Active CN112422551B (zh) 2020-11-16 2020-11-16 一种ssl证书更新方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112422551B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114844651B (zh) * 2022-05-31 2024-05-28 唯思电子商务(深圳)有限公司 一种app客户端https证书强校验的方法及系统
CN115021917B (zh) * 2022-06-24 2024-05-10 浪潮卓数大数据产业发展有限公司 一种基于证书的安全校验方法、系统、设备及介质
CN115021938A (zh) * 2022-06-27 2022-09-06 中国银行股份有限公司 安全数字证书应用方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110225013A (zh) * 2019-05-30 2019-09-10 世纪龙信息网络有限责任公司 服务证书的监控和更新系统
CN111786781A (zh) * 2020-06-29 2020-10-16 友谊时光科技股份有限公司 一种ssl证书监控方法、系统、装置、设备及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321662B2 (en) * 2008-05-08 2012-11-27 International Business Machines Corporation Certificate renewal using secure handshake
US8032742B2 (en) * 2008-12-05 2011-10-04 Unisys Corporation Dynamic updating of trusted certificates and certificate revocation lists in a computing system
CN103001965B (zh) * 2012-12-10 2016-01-27 北京星网锐捷网络技术有限公司 服务器证书更新方法及服务器
CN103888422B (zh) * 2012-12-21 2017-10-24 华为技术有限公司 安全证书更新方法、客户端、服务器
CN110825400B (zh) * 2018-08-14 2024-04-23 杭州萤石软件有限公司 一种应用程序客户端的证书更新方法和系统
CN109639661B (zh) * 2018-12-04 2021-05-18 深圳前海微众银行股份有限公司 服务器证书更新方法、装置、设备及计算机可读存储介质
CN111694591A (zh) * 2020-06-16 2020-09-22 深圳前海微众银行股份有限公司 证书更新方法、装置、系统、服务端及计算机存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110225013A (zh) * 2019-05-30 2019-09-10 世纪龙信息网络有限责任公司 服务证书的监控和更新系统
CN111786781A (zh) * 2020-06-29 2020-10-16 友谊时光科技股份有限公司 一种ssl证书监控方法、系统、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112422551A (zh) 2021-02-26

Similar Documents

Publication Publication Date Title
CN112422551B (zh) 一种ssl证书更新方法、装置、电子设备及存储介质
CN112073433B (zh) 一种ssl证书更新方法、装置、电子设备及存储介质
CN112866385B (zh) 接口调用方法、装置、电子设备和存储介质
CN111209306A (zh) 业务逻辑判断方法、装置、电子设备和存储介质
CN113407916B (zh) 信息处理方法、装置、终端和存储介质
CN111596992B (zh) 导航栏展示方法、装置和电子设备
CN111460432B (zh) 在线文档权限控制方法、装置、设备及计算机可读介质
CN111241518B (zh) 用户验证方法、装置、设备和介质
CN110855655B (zh) 一种信息验证方法、装置、设备和存储介质
CN112181733A (zh) 一种服务请求的处理方法、装置、设备及存储介质
CN114780124A (zh) 差分升级方法、装置、介质及电子设备
CN114202332A (zh) 一种数字货币钱包管理方法、装置和系统
CN111580890A (zh) 用于处理特征的方法、装置、电子设备和计算机可读介质
CN111309367A (zh) 一种管理服务发现的方法、装置、介质和电子设备
CN111626787B (zh) 资源发放方法、装置、介质和设备
CN114329563A (zh) 数据库的处理方法、装置、设备及介质
CN117155994B (zh) 服务注册管理方法、装置、设备、可读存储介质
CN113641966B (zh) 一种应用集成方法、系统、设备及介质
CN115171248B (zh) 基于蓝牙钥匙的连接方法、装置及相关设备
CN111835846B (zh) 信息更新方法、装置和电子设备
US20240152504A1 (en) Data interaction method, apparatus, and electronic device
CN115953863A (zh) 基于蓝牙钥匙的分享方法、装置及相关设备
CN113721934A (zh) 热补丁安装方法、装置、电子设备和计算机可读介质
CN113760365A (zh) 取令牌操作执行方法、装置、电子设备和计算机可读介质
CN115811404A (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