基于区块链的数字凭证离线验证方法、装置及设备与流程

文档序号:31714380发布日期:2022-10-04 21:06阅读:140来源:国知局
基于区块链的数字凭证离线验证方法、装置及设备与流程

1.本说明书涉及数字凭证验证技术领域,尤其是涉及一种基于区块链的数字凭证离线验证方法、装置及设备。


背景技术:

2.数字凭证也称为数字证书,是指在互联网通信中标识通信各方身份信息的一个数字认证。根据不用的应用场景,数字凭证可以电子门禁卡、电子工牌、电子会员卡、电子公交卡、电子登机卡等。随着区块链技术的应用普及,越来越多的实体将各类应用的实现由传统的应用系统迁移到区块链上,以满足对数据安全和可信的要求。基于区块链的数字凭证管理就是一种典型的应用场景。传统的数字凭证管理通常实现都是中心化的,且要求数字凭证验证为在线验证。然而,某些离线场景也存在数字凭证验证需求,以确保数字凭证安全可信。因此,如何实现数字凭证的离线安全验证,已成为目前亟待解决的技术问题。


技术实现要素:

3.本说明书实施例的目的在于提供一种基于区块链的数字凭证离线验证方法、装置及设备,以实现数字凭证的离线安全验证。
4.为达到上述目的,一方面,本说明书实施例提供了一种基于区块链的数字凭证离线验证方法,应用于离线验证器集合中的离线验证器,所述方法包括:接收出示方的移动终端提供的数字凭证;所述数字凭证中包含发证签名、第一默克尔树的根节点及目标叶子节点的哈希值、从所述根节点至所述目标叶子节点的默克尔路径;所述第一默克尔树由签发方以持证方的多种信息对应的哈希值作为叶子节点构建得到;对所述数字凭证进行验证;在所述数字凭证通过验证后执行预设操作;所述预设操作包括生成所述数字凭证在本离线验证器处的出示记录;根据所述出示记录及目标凭证回执生成第二默克尔树;所述目标凭证回执为所述集合中其余离线验证器提供的对应于所述数字凭证的最新凭证回执;用本离线验证器的私钥加密所述第二默克尔树的根节点的哈希值,获得所述数字凭证在本离线验证器处的凭证回执;将本离线验证器处的凭证回执写入所述移动终端,以便于所述移动终端在指定时机将该凭证回执存储在区块链账本中;将本离线验证器处的凭证回执广播给所述集合中其余离线验证器。
5.本说明书实施例的基于区块链的数字凭证离线验证方法中,对所述数字凭证进行验证,包括:对所述数字凭证进行签名验证,以确认所述数字凭证中的发证签名是否与所述签发方一致;
根据所述默克尔路径及所述第一默克尔树的目标叶子节点的哈希值计算根节点哈希值;并判断所述根节点哈希值是否与所述第一默克尔树的根节点的哈希值相同;当所述数字凭证通过签名验证,且所述根节点哈希值与所述第一默克尔树的根节点的哈希值相同时,确认所述数字凭证通过验证。
6.本说明书实施例的基于区块链的数字凭证离线验证方法中,根据所述出示记录及目标凭证回执生成第二默克尔树,包括:按照指定哈希算法对所述出示记录进行哈希计算,生成出示记录哈希值;以所述出示记录哈希值及所述目标凭证回执作为子节点构建第二默克尔树。
7.本说明书实施例的基于区块链的数字凭证离线验证方法中,所述数字凭证中包含凭证标识、元数据及凭证声明;所述凭证标识为所述元数据及所述凭证声明的字符串拼接对应的哈希值;所述凭证声明中包含发证签名、第一默克尔树的根节点及目标叶子节点的哈希值、从所述根节点至所述目标叶子节点的默克尔路径。
8.本说明书实施例的基于区块链的数字凭证离线验证方法中,所述发证签名为所述签发方用其私钥对所述凭证标识加密得到。
9.本说明书实施例的基于区块链的数字凭证离线验证方法中,所述目标凭证回执为所述集合中其余离线验证器提供的对应于所述数字凭证的最新凭证回执。
10.另一方面,本说明书实施例还提供了一种基于区块链的数字凭证离线验证装置,配置于离线验证器集合的离线验证器中,所述装置包括:数字凭证接收模块,用于接收出示方的移动终端提供的数字凭证;所述数字凭证中包含发证签名、第一默克尔树的根节点及目标叶子节点的哈希值、从所述根节点至所述目标叶子节点的默克尔路径;所述第一默克尔树由签发方以持证方的多种信息对应的哈希值作为叶子节点构建得到;数字凭证验证模块,用于对所述数字凭证进行验证;出示记录生成模块,用于在所述数字凭证通过验证后执行预设操作;所述预设操作包括生成所述数字凭证在本离线验证器处的出示记录;默克尔树生成模块,用于根据所述出示记录及目标凭证回执生成第二默克尔树;所述目标凭证回执为所述集合中其余离线验证器提供的对应于所述数字凭证的最新凭证回执;凭证回执生成模块,用于树用本离线验证器的私钥加密所述第二默克尔树的根节点的哈希值,获得所述数字凭证在本离线验证器处的凭证回执;凭证回执写入模块,用于将本离线验证器处的凭证回执写入所述移动终端,以便于所述移动终端在指定时机将该凭证回执存储在区块链账本中;凭证回执广播模块,用于将本离线验证器处的凭证回执广播给所述集合中其余离线验证器。
11.另一方面,本说明书实施例还提供了一种计算机设备,包括存储器、处理器、以及存储在所述存储器上的计算机程序,所述计算机程序被所述处理器运行时,执行上述方法的指令。
12.另一方面,本说明书实施例还提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被计算机设备的处理器运行时,执行上述方法的指令。
13.另一方面,本说明书实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被计算机设备的处理器运行时,执行上述方法的指令。
14.由以上本说明书实施例提供的技术方案可见,本说明书实施例中,数字凭证中包含发证签名和默克尔路径,当对数字凭证进行验证时,通过进行签名验证和默克尔路径验证,就可以离线快速验证数字凭证的真伪;不仅如此,在数字凭证通过验证后,离线验证器集合中的各个离线验证器还可以异步地根据数字凭证的出示记录生成默克尔树,并进一步基于默克尔树生成凭证回执,将凭证回执写入移动终端,以便于移动终端在指定时机将该凭证回执存储在区块链账本中(以便于签发方验证),并将凭证回执广播给集合中其余离线验证器;如此,不仅实现了凭证回执的上链存储,且由于离线验证器相互背书凭证回执,使得单一离线验证器的凭证回执造假无法影响全局结果。因此,本说明书的实施例实现了基于区块链的数字凭证的离线安全验证。
附图说明
15.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:图1示出了本说明书一些实施例中基于区块链的数字凭证离线验证系统的结构框图;图2示出了本说明书一些实施例中基于区块链的数字凭证离线验证系统的数字凭证离线验证交互示意图;图3示出了本说明书一些实施例中基于区块链的数字凭证离线验证方法的流程图;图4示出了本说明书一示例性实施例中构建出的默克尔树的示意图;图5示出了本说明书一示例性实施例中作为离线验证器的门禁系统在看守所中的分布示意图;图6示出了本说明书一些实施例中基于区块链的数字凭证离线验证装置的结构框图;图7示出了本说明书一些实施例中计算机设备的结构框图。
16.【附图标记说明】10、移动终端;20、凭证生成器;30、离线验证器;40、区块链网络;51、第一门禁;52、第二门禁;53、第三门禁;61、数字凭证接收模块;62、数字凭证验证模块;
63、出示记录生成模块;64、默克尔树生成模块;65、凭证回执生成模块;66、凭证回执写入模块;67、凭证回执广播模块;702、计算机设备;704、处理器;706、存储器;708、驱动机构;710、输入/输出接口;712、输入设备;714、输出设备;716、呈现设备;718、图形用户接口;720、网络接口;722、通信链路;724、通信总线。
具体实施方式
17.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
18.图1中示出了本说明书一些实施例中基于区块链的数字凭证离线验证系统,该系统可以移动终端10、凭证生成器20、离线验证器30和区块链网络40。结合图2所示,移动终端10可以通过区块链网络40向签发方的凭证生成器20发起凭证申请(以申请数字凭证),响应于凭证申请,凭证生成器20可以生成凭证并将其存储在区块链网络40上;移动终端10可以从区块链网络40获取凭证并保存;离线验证器30可以对移动终端10出示的凭证进行验证,并在验证成功后生成凭证回执,并写入移动终端10,移动终端适时将凭证回执存储在区块链网络40上。
19.移动终端10对应的用户可以为持证方,一些实施例中,移动终端10可以为智能手机、平板电脑、笔记本电脑、数字助理或智能可穿戴设备等。其中,智能可穿戴设备可以包括智能手环、智能手表、智能眼镜或智能头盔等。凭证生成器20由凭证签发和管理机构(即签发方)管理;一些实施例中,凭证生成器20可以为具有运算和网络交互功能的电子设备;也可以为运行于该电子设备中,为数据处理和网络交互提供业务逻辑的软件。离线验证器30是不与外部网络连通的离线验证器30,以提高安全。不同应用场景下的离线验证器30可以不同;例如,当数字凭证为电子门禁卡时,离线验证器30可以为门禁系统。一些实施例中,多个离线验证器30可以运行于内部网络中,从而形成离线验证器集合。
20.本说明书实施例提供了一种基于区块链的数字凭证离线验证方法,可以应用于上述的离线验证器侧,参考图3所示,在一些实施例中,基于区块链的数字凭证离线验证方法可以包括以下步骤:步骤301、接收出示方的移动终端提供的数字凭证;所述数字凭证中包含发证签名、第一默克尔树的根节点及目标叶子节点的哈希值、从所述根节点至所述目标叶子节点的默克尔路径;所述第一默克尔树由签发方以持证方的多种信息对应的哈希值作为叶子节点构建得到;步骤302、对所述数字凭证进行验证;步骤303、在所述数字凭证通过验证后执行预设操作;所述预设操作包括生成所述数字凭证在本离线验证器处的出示记录;步骤304、根据所述出示记录及目标凭证回执生成第二默克尔树;所述目标凭证回执为所述集合中其余离线验证器提供的对应于所述数字凭证的最新凭证回执;步骤305、用本离线验证器的私钥加密所述第二默克尔树的根节点的哈希值,获得所述数字凭证在本离线验证器处的凭证回执;步骤306、将本离线验证器处的凭证回执写入所述移动终端,以便于所述移动终端在指定时机将该凭证回执存储在区块链账本中;步骤307、将本离线验证器处的凭证回执广播给所述集合中其余离线验证器。
21.在本说明书的实施例中,数字凭证中包含发证签名和默克尔路径,当对数字凭证进行验证时,通过进行签名验证和默克尔路径验证,就可以离线快速验证数字凭证的真伪;不仅如此,在数字凭证通过验证后,离线验证器集合中的各个离线验证器还可以异步地根据数字凭证的出示记录生成默克尔树,并进一步基于默克尔树生成凭证回执,将凭证回执写入移动终端,以便于移动终端在指定时机将该凭证回执存储在区块链账本中(以便于签发方验证),并将凭证回执广播给集合中其余离线验证器;如此,不仅实现了凭证回执的上链存储,且由于离线验证器相互背书凭证回执,使得单一离线验证器的凭证回执造假无法影响全局结果。因此,本说明书的实施例实现了基于区块链的数字凭证的离线安全验证。
22.在需要申请数字凭证,基于申请人(申请成功后,该申请人即为持证人)的操作,移动终端(或其他终端设备)可通过区块链网络,向签发方的凭证生成器发起凭证申请。凭证申请中可以包含申请人的指定的一些属性信息(例如姓名、住址、身份证id、手机号码等),且这些信息可以是加密(例如通过非对称加密或同态加密)的信息。
23.凭证生成器解密获得申请人的属性信息后可以根据指定的哈希算法对其中的每个属性信息进行哈希计算,获得每个属性信息对应的哈希值,然后以这些哈希值作为叶子节点构建出一棵默克尔树;然后指定其中一个属性信息对应的哈希值作为目标叶子节点,然后生成从根节点至目标叶子节点的默克尔路径;凭证生成器用自身的私钥对该默克尔树的根节点的哈希值、目标叶子节点的哈希值、默克尔路径等进行签名,从而形成数字凭证,然后将数字凭证存储至区块链网路中,以便于申请人获取。
24.如图4所示,在一示例性实施例中,以律师去看守所会见在押人员为例,律师可以在线向看守所申请数字凭证,看守所的凭证生成器以该律师的律师执业证编号、身份证号码和姓名为基础,生成对应的哈希值:hash=sha256(律师执业证编号)=h1;
hash=sha256(身份证号码)=h2;hash=sha256(姓名)=h3;然后,以h1、h2和h3作为叶子节点构建默克尔树,具体的:h21= sha256(h1

h2);h1

h2表示h1和h2的字符串拼接;rt= sha256(h21

h3);h21

h3表示h21和h3的字符串拼接;如此,则构建出以h1、h2和h3作为叶子节点,h21为中间节点,rt为根节点的默克尔树。若取身份证号码作为目标叶子节点,则可以生成从rt至h2的默克尔路径。然后,可以基于rt、h2、从rt至h2的默克尔路径及签发方签名构造一张数字凭证。其中,默克尔路径中包含h1和h3。
25.在一些实施例中,数字凭证中可以包含凭证标识、元数据及凭证声明;所述凭证标识为所述元数据及所述凭证声明的字符串拼接对应的哈希值;所述凭证声明中包含发证签名、第一默克尔树的根节点及目标叶子节点的哈希值、从所述根节点至所述目标叶子节点的默克尔路径。其中,发证签名可以为签发方用其私钥对凭证标识加密得到。
26.例如,在解密获得申请人的属性信息后,凭证生成器可以先确定凭证的元数据(元数据用于表示凭证类型和版本信息等)meta,然后再根据获得申请人的属性信息生成凭证声明claim,然后根据公式hash=sha256(meta,claim)生成凭证声明的标识。取一种签名算法enc,对hash进行签名enc(hash),并记录算法名称,最终得到完整的凭证内容。其中,每个凭证中包含一组关于凭证主体(即持证人)的声明,凭证声明可以说明有关主体的任何内容,例如属性(年龄、身高、体重等),关系(父亲、母亲、雇主、公民身份或其他)、权利(医疗福利、图书馆特权、会员奖励、合法权利、等等)。
27.在一些实施例中对所述数字凭证进行验证可以包括:(1)对所述数字凭证进行签名验证,以确认所述数字凭证中的发证签名是否与所述签发方一致;当数字凭证中的发证签名与签发方一致,表明该数字凭证通过签名验证;否则签名验证失败。
28.(2)根据所述默克尔路径及所述第一默克尔树的目标叶子节点的哈希值计算根节点哈希值;并判断所述根节点哈希值是否与所述第一默克尔树的根节点的哈希值相同;当计算出的根节点哈希值与数字凭证中的根节点的哈希值相同时,表明该数字凭证通过默克尔路径验证;否则默克尔路径验证。验证路径时,由底层至上层逐层计算出根节点哈希值rt’;如果rt’=rt,则表明该数字凭证通过默克尔路径验证。
29.当所述数字凭证通过签名验证和默克尔路径验证,可以确认所述数字凭证通过验证;否则可以确认数字凭证未通过验证,如此,可以提高数字凭证离线验证的安全性。
30.在另一些实施例中,默克尔树的节点标识还可以采用更加复杂的计算方式,则在验证时,也需要对应采用更加复杂的计算方式。例如,在一示例性实施例中,若默克尔树的节点标识(即节点哈希值)的计算公式为hash = sha256(key + mask + childhash[] + value);其中,hash为当前节点的节点标识;key为当前节点存储的数据的键(例如姓名、身份证号码等);value key为当前节点存储的数据的值(例如姓名对应的数值,身份证号码对应的数值等);mask为布隆过滤器,用于子节点查找;childhash表示当前节点的子节点的哈希值。当前节点的子节点的哈希值存在当前节点的hash列表中,当前节点的哈希值存在于其上层节点(即父节点)的hash列表中。
[0031]
一些实施例中,在数字凭证通过验证后执行预设操作;其中,预设操作中不仅包括生成数字凭证在本离线验证器处的出示记录,还可以包括对应于数字凭证的功能实现。例如,以门禁系统作为离线验证器为例,除了生成数字凭证在本离线验证器处的出示记录外,预设操作还可以包括执行控制门禁系统打开的控制操作等。
[0032]
一些实施例中,根据所述出示记录及目标凭证回执生成第二默克尔树可以包括:(1)按照指定哈希算法对所述出示记录进行哈希计算,生成出示记录哈希值;(2)以所述出示记录哈希值及所述目标凭证回执作为子节点构建第二默克尔树。
[0033]
其中,目标凭证回执为离线验证器集合中其余离线验证器提供的对应于所述数字凭证的最新凭证回执。
[0034]
例如,以图5所示的示例性实施例为例,在该示例性实施例中,看守所包含a、b、c和d四个独立空间,若律师(或在押人员亲属等)要会见位于c空间内的在押人员,则律师的手机中保存的数字凭证xxxx需依次通过第一门禁51、第二门禁52和第三门禁53,才能进入c空间;而第一门禁51、第二门禁52和第三门禁53则形成有序的离线验证器集合。
[0035]
当律师的手机中保存的数字凭证出示给第一门禁51,在该数字凭证通过验证后,第一门禁51可以打开,以允许该律师通过,同时产生出示记录1,其中,出示记录1中可以包括数字凭证标识、出示时间、出示地点(即第一门禁51)、验证结果等。第一门禁51可以根据指定哈希算法对出示记录1进行哈希计算,获得对应于出示记录1的哈希值hash1;根据哈希值hash1构建一棵默克尔树(由于此时并未收到第二门禁52或第三门禁53广播的凭证回执,可以只根据哈希值hash1构建一棵默克尔树),即只有一个节点hash1的默克尔树,该默克尔树的根节点即为节点hash1;然后用自身的私钥对hash1进行签名,从而生成该数字凭证在第一门禁51处的凭证回执enc(hash1)。
[0036]
在生成凭证回执enc(hash1)后,第一门禁51可以将其写入律师的手机中,以便于律师在完成会见并离开看守所(或其他时机)后,将凭证回执enc(hash1)上传至区块链网络中保存;在生成凭证回执enc(hash1)后,第一门禁51还可以将enc(hash1)广播给第二门禁52和第三门禁53,以便于相互背书凭证回执。
[0037]
当律师的手机中保存的数字凭证出示给第二门禁52,在该数字凭证通过验证后,第二门禁52可以打开,以允许该律师通过,同时产生出示记录2。第二门禁52可以根据指定哈希算法对出示记录2进行哈希计算,获得对应于出示记录2的哈希值hash2;以hash2和hash1作为叶子节点构建另一棵默克尔树,对应的根节点为hash12=(hash1

hash2);然后用自身的私钥对hash12进行签名,从而生成该数字凭证在第二门禁52处的凭证回执enc(hash12)。
[0038]
在生成凭证回执enc(hash12)后,第二门禁52可以将其写入律师的手机中,以便于律师在完成会见并离开看守所(或其他时机)后,将凭证回执enc(hash12)上传至区块链网络中保存;在生成凭证回执enc(hash12)后,第二门禁52还可以将enc(hash12)广播给第一门禁51和第三门禁53。
[0039]
当律师的手机中保存的数字凭证出示给第三门禁53,在该数字凭证通过验证后,第三门禁53可以打开,以允许该律师通过,同时产生出示记录3。第三门禁53可以根据指定哈希算法对出示记录3进行哈希计算,获得对应于出示记录3的哈希值hash3;由于第二门禁52广播的hash12晚于第一门禁51广播的hash1,因此,第二门禁52广
播的hash12为目标凭证回执;进而可以hash3、hash12作为叶子节点构建另一棵默克尔树,对应的根节点为hash123=(hash12

hash3);然后用自身的私钥对hash123进行签名,从而生成该数字凭证在第三门禁53处的凭证回执enc(hash123)。
[0040]
在生成凭证回执enc(hash123)后,第三门禁53可以将其写入律师的手机中,以便于律师在完成会见并离开看守所(或其他时机)后,将凭证回执enc(hash123)上传至区块链网络中保存;在生成凭证回执enc(hash123)后,第三门禁53还可以将enc(hash12)广播给第一门禁51和第二门禁52。
[0041]
如此,离线的凭证回执即可以被保存至区块链网络中,从而实现了数字凭证的离线认证。由于保存至区块链网络中的数字凭证及其凭证回执不会被篡改或伪造,从而提高了数字凭证的离线认证的安全性。而且,由于离线验证器集合的每一个离线验证器中中均保留有数字凭证的全量凭证回执,单个离线验证器故障、篡改或伪造凭证回执,也不会对数字凭证的凭证回执造成影响,因此,即使移动终端未上传凭证回执至区块链网络,还可以基于离线验证器集合可靠获得数字凭证的凭证回执,从而也实现了区块链网络和离线验证器集合的数据双向备份。
[0042]
虽然上文描述的过程流程包括以特定顺序出现的多个操作,但是,应当清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。
[0043]
与上述的基于区块链的数字凭证离线验证方法对应,本说明书实施例还提供了一种基于区块链的数字凭证离线验证装置,其可以配置于上述的上,参考图6所示,在一些实施例中,基于区块链的数字凭证离线验证装置可以包括:数字凭证接收模块61,用于接收出示方的移动终端提供的数字凭证;所述数字凭证中包含发证签名、第一默克尔树的根节点及目标叶子节点的哈希值、从所述根节点至所述目标叶子节点的默克尔路径;所述第一默克尔树由签发方以持证方的多种信息对应的哈希值作为叶子节点构建得到;数字凭证验证模块62,用于对所述数字凭证进行验证;出示记录生成模块63,用于在所述数字凭证通过验证后执行预设操作;所述预设操作包括生成所述数字凭证在本离线验证器处的出示记录;默克尔树生成模块64,用于根据所述出示记录及目标凭证回执生成第二默克尔树;所述目标凭证回执为所述集合中其余离线验证器提供的对应于所述数字凭证的最新凭证回执;凭证回执生成模块65,用于树用本离线验证器的私钥加密所述第二默克尔树的根节点的哈希值,获得所述数字凭证在本离线验证器处的凭证回执;凭证回执写入模块66,用于将本离线验证器处的凭证回执写入所述移动终端,以便于所述移动终端在指定时机将该凭证回执存储在区块链账本中;凭证回执广播模块67,用于将本离线验证器处的凭证回执广播给所述集合中其余离线验证器。
[0044]
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0045]
需要说明的是,本说明书的实施例中,所涉及的用户信息(包括但不限于移动终端
信息、用户属性信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权同意且经过各方充分授权的信息和数据。
[0046]
本说明书的实施例还提供一种计算机设备。如图7所示,在本说明书一些实施例中,所述计算机设备702可以包括一个或多个处理器704,诸如一个或多个中央处理单元(cpu)或图形处理器(gpu),每个处理单元可以实现一个或多个硬件线程。计算机设备702还可以包括任何存储器706,其用于存储诸如代码、设置、数据等之类的任何种类的信息,一具体实施例中,存储器706上并可在处理器704上运行的计算机程序,所述计算机程序被所述处理器704运行时,可以执行上述任一实施例所述的基于区块链的数字凭证离线验证方法的指令。非限制性的,比如,存储器706可以包括以下任一项或多种组合:任何类型的ram,任何类型的rom,闪存设备,硬盘,光盘等。更一般地,任何存储器都可以使用任何技术来存储信息。进一步地,任何存储器可以提供信息的易失性或非易失性保留。进一步地,任何存储器可以表示计算机设备702的固定或可移除部件。在一种情况下,当处理器704执行被存储在任何存储器或存储器的组合中的相关联的指令时,计算机设备702可以执行相关联指令的任一操作。计算机设备702还包括用于与任何存储器交互的一个或多个驱动机构708,诸如硬盘驱动机构、光盘驱动机构等。
[0047]
计算机设备702还可以包括输入/输出接口710(i/o),其用于接收各种输入(经由输入设备712)和用于提供各种输出(经由输出设备714)。一个具体输出机构可以包括呈现设备716和相关联的图形用户接口718(gui)。在其他实施例中,还可以不包括输入/输出接口710(i/o)、输入设备712以及输出设备714,仅作为网络中的一台计算机设备。计算机设备702还可以包括一个或多个网络接口720,其用于经由一个或多个通信链路722与其他设备交换数据。一个或多个通信总线724将上文所描述的部件耦合在一起。
[0048]
通信链路722可以以任何方式实现,例如,通过局域网、广域网(例如,因特网)、点对点连接等、或其任何组合。通信链路722可以包括由任何协议或协议组合支配的硬连线链路、无线链路、路由器、网关功能、名称服务端等的任何组合。
[0049]
本技术是参照本说明书一些实施例的方法、设备(系统)、计算机可读存储介质和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理器的处理器以产生一个机器,使得通过计算机或其他可编程数据处理器的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0050]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理器以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0051]
这些计算机程序指令也可装载到计算机或其他可编程数据处理器上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0052]
在一个典型的配置中,计算机设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0053]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0054]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算机设备访问的信息。按照本说明书中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0055]
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0056]
本说明书实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理器来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0057]
还应理解,在本说明书实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0058]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0059]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0060]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同
替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1