CN115941217B - 用于安全通信的方法和其相关产品 - Google Patents
用于安全通信的方法和其相关产品 Download PDFInfo
- Publication number
- CN115941217B CN115941217B CN202110942545.4A CN202110942545A CN115941217B CN 115941217 B CN115941217 B CN 115941217B CN 202110942545 A CN202110942545 A CN 202110942545A CN 115941217 B CN115941217 B CN 115941217B
- Authority
- CN
- China
- Prior art keywords
- client
- certificate
- digital certificate
- application
- user
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 46
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000004044 response Effects 0.000 claims abstract description 15
- 230000002457 bidirectional effect Effects 0.000 claims abstract description 10
- 238000004590 computer program Methods 0.000 claims abstract description 6
- 230000008520 organization Effects 0.000 claims abstract description 4
- 230000007246 mechanism Effects 0.000 claims abstract description 3
- 238000012795 verification Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种用于安全通信的方法、客户端、服务器、***和计算机程序产品。其中该方法包括:响应于客户端上安装的应用程序与服务器的通信请求,生成关于客户端数字证书的证书申请请求,其中所述客户端数字证书与所述客户端相关联;向证书发放机构发送所述证书申请请求;接收所述证书发放机构基于所述证书申请请求发送的客户端数字证书;以及基于所述客户端数字证书,建立所述应用程序与所述服务器之间的安全传输层协议双向认证信道。通过本发明的技术方案,无需引入额外的硬件设备,即可实现应用程序与服务器之间的安全传输层协议双向认证信道的建立。
Description
技术领域
本发明一般地涉及通信技术领域。更具体地,本发明涉及一种用于安全通信的方法、客户端、服务器、***和计算机程序产品。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述可包括可以探究的概念,但不一定是之前已经想到或者已经探究的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就承认是现有技术。
TLS(Transport Layer Security,安全传输层协议)是互联网领域中通用的安全信道协议。目前客户端中的大部分移动APP在与服务器通信时会使用到TLS信道,并且在该信道的建立过程中往往仅涉及TLS单向认证,即仅需客户端来校验服务器端的身份。这种依靠TLS单向认证方式来构建的信道,其安全程度相对较低,已无法适用于安全性要求较高的场景。另外,相关技术还提出了一种TLS双向认证,即由服务器来验证客户端身份。这个认证方式需要额外配置数字证书硬件设备(例如成本为数十元到数百元不等的蓝牙U盾、音频盾、NFC卡等设备)来支持。可以看出,这种TLS认证方式不仅成本高,并且便携性差,从而影响APP与服务器之间的通信性能。
发明内容
为了至少解决上述背景技术部分所描述的技术问题,本发明提出了一种用于安全通信的方案。利用本发明的方案,无需引入额外的硬件设备,即可实现应用程序与服务器之间的安全传输层协议双向认证信道的建立。由此可见,本发明的技术方案提高了应用程序与服务器之间通信的安全性,同时有效降低安全通道的构建成本,并进而提升应用程序与服务器之间的通信性能。鉴于此,本发明在如下的多个方面提供解决方案。
本发明的第一方面提供了一种用于安全通信的方法,包括:响应于客户端上安装的应用程序与服务器的通信请求,生成关于客户端数字证书的证书申请请求,其中所述客户端数字证书与所述客户端相关联;向证书发放机构发送所述证书申请请求;接收所述证书发放机构基于所述证书申请请求发送的客户端数字证书;以及基于所述客户端数字证书,建立所述应用程序与所述服务器之间的安全传输层协议双向认证信道。
在一个实施例中,其中生成关于客户端数字证书的证书申请请求包括:获取所述客户端的标识信息;获取所述应用程序的标识信息;以及根据所述客户端的标识信息和所述应用程序的标识信息,生成所述证书申请请求。
在一个实施例中,其中获取所述客户端的标识信息包括:生成关于所述客户端数字证书的初始密钥,其中所述初始密钥包括初始公钥;获取所述客户端的设备信息;以及根据所述设备信息和所述初始公钥,生成所述客户端的标识信息。
在一个实施例中,其中所述初始密钥还包括初始私钥,所述方法还包括:根据所述客户端的标识信息和所述初始私钥,生成目标私钥;根据所述目标私钥生成目标公钥;以及将所述目标公钥、所述客户端的标识信息和所述应用程序的标识信息添加至所述证书申请请求中的被签名区域内。
本发明的第二方面提供了一种用于安全通信的方法,包括:获取与客户端相关联的客户端数字证书,其中所述客户端数字证书用于构建服务器与所述客户端上安装的应用程序之间的安全传输层协议双向认证信道;响应于对所述应用程序的用户的身份验证请求,将所述客户端数字证书与所述用户进行关联;以及基于对所述客户端数字证书的验证,以实现对所述用户的身份验证。。
在一个实施例中,其中将所述客户端数字证书与所述用户进行关联包括:获取所述用户访问所述应用程序时的验证信息;基于所述验证信息对所述用户进行身份验证;以及响应于通过所述身份验证,将所述客户端数字证书与所述用户进行关联。
在一个实施例中,其中将所述客户端数字证书与所述用户进行关联包括:从所述客户端数字证书中提取所述客户端的标识信息;以及将所述客户端的标识信息与所述用户进行关联。
本发明的第三方面提供了一种客户端,包括:处理器;以及存储器,其存储有用于安全通信的计算机指令,当所述计算机指令由所述处理器运行时,使得所述客户端执行前述第一方面以及在下文多个实施例中所述的方法。
本发明的第四方面提供了一种计算机程序产品,包括用于安全通信的程序指令,当所述程序指令由处理器执行时,使得实现前述第一方面以及在下文多个实施例中所述的方法。
本发明的第五方面提供了一种服务器,包括:处理器;以及存储器,其存储有用于安全通信的计算机指令,当所述计算机指令由所述处理器运行时,使得所述服务器执行前述第二方面以及在下文多个实施例中所述的方法。
本发明的第六方面提供了一种计算机程序产品,包括用于安全通信的程序指令,当所述程序指令由处理器执行时,使得实现前述第二方面以及在下文多个实施例中所述的方法。
本发明的第七方面提出了一种用于安全通信的***,包括:如本发明的第三方面所述的客户端,其配置成执行根据前述第一方面以及在下文多个实施例中所述的方法,以生成关于客户端证书的证书申请请求,并基于所述客户端证书来建构应用程序与服务器之间的安全传输层协议双向认证信道;证书发放机构,其配置成基于所述证书申请请求颁发与所述客户端相关联的客户端数字证书;以及如本发明的第五方面所述的服务器,其配置成执行根据前述第二方面以及在下文多个实施例中所述的方法,用于将所述客户端数字证书与用户进行绑定,以基于对客户端数字证书的验证实现对用户的身份验证。
利用本发明所提供的方案,客户端可以向证书发放机构申请与客户端关联的客户端数字证书,以基于该客户端数字证书实现应用程序与服务器之间的安全传输层协议双向认证信道(即TLS双向认证信道)的构建。可以看出,本发明的方案无需引入额外的硬件设备,即可实现应用程序与服务器之间的TLS双向认证信道的建立,可以有效降低安全通道的构建成本。进一步地,通过TLS双向认证信道的建立,本发明的方案提高了应用程序与服务器之间通信的安全性,并进而提升应用程序与服务器之间的通信性能。另外,在一些实施场景中,在建立TLS双向认证信道之后,可以将上述客户端数字证书与访问应用程序的用户进行关联。由此,在该用户再次使用应用程序时,本发明的方案可以通过验证客户端数字证书的方式来实现用户身份的验证,以支持用户的免登录操作,从而提升用户的使用体验。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1A是示出根据本发明实施例的用于安全通信的方法的流程图;
图1B是示出根据本发明实施例的证书申请请求的生成方法的流程图;
图2是示出根据本发明实施例的用于安全通信的另一方法的流程图;
图3是示出根据本发明实施例的用于安全通信的***中各设备之间的交互图;以及
图4是示出根据本发明实施例的客户端的结构图。
具体实施方式
下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
应当理解,本发明的权利要求、说明书及附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。本发明的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施方式的目的,而并不意在限定本发明。如在本发明说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本发明说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
下面结合附图来详细描述本发明的具体实施方式。
图1是示出根据本发明实施例的用于安全通信的方法100的流程图。在一些实施场景中,上述方法100适用于客户端,该客户端上安装有应用程序,并且可以通过上述方法100实现与服务器之间的通信。具体如图1所示,在步骤S101处,可以响应于前述的应用程序与服务器的通信请求,来生成关于客户端数字证书的证书申请请求。其中前述的通信请求可以是应用程序根据业务需求所触发的。在一些实施例中,前述的应用程序可以是客户端上所安装的任一应用程序,特别地,涉及安全性要求较高的应用程序。而对于前述的证书申请请求的生成过程,在一个实施例中,可以涉及图1B中示出的步骤S101-1、步骤S101-2和步骤S101-3。
如图1B所示,在步骤S101-1处,可以获取前述的客户端的标识信息。在一个实施场景中,前述的客户端的标识信息可以通过客户端数字证书的初始公钥和设备信息来确定。具体地,可以通过生成关于前述客户端数字证书的初始密钥。例如,可以通过RSA算法来生成前述的初始密钥。可以理解的是,这里的初始密钥的生成过程仅是一种实现方式,本发明的方案并不受此限制。然后,可以获取前述客户端的设备信息。在一个实施场景中,前述的设备信息可以包括但不限于Mac地址、IMEI(International Mobile Equipment Identity,国际移动设备识别码)、UUID(Universally Unique Identifier,通用唯一识别码)、IDFV(Identifier For Vendor,供应商标识符)等信息。接着,可以将前述的设备信息和初始公钥拼装成上述标识信息。
在一个实施例中,可以对前述的设备信息和初始公钥进行顺序排列来形成上述标识信息,或者对前述的设备信息和初始公钥进行异或运算来得到该标识信息。可以理解的是,这里的标识信息的获取方式仅是一种可能的实现方式,本发明的方案并不受此限制。
接着,在步骤S101-2处,可以获取前述的应用程序的标识信息。在一个实施场景中,前述的应用程序的标识信息可以包括但不限于名称、类别等信息。可以理解的是,这里所列举的内容仅用于对应用程序的标识信息进行举例说明,并不对其进行限定。
然后,在步骤S101-3处,可以根据前述的客户端的标识信息和应用程序的标识信息来确定证书申请请求。在一个实施场景中,可以将前述客户端和应用程序的标识信息添加至上述请求中的被签名区域内。在一个实施例中,还可以根据前述的初始密钥中的初始私钥和客户端的标识信息来生成目标私钥,以基于该目标私钥来生成目标公钥。然后,将前述的目标公钥、客户端的标识信息和应用程序的标识信息添加至证书申请请求中的被签名区域内。由此,可以避免目标公钥、客户端的标识信息和应用程序的标识信息被非法篡改,进而确保申请到的数字证书的有效性。另外,通过上述实施例中的方式获取到的客户端的标识信息和目标公私钥,可以不受应用程序的缓存文件的影响,即在缓存文件被清空或者丢失时,客户端的标识信息和目标公私钥仍然能够通过上述方式得到恢复。
在生成前述的证书申请请求之后,接着,在步骤S102处,可以向证书发放机构发送证书申请请求。可以理解的是,这里的证书申请请求即为前文结合步骤S102所描述得到证书申请请求。然后,在步骤S103处,可以接前述证书发放机构基于该证书申请请求发送的客户端数字证书。其中前述的客户端数字证书与客户端相关联。在一个实施场景中,如前所述,该证书申请请求中可以包括客户端的标识信息,由此证书发放机构可以通过前述的客户端的标识信息来使客户端与客户端数字证书相关联(例如可以绑定客户端和客户端数字证书)。在一个实施例中,前述的证书发放机构可以布置有各种类型的服务器和/或数据库,以实现向客户端发送数字证书。
接着,在步骤104处,可以基于前述的客户端数字证书来建立应用程序与服务器之间的TLS双向认证信道。可以看出,本发明的方案无需引入额外的硬件设备,即可实现应用程序与服务器之间的安全传输层协议双向认证信道的建立。
图2是示出根据本发明实施例的用于安全通信的另一个方法200的流程图。在一些实施场景中,上述方法200适用于服务器,该服务器可以通过上述方法200实现与客户端上安装的应用程序之间的通信。可以理解的是,这里的服务器和客户端可以是前文结合图1所描述的服务器和客户端,因此前文关于服务器和客户端的描述也同样适用于下文的描述。
如图2所示,在步骤S201处,可以获取与客户端相关联的客户端数字证书,其中前述的客户端数字证书用于构建服务器与客户端上安装的应用程序之间的安全传输层协议双向认证信道。可以理解的是,这里的客户端数字证书可以是前文结合图1所描述的客户端数字证书。在一个实施例中,可以将客户端的标识信息与客户端数字证书进行绑定,来使客户端与客户端数字证书相关联。可以理解的是,这里所述的绑定方式仅是一种可能的实现方式,本发明的方案并不受此限制。
接着,在步骤S202处,响应于对前述应用程序的用户的身份验证请求,可以将前述的客户端数字证书与用户进行关联。在一个实施例中,在用户访问前述的应用程序时,客户端可以触发对用户的身份验证请求并将其发送至服务器。接着,服务器在接收到该身份认证请求时,可以检测前述的客户端数字证书是否已关联该用户(可以理解的是,这里的用户与证书间的关联性检测步骤可以适用于用户非首次访问应用时执行。而在用户首次访问应用程序时,可以直接跳过该步骤来执行将客户端证书与用户进行关联的操作)。在确定未关联该用户时,服务器可以响应于该身份验证请求,以将该用户与客户端数字证书进行关联。当该用户再次登录应用程序时,可以直接通过客户端数字证书的验证来实现用户的身份验证。
接着,在步骤S203处,可以基于对所述客户端数字证书的验证,来实现对所述用户的身份验证。在一个实施例中,在用户访问应用程序时,可以通过获取该用户的验证信息(例如用户通过客户端所发送的用户名、密码、生物特征信息等),并且基于该验证信息来对用户进行身份验证。然后在通过身份验证时,将前述客户端数字证书与用户进行关联。在一个实施例中,可以将客户端的标识信息(例如从客户端数字证书中提取)与用户进行关联。由此,在该用户再次使用应用程序时,可以通过验证客户端数字证书的方式来实现用户身份的验证,以支持用户的免登录操作,从而提升用户的使用体验。
需要指出的是,本发明的技术方案不同于传统的U盾、NFC卡以及软件形式证书等相关技术。这些相关技术除了需要如前文背景技术中所提及的硬件支撑以外,还需要严格按照审核用户身份、发放证书和构建信道等顺序来实现应用程序与服务器之间的通信。另外,在后续的使用应用程序的过程中,用户还需要每次都输入验证信息。相比而言,利用本发明的方案,可以先获取与客户端相关联的客户端数字证书,并且在用户访问应用程序(特别是首次访问)时,将该客户端数字证书与用户进行绑定。基于此,当用户后续再次访问应用程序时,其无需手动输入验证信息而可以直接通过验证客户端证书来实现对用户的身份验证。由此,用户可以在基于客户端数字证书建立TLS信道后实现快速登录。可见,本发明的方案不仅节省了业务流程,还提升了用户的使用体验。
图3是示出根据本发明实施例的用于安全通信的***300的交互图。在一些实施场景中,***300可以包括客户端、证书发放机构和服务器。可以理解的是,这里的客户端和服务器可以是前文结合图1和图2所描述的客户端和服务器,因此前文关于客户端和服务器的描述同样也适用于下文。下面对客户端、证书发放机构和服务器之间的交互进行详细描述。
在客户端处:
在步骤S301处,在前述客户端中的应用程序启动后以及与前述服务器建立通道之前,检测本地是否存储有客户端数字证书。若确定未存储有该客户端数字证书,则执行步骤S302。可以理解的是,这里的客户端数字证书可以是前文结合图1和图2所描述的客户端数字证书,因此前文所描述的客户端数字证书同样也适用于下文。
在步骤S302处,响应于本地未存储有客户端数字证书,可以生成目标密钥和关于客户端数字证书的证书申请请求。在一个实施例中,可以将前述客户端的标识信息、应用程序的标识信息和目标密钥中的目标公钥添加至上述证书申请请求中的被签名区域内。在一个实施例中,前述的客户端的标识信息和目标公钥的具体生成过程,可以根据前文结合图1所描述的客户端的标识信息和目标公钥的生成过程来实施。
接着,在步骤S303处,可以向前述的证书发放机构发送上述证书申请请求,以便前述的证书发放机构基于该证书申请请求反馈与前述客户端相关联的客户端数字证书。
在证书发放机构处:
在步骤S304处,上述证书发放机构接收到前述的证书申请请求后,颁发绑定客户端的标识信息的客户端数字证书。在一个实施例中,若已存储有该客户端数字证书(即该证书已被申请过),则无需再重复执行前述的绑定操作。
接着,在步骤S305处,可以向前述的客户端发送上述客户端数字证书。可以理解的是,这里的客户端数字证书可以是证书发放机构所存储的与客户端相关联的数字证书,或者可以是基于前述步骤S304中绑定有客户端的标识信息的数字证书。
在客户端处:
在步骤S306处,响应于获取到前述的客户端数字证书,可以在前述的应用程序与服务器有通信需求时,基于该客户端数字证书,建立应用程序与服务器之间的TLS双向认证安全信道。可以理解的是,这里的客户端数字证书可以是本地所存储的,或者可以是前述证书发放机构所发送的。
在服务器处:
在步骤S307处,可以将上述客户端数字证书转发至与服务器相关的业务***。以基于该业务***来对访问应用程序的用户进行身份验证。在一个实施例中,在用户首次访问应用程序时,可以获取该用户的验证信息(例如用户名、密码、生物特征信息、短信等),以及基于该验证信息来验证用户身份。并在通过对用户的身份验证时,将证书中客户端的标识信息与用户进行关联(例如可以进行绑定)。由此,在该用户再次使用应用程序时,可以通过验证客户端数字证书的方式来实现用户身份的验证,以支持用户的免登录操作。
图4是示出根据本发明实施例的客户端400的示意框图。该客户端400可以包括根据本发明实施例的设备401以及其***设备和外部网络。如前所述,该客户端(例如通过设备401)实现获取与客户端相关联的客户端数字证书、并利用该客户端数字证书建立应用程序与服务器之间的TLS双向认证安全信道等操作,以实现前述结合图1-图3所述的本发明的方案。
如图4中所示,设备401可以包括CPU4011,其可以是通用CPU、专用CPU或者其他信息处理以及程序运行的执行单元。进一步,设备401还可以包括大容量存储器4012和只读存储器ROM 4013,其中大容量存储器4012可以配置用于存储各类数据,包括账本、账本信息、宣告周期等以及区块链网络所需的各种程序,ROM 4013可以配置成存储对于设备401的加电自检、***中各功能模块的初始化、***的基本输入/输出的驱动程序及引导操作***所需的数据。
进一步,设备401还包括其他的硬件平台或组件,例如示出的TPU(TensorProcessing Unit,张量处理单元)4014、GPU(Graphic Processing Unit,图形处理器)4015、FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)4016和MLU(MemoryLogic Unit),存储器逻辑单元)4017。可以理解的是,尽管在设备401中示出了多种硬件平台或组件,但这里仅仅是示例性的而非限制性的,本领域技术人员可以根据实际需要增加或移除相应的硬件。例如,设备401可以仅包括CPU作为公知硬件平台和另一硬件平台作为本发明的测试硬件平台。
本发明的设备401还包括通信接口4018,从而可以通过该通信接口4018连接到局域网/无线局域网(LAN/WLAN)405,进而可以通过LAN/WLAN连接到本地服务器406或连接到因特网(“Internet”)407。替代地或附加地,本发明的设备401还可以通过通信接口4018基于无线通信技术直接连接到因特网或蜂窝网络,例如基于第三代(“3G”)、***(“4G”)或第5代(“5G”)的无线通信技术。
设备401的***设备可以包括显示装置402、输入装置403以及数据传输接口404。在一个实施例中,显示装置402可以例如包括一个或多个扬声器和/或一个或多个视觉显示器,其配置用于对本发明测试设备的运算过程或者最终结果进行语音提示和/或图像视频显示。输入装置403可以包括例如键盘、鼠标、麦克风、姿势捕捉相机,或其他输入按钮或控件,其配置用于接收测试数据的输入或用户指令。数据传输接口404可以包括例如串行接口、并行接口或通用串行总线接口(“USB”)、小型计算机***接口(“SCSI”)、串行ATA、火线(“FireWire”)、PCI Express和高清多媒体接口(“HDMI”)等,其配置用于与其他设备或***的数据传输和交互。根据本发明的方案,该数据传输接口404可以接收与客户端相关联的客户端数字证书,并且向设备401传送该客户端数字证书。
本发明的设备401的上述CPU 4011、大容量存储器4012、只读存储器ROM 4013、TPU4014、GPU 4015、FPGA 4016、MLU 4017和通信接口4018可以通过总线4019相互连接,并且通过该总线与***设备实现数据交互。在一个实施例中,通过该总线4019,CPU 4011可以控制设备401中的其他硬件组件及其***设备。
在工作中,本发明的设备401的处理器CPU 4011可以通过输入装置403或数据传输接口404获取客户端的标识信息和应用程序的标识信息,并调取存储于存储器4012中的计算机程序指令或代码对获取到的信息进行处理,以便生成与客户端关联的证书申请请求。
从上面关于本发明模块化设计的描述可以看出,本发明的***可以根据应用场景或需求进行灵活地布置而不限于附图所示出的架构。进一步,还应当理解,本发明示例的执行操作的任何模块、单元、组件、服务器、计算机或设备可以包括或以其他方式访问计算机可读介质,诸如存储介质、计算机存储介质或数据存储设备(可移除的)和/或不可移动的)例如磁盘、光盘或磁带。计算机存储介质可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质,例如计算机可读指令、数据结构、程序模块或其他数据。基于此,本发明也公开了一种计算机可读存储介质,其上存储有用于安全通信的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现在前结合附图所描述的方法和操作。
虽然本说明书已经示出和描述了本发明的多个实施方式,但对于本领域技术人员显而易见的是,这样的实施方式是仅以示例的方式提供的。本领域技术人员在不偏离本发明思想和精神的情况下想到许多更改、改变和替代的方式。应当理解在实践本发明的过程中,可以采用本文所描述的本发明实施方式的各种替代方案。所附权利要求书旨在限定本发明的保护范围,并因此覆盖这些权利要求范围内的模块组成、等同或替代方案。
Claims (7)
1.一种用于安全通信的方法,其特征在于,包括:
响应于客户端上安装的应用程序与服务器的通信请求,生成关于客户端数字证书的证书申请请求,其中所述客户端数字证书与所述客户端相关联;
向证书发放机构发送所述证书申请请求;
接收所述证书发放机构基于所述证书申请请求发送的客户端数字证书;以及
基于所述客户端数字证书,建立所述应用程序与所述服务器之间的安全传输层协议双向认证信道;
其中生成关于客户端数字证书的证书申请请求包括:
获取所述客户端的标识信息;
获取所述应用程序的标识信息;以及
根据所述客户端的标识信息和所述应用程序的标识信息,生成所述证书申请请求;
其中获取所述客户端的标识信息包括:
生成关于所述客户端数字证书的初始密钥,其中所述初始密钥包括初始公钥;
获取所述客户端的设备信息;以及
根据所述设备信息和所述初始公钥,生成所述客户端的标识信息;
所述方法还包括:
根据所述客户端的标识信息和所述初始私钥,生成目标私钥;
根据所述目标私钥生成目标公钥;以及
将所述目标公钥、所述客户端的标识信息和所述应用程序的标识信息添加至所述证书申请请求中的被签名区域内。
2.一种用于安全通信的方法,其特征在于,包括:
获取利用权利要求1所述方法生成的与客户端相关联的客户端数字证书,其中所述客户端数字证书用于构建服务器与所述客户端上安装的应用程序之间的安全传输层协议双向认证信道;
响应于对所述应用程序的用户的身份验证请求,将所述客户端数字证书与所述用户进行关联;以及
基于对所述客户端数字证书的验证,以实现对所述用户的身份验证。
3.根据权利要求2所述的方法,其特征在于,其中将所述客户端数字证书与所述用户进行关联包括:
获取所述用户访问所述应用程序时的验证信息;
基于所述验证信息对所述用户进行身份验证;以及
响应于通过所述身份验证,将所述客户端数字证书与所述用户进行关联。
4. 根据权利要求3所述的方法,其特征在于,其中将所述客户端数字证书与所述用户进行关联包括:
从所述客户端数字证书中提取所述客户端的标识信息;以及
将所述客户端的标识信息与所述用户进行关联。
5. 一种用于安全通信的设备,其特征在于,包括:
处理器;以及
存储器,其存储有用于安全通信的计算机指令,当所述计算机指令由所述处理器运行时,使得所述设备执行根据权利要求1-4的任意一项所述的方法。
6.一种计算机程序产品,其特征在于,包括用于安全通信的程序指令,当所述程序指令由处理器执行时,使得实现根据权利要求1-4的任意一项所述的方法。
7.一种用于安全通信的***,其特征在于,包括:
客户端,其配置成执行根据权利要求1所述的方法,以生成关于客户端证书的证书申请请求,并基于所述客户端证书来建构应用程序与服务器之间的安全传输层协议双向认证信道;
证书发放机构,其配置成基于所述证书申请请求颁发与所述客户端相关联的客户端数字证书;以及
服务器,其配置成执行根据权利要求2-4的任意一项所述的方法,用于将所述客户端数字证书与用户进行绑定,以基于对客户端数字证书的验证实现对用户的身份验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110942545.4A CN115941217B (zh) | 2021-08-17 | 2021-08-17 | 用于安全通信的方法和其相关产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110942545.4A CN115941217B (zh) | 2021-08-17 | 2021-08-17 | 用于安全通信的方法和其相关产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115941217A CN115941217A (zh) | 2023-04-07 |
CN115941217B true CN115941217B (zh) | 2024-03-29 |
Family
ID=86551112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110942545.4A Active CN115941217B (zh) | 2021-08-17 | 2021-08-17 | 用于安全通信的方法和其相关产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115941217B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108696536A (zh) * | 2018-07-03 | 2018-10-23 | 北京科东电力控制***有限责任公司 | 一种安全认证方法 |
CN108880821A (zh) * | 2018-06-28 | 2018-11-23 | 中国联合网络通信集团有限公司 | 一种数字证书的认证方法及设备 |
CN109873834A (zh) * | 2019-03-22 | 2019-06-11 | 云南电网有限责任公司 | 一种基于云计算的企业级云化移动应用一体化平台及*** |
CN111064574A (zh) * | 2018-10-16 | 2020-04-24 | 金联汇通信息技术有限公司 | 数字证书生成方法、认证方法及电子设备 |
CN112700245A (zh) * | 2020-12-30 | 2021-04-23 | 标信智链(杭州)科技发展有限公司 | 基于区块链的数字移动证书应用方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100217975A1 (en) * | 2009-02-25 | 2010-08-26 | Garret Grajek | Method and system for secure online transactions with message-level validation |
CN107612697B (zh) * | 2017-10-20 | 2020-04-14 | 阿里巴巴集团控股有限公司 | 数字证书申请方法和装置 |
-
2021
- 2021-08-17 CN CN202110942545.4A patent/CN115941217B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108880821A (zh) * | 2018-06-28 | 2018-11-23 | 中国联合网络通信集团有限公司 | 一种数字证书的认证方法及设备 |
CN108696536A (zh) * | 2018-07-03 | 2018-10-23 | 北京科东电力控制***有限责任公司 | 一种安全认证方法 |
CN111064574A (zh) * | 2018-10-16 | 2020-04-24 | 金联汇通信息技术有限公司 | 数字证书生成方法、认证方法及电子设备 |
CN109873834A (zh) * | 2019-03-22 | 2019-06-11 | 云南电网有限责任公司 | 一种基于云计算的企业级云化移动应用一体化平台及*** |
CN112700245A (zh) * | 2020-12-30 | 2021-04-23 | 标信智链(杭州)科技发展有限公司 | 基于区块链的数字移动证书应用方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于数字证书企业应用单点登录的研究与实现;汪海明;;计算机安全;20100315(03);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115941217A (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9003506B2 (en) | Mobile out-of-band authentication service | |
CN106330850B (zh) | 一种基于生物特征的安全校验方法及客户端、服务器 | |
CN102404314B (zh) | 远程资源单点登录 | |
US9075978B2 (en) | Secure configuration of mobile applications | |
CN109639661B (zh) | 服务器证书更新方法、装置、设备及计算机可读存储介质 | |
CN112559993B (zh) | 身份认证方法、装置、***及电子设备 | |
WO2016078182A1 (zh) | 敏感数据的授权方法、装置和*** | |
CN112671720B (zh) | 一种云平台资源访问控制的令牌构造方法、装置及设备 | |
CN110177124B (zh) | 基于区块链的身份认证方法及相关设备 | |
CN110365684B (zh) | 应用集群的访问控制方法、装置和电子设备 | |
JP2018528691A (ja) | マルチユーザクラスタアイデンティティ認証のための方法および装置 | |
WO2014012476A1 (en) | Method and system of login authentication | |
US9331995B2 (en) | Secure configuration of mobile application | |
CN103532966A (zh) | 一种支持基于usb key单点登录虚拟桌面的装置及方法 | |
AU2014262138A1 (en) | User authentication | |
US9461986B2 (en) | Single sign-on for disparate servers | |
US11777942B2 (en) | Transfer of trust between authentication devices | |
CN110958119A (zh) | 身份验证方法和装置 | |
CN105095729B (zh) | 一种二维码登录方法、服务器及*** | |
CN107645474B (zh) | 登录开放平台的方法及登录开放平台的装置 | |
CN109495458A (zh) | 一种数据传输的方法、***及相关组件 | |
CN112699404A (zh) | 一种校验权限的方法、装置、设备及存储介质 | |
CN103559430A (zh) | 基于安卓***的应用账号管理方法和装置 | |
CN115941217B (zh) | 用于安全通信的方法和其相关产品 | |
CN112738005A (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 |