ASIK:区块链的模块化接口的制作方法
- 国知局
- 2025-01-17 13:08:27
本技术涉及通过提供与链码上的业务逻辑同步的应用编程接口(api)的集合来为业务需求提供通用解决方案的区块链的模块化接口,并且特别地涉及专用集成内核(asik)。
背景技术:
1、区块链在公众心目中与加密货币密切相关联,加密货币的使用是2009年发明的。然而,点对点货币的创建也是对用于其他目的分布式计算的全新方法的发明。正在探索各种用途,以利用类似保证的数据可用性、不受集中控制或加密防篡改的特征。
2、目前围绕区块链采用的能量使人联想到因特网的早期采用。存在再体验或避免在应用和系统成熟时拖累应用和系统的关于逻辑管理的相同错误的可能性。类似于早期的网站和应用,区块链的加密货币使用以相对简单的数据结构和用于管理所述数据结构的硬编码的业务逻辑为特征。然而,随后的“智能合约”的发明为任意复杂的规则和数据打开了大门。
3、类似供应链物流的企业用例正在将信息和逻辑放在区块链上,在量方面与传统解决方案相媲美,但是不具有标准化数据管理工具。随着每个程序员在应用代码库中设计他/她自己的逻辑集,结果再次是逻辑与编写该逻辑的程序(智能合约)紧密耦合。
4、注意,并非区块链的每个特征都需要在企业应用中使用。常见情况包括使用区块链平台作为用于实现类似加密防篡改和数据复制的特征的便捷方式。企业还可以使用宽松的共识规则或集中式前端来实施在其完全控制下的区块链网络,可能作为未来趋向更分布式应用的第一步。另外,建立区块链网络的具有高的信任级别的财团连同针对支持人员的严格的智能合约实施可以允许管理员和内部审核员直接根据其自己的权限来更新区块链数据。
5、存储在智能合约中的事务数据和决策在应用中具有更大的价值。存储在区块链中的事务数据和节点功能可以随后用于其他功能或逻辑,而不受共识的控制,从而使操作快速、高效且可靠。唯一需要的特征是访问以使用存储在区块链上的数据。存储在区块链上的数据可以由区块链内或区块链外的应用、或节点功能或系统高效地读取和处理,其目的超出了初始智能合约程序员的设想。
6、考虑到产品开发的动态性质,专注于单边解决方案的应用正在过时。对于许多企业来说,暂停和升级这些应用的成本可能太大了。频繁的维护期不仅会导致性能不佳,还会增加费用。逻辑和产品蓝图中的变化通常会改变产品的外观和感觉,最终影响用户体验。从诸如区块链的新兴技术开发产品尤其繁琐,并且可能需要大量资源。分布式账本技术平台提供严格的数据复制、规则实施、以及不变性和可审核性,但通常需要专门的技能来编程和操作。
技术实现思路
1、本文中描述的系统和方法通过提供将客户端应用与管理区块链的区块链平台对接的专用集成内核(asik)来解决本领域的需求。asik包括应用编程接口(api)层,该应用编程接口(api)层从客户端应用接收在区块链上执行事务的请求。api层格式化与请求相关联的数据。asik还包括服务层,该服务层接收与请求相关联的至少一个命令和格式化数据,识别请求的类型,并且基于请求的类型,转发至少一个命令和格式化数据以在区块链上执行,并且将至少一个命令和格式化数据在区块链上的处理结果返回给客户端应用。服务层还描述了根据专用集成内核的预定用例(例如,业务服务)要与区块链平台交互的预配置特征和功能。asik还包括链码,该链码通过将至少一个命令转换成根据针对预定用例的预配置特征和功能可以在区块链平台上执行的至少一个事务、以及通过将区块链平台上的至少一个事务和格式化数据的执行结果返回给服务层,来管理针对预定用例的要与区块链平台交互的预配置特征和功能的数据操作。
2、在示例配置中,api层公开了api,客户端应用使用该api来访问根据专用集成内核的预定用例要与区块链平台交互的预配置特征和功能。api层还可以向客户端应用提供负载平衡的具象状态传输(rest)api,其中rest api适于与区块链平台交互。api层还可以验证来自客户端应用的请求,验证在来自客户端应用的请求中接收到的用户细节,检查用户执行来自客户端应用的请求的许可,准备请求以提交到区块链平台,以及从区块链平台向客户端应用返回响应。
3、在其他示例配置中,api层、服务层和链码可以适于支持多租户框架,由此多个客户端应用可以在区块链平台上创建和管理数据。api层、服务层和链码还可以适于支持包括平台管理员、租户和核心asik参与者的三种角色。平台管理员可以负责登记客户端应用。租户可以具有id和分配给它的资源,可以使用所述id和分配给它的资源对格式化数据执行创建、读取、更新和删除操作。核心asik参与者可以具有他们自己的id,其用于向api层发起请求。还可以为每个租户提供数据库,由此每个租户在其自己的数据库中执行操作。
4、在另外的示例配置中,服务层可以通过概述语义和语法以及至少一个接口来描述预配置特征和功能,至少一个命令和格式化数据通过至少一个接口针对专用集成内核的预定用例与区块链平台交互。服务层还可以接受来自api层的输入,并通过调用链码和状态数据库将输入转换成动作。
5、在另外的示例配置中,链码可以访问区块链平台的区块链账本和智能合约以查询或更新区块链账本。客户端应用的所有操作可以被安全地记录到区块链账本。
6、本文中的描述还涉及一种用于通过执行操作将客户端应用与管理区块链的区块链平台对接的方法,该操作包括:由应用编程接口(api)层从客户端应用接收在区块链上执行事务的请求;由api层格式化与请求相关联的数据;由服务层接收与请求相关联的至少一个命令和格式化数据;由服务层识别请求的类型;基于请求的类型,由服务层转发至少一个命令和格式化数据以在区块链上执行;由链码通过将至少一个命令转换成根据预配置特征和功能可以在区块链平台上执行的至少一个事务来管理数据操作,所述预配置特征和功能根据预定用例(例如,业务服务)要与区块链平台交互;以及将区块链平台上的至少一个事务和格式化数据的执行结果返回给客户端应用。
7、在示例配置中,该方法还可以包括向客户端应用公开api,客户端应用可以使用这些api来访问根据预定用例要与区块链平台交互的预配置特征和功能。该方法还可以包括向客户端应用提供负载平衡的具象状态传输(rest)api,其中rest api适于与区块链平台交互。格式化与请求相关联的数据可以包括:api层验证来自客户端应用的请求,验证在来自客户端应用的请求中接收到的用户细节,检查用户执行来自客户端应用的请求的许可,以及准备请求以提交到区块链平台。
8、在其他示例配置中,该方法还可以包括使得多个客户端应用能够使用api层、服务层和链码在区块链平台上创建和管理数据。api层、服务层和链码还可以适于支持包括平台管理员、租户和核心asik参与者的三种角色。平台管理员登记客户端应用。租户使用id和分配给租户的资源对格式化数据执行创建、读取、更新和删除操作,以及核心asik参与者使用其自己的id向api层发起请求。每个租户还可以在其自己的数据库中执行操作。
9、在另外的示例配置中,该方法还可以包括:服务层通过概述语义和语法以及至少一个接口来描述预配置特征和功能,至少一个命令和格式化数据通过至少一个接口针对预定用例与区块链平台交互。该方法还可以包括:服务层接受来自api层的输入并通过调用链码和状态数据库将输入转换成动作。
10、在更进一步的示例配置中,该方法可以包括:链码访问区块链平台的区块链账本和智能合约,以查询或更新区块链账本,并且将客户端应用的所有操作安全地记录到区块链账本。
11、本文中的描述还包括非暂态计算机可读介质,在其上存储有指令,所述指令在由一个或更多个处理器执行时使得所述一个或更多个处理器实现用于将客户端应用与管理区块链的区块链平台对接的方法。在示例配置中,指令实现应用编程接口(api)层,该应用编程接口(api)层从客户端应用接收在区块链上执行事务的请求并格式化与请求相关联的数据;服务层,其接收与请求相关联的至少一个命令和格式化数据,识别请求的类型,并且基于请求的类型,转发至少一个命令和格式化数据以在区块链上执行,并且将至少一个命令和格式化数据在区块链平台上的执行结果返回给客户端应用;以及链码,其通过将至少一个命令转换成根据预配置特征和功能可以在区块链平台上执行的至少一个事务来管理数据操作,所述预配置特征和功能根据预定用例要与区块链平台交互。
12、本文中描述的实施方式还涵盖贯穿本公开内容描述的用于实现方法的计算机系统。例如,本文中所述的系统和方法可以在云中的计算平台上实现,以提供用于访问如本文描述的区块链平台并且将数据存储至该区块链平台的功能。
本文地址:https://www.jishuxx.com/zhuanli/20250117/356296.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表