首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >区块链应用技术体系结构

区块链应用技术体系结构
EN

Ethereum用户
提问于 2018-10-25 16:37:51
回答 2查看 102关注 0票数 0

假设我想构建一个不完全分散的应用程序,实际上它为前端提供Restful,并使用后端的私有ethereum块链来处理敏感数据和管理用户权限。在我的后端注册时,我为每个用户创建了一个使用他的密码的ethereum帐户。后端正在运行NodeJS express,并连接到web3实例。每当用户需要输入密码时,我就使用这个密码解锁他的帐户并发送一个事务(或者可能是一个合同调用)。

  1. 充当用户和私有区块链之间的中间件是否有意义?我的意思是从虚幻设计的角度来看,这是一种普遍的做法吗?如果用户没有看到任何与区块链相关的内容,因为所有的工作都是在幕后完成的,那么用户应该如何知道这种做法呢?用户怎么能相信我的系统不会泄露他的密码呢?
  2. 在这种情况下,是否建议为这个私有块链使用多个节点?它带来了什么好处?这仅仅是高可用性和移除中心故障点吗?
EN

回答 2

Ethereum用户

回答已采纳

发布于 2018-10-25 16:59:03

在我试着回答你的问题之前:区块链的使用有一定的好处,特别是ethereum。这些好处是:

  • 区块链技术使用其独特的货币体系和“令牌”帮助跟踪事物。
  • 区块链技术可以为任何类型的数据提供无可争议的完整性证明。
  • Ethereum智能合同可以提供自动化实体之间透明交易的手段。受“守则法”管制的实体。
  • Ethereum智能合同确实创造了一种自动经销商的所有类型的货物(一个自动售货机的一切)。

这些好处是您需要的,以实现一个基于ethereum的平台。除此之外,ethereum将迅速成为你系统中的一个负担和一个弱点。

您的问题:

1)在许多当前和未来的大项目中,Ethereum节点在任何情况下都是不可见的。在平台(系统)和用户之间建立信任的关键是透明性和健壮性。一个好的做法是明确地告诉您的用户,您正在代表他们管理他们的帐户,并让他们有可能选择退出该帐户,并在仍然受益于您平台的服务的同时管理他们的behalf帐户和事务。

2)在专用网络情况下,不需要多个节点。如果系统背后的逻辑要求在这些节点之间实际共享决策,则可能需要使用许多节点。类似于每个国家的一个节点,或者每个缔约方的一个节点。拥有多个节点也可以减轻硬件的压力,增加系统的容量和容错能力。

票数 0
EN

Ethereum用户

发布于 2018-10-26 10:09:18

我在nodejs中实现了一个带有后端系统的私有区块链,它处理了一些障碍,但离开了区块链,完成了最擅长的工作:给予信任。因此,基本上,我实现了一个解决方案,它的工作方式与您在这里描述的相反。

在我的体系结构中,用户的私钥在客户机上,用户数据与用户帐户一起注册在mongodb服务器上。每当请求事务时,客户端使用用户的私钥在区块链上创建事务(在移动应用程序中存储在存储区域,在web应用程序中由MetaMask管理),如果成功,则在数据库中注册事务,并引用事务哈希。

这样,真相就被保存在区块链上,没有人可以窃取密码,而在数据库中,你拥有的数据太昂贵,无法保存在区块链上。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/61192

复制
相关文章

相似问题

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