一种区块链节点间通信方法及装置与流程

文档序号:13453662阅读:542来源:国知局

本申请涉及信息技术领域,尤其涉及一种区块链节点间通信方法及装置。



背景技术:

作为区块链技术的分支,联盟链技术的应用日渐广泛。联盟链网络中的区块链节点包括业务节点和共识节点。业务节点参与业务,而共识节点负责接收业务节点发送的业务数据,进行共识验证。

上述的业务节点实际上是加入联盟链网络的各机构的业务服务器,服务器上安装有用于与该联盟链网络中的其他节点进行通信的软件(本文将该软件称为通信程序)。

图1是联盟链网络的架构示意图。如图1所示,实心圆是共识节点,空心圆是业务节点。不同的业务节点为不同的应用(application,app)提供服务。业务节点将app产生的业务数据发送给共识节点进行共识验证。假设某业务节点是餐饮应用对应的服务器,另一业务节点是支付应用对应的服务器,用户通过餐饮应用对应的app点餐后可通过该支付应用付款,则这两个业务节点就会参与同一个业务,可在联盟链网络中注册如图1所示的业务关系。

在联盟链网络中,每个业务节点存储有自身参与的业务的业务数据,业务数据中往往包括用户的隐私数据。基于现有技术,需要一种更为安全的通信方法。



技术实现要素:

本说明书一个或多个实施例提供一种区块链节点间通信方法,用于解决现有技术中,区块链网络中的业务节点,在进行通信时可能导致的隐私数据泄露的问题。

本说明书一个或多个实施例提供一种区块链节点间通信装置,用于解决现有技术中,区块链网络中的业务节点,在进行通信时可能导致的隐私数据泄露的问题。

本说明书实施例采用下述技术方案:

一种区块链节点通信方法,区块链网络中的区块链节点包括业务节点,其中,所述业务节点存储证书授权中心ca发送的证书,并预先配置有ca信任列表,所述方法包括:

第一区块链节点接收第二区块链节点发送的通信请求,其中,所述通信请求中携带有第二节点的第二证书;

确定所述第二证书对应的ca标识;

判断确定出的所述第二证书对应的ca标识,是否存在于所述ca信任列表中;

若是,则与所述第二区块链节点建立通信连接;

若否,则不与所述第二区块链节点建立通信连接。

一种区块链节点通信装置,所述装置包括:

接收模块,接收第二区块链节点发送的通信请求,其中,所述通信请求中携带有第二区块链节点的第二证书;

确定模块,确定所述第二证书对应的ca标识;

判断执行模块,判断确定出的所述第二证书对应的ca标识,是否存在于所述ca信任列表中,若是,则与所述第二区块链节点建立通信连接,若否,则不与所述第二区块链节点建立通信连接;

其中,区块链网络中的区块链节点包括业务节点,所述业务节点存储证书授权中心ca发送的证书,并预先配置有ca信任列表。

一种区块链节点的通信设备,所述通信设备包括一个或多个处理器及存储器,所述存储器存储有程序,并且被配置成由所述一个或多个处理器执行以下步骤:

第一区块链节点接收第二区块链节点发送的通信请求,其中,所述通信请求中携带有第二区块链节点的第二证书;

确定所述第二证书对应的ca标识;

判断确定出的所述第二证书对应的ca标识,是否存在于所述ca信任列表中;

若是,则与所述第二区块链节点建立通信连接;

若否,则不与所述第二区块链节点建立通信连接;

其中,区块链网络中的区块链节点包括业务节点,所述业务节点存储证书授权中心ca发送的证书,并预先配置有ca信任列表。

本说明书一个或多个实施例采用的上述至少一个技术方案能够达到以下有益效果:

区块链中的业务节点,存储有ca发送的证书,并且预先配置有ca信任列表。当第一区块链节点接收到第二区块链节点发送的通信请求时,可先根据该通信请求中携带的第二区块链节点的第二证书,确定第二证书对应的ca标识,之后判断第二证书对应的ca标识是否存在于该ca信任列表中,若是,则与第二区块链节点建立通信连接,若否则不建立。通过本说明书实施例提供的方法,区块链的中业务节点在建立通信连接之前,可根据通信请求中携带的证书,以及预先配置的ca信任列表,确定是否建立通信连接,使得可通过限制业务节点可建立通信连的对象(如,其他业务节点),减少业务节点泄露隐私数据的可能性,提高了区块链中存储的数据的安全性。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为联盟链网络架构示意图;

图2为本说明书实施例提供一种区块链节点通信过程;

图3为本说明书实施例提供一种联盟链网络架构示意图;

图4为本说明书实施例中ca关系示意图;

图5为本说明书实施例提供的一种区块链节点通信装置的结构示意图;

图6为本说明书实施例提供的一种区块链节点通信设备的结构示意图。

具体实施方式

在联盟链网络中,由于参与某个业务的业务节点产生的业务数据中包含用户的隐私数据,因此为了防止用户的隐私数据泄露给未参与该业务的业务节点,在联盟链网络中,每个业务节点仅存储其自身参与的业务的业务数据。

但是,实际应用中,举例来说,对于某个业务而言,未参与该业务的业务节点a可以通过通信程序与参与该业务的业务节点b建立通信连接,并采用技术手段(如数据库破解)窃取业务节点b存储的业务数据。也就是说,对于每个通过通信程序建立通信连接的业务节点来说,该业务节点都可以通过技术手段获取与其建立通信连接的其他业务节点中存储的业务数据。而在业务数据中便可包含用户的隐私数据,于是本说明书提供一种更为安全的通信技术方案。

为使本说明书各实施例的目的、技术方案和优点更加清楚,下面将结合本说明书一个或多个具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本说明书中一个或多个的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。以下结合附图,详细说明本说明书各实施例提供的技术方案。

图2为本说明书实施例提供一种区块链节点通信过程,其中,区块链网络中的区块链节点包括业务节点,其中,业务节点存储证书授权中心(certificateauthority,ca)发送的证书,并预先配置有ca信任列表,则区块链节点通信过程具体可包括以下步骤:

s202:第一区块链节点接收第二区块链节点发送的通信请求。

在本说明书一个或多个实施例中,在联盟区块链网络中的区块链节点之间可进行通信。其中,业务节点间进行通信传输数据以执行业务,并将执行业务所产生的业务数据发送至共识节点进行共识校验,以使得共识节点在校验通过后,将该业务数据存储在区块链中。于是,在区块链网络中任一一个区块链节点,都有可能接收到其他区块链节点发送的通信请求,为了方便说明,在本说明书各实施例中以接收到通信请求的区块链节点为第一区块链节点,发送通信请求的区块链节点为第二区块链节点进行后续说明。并且,通信请求可为第二区块链节点发送的建立通信连接的请求,第一区块链节点可根据后续步骤判断是否响应该请求,并与第二区块链节点建立通信连接。

其中,该区块链网络的结构可如图1所示,区块链节点可分为:业务节点以及共识节点。而无论对于共识节点还是业务节点来说,该区块链节点中均可存储有ca发送的证书,并且预先配置有ca信任列表。

具体的,以业务节点为例,通过图1所示的架构可见,在联盟区块链中可存在多个业务关系,而在每个业务关系中至少存在两个业务节点。正如前述的,业务节点可以是加入联盟链网络的不完全相同的机构的业务服务器,同一业务关系中的各业务服务器共同执行业务,并将业务数据发送至共识节点进行共识校验(例如,支付业务可能涉及卖方银行以及买方银行,甚至中间交易平台,则在支付业务中可能存在3个机构的业务服务器在同一业务的不同流程中执行不完全相同的步骤,并最终产生待共识校验的业务数据)。为了便于说明,后续出现的业务节点均可视为是机构的业务服务器。

另外,在本说明书一个或多个实施例中,每个业务关系对应一个ca,也可视为是存在业务关系的各业务节点对应同一个ca。而在业务关系中执行业务的各业务节点,在配置用于执行业务时,可先向该业务关系对应的ca发送身份审核请求,该身份请求中包含该业务节点所属的机构。

则ca可采用与现有技术相同的方法,对业务节点的身份进行审核,并在审核通过后,创建该业务节点的证书并返回该业务节点。

于是,在本说明书一个或多个实施例中,每个业务节点中可存储有证书,该证书为该业务节点对应的ca发送的。与现有技术相同,该证书中可包含该业务节点的标识,并且该证书中的公钥中携带有颁发该证书的ca的签名。而其他区块链节点也可采用与现有技术相同的方法,通过该证书确定该业务节点的身份,以及确定颁发该业务节点的证书的ca的标识。

进一步地,由于第二区块链节点在向第一区块链节点发送通信请求时,该通信请求中还可携带有第二区块链存储的第二证书。其中,第二证书为第二区块链节点对应的ca颁发给第二区块链节点的证书,则第一区块链节点在接收到该通信请求后,可以根据该第二证书确定该第二节点的身份以及第二节点对应的ca。

更进一步地,在本说明书一个或多个实施例中,该联盟区块链网络中的各区块链节点可采用安全传输层协议(transportlayersecurity,tls)建立通信连接,则根据tls握手协议(tlshandshake),第二区块链节点在向第一区块链节点发送的通信请求中携带有第二区块链节点的第二证书。

需要说明的是,针对每个区块链节点,该区块链节点中还配置有ca信任列表,该ca信任列表可以由ca发送至该区块链节点的,或者也可由该区块链节点自行配置的,本说明书对此不做限定。其中,当该ca信任列表由该区块链节点自行配置时,具体可由该区块链节点对应的机构根据需要进行配置在该区块链节点中。若该ca信任列表为ca配置的时,则该区块链节点除了接收ca发送的证书以外,还可接收ca发送的ca信任列表并存储。该ca信任列表中包含至少一个ca标识。

在本说明书一个或多个实施例中,第一区块链节点以及第二区块链节点可以是该联盟区块链网络中的业务节点或者共识节点。当该区块链节点为共识节点时,该共识节点可以是参与联盟链的各机构提供的用于进行共识校验的共识服务器。也就是说,共识节点可视为不属于任一机构,且不参与业务的服务器。当然,针对每个服务器(如,每个业务服务器以及每个共识服务器),该服务器既可以是单独的一台设备,也可以是由多台设备组成的系统,本说明书对此不做限定。

s204:确定所述第二证书对应的ca标识。

在本说明书一个或多个实施例中,第一区块链节点在接收到通信请求后,便可确定该通信请求中携带的该第二区块链节点的第二证书,之后还可确定该第二证书对应的ca标识。

具体的,由于证书中包含颁发该证书的ca的签名,所以第一区块链节点在确定该通信请求中携带的第二证书后,可以根据该第二证书中的签名,确定为第二区块链节点颁发证书的ca的ca标识。也就是说,业务节点在接收到通信请求后,可以确定该通信请求中携带的第二证书的ca标识。

s206:判断确定出的所述第二证书对应的ca标识,是否存在于所述ca信任列表中,若是,则执行步骤s208,若否则执行步骤s210。

在本说明书一个或多个实施例中,由于在该联盟链网络中的各区块链节点中均配置有ca信任列表,并且该ca信任列表中至少包含一个ca标识,所以该第一区块链节点可根据预先配置的ca信任列表中的ca标识,判断该第二证书对应的ca标识是否存在于该第一区块链节点中配置的ca信任列表中(如,与该ca信任列表中的任一一个ca标识一致)。即,判断该第二证书对应的ca标识是否可信。

若该第二证书对应的ca标识存在于预先配置的ca信任列表中,则第一区块链节点可确定该ca标识可信,并执行步骤s208。而若该第二证书对应的ca标识不存在于预先配置的ca信任列表中,则第一区块链节点可确定该ca标识不可信,并执行步骤s210。

s208:与所述第二区块链节点建立通信连接。

在本说明书一个或多个实施例中,当第一区块链确定该ca标识可信后,便可与第二区块链节点建立通信连接。

具体的,第一区块链节点可以直接与该第二区块链节点建立通信连接。其中,为了进一步保证通信安全,第一区块链节点也可向第二区块链节点发送第一区块链节点的第一证书,并在与第二区块链节点发送数据时,采用该第一证书中的私钥进行加密。同理,第二区块链节点也可在向第一区块链节点发送数据时,采用第二证书中的私钥进行加密。

进一步地,由于在本说明书一个或多个实施例中,区块链网络中的各区块链节点之间可基于tsl的握手协议建立通信连接,所以第一区块链节点在确定与第二区块链节点建立通信连接之后,还可向第二区块链节点返回验证请求。

具体的,该验证请求中携带有第一区块链节点的第一证书,则第二区块链节点也可执行如步骤s202至步骤s206的步骤,确定第一证书对应的ca标识是否存在于该第二区块链节点配置的ca信任列表中,若是,则与第一区块链节点建立通信连接,若否,则不与第一区块链节点建立通信连接。也就是说,第二区块链节点也可对该第一区块链节点的第一证书对应的ca是否可信进行验证,若是,则建立通信,若否则不建立。

其中,当建立通信时,第一区块链节点与第二区块链节点也可采用与现有技术中tls握手过程类似的过程,确定本次通信使用的密钥,并采用该密钥对传输的数据进行加密。当然由于tls握手过程已经是相当成熟的技术,所以本说明书对此不再赘述。

s210:不与所述第二区块链节点建立通信连接。

在本说明书一个或多个实施例中,当第一区块链节点确定该第二证书对应的ca标识不存在于该第一区块链节点中配置的ca信任列表中时,可以确定不与该第二区块链节点建立通信连接。并且,也可无需再向该第二区块链节点发送验证请求。

通过如图2所示的区块链节点间通信方法,可见,区块链中的业务节点,存储有ca发送的证书,并且配置有ca发送的ca信任列表。并且,区块链中的共识节点,也可存储有ca发送的证书,并且配置有ca发送的ca信任列表。当区块链网络中的第一区块链节点接收到第二区块链节点发送的通信请求时,可先根据该通信请求中携带的第二区块链节点的第二证书,确定第二证书对应的ca标识,之后根据预先配置的ca信任列表中的ca标识,判断第二证书对应的ca标识是否可信,若是,则与第二区块链节点建立通信,若否则不建立。通过本说明书一个或多个实施例提供的方法,区块链的中业务节点在建立通信连接之前,可根据通信请求中携带的证书,以及预先配置的ca信任列表,确定是否建立通信连接,使得可通过限制业务节点可建立通信连的对象(如,其他业务节点),减少业务节点泄露隐私数据的可能性,提高了区块链中存储的数据的安全性。

另外,图2中所述的区块链节点进行通信的方法,适用于业务节点以及共识节点,并且建立通信的过程中并无差异,只要根据节点中存储的证书以及预先配置的ca信任列表,便可确定是否建立通信。即,第一区块链节点既可以是业务节点,也可以是共识节点。同理,第二区块链既可以是业务节点,也可以是共识节点。当然,由于通常共识节点仅用于接收业务节点发送的待共识的数据,所以第二区块链节点通常为业务节点,本说明书各实施例对此并不做具体限定。

进一步地,以图1所示的区块链网络为示意,当每个区块链节点均对应一个ca时,并且具有业务关系的区块链节点可对应同一个ca,则该联盟链网络的架构可如图3所示。其中,可见每个业务关系中存在一个ca(即,图3中的虚线圆),用于向在该关系中的各业务节点颁发证书。并且,共识节点中也可存在多个ca,并且向不同的共识节点颁发证书,则各业务节点可选择不同的共识节点发送待共识的数据,并由拥有同一个ca颁发的证书的各共识节点对该数据进行共识验证。需要说明的是,一个区块链节点也可接收多个ca发送的证书,以及配置至少一个ca信任列表,在向其他区块链节点发送通信请求时,可以选择任一证书携带在通信请求中,本说明书对此不做限定。

另外,在现有多组共识节点分别进行共识验证的区块链中,例如,基于corda协议的区块链。由于各共识节点中存储的区块链不完全相同,所以对于同一个待共识的业务数据进行共识校验的结果可能不同,所以还存在区块链中数据转移(或者,在corda协议中称为公证人转移)的方法,本说明书一个或多个实施例中也可采用相同的方法转移不同共识节点中的数据,本说明书对此不再赘述。当然,在本说明书一个或多个实施例中也可仅存在一个ca为各共识节点颁发证书,本说明书对此不做限定。

更进一步地,由于在现有技术中多个ca之间的相互信任需要根ca支持,所以为了使各区块链节点中配置的ca信任列表,可以用于在tls握手协议中用于判断是否可建立通信连接,如图4所示。图4为本说明书实施例中ca关系示意图,其中根ca可以是第三方ca,联盟链ca可以是以第三方ca颁发的证书为基础创建的,并由联盟链ca向各区块链节点的ca颁发证书(如,向第一ca、第二ca、第三ca等颁发证书),最后由各区块链节点的ca向各区块链发送区块链节点证书(如,第一ca颁发的区块链节点证书1~n,第二ca颁发的区块链节点证书m~p,其中,每个节点证书可发送给不完全相同的区块链节点)。当然,对于基于证书的证书信任链,由于已经是较为成熟的技术,本说明书各实施例中对此不再过多赘述。

需要说明的是,本说明书一个或多个实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤s202和步骤s204的执行主体可以为设备1,步骤s206的执行主体可以为设备2;又比如,步骤s202的执行主体可以为设备1,步骤s204和步骤s206的执行主体可以为设备2;等等。上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

基于图2所示的区块链节点通信过程,本说明书实施例还提供一种区块链节点通信装置,如图5所示。

图5为本说明书实施例提供的一种区块链节点通信装置的结构示意图,其中,包括:

接收模块302,接收第二区块链节点发送的通信请求,其中,区块链网络中的区块链节点包括业务节点,所述业务节点存储证书授权中心ca发送的证书,并预先配置有ca信任列表,所述装置包括:

确定模块304,确定所述第二证书对应的ca标识;

判断执行模块306,判断确定出的所述第二证书对应的ca标识,是否存在于所述ca信任列表中,若是,则与所述第二区块链节点建立通信连接,若否,则不与所述第二区块链节点建立通信连接。

所述区块链节点还包括共识节点,其中,所述共识节点存储证书授权中心ca发送的证书,并预先配置有ca信任列表。

所述区块链网络中的各区块链节点对应不完全相同的ca。

所述接收模块302,根据tls握手协议接收第二区块链节点发送的通信请求。

所述判断执行模块306,向所述第二区块链节点返回验证请求,所述验证请求中携带有所述装置的第一证书,以使所述第二区块链节点根据所述第一证书以及所述第二区块链节点中预先配置的ca信任列表,确定是否与所述装置建立通信连接。

具体的,所述区块链节点通信装置可位于区块链节点。其中,该区块链节点既可以是联盟链网络中的业务节点,也可以是共识节点,本说明书对此不做限定。并且,由于在联盟链中共识节点也可是联盟中成员(即,各机构)提供的服务器,所以该区块链节点可以是共识服务器。当然,当该区块链节点为业务节点时,该业务节点也可以是机构的业务服务器。

另外,上述服务器(如,业务服务器、共识服务器)可以是单独的一台设备,也可以是多台设备组成的系统,如分布式服务器。但无论该服务器是一台还是多台设备,在该联盟链网络中该服务器可视为是一个区块链节点。

基于图2所示的区块链节点通信过程,本说明书实施例还提供一种区块链节点通信设备,如图6所示。

图6为本说明书实施例提供的一种区块链节点通信设备的结构示意图,所述通信设备包括一个或多个处理器及存储器,所述存储器存储有程序,并且被配置成由所述一个或多个处理器执行以下步骤:

第一区块链节点接收第二区块链节点发送的通信请求,其中,所述通信请求中携带有第二区块链节点的第二证书;

确定所述第二证书对应的ca标识;

判断确定出的所述第二证书对应的ca标识,是否存在于所述ca信任列表中;

若是,则与所述第二区块链节点建立通信连接;

若否,则不与所述第二区块链节点建立通信连接。

其中,区块链网络中的区块链节点包括业务节点所述业务节点存储证书授权中心ca发送的证书,并预先配置有ca信任列表。

另外,该区块链节点还可以是共识节点,并且通过该区块链节点通信设备在与其他区块链节点建立通信时,执行相同的步骤。

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmablelogicdevice,pld)(例如现场可编程门阵列(fieldprogrammablegatearray,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardwaredescriptionlanguage,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advancedbooleanexpressionlanguage)、ahdl(alterahardwaredescriptionlanguage)、confluence、cupl(cornelluniversityprogramminglanguage)、hdcal、jhdl(javahardwaredescriptionlanguage)、lava、lola、myhdl、palasm、rhdl(rubyhardwaredescriptionlanguage)等,目前最普遍使用的是vhdl(very-high-speedintegratedcircuithardwaredescriptionlanguage)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmelat91sam、microchippic18f26k20以及siliconelabsc8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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