【问题标题】:What's the difference between hyperledger indy-sdk and Libvcx?hyperledger indy-sdk 和 Libvcx 有什么区别?
【发布时间】:2019-03-13 03:08:00
【问题描述】:

我一直在研究 hyperledger indy 框架,我想开始构建一个应用程序以开始使用,但我注意到有使用 Libindy 的 sdk,但也有位于 Libindy 之上的 Libvcx,但我没有不知道该用哪一个,因为它们似乎都做同样的事情。

【问题讨论】:

    标签: python hyperledger-indy


    【解决方案1】:

    正如您所说,LibVCX 构建在 LibIndy 之上。

    LibIndy

    ​​>

    提供低级 API 以处理凭据和证明。它提供创建凭证请求、凭证、证明的操作。它还公开了与 Hyperldger Indy 账本通信的操作。

    Libindy 不处理的是凭证交换。如果您编写发布凭证的后端和可以使用 Libindy 请求和接收凭证的移动应用程序,您将不得不提出一些通信协议来做到这一点。会是HTTP吗? ZMQ?你打算如何格式化消息?这就是 LibVCX 为您所做的。您还必须提出解决方案,当客户端离线时,如何安全地将消息和凭据从服务器传递到客户端。

    LibVCX

    LibVCX 是 Hyperledger Aries 规范的几个实现之一。 LibVCX 建立在 LibIndy 之上,并为消费者提供 OOP 风格的 API 来管理连接、凭据、证明等。它是用 Rust 编写的,并具有可用于 Python、Javascript、Java、iOS 的 API 包装器。

    LibVCX 的设计考虑了异步性。 LibVCX 假设在通信的两方之间存在所谓的“代理”——一个实现某些 Indy 通信协议、接收和转发消息的代理。因此,您的后端服务器现在可以向几天前与之交谈过的人颁发并发送凭据。凭证将安全地存储在机构中,接收者可以检查机构中是否有任何新的消息/凭证发给他。

    您可以将代理视为一种邮件服务器。消息存储在那里,客户端可以提取其消息/凭据并在本地解密。

    用什么?

    如果您想将 IndySDK 中的技术用于特定用例并且不关心 Aries,则可以使用 vanilla libindy。

    如果您想与其他应用程序和代理进行互操作的凭据交换,则应遵守 Aries 协议。 LibVCX 是实现这一目标的方法之一。

    【讨论】:

    • 嗨,我目前正在尝试使用 VCX 和 Evernym Connect.me 应用程序构建 PoC。据我所知,LibVCX 需要一个云代理。我发现这种实体的唯一实现是 Indy vcx repo 中的 Dummy Cloud Agent。但是,由于这是用 Rust 编写的(我对此并不熟悉),所以我很难弄清楚它是如何工作的。你碰巧知道一个公开的 VCX 代理规范吗,我已经找了几天了,但找不到任何信息
    • 嗨@NikosT,我想我必须在上面更新我的答案。事情发生了变化,现在有更多的选择。现在,Evernym 是否会继续更新 LibVCX 是个问题。您说的是对的,除了虚拟云代理(不是生产级软件)之外别无他法。我强烈建议您在投资 libvcx 之前查看以下替代方案 github.com/bcgov/aries-cloudagent-python
    • 嗨@Patrik 非常感谢您的友好回答。不幸的是,我也在寻找一个生产级钱包应用程序,据我所知,今天只有 Connect.me 可以使用 :( 也许我必须研究另一个 SSI 框架。再次感谢!
    【解决方案2】:

    indy-sdk 存储库是 Indy 软件,它支持构建可以与 Indy 分类帐以及彼此交互的组件(称为代理)。

    2019 年,在美国犹他州举行的“Connect-a-thon”上,来自不同组织的开发人员齐聚一堂,展示了一组独立开发的代理实现之间的互操作性。那时,进一步发展的想法导致了 Hyperledger Aries 的创建。如果我们有可以使用来自多个生态系统的 DID 和可验证凭证的代理会怎样? Aries 是一个工具包,专为专注于创建、传输、存储和使用可验证数字凭证的计划和解决方案而设计。其核心是使用安全消息交换信息来实现代理之间连接的协议。

    Libvcx 是一个建立在 libindy 之上的 c 可调用库,它提供高级凭证交换协议。它简化了代理应用程序的创建,并为 Hyperledger Indy 基础架构提供了更好的代理-2-代理互操作性。 如果您想与其他应用程序和代理进行互操作的交换凭证,换句话说,如果您想遵守 Aries 协议,则需要 LibVCX。 在这种情况下,LibVCX 代理可以与中介代理一起使用,它可以实现两方之间的异步通信。

    【讨论】:

      猜你喜欢
      • 2021-07-31
      • 1970-01-01
      • 2018-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-20
      • 2011-09-27
      • 2021-10-07
      相关资源
      最近更新 更多