首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >私有无令牌区块链是一次性服务的有效解决方案吗?

私有无令牌区块链是一次性服务的有效解决方案吗?
EN

Stack Overflow用户
提问于 2017-10-30 10:13:32
回答 1查看 67关注 0票数 0

我们有一位客户认为区块链可能有助于解决他所在行业的具体问题。为了避免泄露商业理念,我必须在这里进行抽象,并使用医疗行业的一个类推,后者有非常相似的细节。免责声明:我对区块链非常陌生,所以请随时纠正我。

让我们想象一下,有一种药物可以治疗某些人可能会发生的某种特定类型的癫痫。

这种药物只能由经认证的公司处方。

每次发作时,顾客必须只服用一种药物。

让我们假设药物的分销是完美的,没有办法偷取或非法购买。

该行业要解决的主要问题是确保一个人不会滥用该系统,并且只收到一次扣押的处方。以下是客户当前如何进行欺骗:

  • 一位顾客癫痫发作,去假想的公司的当地分公司要处方。该公司做了一些医学检查并开出处方,并将记录保存在当地数据库中。
  • 顾客很快就会去另一家公司(也许是在另一个国家),并再次要求处方。该公司无法查阅其他公司的数据,也无法查明客户是否已收到或尚未在其他地方收到关于这一扣押的处方。所以,这家公司又发了一张新处方。

现在,顾客收到了两张单次癫痫的处方。这是滥用系统。

私有区块链可能会解决这个问题。但我对此有一些疑问:

  1. 我不知道新的客户注册如何在公司之间同步进行。如果此客户的记录已存在于分布式数据库中,则操作员不应创建新记录。由于以下几点,我怀疑每个客户的单个块是否能够工作。我们是否需要一个区块链--也就是说,当一个新客户加入我们的“药物处方系统”时,一个主区块链被更新成一个新的特定于客户的私有区块链?
  2. 我们要保存顾客癫痫发作和处方的全部历史。我们从不改变现有的记录--它们应该是不可变的。我们只是添加新的记录到客户的私人“历史链”。如果我们出于某种原因(医疗检查等方面的错误)要取消先前发布的处方,我们将创建一个新记录,其中包含有关取消和已取消处方的检取时间戳的信息。
  3. 如果能够访问客户的数据,我们希望能够一次全部解码,然后浏览记录,按日期过滤它们。但我们也可能希望收集一些关于所有客户及其处方的统计数据。如果每个客户的数据必须用单独的密钥解密,我们如何在区块链上实现搜索、计算等?我想,块链不能像旧的关系型SQL数据库那样被搜索和过滤,对吗?这是否意味着我们需要其他类似的区块链来记录和同步所有感兴趣的统计数据?如何确保多个区块链上的交易?
  4. 据我所知,通常只有私钥才能阻止更改。但是这里我们有两种访问要求:
代码语言:javascript
运行
复制
- a customer should be able to read his own records only but does not have permissions to write any changes (no prescribing drugs to himself). So, he needs some kind of read-only-access key. 
- the company (and all of its local branches and partners in different countries) need to have read-add (not write - no actual modification of history) access for this customer. A customer cannot register himself but has to do it through the company. The company is the issuer of the keys and the holder of the "add records key". 

如何确保这些密钥通过公司的网络分发,不会泄露出去?当然,我们可以将“公钥”交给客户,这样他/她就可以读取自己的记录,但即使这个密钥本身也不完全是“公共”的--客户不应该访问其他客户的记录。

  1. 区块链分发有多快?如何解决冲突?如果用户有足够的时间请求不同公司的两张处方,那么,在1分钟内,我们如何确保只有第一个请求通过,第二个请求被拒绝?
  2. 我们想用两个序列记录事件
代码语言:javascript
运行
复制
- for each customer separately - his private history, accessible only to himself and companies
- history of all prescriptions issued by the companies in our network

这是否意味着我们需要两个区块链,或者是否有可能以某种方式创建一个单链,其中存储整个网络的所有历史记录,但每个客户只能访问和解密他自己的历史记录?

  1. 哪种最受欢迎的企业级区块链服务和产品(如果有的话)最适合这种情况-- Hyperledger、IBM Bluemix、Microsoft Coco、Etherium、Rubix (德勤)?
  2. 最后,似乎所有的问题都归结于需要一个中央机构来保存所有处方和客户的注册。这些公司都是竞争对手,它们都不想维护中央数据库,也不想让一些中立的第三方公司参与进来,并支付其服务费用。尽管如此,还不清楚区块链(或者称其为分布式分类账)是否会是正确的解决方案,因为仍然需要有人建立和维护受信任公司的名单。他们肯定不会同意使用工作证明(采矿)来确保区块链的完整性,所以无论如何都需要一个中央机构。但也许我错了。
EN

回答 1

Stack Overflow用户

发布于 2017-11-01 15:34:19

我试着回答你的问题。然而,我认为你有非常清楚的你想要什么,现在,你必须花一些时间来开发智能合同。

我认为超分类器织物对你来说是一个很好的解决方案。

答案:

  1. 您不需要注册每个客户不止一次。然后,例如,使用客户的ID,您将查阅该客户的历史记录。
  2. 区块链给了它机会。
  3. 一些Blockchain在并行DB中保存分类帐的状态(ledger=all,因为它在Blockchain中),以方便用户查询信息。在超级分类账中,您可以定义CouchDB。
  4. 这取决于你将如何发展你的智能合同。
  5. Hyperledger Fabric使用PBFT算法来达成共识。它在10秒内生成一个块,因此在此之后,您的信息将“联机”。
  6. 也许您应该创建两个不同的通道。通道就像在网络中创建的Blockchain。
  7. 超级分类账。我对其他人不太了解。
  8. 公司应该达成共识。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47012735

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档