比较超级账本indy-sdk与Libvcx有什么区别?

2024-05-29 07:43:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在研究hyperledger indy框架,我想开始构建一个应用程序来开始,但我注意到有一个sdk使用Libindy,但也有Libvcx,在Libindy之上,但我不知道该用哪一个,因为它们看起来都是一样的。在


Tags: 框架应用程序sdkhyperledgerindylibvcxlibindy
1条回答
网友
1楼 · 发布于 2024-05-29 07:43:35

正如你所说,LibVCX是建立在LibIndy之上的。在

利宾迪

提供低级API来处理凭证和证明。它提供创建凭证请求、凭证、证明的操作。与hyperldy进行沟通。在

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

LibVCX公司

LibVCX包装了LibIndy并提供了一些抽象,使开发人员更容易使用。它还包含凭证交换协议(VCX=可验证凭证(e)交换)。

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

你可以把代理看作是一种邮件服务器。消息存储在那里,客户端可以提取其消息/凭据并在本地解密。在

据说LibVCX在相当长的一段时间内处于“实验”状态,底层协议仍在迭代。随着时间的推移,来自Indy HIPEs的规范(Hyperledger Indy Project Enhancements)

使用什么?在

我用这两种方法构建了一个poc,我通常建议使用LibVCX,除非您有充分的理由不这么做。在

如果您希望与其他仪器、钱包等保持一般的互操作性,LibVCX是一种方法,因为您不必考虑如何进行凭证交换。它只是起作用。在

如果你有一个特定的,可能是内部的用例,LibVCX协议和代理的开销太大了,对你的用例没有好处-也许你可以用vanilla LibIndy让事情变得更简单。在

当心VCX的变化-Libindy 2.0

LibVCX的部分功能计划在libindy2.0中移植到Libindy本身。引用IndySDK2.0 pull request的自述

The main idea of new functionality of IndySDK is replace part of VCX library. As for now VCX provide powerful mechanisms for handling Credential Issuance and Exchange flow, but this library hardcode some FSM state transitions, transport flow, etc.

所以根据我的理解,LibIndy实现协议太具体了,他们想把它泛化,把它的一些特性移植到LibIndy本身。我不太清楚LibVCX的命运是什么。在

相关问题 更多 >

    热门问题