一种证书写入、证书反馈方法、记账节点及身份认证系统与流程

文档序号:28159012发布日期:2021-12-24 18:01阅读:111来源:国知局
一种证书写入、证书反馈方法、记账节点及身份认证系统与流程

1.本发明涉及联盟链技术领域,特别涉及一种证书写入、证书反馈方法、记账节点及身份认证系统。


背景技术:

2.在实现本技术过程中,发明人发现现有技术中至少存在如下问题:
3.安全电话身份再研(secure telephone identity revisited,stir)方案主要缺点:
4.1、多ca(certificate authority)互信的问题:原理上一个ca可以给全球所有的用户颁发证书。但考虑到证书的管理,不同的安全等级需求,在实践中需要存在多个ca,无论是在国家层面上,行业层面上,或企业层面上。多ca的存在带来ca间互信问题。
5.2、时延问题:对于大型网络,一般是分级管理。对应地,传统的证书管理一般也是分级实施。根证书中公钥对应的私钥对下级证书签名,生成下级证书。下级证书中公钥对应的私钥对它的下级证书签名,生成这个证书的下级证书。以此类推,只到生成最末端的用于验证用户的证书,从而形成从根证书到用户证书的证书链。在验证服务器收到证书链后,须从根证书到用户证书进行验证。一般情况下,会存在三级证书,对应地验证服务器须进行三次签名验证,从而增加呼叫时延。


技术实现要素:

6.本发明实施例提供一种证书写入、证书反馈方法、记账节点及身份认证系统,以解决现有的针对虚假呼叫的解决方案,存在ca间互信以及增加呼叫时延的问题。
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.认证服务器,用于使用其与区块链证书上公钥对应的私钥对会话启动协议sip呼叫进行数字签名;
50.验证服务器,用于从联盟链上获取认证服务器的区块链证书,使用所述认证服务器的区块链证书的公钥对所述认证服务器的数字签名进行验证。
51.本发明的有益效果是:
52.上述方案,通过使用共识机制将认证服务器的区块链证书写入联盟链,使得验证服务器从联盟链中进行认证服务器的区块链证书的获取,无须进行ca互信,还能够降低呼叫时延。
附图说明
53.图1表示stir架构示意图;
54.图2表示本发明实施例的证书写入方法的流程示意图;
55.图3表示服务器证书分级命名示例;
56.图4表示应用本发明实施例的架构图;
57.图5表示本发明实施例的记账节点的模块示意图之一;
58.图6表示本发明实施例的证书反馈方法的流程示意图;
59.图7表示本发明实施例的记账节点的模块示意图之二。
具体实施方式
60.下面首先对与本发明实施例相关的现有技术进行简单介绍如下。
61.公用电话交换网(public switched telephone network,pstn)通常被认为是一个封闭可信网络。电话公司依赖其他运营商遵守规则来确保网络的正常运行。在提供来电者电话号码时,发端交换机在逐个呼叫的基础上可以控制哪个主叫号码(id)被发送。在pstn,主叫者自定义呼叫者id需要获得对ss7交换机的控制权,因此,pstn中很少有主叫身份的伪造攻击。
62.然而,随着最近ip接入pstn的兴起,价格便宜的基于ip的客户端协议(如会话启动协议(session initiation protocol,sip))正在取代昂贵的传统电话服务(如综合业务数字网(integrated services digital network,isdn))。廉价的ip语音(voip)电话服务现在正成为常态。pstn的承载也正在朝着基于ip方向发展。目前存在以下可能的电话呼叫形态:voip-to-voip呼叫,voip-pstn-voip呼叫,pstn-to-voip呼叫,voip-to-pstn呼叫,pstn-voip-pstn呼叫,pstn-pstn呼叫。
63.voip与传统电话网络系统的互通已经减少了主叫号码真实性保证。在上面的电话呼叫形态中除pstn-pstn呼叫外,攻击者使用新的和廉价的工具可以伪造任何主叫方号码进行虚假呼叫,如工具asterisk ip pbx。它可以产生数百万个电话,每个电话可以是单独的,随机的或精心选择的呼叫号码。使用伪造主叫号码,攻击者可以发起以下攻击:
64.a11、语音垃圾电话,例如,电话推销,调查,收债员等。虽然一些“合法”的电话推销员使用合法号码,但许多号码是伪造的。除非电话推销员希望消费者或受害者能够回叫使用真实的号码,否则几乎总是使用伪造号码。
65.a12、诈骗,国税局诈骗,技术支持诈骗,其他冒充诈骗。这些电话几乎总是使用欺骗电话号码来冒充合法组织并诱骗受害者。
66.a13、网络钓鱼,呼叫旨在收集受害者的信息。这包括试图欺骗受害者说“是”或可以记录的事情,以便今后可以使用。
67.a14、语音邮件攻击,某些语音邮件系统仅使用主叫号码进行验证。如果您使用欺骗电话号码呼叫这些语音邮件系统,您可以立即访问。
68.a15、电话拒绝服务(telephony denial of service,tdos),意欲中断运营的大量呼叫,通常是面向公众的联络中心,如10086。通过伪造进行tdos呼叫的号码,将它们与合法呼叫区分开来要困难得多。也可以是攻击者伪造一个特定被攻击人的主叫号码进行大量呼叫,使被攻击人的主叫号码被录入黑名单,从而被攻击人的呼叫在接收时会被阻击。
69.针对虚假呼叫,主要有以下两种解决方案:
70.b11、黑名单,大多数运营商使用黑名单来解决虚假呼叫的问题,即维护黑名单并阻止该列表上的呼叫到达。运营商将基于他们流量监控功能和基于用户评论更新这些列表。黑名单方法面临的最大挑战是它们不适用于不在列表中的新呼叫,也不适用于使用随机欺骗呼叫号码的呼叫。欺骗者知道黑名单,如果他们真的想要拨打电话,他们要么知道黑名单上有哪些号码,要么可以轻松地试出来哪些号码在黑名单上。另外,由于目前还没有有效的方法在voip上来确保主叫号码的真实性,上了黑名单的号码也不一定是欺骗号码。
71.b12、安全电话身份再研(secure telephone identity revisited,stir)/使用token处理判断信息(shaken),包括互联网工程任务组(ietf),电信行业解决方案联盟
(atis),sip论坛和服务提供商在内的行业正在研究stir ietf标准(rfc)和基于签名的shaken。这些努力是给目标用户提供主叫号码验证的尝试。stir已经有一段时间了,shaken是一个基于stir在实践中的实施。
72.stir包括了以下ietf标准:
73.rfc 8224:会话初始化协议中的身份认证管理;
74.rfc 8225:passport:personal assertion token;
75.rfc 8226:安全电话身份凭证:合格证书。
76.rfc 8224定义了一种安全机制以识别sip请求发起者的身份,如图1所示;它是通过定义一个sip身份字段(identity)用于传送身份的签名和签名者的证书下载地址来实现的。
77.具体流程如下:
78.s11、sip客户端a向认证服务器发送sip邀请消息;
79.s12、认证服务器对sip邀请消息头中的data字段,from字段,to字段进行签名。from字段含有邀请者的身份(sip uri或电话号码),to字段含有被邀请者的身份(sip uri或电话号码),data字段包含发送sip邀请消息的时间戳。对from字段的签名可以保证邀请者的身份真实性,对to字段的签名可以保证被邀请者的身份没有被篡改,对data字段的签名可以防止重放攻击。认证服务器把签名和指示认证服务器证书的地址放入新定义的身份字段里。
80.s13、认证服务器把带签名的邀请消息发给验证服务器;
81.s14、验证服务器根据认证服务器证书的地址连接到pki获得认证服务器证书;
82.s15、验证服务器使用认证服务器证书中的公钥对签名进行验证,验证成功后,验证服务器发送sip邀请消息给sip客户端b。
83.本发明针对现有的针对虚假呼叫的解决方案,存在ca间互信以及增加呼叫时延的问题,提供一种证书写入、证书反馈方法、记账节点及身份认证系统。
84.如图2所示,本发明实施例的证书写入方法,应用于记账节点,包括:
85.步骤21,获取至少一个认证服务器的区块链证书;
86.需要说明的是,认证服务器的区块链证书是由运营商管理部门生成的,且在生成区块链证书时需将认证服务器的区块链证书的状态设置为有效状态,运营商管理部门在生成认证服务器的区块链证书后,可以将认证服务器的区块链证书输入到记账节点,以此保证记账节点能够获取到认证服务器的区块链证书。
87.步骤22,使用共识机制,将所述至少一个认证服务器的区块链证书写入联盟链;
88.需要说明的是,记账节点写入的认证服务器的区块链证书的状态均为有效状态,在进行证书的写入时,记账节点可以一次性把运营商所有的认证服务器的区块链证书都写入联盟链,也可以按地域,分别多次把所有认证服务器的区块链证书写入联盟链;还需要说明的是,写入联盟链的认证服务器的区块链证书之间不使用签名构成证书链。
89.需要说明的是,本发明实施例中所提到的联盟链是指由若干个机构共同参与管理的区块链。联盟链内部指定多个预选的节点为记账节点,每个块的生成由所有的预选节点使用共识机制共同决定,其他接入节点(即其他记账节点)可以读取链上信息,但不过问记账过程。联盟链使用分布式账本和分布式共识技术从而构成数据不可篡改的分布式数据
库,这样也解决了多方信任问题。
90.进一步需要说明的是,本发明实施例中的认证服务器的区块链证书的格式可以使用标准的x.509格式,只是证书信息的签名不同于普通x.509证书,因区块链的网络中不存在可信的第三方,因此此种情况下,对证书的信息使用自签名,而不是第三方的数字签名。
91.本发明实施例中的认证服务器的区块链证书的格式还可以使用自定义的格式,此自定义的格式与x.509格式的最大不同在于它不包含对证书信息的签名,因区块链证书的真实性和可靠性由区块链来保证而不是由第三方的数字签名来保证,况且在区块链的网络中也不存在可信的第三方。自定义区块链证书格式的好处在于:相比标准证书省略了在区块链系统不需要的信息字段,节省了在区块链上的存储空间,同时由于不需要自签名,也节省了产生和验证自签名的算力。此种自定义的区块链证书的格式包括以下至少一项信息:
92.a11、认证服务器类型;
93.该类型是用于区分认证服务器类型不同的标记,如一级服务器,二级服务器等。
94.a12、认证服务器的区块链证书特性;
95.需要说明的是,该认证服务器的区块链证书特性用于说明证书特性,如匿名证书,实名证书,签名证书,密钥协商证书等。
96.a13、认证服务器标识;
97.需要说明的是,该认证服务器标识是认证服务器申请区块链证书所使用的名称。
98.进一步需要说明的是,该认证服务器标识的设定规则采用以下一项:
99.a131、利用电话号码的范围进行认证服务器的标识;
100.需要说明的是,认证服务器使用其能管理的电话号码范围作为证书的认证服务器标识,例如,00861391xxxxxxx-00861395xxxxxxx为认证服务器n的认证服务器标识,这样验证服务器根据主叫号码从联盟链上很容易找到相应的认证服务器的区块链证书。这种命名方式适合没有携号转网的国家和地区使用。一旦有携号转网,某个号码属于某个运营商的认证服务器管理,将变成由另外一个运营商的认证服务器管理。这会造成签名和验证的混乱。
101.a132、利用认证服务器的分级进行认证服务器的标识;
102.需要说明的是,此种方式是在一个运营商内,对认证服务器进行分级命名。分级规则可以按照行政地域来制定。例如,如图3所示,在图3中,设定x=中国移动,y1=北京,y2=河北,

,ym=西藏,z1=第一认证服务器,zn=第n认证服务器。z1.y1=北京的第一个认证服务器证书,zn.y1=北京的第n个认证服务器证书。虽然认证服务器的区块链证书进行了分级命名,但证书间没有使用签名串接起来,它们只是按照分级规则进行管理而已。还需要说明的是,所有证书的命名和证书的生成都有运营商的某个管理部门集中实施。
103.这里还需要说明的是,a132与a131相比,其优势是:主叫号码与认证服务器的名称不捆绑,从而适合已开放了携号转网的国家和地区。只是需要认证服务器在sip信息头里要增加认证服务器的名称,并对sip消息头里的相关消息和认证服务器的名称进行签名,验证服务器根据认证服务器的名称在联盟链上找到相应认证服务器的证书。
104.a14、认证服务器的区块链证书的公钥;
105.需要说明的是,该公钥由证书申请者产生,其对应的私钥由证书申请者秘密保持。为了使证书的长度尽量短以节省其在区块链上的存储空间,建议证书申请者在产生公私钥
对时采用椭圆曲线密钥算法(elliptical curve cryptography,ecc)。
106.a15、认证服务器的区块链证书的有效期;
107.需要说明的是,有效期指的是认证服务器的区块链证书能开始使用的时间点和不再有效的时间点。
108.a16、预留信息;
109.需要说明的是,此内容为预留字段。
110.a17、认证服务器的区块链证书的状态;
111.需要说明的是,认证服务器的区块链证书包括两种状态,即有效状态和无效状态。
112.具体需要说明的是,本发明的基本思路是:认证服务器的区块链证书通过联盟链的共识机制写入联盟链,这样解决了多ca信任问题,因为多家运营商都会信任写入区块链上的信息;认证服务器的区块链证书间不使用签名构成证书链,这样验证服务器减少了证书链的验证步骤,从而降低了呼叫时延;认证服务器对sip邀请消息头中相关字段(含主叫身份信息和认证服务器名称)进行签名,验证服务器通过读取联盟链上的认证服务器的区块链证书,使用区块链证书中的公钥对签名进行验证,从而判断主叫身份是否合法。应用本发明的架构具体如图4所示。该架构与stir架构的区别在于:本发明使用区块链系统来管理认证服务器的证书而不是基于传统的pki来进行证书的管理。由于区块链系统的引入,本发明克服了stir架构中存在的两个缺点:多ca信任问题和呼叫时延问题。
113.具体地,验证服务器进行证书验证的主要过程为:验证服务器向联盟链中的记账节点发送证书查询消息,其中,所述证书查询消息中包括:主叫号码或者认证服务器名称;记账节点根据该证书查询消息,进行证书查询,并反馈查询结果给验证服务器。
114.具体地,记账节点根据该证书查询消息,进行证书查询,并反馈查询结果给验证服务器的具体实现方式包括以下一项:
115.b11、若未检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,则返回证书不存在的错误信息给验证服务器;
116.b12、若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书、且检索到的认证服务器的区块链证书的状态为无效状态,则返回证书状态失效的错误信息给验证服务器;
117.b13、若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻未处于认证服务器的区块链证书的有效期内,则返回证书已过期的错误信息给验证服务器;
118.b14、若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻处于认证服务器的区块链证书的有效期内,则返回认证服务器的区块链证书给验证服务器。
119.综上可知,本发明实施例能够解决stir方案的缺点,通过把认证服务器的区块链证书使用联盟链的共识机制写入联盟链,解决了多ca信任问题,认证服务器证书间不使用签名构成证书链,进而能够减少了呼叫时延。
120.如图5所示,本发明实施例的记账节点50,包括:
121.获取模块51,用于获取至少一个认证服务器的区块链证书;
122.写入模块52,用于使用共识机制,将所述至少一个认证服务器的区块链证书写入联盟链;
123.其中,所述认证服务器的区块链证书的状态为有效状态;所述认证服务器的区块链证书之间不使用签名构成证书链。
124.可选地,所述认证服务器的区块链证书的格式,包括以下至少一项信息:
125.认证服务器类型、认证服务器的区块链证书特性、认证服务器标识、认证服务器的区块链证书的公钥、认证服务器的区块链证书的有效期、预留信息、认证服务器的区块链证书的状态。
126.具体地,所述认证服务器标识的设定规则采用以下一项:
127.利用电话号码的范围进行认证服务器的标识;
128.利用认证服务器的分级进行认证服务器的标识。
129.可选地,在所述写入模块52使用共识机制,将所述至少一个认证服务器的区块链证书写入联盟链之后,还包括:
130.第二接收模块,用于接收验证服务器发送的证书查询消息,其中,所述证书查询消息中包括:主叫号码或者认证服务器名称;
131.结果反馈模块,用于根据所述证书查询消息,进行证书查询,并反馈查询结果给验证服务器。
132.进一步地,所述结果反馈模块,用于实现以下一项:
133.若未检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,则返回证书不存在的错误信息给验证服务器;
134.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书、且检索到的认证服务器的区块链证书的状态为无效状态,则返回证书状态失效的错误信息给验证服务器;
135.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻未处于认证服务器的区块链证书的有效期内,则返回证书已过期的错误信息给验证服务器;
136.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻处于认证服务器的区块链证书的有效期内,则返回认证服务器的区块链证书给验证服务器。
137.需要说明的是,本发明实施例提供的记账节点是能够执行上述证书写入方法的记账节点,则上述证书写入方法实施例中的所有实现方式均适用于该记账节点,且均能达到相同或相似的有益效果。
138.本发明实施例还提供一种记账节点,包括收发机和处理器;
139.所述处理器,用于:获取至少一个认证服务器的区块链证书;
140.使用共识机制,将所述至少一个认证服务器的区块链证书写入联盟链;
141.其中,所述认证服务器的区块链证书的状态为有效状态;所述认证服务器的区块链证书之间不使用签名构成证书链。
142.可选地,所述认证服务器的区块链证书的格式,包括以下至少一项信息:
143.认证服务器类型、认证服务器的区块链证书特性、认证服务器标识、认证服务器的区块链证书的公钥、认证服务器的区块链证书的有效期、预留信息、认证服务器的区块链证书的状态。
144.具体地,所述认证服务器标识的设定规则采用以下一项:
145.利用电话号码的范围进行认证服务器的标识;
146.利用认证服务器的分级进行认证服务器的标识。
147.可选地,在所述处理器,使用共识机制,将所述至少一个认证服务器的区块链证书写入联盟链之后,所述收发机还用于:
148.接收验证服务器发送的证书查询消息,其中,所述证书查询消息中包括:主叫号码或者认证服务器名称;所述处理器还用于:根据所述证书查询消息,进行证书查询,并反馈查询结果给验证服务器。
149.进一步地,所述处理器根据所述证书查询消息,进行证书查询,并反馈查询结果给验证服务器时,具体用于实现以下一项:
150.若未检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,则返回证书不存在的错误信息给验证服务器;
151.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书、且检索到的认证服务器的区块链证书的状态为无效状态,则返回证书状态失效的错误信息给验证服务器;
152.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻未处于认证服务器的区块链证书的有效期内,则返回证书已过期的错误信息给验证服务器;
153.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻处于认证服务器的区块链证书的有效期内,则返回认证服务器的区块链证书给验证服务器。
154.本发明实施例还提供一种记账节点,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的证书写入方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
155.本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的证书写入方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
156.如图6所示,本发明实施例还提供一种证书反馈方法,应用于记账节点,包括:
157.步骤61,接收验证服务器发送的证书查询消息,其中,所述证书查询消息中包括主叫号码或者认证服务器名称;
158.步骤62,根据所述证书查询消息,进行证书查询,并反馈查询结果给验证服务器。
159.进一步地,所述步骤62的具体实现包括以下一项:
160.若未检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,则返回证书不存在的错误信息给验证服务器;
161.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书、且检索到的认证服务器的区块链证书的状态为无效状态,则返回证书状态失效的错误信息给验证服务器;
162.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻未处于认证服务器的区块链证书的有效期内,则返回证书已过期的错误信息给验证服务器;
163.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻处于认证服务器的区块链证书的有效期内,则返回认证服务器的区块链证书给验证服务器。
164.需要说明的是,本发明实施例的具体实现与上述实施例中验证服务器进行证书验证的实现过程相同,在此不再赘述。
165.如图7所示,本发明实施例的记账节点70,包括:
166.第一接收模块71,用于接收验证服务器发送的证书查询消息,其中,所述证书查询消息中包括主叫号码或者认证服务器名称;
167.反馈模块72,用于根据所述证书查询消息,进行证书查询,并反馈查询结果给验证服务器。
168.进一步地,所述反馈模块72,具体实现以下一项:
169.若未检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,则返回证书不存在的错误信息给验证服务器;
170.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书、且检索到的认证服务器的区块链证书的状态为无效状态,则返回证书状态失效的错误信息给验证服务器;
171.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻未处于认证服务器的区块链证书的有效期内,则返回证书已过期的错误信息给验证服务器;
172.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻处于认证服务器的区块链证书的有效期内,则返回认证服务器的区块链证书给验证服务器。
173.需要说明的是,本发明实施例提供的记账节点是能够执行上述证书反馈方法的记账节点,则上述证书反馈方法实施例中的所有实现方式均适用于该记账节点,且均能达到相同或相似的有益效果。
174.本发明实施例还提供一种记账节点,包括收发机和处理器;
175.所述收发机,用于接收验证服务器发送的证书查询消息,其中,所述证书查询消息中包括主叫号码或者认证服务器名称;
176.所述处理器,用于根据所述证书查询消息,进行证书查询,并反馈查询结果给验证服务器。
177.进一步地,所述处理器根据所述证书查询消息,进行证书查询,并反馈查询结果给验证服务器时,具体用于实现以下一项:
178.若未检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证
服务器的区块链证书,则返回证书不存在的错误信息给验证服务器;
179.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书、且检索到的认证服务器的区块链证书的状态为无效状态,则返回证书状态失效的错误信息给验证服务器;
180.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻未处于认证服务器的区块链证书的有效期内,则返回证书已过期的错误信息给验证服务器;
181.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻处于认证服务器的区块链证书的有效期内,则返回认证服务器的区块链证书给验证服务器。
182.本发明实施例还提供一种记账节点,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的证书反馈方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
183.本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的证书反馈方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
184.本发明实施例还提供一种身份认证系统,包括:
185.认证服务器,用于使用其与区块链证书上公钥对应的私钥对会话启动协议sip呼叫进行数字签名;
186.验证服务器,用于从联盟链上获取认证服务器的区块链证书,使用所述认证服务器的区块链证书的公钥对所述认证服务器的数字签名进行验证。
187.需要说明的是,验证服务器从联盟链上获取认证服务器的区块链证书的过程具体为:验证服务器向联盟链上的记账节点发送证书查询消息,其中,所述证书查询消息中包括主叫号码或者认证服务器名称;根据所述证书查询消息,进行证书查询,并反馈查询结果给验证服务器。
188.具体地,记账节点反馈查询结果给验证服务器的具体实现包括以下一项:
189.若未检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,则返回证书不存在的错误信息给验证服务器;
190.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书、且检索到的认证服务器的区块链证书的状态为无效状态,则返回证书状态失效的错误信息给验证服务器;
191.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻未处于认证服务器的区块链证书的有效期内,则返回证书已过期的错误信息给验证服务器;
192.若检索到与所述证书查询消息中的主叫号码或者认证服务器名称对应的认证服务器的区块链证书,若认证服务器的区块链证书的状态为有效状态、且证书验证时刻处于认证服务器的区块链证书的有效期内,则返回认证服务器的区块链证书给验证服务器。
193.当验证服务器获取到记账节点反馈的联盟链上的认证服务器的区块链证书时,利用认证服务器的区块链证书对应的公钥对所述认证服务器的数字签名进行验证(也就是说,联盟链上的认证服务器的区块链证书是用于电话身份验证的),只有在验证通过后,验证服务器才会向被叫客户端发送主叫客户端的sip邀请消息。
194.需要说明的是,本发明实施例,验证服务器从联盟链中进行认证服务器的区块链证书的获取,在保证主叫客户端身份的真实性的情况下,相比传统的pki系统因没有证书链的验证过程,还能降低呼叫时延。
195.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
196.本技术是参照根据本技术实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或一个方框或多个方框中指定的功能的装置。
197.这些计算机程序指令也可存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储介质中,使得存储在该计算机可读存储介质中的指令产生包括指令装置的纸制品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
198.这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他科编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
199.以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1