【发布时间】:2018-06-03 16:24:42
【问题描述】:
我想就以下用例向您寻求帮助和建议,这些用例与我们的新业务案例相关,CorDapp 将用于管理软件许可证的使用和管理。
Corda 是否有预定义的结构或方法来定义不同状态之间的父子关系,例如一个合同状态(主合同)有两个子合同状态(两种许可合同)
如果我们想跟踪区块链上的许可证使用情况,这是否是许可证可拥有状态的一个好方向?我们目前的想法是甲方(License Provider)和B方(License Consumer)有一个约定的合同,甲方将提供B方100个License使用,但是只有在B方激活一个License后才会收费。所以从Corda 的后端流程,甲方最初将颁发 100 个许可证,所有者为甲方,这个共享事实将被初始化为交易,并将添加到双方的账本中。然后定期从甲方系统中提取许可证使用数据并通过初始化交易更新分类帐,我们将使用“移动”流程转移许可证状态的数量和所有者。例如,如果乙方激活了 40 个许可证,那么甲方的许可证状态数量将变为 60,并且还有另一个新状态,所有者是乙方,数量为 40。我认为我应该在阅读后为这个用例使用可拥有状态一些关于线性状态和可拥有状态的 Corda 文档,但不确定我的理解是否正确
关于如何设计可用于智能合约的动态合约条款,Corda 的最佳实践是什么(验证方法条件)。例如,在许可证管理流程的初始版本中,两种许可证及其价格将被定义为合同条款,我们计划将它们定义为状态的属性(元数据)。如果以后需要添加一种新类型,我们应该如何最好地处理这种情况。是否有任何动态方法来定义状态的属性/元数据?我们理想的做法是最初没有定义任何条款(没有预定义许可类型),并允许用户在 UI 上动态添加不同类型的许可及其价格信息,然后这些动态定义的合同条款将存储在 CorDapp 中并可以在后期使用,这种方法很容易被“复制”到不同的供应商。这可以吗?
【问题讨论】:
标签: corda