基于区块链的服务预留和委托的制作方法

文档序号:30088984发布日期:2022-05-18 07:47阅读:175来源:国知局
基于区块链的服务预留和委托的制作方法
基于区块链的服务预留和委托


背景技术:

1.本发明总体上涉及计算领域,更特别地涉及预留和委托。典型的服务模型包括用户、设备和提供者。一旦用户预定服务,用户就可以通过提供者可能已经指定并递送的设备来使用该服务。它可能需要在整个服务生命周期内绑定用户、设备和提供者。
2.区块链技术是可以以可验证和永久的方式有效记录两方或更多方之间的交易的去中心化和分布式数字账本(ledger)。账本本身还可以被编程为自动触发交易。区块链维护被称为区块的连续增长的记录的列表,其被保护以防止篡改和修订。每个区块包含到前一个区块的链接和时间戳。通过设计,区块链技术固有地抵抗数据的修改—一旦被记录,区块中的数据不能被追溯地更改。通过使用对等网络和分布式时间戳服务器,自主地管理区块链数据库。区块链技术的去中心化共识算法允许若干实体维护信息的共享记录,而每个实体不需要来自每个其他实体的信任,因为共识是在每个网络的基础上形成的。网络化模型产生具有防审查、防篡改的优点的系统,以及没有单点故障的系统。
3.区块链可以使用智能合约来定义在各个区块链参与者之间进行的交易。智能合约是基于由智能合约的用户提供的或从区块链环境提取的触发来表达合约协议的内容并操作内容的实现的计算机程序。智能合约可以具有用户界面,并且通常模仿合约条款。智能合约旨在提供优于传统合约法律的安全性,并减少与合约订立相关联的其他交易成本。
4.在区块链技术的上下文中,智能合约可以包括能够存储在区块链网络上的脚本。由于智能合约驻留在区块链上,所以智能合约具有唯一地址。智能合约可以由发送到其地址的消息或交易触发。用于访问和利用智能合约的条件在其能力上受到限制,以降低对区块链资产的未授权访问的可能性。一旦被触发,智能合约可以根据合约或协议的条款自动执行、控制或记录合法相关的事件和动作。


技术实现要素:

5.本发明的实施例可以包括用于区块链启用的预留和委托的方法、计算机系统和计算机程序产品。本发明可以包括接收由用户定义的一个或多个第一触发条件或者一个或多个第二触发条件,检测一个或多个第一触发条件的发生,基于所接收的一个或多个第一触发条件部署智能合约,检测一个或多个第二触发条件的发生,以及基于所接收的一个或多个第二触发条件去激活智能合约。本发明可以包括接收对象注册,所述对象是用户、服务或设备。一个或多个第一触发条件可以是在其发生时可以发起智能合约的部署的条件。一个或多个第二触发条件可以是在其发生时可以发起智能合约的去激活的条件。智能合约可以是预留智能合约或部署智能合约。部署智能合约可以包括运行委托。委托可以是从一个服务提供者切换到另一个服务提供者、从一个设备切换到另一个设备、或者从物理密钥切换到虚拟密钥中的一者或多者。去激活智能合约可以包括移除委托,并且复原回到预委托设置。
附图说明
6.本发明的这些和其他目的、特征和优点将从以下结合附图阅读的对其说明性实施例的详细描述中变得显而易见。附图的各种特征不是按比例的,因为为了清楚起见,图示是为了有助于本领域技术人员结合详细描述理解本发明。在附图中:
7.图1示出了根据至少一个实施例的网络化计算机环境;
8.图2是根据本发明的实施例的预留和委托系统的示例性总体架构的框图;
9.图3是示出根据本发明的实施例的用于区块链启用的预留和委托的过程的操作流程图;
10.图4是描绘根据本发明的实施例的图1中描绘的计算机和服务器的内部组件和外部组件的框图;
11.图5是描绘根据本发明的实施例的包括图1中描绘的计算机系统的云计算环境的功能框图;以及
12.图6是描绘根据本发明的实施例的由图5的云计算环境提供的抽象模型层的图。
具体实施方式
13.现在将参照附图详细描述本发明的实施例。
14.提供参考附图的以下描述以帮助全面理解如由权利要求书及其等同物定义的本发明的示范性实施例。它包括各种具体细节以帮助理解,但是这些细节应被认为仅仅是示例性的。因此,本领域普通技术人员将认识到,在不脱离本发明的范围和精神的情况下,可以对本文所述的实施例进行各种改变和修改。另外,为了清楚和简明,可以省略对公知功能和结构的描述。
15.在以下说明书和权利要求书中使用的术语和词语不限于书目含义,而仅仅用于使得能够清楚和一致地理解本发明。因此,对于本领域技术人员来说,很明显,本发明的示例性实施例的下列描述仅是为了说明的目的,而不是为了限制由所附权利要求及其等同物所限定的本发明。
16.本发明的实施例总体上涉及计算领域,并且更具体地涉及区块链启用的预留和委托。区块链启用的预留和委托可以指代从一个用户到另一个用户的特定设备的预留和委托。区块链启用的预留和委托也可以指代服务或设备的预留和委托。
17.典型的服务模型可以包括一个或多个用户、一个或多个设备以及一个或多个提供者。例如,用户具有智能电话,用户利用该智能电话进行电话呼叫。智能电话是设备,并且提供者是提供蜂窝电话服务的公司。如果这三个部分中的任何一个不可用,则服务模型被断开。
18.当前的预留和委托问题可以包括用户或用户设备、服务或服务设备与网络之间的断开连接。例如,典型的服务模型包含多个用户、多个设备和多个提供者。操作智能电话以进行电话呼叫的用户可能由于与提供者或蜂窝电话服务的问题而经历中断。例如,如果用户在火车中并且火车进入隧道,则用户丢失网络连接并且不能进行任何电话呼叫。当用户的智能电话电池耗尽时,操作智能电话以进行电话呼叫的用户可能经历中断。结果,用户不能打电话,并且服务模型被断开。
19.服务模型的断开可能是有问题的。这是由于一旦用户预订了服务或设备,用户就
被锁定使用提供者指定和递送的服务或设备。通常,用户、设备和提供者在整个服务生命周期内被绑定在一起,从而产生许多缺点。
20.在整个服务生命周期内绑定用户、设备和提供者的一个这样的缺点可能是不能切换到用于相同服务的一些其他服务提供者。例如,从一个国家旅行到另一个国家的用户可能具有当在另一个国家时硬性时间改变的无线数据服务。结果,当在另一个国家时,用户可能不能使用无线数据服务。另一个缺点可能涉及成本。如果指定的设备不可用,则改变到其他用于服务认证的设备可能是昂贵的。例如,用户试图使用用户的设备(诸如例如智能电话),来为购买付款。用户的智能电话电池耗尽,结果用户不能完成交易。对于用户而言,将网络服务从电池耗尽的用户的智能电话改变到充满电的另一个设备以便用户完成交易可能是昂贵的。
21.在服务生命周期的持续时间内绑定用户、设备和提供者的又一个缺点可以处理每当需要服务或设备时与其他用户共享服务或设备。例如,用户可能希望从朋友那里借用汽车。朋友可能具有汽车的物理密钥。然而,用户不可能由于朋友与物理密钥接近从朋友那里得到密钥。结果,即使朋友可以授权用户借用汽车,但是由于汽车的物理密钥不可用,用户也不能这样做。
22.如上所述,存在与在服务生命周期的持续时间内将用户、设备和提供者绑定在一起相关联的许多缺点。因此,存在对允许预留和/或委托服务提供者和/或设备的需要。本发明的实施例提供使用区块链智能合约来临时预留和委托服务、服务提供者、消费者设备和用户。结果,服务不需要与任何设备或用户紧密耦合。这允许用户在用户自己的服务或设备不可用时,获得临时使用不同服务和设备的更大灵活性。例如,利用区块链启用的服务预留和委托可允许自动提供者切换或动态设备注册和共享。这可以导致更高的用户满意度、选择不同设备的更多灵活性、以及由于易于与诸如同事、朋友或家庭成员之类的其他用户共享服务和/或设备而对服务和/或设备的更多使用。
23.本发明的实施例可以使用通过智能合约操作的区块链网络,所述智能合约用于定义用户、提供者或服务商和设备之间的各种类型的关系。这些关系可以用于定义多个不同的触发条件。例如,第一触发条件可以用于激活或部署智能合约,并且第二触发条件可以用于去激活智能合约。这样,本发明的实施例具有通过利用智能合约执行临时委托来改进区块链的技术领域的能力,该临时委托允许从一个服务提供者到另一个服务提供者的切换或从一个设备到另一个设备的切换服务而不中断用户。触发条件可以基于它们的发生来激活或去激活智能合约。
24.参考图1,描绘了根据实施例的示例性网络化计算机环境100。网络化计算机环境100可以包括具有处理器104和数据存储设备106的计算机102,该计算机102能够运行软件程序108以及预留和委托程序110a。网络化计算机环境100还可包括服务器112,其被启用来运行可以与数据库114和通信网络116交互的预留和委托程序110b。服务器112还可以被称为服务器计算机。
25.网络化计算机环境100可以包括多个计算机102和服务器112,仅示出其中的一个。服务器112还可以是服务器计算机。通信网络116可以包括各种类型的通信网络,诸如广域网(wan)、局域网(lan)、电信网络、无线网络、公共交换网络和/或卫星网络。应当理解,图1仅提供了一种实现的说明,而不隐含对其中可以实现不同实施例的环境的任何限制。可以
基于设计和实现要求对所描述的环境进行许多修改。
26.客户端计算机102可以经由通信网络116与服务器计算机112通信。通信网络116可以包括诸如有线、无线通信链路或光纤电缆的连接。如将参考图4讨论的,服务器计算机112可以分别包括内部组件902a和外部组件904a,并且客户端计算机102可以分别包括内部组件902b和外部组件904b。服务器计算机112还可以在云计算服务模型中操作,诸如软件即服务(saas)、分析即服务(aaas)、平台即服务(paas)、区块链即服务(baas)或基础设施即服务(iaas)。服务器112还可以位于云计算部署模型中,诸如私有云、社区云、公有云或混合云。客户端计算机102可以是例如移动设备、电话、个人数字助理、上网本、膝上型计算机、平板计算机、台式计算机或能够运行程序、访问网络和访问数据库114的任何类型的计算设备。根据本实施例的各种实现方式,预留和委托程序110a、110b可以与可以嵌入在各种存储设备中的数据库114交互,所述存储设备诸如但不限于计算机102、网络化服务器112或云存储服务。
27.根据本实施例,使用客户端计算机102或服务器计算机112的用户可以(分别)使用预留和委托程序110a、110b来预留或委托服务或设备。以下参考图2-3更详细地解释预留或委托服务、设备或用户的方法。
28.参考图2,示出了根据本发明的实施例的预留和委托系统的示例性总体架构200的框图。架构200示出了其中预留和委托程序110a、110b可以预留和委托服务或设备的三个不同情景。不同的情景可以包括但不限于服务委托情景、设备委托情景和用户委托情景。
29.服务委托情景可以包括一个或多个用户、服务提供者一220a、服务提供者二220b、以及智能合约222。服务委托情景提供了当服务提供者一220a正在经历其服务的问题时服务提供者一220a可以如何将其用户迁移到服务提供者二220b的示例。来自服务提供者一220a的服务可以被预留并委托给服务提供者二220b。服务提供者220a、220b可以指代向用户提供特定服务的公司,所述特定服务例如网络、存储或处理服务。例如,服务提供者220a、220b可以是电话公司、因特网服务提供者、应用服务提供者、存储服务提供者或内容提供者。应当理解,尽管示出了两个服务提供者,但是本发明的实施例考虑了一个或多个服务提供者。
30.给定服务可以由多个服务提供者220a、220b提供。例如,网络服务可以由服务提供者220a、220b和220n(未示出)提供。所有服务提供者220a、220b以及它们提供的特定服务可以在区块链230上被跟踪。
31.可以将智能合约222存储在预留和委托程序110a、110b中的区块链230上。智能合约222可以是预约智能合约或委托智能合约。预留智能合约可以指定至少两个提供者,例如服务提供者一220a和服务提供者二220b。服务提供者220a、220b可以在它们之间具有其自己的协议,这可以允许一个服务提供者在另一服务提供者没有服务时提供临时服务。例如,协议可以被转换成区块链中的预留智能合约以绑定两个服务提供者。例如,服务提供者一220a可以迁移其用户以临时利用由服务提供者二220b提供的服务。这种类型的协议还可以由多个用户在他们之间建立。
32.在实施例中,预留智能合约可以被自动触发。在备选实施例中,预留智能合约可以由用户手动触发。例如,一旦在两个提供者,诸如服务提供者一220a和服务提供者二220b之间建立了预留智能合约,则服务提供者可以在触发事件发生时自动切换。预留智能合约的
触发事件的一些示例可以包括但不限于服务提供者之间的协议、来自一个或多个用户的绑定两个设备的请求、或绑定两个或更多个服务的请求。为了发生服务提供者的自动切换,预留智能合约可以包括关于两个或更多个服务的自动绑定的信息。通过同步在两个或更多个服务提供者之间签署的合约,可以发生两个或更多个服务的自动绑定。签署的合约可以被存储在区块链中。替代地,用户可以手动触发两个或更多个服务的绑定。
33.委托智能合约可以提供或包含关于正在传送何种服务以及向谁传送的信息。委托智能合约可以在触发事件发生时自动触发。委托智能合约的触发事件的一些示例可以包括注册设备的低电池、由注册服务提供者提供的有限服务、或个人载具的物理密钥的不可用性的指示。例如,用户a正在使用作为智能电话的设备。用户a正在使用服务提供者一220a来提供蜂窝电话服务。用户a的智能电话正在指示非常弱的服务或没有服务。具有弱服务或无服务指示可以是触发事件的示例。结果,在委托智能合约下,服务可以从服务提供者一220a切换到服务提供者二220b。例如,一旦用户设备指示由服务提供者一220a提供的弱服务,就可以发生服务的委托。例如,一旦用户设备指示服务提供者一220a正在提供弱服务,就发生服务的委托。弱服务将指示设备将切换以从另一服务提供者二220b接收服务,从而允许用户a不经历服务中断。
34.架构200中示出的另一个情景是设备委托情景。设备委托情景可以包括一个或多个设备224a、224b、224c和智能合约222。设备委托情景提供了如何将特定服务从一个设备委托给另一个设备的示例。设备224a-c可以包括但不限于移动设备、电话、个人数字助理、上网本、膝上型计算机、平板计算机、台式计算机。设备224a-c还可以包括不同类型的信用卡。例如,设备224a-c可以是智能电话、智能手表、信用卡或可以被委托使用的任何其他设备。
35.在设备委托情景中使用的智能合约222可以包括预留智能合约或委托智能合约。在实施例中,预留智能合约可以提供关于用户所拥有的哪些设备可以用于委托目的信息。例如,用户可以在区块链230上注册用户的智能电话、平板计算机、一个或多个信用卡,并且将设备与预留智能合约链接。此外,用户可以指定如果用户的智能电话不能使用,则来自用户的智能电话的服务可以被临时传送到用户的平板计算机。在替换实施例中,除了用户所拥有的选择设备224a-c以外,预留智能合约还可以提供关于其他用户所拥有的哪些设备可以用于委托目的信息。
36.预留智能合约可以不在触发事件发生时自动触发。相反,预留智能合约可以由用户触发。这可以允许用户控制哪些设备是可信的以接收所传送的服务。
37.设备委托情景中的委托智能合约可以定义触发事件,该触发事件可以用于确定何时应将来自一个设备的服务切换到另一个设备。另外,设备委托情景中的委托智能合约还可以包括为不同设备指定的不同认证方法。例如,用户可以在委托智能合约中定义当例如智能电话的设备一224a耗尽电池时,服务可以切换到例如平板计算机的设备二224b。此外,为了使服务从设备一224a切换到设备二224b,用户可以将pin输入到设备二224b中,以便针对从服务提供者接收的服务来认证设备二224b。
38.在实施例中,委托智能合约可以由用户触发。例如,用户正在使用用户的智能电话来工作。智能电话正在耗尽电池。这样,在智能电话耗尽电池之前,用户可以通过将智能电话与平板计算机配对来触发委托智能合约。一旦配对,两个设备可以通过相同或不同的认
证方法来访问相同的服务。一旦智能电话不可用,则可以将服务委托给平板计算机,使得可以将来自智能电话的因特网服务委托给平板计算机。结果,用户可以在平板计算机上而不是智能电话上继续接收服务。
39.在另一个示例中,用户正在使用用户的智能电话来工作。在用户触发委托智能合约以将因特网服务从智能电话委托给诸如平板计算机的另一个设备之前,智能电话耗尽电池。然而,在预留智能合约下,用户已将用户的平板计算机指定为可以用于接收服务的设备中的一个。这样,用户可以使用平板计算机来触发委托合约以接收最初提供给智能电话的因特网服务。结果,可以将因特网服务从一个设备(智能电话)委托给另一个设备(平板计算机)。
40.在备选实施例中,委托智能合约可以被自动触发。例如,服务提供者可以检测用户正在使用的设备的电池水平。一旦设备的电池水平达到特定水平,服务提供者就可以触发智能合约并将服务委托给另一个设备。
41.从一个设备到另一个设备的服务委托可以是临时的。继续以上示例,委托智能合约可以指定服务可在特定持续时间(例如60分钟)内切换到设备二224b。一旦60分钟过去,服务可以自动地从设备二224b复原回到设备一224a。特定持续时间可以指代在智能合约222中指定的有限时间量。它可以以分钟、小时、甚至天来定量。
42.架构200中示出的第三种情景是用户委托情景。用户委托情景可以包括智能合约222和一个或多个用户,诸如用户一228a和用户二228b。用户委托情景提供了如何将设备或服务从诸如用户一228a的一个用户委托给诸如用户二228b的另一个用户的示例。
43.用户委托情景中的智能合约222包括预留智能合约和委托智能合约。在这种情况下,预留智能合约可以包括诸如用户是谁及每个用户之间的关系之类的信息。例如,用户228a、228b可以是朋友、同事或家庭成员。用户228a、228b可以具有彼此之间的信任关系。这些信任关系可以在预留智能合约中清楚地定义。
44.预留智能合约由用户触发。这样,用户可以指定可参与委托的其他用户。用户可以指定多个用户。此外,每个用户关系是相等的。这样,每个用户必须同意预留智能合约,以便实现预留智能合约。例如,存在两个用户,用户一228a和用户二228b。用户一228a希望进入与用户二228b的预留智能合约。预留智能合约规定用户一228a可以将用户的个人载具的使用传送给用户二228b。用户二228b同意预留智能合约,并且实现预留智能合约。然而,如果用户二228b不同意预留智能合约,则不存在预留智能合约。由于合约的一方不同意合约,所以不实现预留智能合约。
45.用户委托情景的委托智能合约可以包括诸如每个用户可能具有或可能能够接收和委托的服务、或每个用户可能具有且可能能够接收或委托的设备等信息。每个用户可以指定多个服务、以及可参与委托的多个设备。这样,每个用户可以确定什么被委托以及委托给谁。另外,每个用户可以确定触发事件。触发事件可以是在其发生时可以触发委托的事件。触发事件的一些示例可以包括但不限于注册设备的低电量的指示、由注册服务提供者提供的有限服务、或者个人载具的物理密钥的不可用性。
46.预留智能合约和委托智能合约的实现方式可以从以下情景中显而易见。例如,用户二228b需要载具从一个城市去到另一个城市。在预留智能合约和委托智能合约两者下,用户二228b被授权使用用户一228a的个人载具。然而,用户一228a在出差时离开,并且不能
向用户二228b提供个人载具的物理密钥。然而,使用委托智能合约,用户二228b可以接收允许用户二228b访问和驾驶个人载具的虚拟标识或令牌。在这种情景下,物理密钥不是必需的。相反,委托智能合约包括关于设备是什么(个人载具)以及给谁(用户二228b)的信息。代替接收物理密钥,用户二228b可以在该用户的个人设备(例如智能电话)上接收令牌或虚拟标识,其可以允许用户二228b使用用户一228a的个人载具。结果,个人载具的用户从用户一228a委托给用户二228b。此外,当令牌被委托时,不需要物理密钥。
47.特定服务或设备的委托可以是临时的。继续以上示例,委托智能合约可以指定用户二228b可以在特定持续时间(例如24小时)内使用个人载具。一旦24小时过去,委托的令牌过期,并且用户二228b失去使用个人载具的特权。
48.所有这三种情景还可以包括用户设备服务226a-c,用户设备服务226a-c可以指代可存储关于用户228、设备224、以及可在一个或多个智能合约中涉及的服务提供者220的信息的数据库。
49.现在参考图3,描绘了根据至少一个实施例的操作流程图300。操作流程图300示出了由预留和委托程序110a、110b对用户、设备或服务的预留和委托。
50.在操作302,接收对象注册。该对象可以是服务、设备或用户。例如,服务可以指代由服务提供者220a、220b提供给用户的任何类型的服务,如这里参考图2所述,设备可以指代可以被委托使用的任何设备。设备的一些非限制性示例可以包括移动设备、电话、个人数字助理、上网本、膝上型计算机、平板计算机、台式计算机、不同类型的信用卡或载具。用户可以是其设备被委托给另一个用户的个体。用户还可以是将服务从一个服务提供者委托给另一个服务提供者或从一个设备委托给另一个设备的个体。
51.预留和委托程序110a、110b可以接收关于不同服务提供者220a、220b以及不同设备224a-c的信息。在注册过程期间,用户可以注册用户可使用的各种服务提供者220a、220b。例如,用户可以指定一个或多个网络提供者,或者一个或多个小区服务提供者。此外,用户还可以注册用户可以通过由服务提供者220a、220b提供的服务来使用的设备224a-c。应理解,用户可以在注册过程之后的任何时间更新特定的对象。例如,在对象注册期间,用户将设备a和设备b标识为可以与特定服务一起使用的两个设备。用户可以指定设备a是智能电话,并且设备b是平板计算机。
52.在注册过程期间,预留和委托程序110a、110b还可以接收关于智能合约222的信息。例如,在实施例中,可以在对象注册过程期间设置智能合约222。例如,两个服务提供者之间的智能合约222可以在服务提供者注册期间设置。在备选实施例中,可以在对象注册过程之后,例如在触发条件发生期间或在智能合约222部署期间,建立智能合约222。
53.在注册过程期间,预留和委托程序110a、110b还可以从用户接收关于用户的标识信息。一些标识信息可以包括但不限于用户的个人信息,诸如姓名、邮件发送和电子邮件地址、或电话号码。预留和委托程序110a、110b可以接收可标识用户、标识设备、或标识服务及它们相应的服务提供者的任何其他信息。此外,预留和委托程序110a、110b还可以接收关于可以参与服务或设备的预留和委托的其他用户的标识信息。
54.在操作304,接收由用户定义的一个或多个触发条件。一个或多个触发条件可以是一个或多个第一触发条件或一个或多个第二触发条件。第一触发条件是在其发生时可以启动智能合约的部署的条件。第一触发条件的一些示例可以包括但不限于注册设备的低电量
的指示、由注册服务提供者提供的有限服务、个人载具的物理密钥的不可用性、或者指定时间段。例如,指定时间段可以指代特定的时间量,诸如30分钟、1小时、24小时、或甚至几天。
55.第二触发条件是在其发生时可以发起智能合约的去激活的条件。第二触发条件的一些示例可以包括但不限于注册设备的满电量、由注册服务提供者提供的无限服务、对个人载具的物理密钥的访问、或指定时间段的期满的指示。例如,在指定时间段期满时,满足第二触发条件的发生,并且可以发起智能合约的去激活。
56.在操作306,检测一个或多个第一触发条件的发生。在实施例中,预留和委托程序110a、110b可以自动检测一个或多个第一触发条件已经发生。例如,预留和委托程序110a、110b可以检测服务提供者a在只要受限服务出现用户当前所处的区域中具有受限服务。在备选实施例中,用户可以通过提示预留和委托程序110a、110b移动到操作308并部署智能合约来手动触发第一触发条件的发生。例如,用户可以出于工作目的正在使用设备a。用户可以注意到设备a的电池要耗尽。用户可以经由使用应用程序接口来提示预留和委托程序110a、110b已经发生第一触发条件。
57.在操作308,部署智能合约222。一旦检测到一个或多个触发条件,预留和委托程序110a、110b就可以自动地部署智能合约222。智能合约222可以是预留和委托智能合约222二者。例如,用户正在使用由服务提供者a提供的服务。用户处于由服务提供者a和服务提供者b可以提供相同服务的位置中。预留和委托程序110a、110b可以检测由服务提供者a提供的服务受限。预留和委托程序110a、110b还可以检测服务提供者b在该特定位置处服务没有任何中断。这样,预留和委托程序110a、110b可以自动部署智能合约以将服务从服务提供者a切换到服务提供者b。结果,用户的服务是不间断的。
58.如这里关于操作306所述,用户可以手动触发第一触发条件的发生,从而提示预留和委托程序110a、110b部署智能合约。继续上述示例,用户可以出于工作目的而使用设备a。用户可以注意到设备a电池要耗尽,用户还可以提示预留和委托程序110a、110b部署智能合约并且将服务从设备a委托给另一个设备,诸如设备b。例如当设备a完全耗尽电池电量时,用户还可以提示预留和委托程序110a、110b以从设备b部署智能合约。
59.在操作310,检测一个或多个第二触发条件的发生。一旦智能合约被激活,预留和委托程序110a、110b可以临时运行委托,直到预留和委托程序110a、110b检测第二触发条件的发生时为止。如这里关于操作304所述,第二触发条件可以指代在其发生时可以发起智能合约的去激活的条件。例如,用户正在使用由服务提供者a提供的服务。然而,由于由服务提供者a提供的服务受限,预留和委托程序110a、110b部署智能合约以将服务从服务提供者a切换到服务提供者b。结果,用户在有限的时间内从服务提供者b接收服务。预留和委托程序110a、110b检测由服务提供者a提供的服务被恢复。
60.一旦检测第二触发条件的发生,预留和委托程序110a、110b就移动到其中智能合约被去激活的操作312。在智能合约的去激活期间,预留和委托程序110a、110b可以通过移除委托来停止运行委托。结果,被委托或切换的任何设备或服务都复原回到其预委托设置。继续以上示例,预留和委托程序110a、110b检测到由服务提供者a提供的服务被完全恢复。结果,预留和委托程序110a、110b去激活允许服务提供者从服务提供者a切换到服务提供者b并切换回到服务提供者a的智能合约。这样,一旦智能合约被去激活,服务提供者a就恢复向用户提供服务。
61.在另一个示例中,用户可以出于工作目的而使用设备a。用户注意到设备a的电池要耗尽。用户提示预留和委托程序110a、110b第一触发条件已经发生。预留和委托程序110a、110b激活智能合约,并将服务从设备a委托给设备b。预留和委托程序110a、110b运行委托,直到它检测到第二触发条件。在这种情况下,第二触发条件可以是对设备a的电池充满电的检测。一旦检测到第二触发条件,预留和委托程序110a、110b就停止向设备b委托服务。结果,服务复原回到设备a。
62.应理解,图2-3仅提供了一个实施例的说明,而不隐含关于如何实现不同实施例的任何限制。可以基于设计和实现方式的要求对所描绘的实施例进行许多修改。
63.图4是根据本发明的说明性实施例的图1中所描绘的计算机的内部组件和外部组件的框图900。应理解,图4仅提供了一种实现方式的说明,而不隐含关于其中可以实现不同实施例的环境的任何限制。可以基于设计和实现方式的要求对所描绘的环境进行许多修改。
64.图1中所描绘的计算机可以代表能够执行机器可读程序指令的任何电子设备。计算机可以代表智能电话、计算机系统、pda或其他电子设备。计算系统、环境和/或配置的示例可包括但不限于个人计算机系统、服务器计算机系统、薄客户端、厚客户端、手持或膝上型设备、多处理器系统、基于微处理器的系统、网络pc、小型计算机系统、以及包括任何上述系统或设备的分布式云计算环境。
65.用户客户端计算机102和网络服务器112可以包括图4中所示的内部组件902a、b和外部组件904a、b的相应集合。内部组件902a、b的集合中的每一个包括在一个或多个总线912上的一个或多个处理器906、一个或多个计算机可读ram 908和一个或多个计算机可读rom 910、以及一个或多个操作系统914和一个或多个计算机可读有形存储设备916。客户端计算机102中的一个或多个操作系统914、软件程序108、和预留和委托程序110a以及网络服务器112中的预留和委托程序110b可以存储在一个或多个计算机可读有形存储设备916上,以由一个或多个处理器906经由一个或多个ram 908(其通常包括高速缓冲存储器)来执行。在图4中所示的实施例中,计算机可读有形存储设备916中的每一个是内部硬盘驱动器的磁盘存储设备。替代地,每个计算机可读有形存储设备916是半导体存储设备,诸如rom 910、eprom、闪速存储器或任何其他能够存储计算机程序和数字信息的计算机可读有形存储设备。
66.内部组件902a、b的每个集合还包括r/w驱动器或接口918,以从一个或多个便携式计算机可读有形存储设备920读取和向其写入,所述便携式计算机可读有形存储设备诸如cd-rom、dvd、记忆棒、磁带、磁盘、光盘或半导体存储设备。诸如软件程序108以及预留和委托程序110a、110b的软件程序可以存储在相应的便携式计算机可读有形存储设备920中的一个或多个上,经由相应的r/w驱动器或接口918读取,并且加载到相应的硬盘驱动器中。
67.内部组件902a、b的每个集合还可以包括网络适配器(或交换端口卡)或接口922,例如tcp/ip适配卡、无线wi-fi接口卡或3g或4g无线接口卡或其他有线或无线通信链路。客户端计算机102中的软件程序108以及预留和委托程序110a以及网络服务器计算机112中的预留和委托程序110b可以经由网络(例如,因特网、局域网或其他广域网)以及相应的网络适配器或接口922从外部计算机(例如,服务器)下载。从网络适配器(或交换端口适配器)或接口922,将客户端计算机102中的软件程序108和预留和委托程序110a以及网络服务器计
算机112中的预留和委托程序110b加载到相应的硬盘驱动器中。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。
68.外部组件904a、b的集合中的每一个可以包括计算机显示监视器924、键盘926和计算机鼠标928。外部组件904a、b还可以包括触摸屏、虚拟键盘、触摸板、指点设备和其他人机交互设备。内部组件902a、b的集合中的每一个还包括设备驱动器930,以连接到计算机显示监视器924、键盘926和计算机鼠标928。设备驱动器930、r/w驱动器或接口918以及网络适配器或接口922包括硬件和软件(存储在存储设备916和/或rom 910中)。
69.预先理解,尽管本公开包括关于云计算的详细描述,但是本文中记载的教导的实现方式不限于云计算环境。相反,本发明的实施例能够结合现在已知或以后开发的任何其他类型的计算环境来实现。
70.云计算是服务递送的模型,用于实现对可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务)的共享池的方便的按需网络访问,所述可配置计算资源可以以最小的管理努力或与服务的提供者的交互来快速提供和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
71.特征如下:
72.按需自助自助:云消费者可以单方面地自动地根据需要提供计算能力,诸如服务器时间和网络存储,而不需要与服务的提供者进行人工交互。
73.广泛的网络访问:能力在网络上可用,并且通过促进由异构的薄或厚客户端平台(例如,移动电话、膝上型计算机和pda)使用的标准机制来访问。
74.资源池化:提供者的计算资源被池化以使用多租户模型来服务多个消费者,其中不同的物理和虚拟资源根据需求被动态地分派和重新分派。存在位置无关的意义,因为消费者通常不控制或不知道所提供的资源的确切位置,但是能够以较高抽象级别(例如国家、州或数据中心)指定位置。
75.快速弹性:可以快速且弹性地(在一些情况下自动地)提供快速向外扩展的能力和快速向内扩展的能力。对于消费者,可用于提供的能力通常看起来不受限制,并且可以在任何时间以任何数量购买。
76.测量服务:云系统通过利用在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的一些抽象级别的计量能力来自动地控制和优化资源使用。可以监视、控制和报告资源使用,从而为所利用的服务的提供者和消费者两者提供透明性。
77.服务模型如下:
78.软件即服务(saas):提供给消费者的能力是使用在云基础设施上运行的提供者的应用。应用是通过诸如web浏览器(例如,基于web的电子邮件)等薄客户端接口从各种客户端设备可访问的。消费者不管理或控制包括网络、服务器、操作系统、存储、或甚至个别应用能力的底层云基础设施,可能的例外是有限的用户特定应用配置设置。
79.平台即服务(paas):提供给消费者的能力是将使用由提供者支持的编程语言和工具创建的消费者创建或获取的应用部署到云基础设施上。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但具有对部署的应用和可能的应用托管环境配置的控制。
80.作为服务的分析(aaas):提供给消费者的能力是使用基于web或基于云的网络
(即,基础设施)来访问分析平台。分析平台可以包括对分析软件资源的访问,或者可以包括对相关数据库、语料库、服务器、操作系统或存储装置的访问。消费者不管理或控制包括数据库、语料库、服务器、操作系统或存储的底层的基于web或基于云的基础设施,而是具有对所部署的应用以及可能的应用托管环境配置的控制。
81.基础设施即服务(iaas):提供给消费者的能力是提供处理、存储、网络和消费者能够部署和运行任意软件的其他基本计算资源,所述软件可以包括操作系统和应用。消费者不管理或控制底层云基础设施,但具有对操作系统、存储、部署的应用的控制,以及可能对选择的网络化组件(例如,主机防火墙)的有限控制。
82.部署模型如下:
83.私有云:云基础设施仅为组织操作。它可以由组织或第三方管理,并且可以存在于场内(on-premises)或场外(off-premises)。
84.社区云:云基础设施由若干组织共享,并且支持具有共享关注(例如,任务、安全要求、策略和合规性考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于场内或场外。
85.公有云:云基础设施可以用于一般公众或大型工业群,并且由销售云服务的组织拥有。
86.混合云:云基础设施是两个或更多个云(私有、社区或共有云)的组合,所述云保持唯一实体,但是通过使数据和应用能够移植的标准化或专有技术(例如,用于云之间的负载平衡的云突发)绑定在一起。
87.云计算环境是面向服务的,其焦点在于无状态、低耦合、模块性和语义互操作性。在云计算的核心是包括互连节点的网络的基础设施。
88.现在参考图5,描绘了说明性云计算环境1000。如图所示,云计算环境1000包括云消费者使用的本地计算设备可以与其通信的一个或多个云计算节点10,所述本地计算设备例如个人数字助理(pda)或蜂窝电话1000a、台式计算机1000b、膝上型计算机1000c和/或机动车计算机系统1000n。节点10可以彼此通信。它们可以被物理地或虚拟地分组(未示出)在一个或多个网络中,诸如如上文描述的私有云、社区云、公有云或混合云或其组合。这允许云计算环境1000提供基础设施、平台和/或软件作为服务,云消费者不需要为其维护本地计算设备上的资源。应当理解,图5中所示的计算设备1000a-n的类型仅旨在说明,并且计算节点10和云计算环境1000可以通过任何类型的网络和/或网络可寻址连接(例如,使用web浏览器)与任何类型的计算设备通信。
89.现在参考图6,示出了由云计算环境1000提供的功能抽象层1100的集合。应当预先理解,图6中所示的组件、层和功能仅旨在说明,并且本发明的实施例不限于此。如所描绘的,提供了以下层和对应的功能:
90.硬件和软件层1102包括硬件和软件组件。硬件组件的示例包括大型机1104;基于risc(精简指令集计算机)架构的服务器1106;服务器1108;刀片服务器1110;存储设备1112;以及网络和网络化组件1114。在一些实施例中,软件组件包括网络应用服务器软件1116和数据库软件1118。
91.虚拟化层1120提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器1122;虚拟存储器1124;虚拟网络1126,包括虚拟私有网络;虚拟应用和操作系统1128;以
及虚拟客户端1130。
92.在一个示例中,管理层1132可以提供下面描述的功能。资源供应1134提供用于在云计算环境内执行任务的计算资源和其他资源的动态采购。计量和定价1136提供了在云计算环境中利用资源时的成本跟踪,以及用于消耗这些资源的账单或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户1138为消费者和系统管理员提供对云计算环境的访问。服务级别管理1140提供云计算资源分配和管理,使得满足所需的服务级别。服务级别协议(sla)规划和履行1142提供对云计算资源的预布置和采购,其中根据sla预期未来需求。
93.工作负载层1144提供了可以利用云计算环境的功能的示例。可以从该层提供的工作负载和功能的示例包括:绘图和导航1146;软件开发和生命周期管理1148;虚拟教室教育递送1150;数据分析处理1152;事物处理1154;以及深度模型学习1156。聊天机器人(chatbot)生成程序110a、110b提供了在深度学习模型训练阶段期间使用出处数据来获得洞察的方式。
94.本发明可以是任何可能的技术细节集成水平的系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),所述计算机可读程序指令用于使处理器执行本发明的各方面。
95.计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪速存储器)、静态随机存取存储器(sram)、便携式光盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、诸如上面记录有指令的打孔卡或凹槽中的凸起结构的机械编码装置,以及上述的任何适当组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆的光脉冲)、或通过导线传输的电信号。
96.本文描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络,例如因特网、局域网、广域网和/或无线网络,下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
97.用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据,或者以一种或多种编程语言(包括面向对象的编程语言,例如smalltalk、c++等)和过程编程语言(诸如“c”编程语言或类似的编程语言)的任意组合编写的源代码或目标代码。计算机可读程序指令可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包,部分在用户的计算机上执行并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络(包括局域
网(lan)或广域网(wan))连接到用户的计算机,或者可以(例如,使用因特网服务提供者通过因特网)连接到外部计算机。在一些实施例中,为了执行本发明的各方面,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化。
98.在此参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图来描述本发明的各方面。将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。
99.这些计算机可读程序指令可以被提供给计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储介质中,其可以引导计算机、可编程数据处理装置和/或其他设备以特定方式工作,使得其中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。
100.计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
101.附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实现方式中,框中所注明的功能可不按图中所注明的次序发生。例如,连续示出的两个框实际上可以作为一个步骤来实现,同时、基本同时、以部分或全部时间重叠的方式执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统来实现。
102.已经出于说明的目的呈现了本发明的各种实施例的描述,但是其不旨在是穷尽的或限于所公开的实施例。在不背离所描述的实施例的范围的情况下,许多修改和变型对于本领域的普通技术人员将是显而易见的。选择本文所使用的术语以最好地解释实施例的原理、实际应用或对市场上存在的技术改进,或使本领域的其他普通技术人员能够理解本文所公开的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1