使用区块链切换移动服务提供商的制作方法

文档序号:19580587发布日期:2019-12-31 19:57阅读:210来源:国知局
使用区块链切换移动服务提供商的制作方法

本申请一般而言涉及移动通信,更特别地涉及使用区块链技术切换移动服务提供商。



背景技术:

在当今世界,大多数移动电话用户想要在他们改变移动服务提供商(sp)时保留他们自己的电话号码。传统上,号码可携带服务可以允许移动用户在保持相同电话号码的同时切换sp。但是,由于sp所使用的唯一移植代码(portingcode),在保持相同电话号码的同时切换sp可能花费大量时间和处理工作。移动用户可以探索并选择下一个sp。移动用户可能必须致电sp管理员并要求他们生成唯一的移植代码。可能需要诸如(一个或多个)移植形式之类的纸张工作以发起切换sp的过程。通常,移动用户必须与sp管理员交换若干个sms。另外,移动用户可能需要递交一些文件,包括护照尺寸照片和身份证明(即,驾驶执照、选民id卡等)。移动设备用户必须支付现有账单并向sp支付直到sp切换日期的全部付款。只有那时,在成功核实和批准后,新的sim卡才可以被发放给移动用户。取决于sp,该处理通常花费高达15个工作日。因此,切换sp的处理需要更高效。如本文所讨论的,传统上,在保持相同电话号码的同时切换sp的处理受到书面工作、电话呼叫、sms等的限制。因此,所需要的是用于高效切换sp的高效且稳健的一步式自动化处理。



技术实现要素:

本申请涉及使用区块链技术来切换移动服务提供商。在切换sp时针对移动号码可携带性使用区块链使得该处理显著更快、更高效且成本更低。根据示例性实施例,切换sp可以减少为自动化一步式处理。

一个示例实施例可以提供一种方法,该方法包括以下步骤中的一个或多个:由移动服务提供商从连接到当前移动服务提供商的移动设备接收移动号码可携带性请求;由移动服务提供商从由移动服务提供商和当前移动服务提供商可访问的区块链账本(ledger)中提取移动设备移植数据;由移动服务提供商核实提取的移动设备移植数据;响应于成功核实,由移动服务提供商向区块链账本发送更新当前移动服务提供商数据的请求;由移动服务提供商从区块链接收指示当前移动服务提供商与移动设备之间的连接断开的通知;由移动服务提供商移植移动设备号码;以及更新区块链账本中的移动设备移植数据。

另一个示例实施例可以提供一种包括处理器和存储器的系统,其中处理器被配置为执行以下中的一个或多个:从连接到当前移动服务提供商的移动设备接收移动号码可携带性请求;从由移动服务提供商和当前移动服务提供商可访问的区块链账本中提取移动设备移植数据;核实提取的移动设备移植数据;响应于成功核实,向区块链账本发送更新当前移动服务提供商数据的请求;以及从区块链接收指示当前移动服务提供商与移动设备之间的连接断开的通知;移植移动设备号码;以及更新区块链账本中的移动设备移植数据。

再一个示例实施例可以提供包括指令的非瞬态计算机可读介质,所述指令在由处理器读取时使得处理器执行以下中的一个或多个:从连接到当前移动服务提供商的移动设备接收移动号码可携带性请求;从由移动服务提供商和当前移动服务提供商可访问的区块链账本中提取移动设备移植数据;核实提取的移动设备移植数据;响应于成功核实,向区块链账本发送更新当前移动服务提供商数据的请求;以及从区块链接收指示当前移动服务提供商与移动设备之间的连接断开的通知;移植移动设备号码;以及更新区块链账本中的移动设备移植数据。

附图说明

图1图示了根据示例实施例的用于使用区块链切换移动服务提供商的网络图。

图2a图示了根据示例实施例的用于切换移动服务提供商的示例对等节点区块链体系架构配置。

图2b图示了根据示例实施例的示例对等节点区块链配置。

图3是图示根据示例实施例的许可的区块链网络的图。

图4a图示了根据示例实施例的使用区块链切换移动服务提供商的示例方法的流程图。

图4b图示了根据示例实施例的使用区块链切换移动服务提供商的示例方法的流程图。

图5a图示了根据示例实施例的被配置为根据本文描述的一个或多个操作对区块链执行各种操作的示例物理基础设施。

图5b图示了根据示例实施例的签约方和中介服务器之间的示例智能合约配置,该中介服务器被配置为对区块链强制执行智能合约条款。

图6图示了被配置为支持一个或多个示例实施例的示例计算机系统。

具体实施方式

容易理解的是,如本文各图中一般描述和图示的组件可以以各种各样不同的配置来布置和设计。因此,如附图中所示的方法、装置、非瞬态计算机可读介质和系统中的至少一个的实施例的以下详细描述并非旨在限制所要求保护的本申请的范围,而仅仅是代表所选择的实施例。

如贯穿本说明书描述的特征、结构或特性可以在一个或多个实施例中以任何合适的方式组合。例如,贯穿本说明书使用短语“示例实施例”、“一些实施例”或其它类似语言是指结合该实施例描述的特定特征、结构或特性可以被包括在至少一个实施例中的事实。因此,贯穿本说明书出现的短语“示例实施例”、“在一些实施例中”、“在其它实施例中”或其它类似语言不一定都指代相同的一组实施例,并且所描述的特征、结构或特性可以以任何合适的方式在一个或多个实施例中组合。

此外,虽然术语“消息”可能已经在实施例的描述中使用,但是该应用可以应用于许多类型的网络数据,诸如报文、帧、数据报等。术语“消息”还包括报文、帧、数据报及其任何等同物。此外,虽然在示例性实施例中可能描绘某些类型的消息和信令,但是它们不限于某种类型的消息,并且该应用不限于某种类型的信令。

示例实施例提供了方法、系统、非瞬态计算机可读介质、设备和/或网络,其使用区块链技术提供移动服务提供商的高效一步式切换。示例实施例提供了一种机制,以利用区块链来建立和启用按需移动号码可携带性并且用于在没有任何文档工作或任何手动工作的情况下通过单个步骤切换sp。

示例性实施例可以使用存储的记录交易。账本通常被定义为条目的账簿,其中交易被记录。分布式账本是被全部或部分复制到多个计算机的账本。加密分布式账本(cdl)可以至少具有以下属性中的一些属性:不可逆性(一旦交易被记录,它就不能被撤消)、可访问性(任何一方可以全部或部分地访问cdl)、按时间顺序排列并加时间戳(所有各方都知道何时交易被添加到账本中)、基于共识(仅当交易被批准时,通常被网络上各方一致批准时,交易才被添加)、可核实性(所有交易都可以以密码的方式被核实)。区块链是cdl的示例。虽然本文的描述和各图是根据区块链来描述的,但是本申请同样适用于任何cdl。

分布式账本是不断增长的记录列表,其通常应用加密技术,诸如存储与其它区块相关的加密散列(hash)。区块链是分布式账本的一个常见实例并且可以用作公共账本来存储信息。虽然区块链主要用于金融交易,但是可以存储与商品和服务(即,产品、包裹、状态等)相关的各种信息。分散式方案为分散式网络提供权威(authority)和信任,并使其节点能够在公共“区块”上连续且顺序地记录这些节点的交易,从而创建被称为区块链的唯一“链”。经由散列码的密码术(cryptography)用于保护交易源的认证并去除中间的中介。区块链是分布式数据库,它在区块链区块中维护不断增长的记录列表,这些区块由于其不可变属性而受到保护以防止篡改和修订。每个区块包含时间戳和到前一个区块的链接。区块链可以用于保持、跟踪、传输和核实信息。由于区块链是分布式系统,因此在向区块链账本添加交易之前,所有对等体(peer)都需要达成共识状态。

区块链是一种分布式系统,其包括多个相互通信的节点。区块链操作称为链码(chaincode)的程序(例如,智能合约等)、保持状态和账本数据,并执行交易。一些交易是对链码调用的操作。一般而言,区块链交易通常必须由某些区块链成员“背书(endorse)”,并且只有背书的交易可以被提交给区块链并对区块链的状态产生影响。其它未经背书的交易将被忽视。可能存在一个或多个用于管理功能和参数的特殊链码,其被统称为系统链码。

节点是区块链系统的通信实体。“节点”可以在不同类型的多个节点可以在同一物理服务器上运行的意义上执行逻辑功能。节点在信任域中被分组并与以各种方式控制它们的逻辑实体相关联。节点可以包括不同类型,诸如客户端或向背书者(例如对等体)递交交易调用并且将交易提案广播到排序服务(例如排序节点)的递交客户端节点。另一种类型的节点是对等节点,其可以接收客户端递交的交易、提交交易并维护区块链交易的账本的状态和副本。对等体也可以具有背书者的角色,但是这不是必需的。排序服务节点或排序者(orderer)是为所有节点运行通信服务的节点,并且其实现递送保证,诸如在提交交易和修改区块链的世界状态(这是通常包括控制和设置信息的初始区块链交易的另一个名称)时向系统中的每个对等节点进行广播。

账本是区块链的所有状态转换的有序、防篡改记录。状态转换可以由参与方(例如客户端节点、排序节点、背书节点、对等节点等)递交的链码调用(即交易)产生。交易可以导致一组资产键值对被提交给账本作为一个或多个操作数,诸如创建、更新、删除等。账本包括用于在区块中存储不可变的、有序记录的区块链(也被称为链)。账本还包括状态数据库,该状态数据库维护区块链的当前状态。每个通道通常有一个账本。每个对等节点为其作为成员的每个通道维护账本的副本。

链是交易日志,其被结构化为散列链接的区块,并且每个区块包含n个交易的序列,其中n等于或大于1。区块头部包括区块的交易的散列,以及前一区块的头部的散列。以这种方式,对账本的所有交易可以被排序并以加密方式链接在一起。因此,不可能在不破坏散列链接的情况下篡改账本数据。最近添加的区块链区块的散列表示链上在它之前已到来的每个交易,从而可以确保所有对等节点处于一致且可信的状态。链可以被存储在对等节点文件系统(即本地、附加的存储装置,云等)上,从而高效地支持区块链工作负载的仅附加(append-only)性质。

不可变账本的当前状态表示链交易日志中所包含的所有键的最新值。因为当前状态表示通道已知的最新键值,因此它有时被称为世界状态。链码调用针对账本的当前状态数据执行交易。为了使这些链码交互高效,可以将键的最新值存储在状态数据库中。状态数据库可以只是对链的交易日志的索引视图,因此它可以随时由链重新生成。在对等节点启动时以及在交易被接受之前,可以自动恢复(或在需要时生成)状态数据库。

示例实施例包括以下属性中的一个或多个:不可变/责任性(区块链账本)、智能合约(业务验证以智能合约编写并且针对新的和当前服务提供商之间的账本数据进行验证)。智能合约也管理资产的状态以完成生命周期、隐私/隐藏(数据隐私通过访问控制列表和/或映射用户/服务提供商组织/角色或优先级来实现)、共识(业务和其它共识通过智能合约来实现)、背书(多个组织和对等体可以在区块链网络中加入,其中关键组织作为背书的对等体以验证智能合约执行结果、读集合和写集合),以及可访问性(本方案可以用移动应用、基于浏览器的web应用等构建,并与服务提供商服务器、后台系统集成,作为客户端应用等)。

示例实施例涉及方法、设备、网络、非瞬态计算机可读介质和/或系统,其支持用于移动服务提供商的自动化切换的区块链技术方案。这种方案的一些益处包括使用区块链将信任、可见性和起源用于移动提供商自动化切换处理,以实现更短的处理周期并提高处理移动号码可携带性请求的效率。区块链账本数据是不可变的,并且为切换sp方案提供可追溯性和起源。另外,使用区块链提供了安全性并建立信任。移动服务协议验证被编写在智能合约中,智能合约针对新sp和当前sp之间的账本数据对其进行验证。智能合约还管理资产的状态以完成生命周期。示例区块链是权限分散的。因此,每个sp可以具有其自己的账本副本来访问。此外,多个组织(和对等体)可能会在区块链网络上加入。关键组织可以用作背书对等体来验证智能合约执行结果、读集合和写集合。示例性区块链可以与移动应用集成,基于浏览器的应用与现有移动服务提供商集成作为客户端应用。

区块链与传统数据库的不同之处在于区块链不是中央存储,而是分散的、不可变的和安全的存储,其中节点必须共享存储中的记录的变化。区块链中固有的并且有助于实现区块链的一些属性包括但不限于不可变的账本、智能合约、安全性、隐私、分散化、共识、背书、可访问性等,这些将在本文中进一步描述。根据各个方面,用于使用区块链自动化切换移动服务提供商的系统由于区块链固有的且独特的不可变的责任性、安全性、隐私、许可的分散化、智能合约的可用性、背书和可访问性而实现。特别地,区块链账本数据是不可变的,并且为切换sp方案提供了可追溯性和起源。另外,在切换移动sp时使用区块链提供了安全性并建立信任。移动服务协议验证被编写在智能合约中,智能合约针对新sp和当前sp之间的账本数据对其进行验证。智能合约还管理资产的状态以完成生命周期。示例区块链是权限分散的。因此,每个sp可以具有其自己的账本副本来访问。多个组织(和对等体)可能会在区块链网络上加入。关键组织可以用作背书对等体来验证智能合约执行结果、读集合和写集合。换句话说,区块链固有特征提供了移动sp切换处理的高效自动化。

示例实施例的益处之一是通过提供对诸如分布式账本、对等体、加密技术、msp、事件处理等的能力的访问来改进计算系统的功能。另外,区块链使得能够创建商业网络并且让移动sp加入以进行参与。因此,区块链不仅仅是数据库。区块链具有创建sp的业务网络和使组织(例如,sp)在场内(on-board)/场外(off-board)的能力,从而以智能合约的形式协作和执行移动服务处理。

通过本文描述的区块链方案,计算系统可以通过提供移动sp的自动化切换而无需任何手动处理来执行新颖功能。移植设备移植数据存储(发布或查询数据)由区块链内部数据处理引擎管理,该引擎为切换sp提供新颖的方案。

示例实施例提供了优于传统数据库的许多益处。例如,各种优势通过对区块链固有的和独特的不变的责任性、安全性、隐私、许可的分散化、智能合约的可用性、背书和可访问性来实现。

同时,传统数据库不能用于实现示例实施例,因为它不会将所有各方(即,sp)带到业务网络上,它不会创建可信的协作并且不通过智能合约来提供业务验证。

同时,如果使用传统数据库来实现示例实施例,则示例实施例将遭受不必要的缺点,诸如搜索能力、缺乏安全性和低速交易。因此,示例实施例提供了针对移动用户切换sp同时保持相同电话号码的技术/领域中的问题的特定方案。

图1图示了根据示例实施例的使用区块链来切换移动服务提供商的系统。参考图1,示例网络100包括连接到当前移动服务提供商(sp)104的移动设备106。sp104连接到区块链130,移动设备106的移动可携带性数据在区块链130中存储以及更新。虽然该示例仅示出了一个移动设备,但是多个移动设备可以连接到当前移动服务提供商104。移动服务提供商102还可以连接到区块链130,用于访问移动设备可携带性数据。移动设备106可以向移动sp104发送移动号码可携带性(mnp)请求,以便从当前移动sp104切换到该移动sp。

应该理解的是,sp104可以包括附加组件,并且可以在不脱离本文公开的sp104的范围的情况下移除和/或修改本文描述的一些组件。sp104可以是计算设备或服务器计算机等,并且可以包括处理器110,其可以是基于半导体的微处理器、中央处理单元(cpu)、专用集成电路(asic)、现场可编程门阵列(fpga)和/或其它硬件设备。虽然描绘了单个处理器110,但是应该理解的是,sp104可以包括多个处理器、多个核心等,而没有脱离sp104系统的范围。

sp104还可以包括非瞬态计算机可读介质112,其上可以存储有可由处理器110执行的机器可读指令。机器可读指令的示例如114-124所示并且在下面进一步讨论。非瞬态计算机可读介质112的示例可以包括包含或存储有可执行指令的电子、磁、光或其它物理存储设备。例如,非瞬态计算机可读介质112可以是随机存取存储器(ram)、电可擦除可编程只读存储器(eeprom)、硬盘、光盘或其它类型的存储设备。

处理器110可以提取、解码和执行机器可读指令114以从连接到当前移动sp104的移动设备106接收移动号码可携带性请求。换句话说,移动设备106的用户可能想要在不改变电话号码的情况下从当前移动sp104切换到移动sp102。处理器110可以提取、解码和执行机器可读指令116以从由移动sp104和当前移动sp102可访问的区块链130账本中提取移动设备106移植数据。处理器110可以提取、解码和执行机器可读指令118以核实所提取的移动设备移植数据。可以通过使用唯一标识符从国家安全网络调用服务来完成对从区块链130提取的信息的核实。在成功核实之后可以从移动设备106用户获得确认。可以通过与区块链130链接的用户界面获得确认。处理器110可以提取、解码和执行机器可读指令120,以响应于成功核实,向区块链130账本发送请求以更新当前移动sp104数据。处理器110可以提取、解码和执行机器可读指令122以从区块链130接收指示当前移动sp104与移动设备106之间的连接断开的通知。处理器110可以提取、解码和执行机器可读指令124以移植移动设备号码并在区块链130账本中更新移动设备移植数据。

图2a图示了根据示例实施例的区块链体系架构配置200。参考图2a,区块链体系架构200可以包括某些区块链元素,例如一组区块链节点202。区块链节点202可以包括一个或多个节点204-210(这些节点仅通过示例绘出)。这些节点参与许多活动,诸如区块链交易添加和验证处理(共识)。区块链节点204-210中的一个或多个可以背书交易并且可以为体系架构200中的所有区块链节点提供排序服务。区块链节点可以发起区块链认证并寻求写入存储在区块链层216中的区块链不可变账本,其副本也可以存储在基础物理基础设施214上。区块链配置可以包括一个或多个应用224,该一个或多个应用224链接到应用编程接口(api)222以访问和执行所存储的程序/应用代码220(例如链码、智能合约等),其可以根据由参与者寻求的定制配置创建并且可以维护它们自己的状态、控制它们自己的资产以及接收外部信息。这可以作为交易部署,并经由附加到分布式账本而安装在所有区块链节点204-210上。

区块链基础或平台212可以包括区块链数据、服务(例如加密信任服务、虚拟执行环境等)以及可以用于接收和存储新交易并且向正在寻求访问数据条目的审计者提供访问的基础物理计算机基础设施的各种层。区块链层216可以暴露接口,该接口提供对处理程序代码和接合物理基础设施214所必需的虚拟执行环境的访问。加密信任服务218可以用于核实诸如资产交换交易之类的交易并使信息私有。

图2a的区块链体系架构配置可以经由区块链平台212暴露的一个或多个接口以及区块链平台212提供的服务来处理和执行程序/应用代码220。代码220可以控制区块链资产。例如,代码220可以存储和传输数据,并且可以由节点204-210以智能合约和相关联链码的形式执行,其中条件或其它代码元素受其执行的影响。作为非限制性示例,可以创建智能合约来执行受到改变、更新等影响的提醒、更新和/或其它通知。智能合约本身可以用于识别与授权和访问要求以及账本的使用相关联的规则。例如,移动设备可携带性信息226可以由区块链层216中包括的一个或多个处理实体(例如虚拟机)处理。更新后的移动设备可携带性结果228可以包括到新移动服务提供商的连接和服务。物理基础设施214可以用于检索本文描述的任何数据或信息。

在链码内,可以经由高级应用和编程语言创建智能合约,然后将其写入到区块链中的区块。智能合约可以包括用区块链(例如区块链对等体的分布式网络)注册、存储和/或复制的可执行代码。交易是智能合约代码的执行,智能合约代码可以响应于与智能合约相关联的条件被满足而执行。智能合约的执行可以触发对数字区块链账本的状态的(一个或多个)可信任的修改。由智能合约执行引起的对区块链账本的(一个或多个)修改可以通过一个或多个共识协议在区块链对等体的整个分布式网络中自动复制。

智能合约可以以键值对的格式将数据写入到区块链。此外,智能合约代码可以读取存储在区块链中的值并在应用操作中使用它们。智能合约代码可以将各种逻辑运算的输出写入到区块链中。代码可以用于在虚拟机或其它计算平台中创建临时数据结构。写入到区块链的数据可以是公共的和/或可以被加密并维持为私有。由智能合约使用/生成的临时数据由供应的执行环境保持在存储器中,然后一旦区块链所需的数据被识别出,该临时数据就被删除。

链码可以包括具有附加特征的智能合约的代码解释。如本文所述,链码可以是部署在计算网络上的程序代码,其中它在共识处理期间由链验证器一起执行和验证。链码接收散列并从区块链中检索与通过使用先前存储的特征提取器创建的数据模板相关联的散列。如果散列标识符的散列和从存储的标识符模板数据创建的散列匹配,则链码将授权密钥发送到所请求的服务。链码可以写入到与密码细节相关联的区块链数据。在图2a中,移动设备和sp信息的更新可以被实现为提交的区块链交易。框228处的一个功能可以是向新移动服务提供商提供对移动设备数据的访问,该访问可以被提供给可以托管移动服务提供商的节点204-210中的一个或多个。

图2b图示了根据示例实施例的区块链的节点之间的交易流程250的示例。参考图2b,交易流程可以包括由应用客户端节点260发送给背书对等节点281的交易提案291。背书对等体281可以核实客户端签名并执行发起交易的链码函数。输出可以包括链码结果、在链码(读集合)中读取的键/值版本集合,以及用链码(写集合)写入的键/值集合。如果被批准,则提案响应292连同背书签名一起被发送回客户端260。客户端260将背书组装到交易载荷293中并将其广播到排序服务节点284。然后,排序服务节点284将排序后的交易作为区块递送到通道上的所有对等体281-283。在提交到区块链之前,每个对等体281-283可以验证交易。例如,对等体可以检查背书策略以确保指定的对等体的正确分配已经对结果进行签名并且针对交易载荷293对签名进行了认证。

再次参考图2b,客户端节点260通过构造并向作为背书者的对等节点281发送请求来发起交易291。客户端260可以包括利用所支持的软件开发工具包(sdk)(诸如node、java、python等)的应用,其利用可用的api来生成交易提案。提案是调用链码函数使得可以将数据读取和/或写入到账本(即为资产写入新的键值对)的请求。sdk可以用作填充程序(shim)以将交易提案打包成具有正确体系架构的格式(例如,通过远程过程调用(rpc)的协议缓冲区)并且取得客户端的密码凭证来为交易提案产生唯一签名。

作为响应,背书对等节点281可以核实(a)交易提案是良好形成的,(b)过去尚未递交过该交易(重放-攻击保护),(c)签名有效,以及(d)递交者(在该示例中为客户端260)被正确授权在该通道上执行所提出的操作。背书对等节点281可以将交易提案输入作为调用的链码函数的参数。然后针对当前状态数据库执行链码以产生包括响应值、读集合和写集合的交易结果。但是,此时没有对账本进行更新。在292中,将该值集合与背书对等节点281的签名一起作为提案响应292传递回客户端260的sdk,该sdk解析载荷以供应用消费。

作为响应,客户端260的应用检查/核实背书对等体签名并比较提案响应以确定提案响应是否相同。如果链码仅查询账本,则应用将检查查询响应并且通常不会将交易递交给排序节点服务284。如果客户端应用打算将交易递交给排序节点服务284以更新账本,则应用在递交之前确定是否已经满足指定的背书策略(即,是否交易所需的所有对等节点都背书该交易)。这里,客户端260可以仅包括多方之一以进行交易。在这种情况下,每个客户端可以拥有其自己的背书节点,并且每个背书节点都需要背书交易。该体系架构使得即使应用选择不检查响应或以其它方式转发未背书的交易,背书策略仍将由对等体强制执行并在提交验证阶段被保持。

在成功检查之后,在步骤293中,客户端260将背书组装到交易中,并在交易消息内将交易提案和响应广播到排序节点284。交易可以包含读/写集合、背书对等体签名和通道id。排序节点284不需要为了执行其操作而检查交易的整个内容,而是排序节点284可以仅从网络中的所有通道接收交易、按时间顺序按通道将它们排序,并创建每个通道的交易的区块。

交易的区块从排序节点284递送到通道上的所有对等节点281-283。区块内的交易294被验证以确保满足任何背书策略并确保读集合变量的账本状态没有变化,因为读集合是由交易执行生成的。区块中的交易被标记为有效或无效。此外,在步骤295中,每个对等节点281-283将区块附加到通道的链,并且对于每个有效交易,将写集合提交给当前状态数据库。发出事件以向客户端应用通知交易(调用)已不可变地附加到链,以及通知交易是否被验证或使其无效。

图3图示了许可的区块链网络300的示例,区块链网络300具有分布式、分散的对等体系架构,以及管理用户角色和许可的证书机构318。在该示例中,区块链用户302可以向许可的区块链网络310递交交易。在该示例中,交易可以是部署、调用或查询,并且可以通过利用sdk的客户端侧应用、直接通过restapi等来发出。可信的商业网络可以提供对监管者系统314的访问,监管者系统314诸如审计者(例如,美国股票市场中的证券交易委员会)。同时,节点308的区块链网络运营者系统管理成员许可,诸如将监管者系统310登记为“审计者”并将区块链用户302登记为“客户端”。审计者可以仅限于查询账本,而客户端可以被授权部署、调用和查询某些类型的链码。

区块链开发者系统316编写链码和客户端侧应用。区块链开发者系统316可以通过rest接口将链码直接部署到网络。为了在链码中包括来自传统数据源330的凭证,开发者系统316可以使用带外(out-of-band)连接来访问数据。在该示例中,区块链用户302通过对等节点312连接到网络。在进行任何交易之前,对等节点312从证书机构318检索用户的登记和交易证书。在一些情况下,区块链用户必须拥有这些数字证书以便在许可的区块链网络310上进行交易。同时,可能需要尝试驱动链码的用户在传统数据源330上核实其凭证。为了确认用户的授权,链码可以通过传统的处理平台320使用与该数据的带外连接。

图4a图示了根据示例实施例的使用区块链切换移动服务提供商的示例方法的流程图400。参考图4a,方法400可以包括下面描述的步骤中的一个或多个步骤。

图4a图示了由sp102(参见图1)执行的移动sp切换方法的流程图。应该理解的是,图4中描绘的方法400可以包括附加操作,并且可以去除和/或修改其中描述的一些操作而不脱离方法400的范围。出于图示的目的,也参考图1中描绘的特征对方法400进行描述。具体而言,移动sp102的处理器110可以执行方法400中包括的一些或全部操作。

参考图4,在框412处,处理器110可以从连接到当前移动服务提供商的移动设备接收移动号码可携带性请求。在框414处,处理器110可以从由移动服务提供商和当前移动服务提供商可访问的区块链账本中提取移动设备移植数据。在框416处,处理器110可以核实提取的移动设备移植数据。在框418处,处理器110可以响应于成功核实而向区块链账本发送更新当前移动服务提供商数据的请求。在框420处,处理器110可以从区块链接收指示当前移动服务提供商与移动设备之间的连接断开的通知。在框422处,处理器110可以移植移动设备号码并更新区块链账本中的移动设备移植数据。根据示例性实施例,更新可以被实现为在当前sp和新sp之间建立的智能合约。在成功核实和确认之后,可以触发将执行智能合约并在区块链账本上进行更新的事件。

图4b图示了根据示例实施例的使用区块链切换移动sp的示例方法的流程图450。参考图4b,方法450也可以包括以下步骤中的一个或多个步骤。区块链事件管理器向当前移动服务提供商发送触发以发起与移动设备断开连接。该事件可以由区块链侧的事件管理器触发,以在成功核实和批准之后开始智能合约执行。移动sp从区块链账本中检索欠当前移动提供商的移动设备待付服务金额。移动sp通过移动设备用户确认移动设备待付服务金额。响应于移动设备待付服务金额的确认,移动sp与当前移动服务提供商清算移动设备待付服务金额。移动sp在区块链账本中更新已清算的移动设备待付服务金额。移动sp为移动设备用户生成包括清算的移动设备待付服务金额的账单。移动sp向移动设备发放sim卡。

图5a图示了根据示例实施例的被配置为根据一个或多个示例操作方法对区块链执行各种操作的示例物理基础设施。参考图5a,示例配置500包括具有区块链520和智能合约530的物理基础设施510,其可以执行任何示例实施例中包括的任何操作步骤512。步骤/操作512可以包括在一个或多个流程图和/或逻辑图中描述或描绘的一个或多个步骤。这些步骤可以表示写入驻留在计算机系统配置的物理基础设施510上的一个或多个智能合约530和/或区块链520或从中读取的输出或写入信息。可以从执行的智能合约530和/或区块链520输出数据。物理基础设施510可以包括一个或多个计算机、服务器、处理器、存储器和/或无线通信设备。

图5b图示了根据示例实施例的签约方和中介服务器之间的示例智能合约配置,该中介服务器被配置为对区块链强制执行智能合约条款。参考图5b,配置550可以表示通信会话、资产转移会话或由智能合约530驱动的处理或过程,智能合约530明确地识别一个或多个用户设备552和/或556。智能合约执行的执行、操作和结果可以由服务器554管理。智能合约530的内容可能需要由作为智能合约交易的各方的实体552和556中的一个或多个的数字签名。智能合约执行的结果可以作为区块链交易被写入到区块链。

以上实施例可以用硬件、由处理器执行的计算机程序、固件或以上的组合来实现。计算机程序可以被实施在计算机可读介质(诸如存储介质)上。例如,计算机程序可以驻留在随机存取存储器(“ram”)、闪存、只读存储器(“rom”)、可擦除可编程只读存储器(“eprom”)、电可擦除可编程只读存储器(“eeprom”)、寄存器、硬盘、可移动盘、光盘只读存储器(“cd-rom”)或本领域已知的任何其它形式的存储介质中。

示例性存储介质可以耦合到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。在替代方案中,存储介质可以是处理器的组成部分。处理器和存储介质可以驻留在专用集成电路(“asic”)中。在替代方案中,处理器和存储介质可以作为分立组件驻留。例如,图6图示了示例计算机系统体系架构600,其可以表示或集成在任何上述组件等中。

图6不旨在对本文描述的申请的实施例的使用或功能的范围提出任何限制。总之,计算节点600能够被实现和/或执行上文阐述的任何功能。

在计算节点600中,存在计算机系统/服务器602,其可与许多其它通用或专用计算系统环境或配置一起操作。可适于与计算机系统/服务器602一起使用的众所周知的计算系统、环境和/或配置的示例包括但不限于:个人计算机系统、服务器计算机系统、瘦客户端、厚客户端、手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络pc、小型计算机系统、大型计算机系统以及包括上述系统或设备中的任何一种的分布式云计算环境等。

计算机系统/服务器602可以在由计算机系统执行的诸如程序模块的计算机系统可执行指令的一般语境下描述。通常,程序模块可以包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算机系统/服务器602可以在其中任务由通过通信网络链接的远程处理设备执行的分布式云计算环境中实践。在分布式云计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机系统存储介质中。

如图6所示,云计算节点600中的计算机系统/服务器602以通用计算设备的形式表现。计算机系统/服务器602的组件可以包括但不限于:一个或者多个处理器或者处理单元604,系统存储器606,连接不同系统组件(包括系统存储器606和处理单元604)的总线18。

总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

计算机系统/服务器602典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器602访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

在一个实施例中,系统存储器606实施其它附图的流程图。系统存储器606可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)610和/或高速缓存存储器612。计算机系统/服务器602还可以包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统614可以用于读写不可移动的、非易失性磁介质(图中未显示,通常称为“硬盘驱动器”)。虽然图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器606可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块618的程序/实用工具616,可以存储在例如存储器606中,这样的程序模块618包括——但不限于——操作系统、一个或者多个应用、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块618通常执行本发明所描述的各实施例中的功能和/或方法。

如本领域技术人员将认识到的,本申请的各方面可以被实施为系统、方法或计算机程序产品。因此,本申请的各方面可以采取完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)或组合通常在本文全部可以被称为“电路”、“模块”或“系统”的软件和硬件方面的实施例的形式。此外,本申请的各方面可以采取实施在一个或多个计算机可读介质中的计算机程序产品的形式,该一个或多个计算机可读介质具有实施在其上的计算机可读程序代码。

计算机系统/服务器602也可以与一个或多个外部设备620(例如键盘、指向设备、显示器622等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器602交互的设备通信,和/或与使得该计算机系统/服务器602能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口624进行。并且,计算机系统/服务器602还可以通过网络适配器626与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如互联网)通信。如图所示,网络适配器626通过总线与计算机系统/服务器602的其它模块通信。应当明白,虽然图中未示出,可以结合计算机系统/服务器602使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

虽然在附图中已图示了并且在前面的详细描述中描述了系统、方法和非瞬态计算机可读介质中的一个或多个的示例性实施例,但是应该理解的是,本申请不限于所公开的实施例,而是能够进行如以下权利要求所阐述和定义的许多重新布置、修改和替换。例如,各图的系统的能力可以由本文描述的模块或组件中的一个或多个或在分布式体系架构中执行,并且可以包括发射器、接收器或两者的对。例如,由各个模块执行的全部或部分功能可以由这些模块中的一个或多个模块执行。此外,本文描述的功能可以在不同时间并且与模块或组件内部或外部的各种事件相关地执行。此外,在各个模块之间发送的信息可以经由数据网络、互联网、语音网络、互联网协议网络、无线设备、有线设备中的至少一个和/或经由多个协议在模块之间发送。而且,由任何模块发送或接收的消息可以直接和/或经由一个或多个其它模块发送或接收。

本领域技术人员将认识到的是,“系统”可以被实施为个人计算机、服务器、控制台、个人数字助理(pda)、蜂窝电话、平板计算设备、智能电话或任何其它合适的计算设备或设备的组合。将上述功能呈现为由“系统”执行并不旨在以任何方式限制本申请的范围,而是旨在提供许多实施例的一个示例。实际上,本文公开的方法、系统和装置可以以与计算技术一致的本地化和分布式形式实现。

应当注意的是,本说明书中描述的一些系统特征已经作为模块呈现,以便更特别地强调它们的实现独立性。例如,模块可以被实现为包括定制的超大规模集成(vlsi)电路或门阵列的硬件电路、诸如逻辑芯片的现成半导体、晶体管或其它分立组件。模块也可以用诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备、图形处理单元等的可编程硬件设备实现。

模块也可以至少部分地用软件实现,以便由各种类型的处理器执行。识别出的可执行代码的单元可以例如包括可以例如被组织为对象、过程或函数的计算机指令的一个或多个物理或逻辑块。但是,识别出的模块的可执行文件不需要物理地位于一起,而是可以包括存储在不同位置的不同指令,当这些指令逻辑上被连接在一起时,包括模块并实现模块的所述目的。此外,模块可以存储在计算机可读介质上,该计算机可读介质可以是例如硬盘驱动器、闪存设备、随机存取存储器(ram)、带或用于存储数据的任何其它此类介质。

实际上,可执行代码的模块可以是单个指令或许多指令,并且甚至可以分布在几个不同的代码段上、不同的程序中以及跨几个存储器设备。类似地,操作数据可以在本文中在模块内被识别和示出,并且可以以任何合适的形式被实施并且被组织在任何合适类型的数据结构内。操作数据可以作为单个数据集收集,或者可以分布在不同位置上,包括分布在不同存储设备上,并且可以至少部分地仅作为电子信号存在于系统或网络上。

容易理解的是,如本文各图中一般描述和图示的,本申请的组件可以以各种各样不同的配置来布置和设计。因此,实施例的详细描述不旨在限制所要求保护的本申请的范围,而仅仅代表本申请的所选择的实施例。

本领域普通技术人员将容易理解的是,上述内容可以以不同顺序的步骤来实践,和/或以与所公开的配置不同的配置中的硬件元件来实践。因此,虽然已经基于这些优选实施例描述了本申请,但是对于本领域技术人员来说显而易见的是,某些修改、变化和替代构造将是显而易见的。

虽然已经描述了本申请的优选实施例,但是应该理解的是,所描述的实施例仅仅是说明性的,并且当考虑整个范围的等同物和修改(例如,协议、硬件设备、软件平台等)时,本申请的范围仅由所附权利要求限定。

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