3

因此,如果 A 和 B 有一个关于某些服务的智能合约,那么外部方 C 如何获得对该合约的读/写权限?

  • 签约时是否需要将合同设置为“公开”?
  • A 或 (/and?) B 可以在签署后将合同的访问权授予 C 吗?
  • 还有其他方法吗?
4

1 回答 1

2

基本上所有公共分类账上的智能合约都是公开的。这取决于您部署合约的区块链平台。通常,要访问它们,您需要以下内容。

  1. 一个界面。例如,在以太坊中,您需要应用程序二进制接口。由于链上的合约以二进制格式存储,因此您需要知道如何访问它们的功能。在大多数情况下,ABI 是可用成员和函数的 JSON 描述。
  2. 一些访问规则。一般来说,正如我最初所说,所有状态都是公共可读的,因此如果A与 ,B建立合同someServiceC将能够读出状态。如果你想允许C写访问,你需要在创建合约时明确告知(例如,通过静态白名单他的公钥),或者你可以维护一个动态的访问者列表,它只能设置AB可以设置。

我认为这是我能给出的最具体的答案,除非你说明你最喜欢的平台或合同语言。

于 2016-11-06T13:24:23.590 回答