图 2-1 代码提交 近半年的代码提交情况良好,产品有持续的迭代。在 Stack 2.0 上线后代码提交有显著增长。 技术详解Stack 目前已经完成了 v2 版本的迭代,v1 版本为 Blockstack,其开发方向是分布式计算和去中心化信息验证,v2 (Stack 2.0)转向了基于比特币的智能合约开发以及生态应用。 v1 v1 版本即 Blockstack,旨在建立一个分布式计算网络,全栈式替代传统云计算。基于 Blockstack 搭建的去中心化应用,其大部分业务逻辑和数据处理都可以分布式的客户端运行。 Blockstack 主要包含 3 个部分:1) Gaia 一个可扩展的去中心化存储系统;2) Atlas 点对点网络,节点连通采用基于图的随机游走算法,减少取得共识所需数据量;3) Blockstack 认证协议,一个去中心化认证协议,用于给用户进行 ID 认证。 Atlas 对等网络 Atlas 是 Blockstack 网络的一个子系统。在 Atlas 中,每个节点负责跟踪网络中的其他节点,每个节点会保存网络中所有数据的一个完整副本,以避免节点加入或离开网络引起的问题。但该网络的容量受到了 Blockstack 网络的限制:数据集中的每一条新纪录,都必须和 Stacks 区块链上的一个交易相关联。而且每个节点都保留所有数据的一个副本,数据的索引在 Blockstack 上可用,这样新的 Atlas 节点可以便捷同步其需要存储的数据,因为事已知道应该从其他节点存储什么数据。 Gaia 存储系统 Gaia 存储系统是 Blockstack 为用户提供的去中心化存储系统。用户对存储数据拥有控制权,可以将存储数据与系统中的应用进行交互。用户存储数据可以托管在由用户指定的云存储服务商或者其他数据存储服务商,比如 AWS、Google。Gaia 存储系统中的数据是经过加密的,并通过用户控制的密钥进行签名。 用户通过 Gaia 存储系统指定一个存储位置来保存数据。Gaia 里会存在一个「指针」被保存到 Blockstack 链和 Atlas 子系统上。当用户使用 Blockstack 认证协议登录应用和服务时,将这个存储位置信息传递给应用程序,然后应用程序与指定位置的 Gaia 数据进行交互。 Gaia 的设计理念是终端用户无需信任底层云存储服务提供商。也就是云存储服务提供商不能直接看到用户数据,只能看到经过加密的数据块。 通过 Blockstack 才可发现相关联的公钥或数据哈希,所以云服务提供商没有篡改用户数据的能力。并且用户的验证路由信息中包含一个 URL,指向一个签名过的 JSON 对象(由该用户的 owner key 签名)。这个签名过的 JSON 对象内包含指向该用户 Gaia 数据锁柜的 URL。一旦应用知道用户的 Gaia 数据锁柜的位置,就可以使用普通的 HTTP 请求文件发送。 (责任编辑:admin) |