原文: https://medium.com/coinmonks/gaia-df6b86a17d50
我们先理解传统的web或移动app如何与存储交互。每当用户登录到app时,app从远程存储器中获取用户数据并将其显示给用户。所有复杂的计算都运行在云服务器上,而不是客户端上,客户端充当一个简易的显示终端。
下面是两个虚构角色Alice和Bob与传统web/移动app交互的例子。
传统App如何工作
假设我们有两个用户Alice和Bob。他们都有 App:Whatsapp,Facebook 或者 Snapshot。他们与App的提供者交互。这些App基本上运行SQL或者其他数据库为用户提供服务。
当Alice想要使用即时通讯应用与Bob交互时,Alice将消息发送给服务提供者,而服务提供者将消息发送给Bob。
在传统应用程序中,两个用户之间如何通信
例如,Alice首先向存储服务器发送信息“Hi”,然后存储服务器将信息发送给Bob。交互路径是 Alice→存储服务器→Bob,Alice←→Bob之间没有直接路径。这是个中心化的过程,服务提供者代表Alice和Bob传递数据,并控制如何共享数据。Alice和Bob都是通过查询中新心服务器来查找彼此的消息。服务提供者总是信任的唯一来源。
中心化存储带来的问题
-
读取写入数据与用户身份标识没有严格关联。
不能保证Bob收到的消息确实来自于Alice,或者消息是篡改的。而且,这些大公司也并不是免费提供服务的。他们向广告商出售用户数据,从用户数据中牟利。这样,他们可以更好地锁定潜在客户。在某些情况下,他们的做法是违法的:德国一家法院本月刚刚裁定,Facebook非法收集数据,违反了消费者相关的法律。 -
用户不能选择不同的存储提供者 ,
只有app才能选择存储器以及把用户数据保存在什么位置 -
用户无法控制谁查看他们的数据,
存储器总是可以查看他们的数据
下一篇:Blockstack 如何解决中心化存储问题
作者:shooter
链接:https://www.jianshu.com/p/6cebae274612
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
网友评论