【问题标题】:Immutable Transactions in hyperledger fabric超级账本结构中的不可变事务
【发布时间】:2020-08-14 11:15:06
【问题描述】:

您好,我有一个关于 hyperledger Fabric 交易的问题。因此,在 fabcar 示例中,我们在链码中创建了一个汽车对象,并通过更改其所有者等方式对其进行操作。我的问题是这一切中的交易在哪里?什么是不可变的?我们可以从链码中获取交易历史吗?还是我们必须自己在代码中实现登录以记录和保存链码中的数据更改或操作以及日期?

【问题讨论】:

    标签: javascript hyperledger-fabric blockchain hyperledger


    【解决方案1】:
    1. 如果您添加新记录或更新现有记录,这些将被视为与 fabcar 链码的交易。您可以通过查询账本找到所有这些交易。

    2. 记录和交易历史是不可变的。例如,Car1 的当前所有者是 Syed。此记录是不可变的,任何人都不能非法更改此所有权。之前赛义德从 Zain 买了这辆车。因此所有权从 Zain 更改为 Syed。所有这些记录都保持不变。

    3. 是的,我们可以通过查询分类帐来获取密钥的所有先前历史记录。您必须调用“stub.GetHistoryForKey”。你可以在"marbles_chaincode.js"找到答案

    4. 在公钥密码学中您不需要任何登录,对于链码中的访问控制,您可以使用基于属性的访问控制或 ABAC。目前,您可以将“github.com/hyperledger/fabric-chaincode-go/pkg/cid”包用于带有 go 链码的 ABAC。

    【讨论】:

    • 谢谢。但主要问题是在 Web 应用程序中,您总是需要登录和注册。我们应该如何使用访问控制或证书来做到这一点?
    • 我没有关注你。我确实红了你的文章。但我不清楚架构。如果用户访问在织物上制作的区块链系统网站。他需要先注册然后登录。我将如何实现这种行为?
    • 您可以使用fabric ca进行注册(hyperledger-fabric-ca.readthedocs.io/en/release-1.4/…),用户只需要一个私钥和一个有效的证书。请学习公钥密码学、数字证书以及它们是如何工作的,这样你才能正确理解一切。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多