不知不觉踏入2018年的最后一个月,即将发布的Bernoulli版本已逐渐成型。下面我们来为社区汇报十一月的开发进度。
测试网代码更新
Bluzelle技术团队一直采取敏捷式开发的方式,在科学规划开发周期的同时,可以更及时地接收和响应技术社区的反馈。我们希望通过一些短期小版本的发布,让用户更早了解到重大版本更新所包含的功能,让团队更好地了解用户的真实需求,并及时修复必要的漏洞。
在11月,团队在Github进行了一次重要的代码更新,这是Lovelace与Bernoulli之间的一个小的版本更新,其中包括:
强大的持久层引擎,并使用RocksDB作为每个参与Bluzelle网络的节点的本地二级存储设施
在Lovelace测试网的基础上新增发布/订阅支持
新加入网络和共识机制的节点将需要进行加密认证。这个版本仍使用旧的共识机制RAFT,在Bernoulli发布后,我们将全面使用PBFT共识,加密认证将会是新共识机制的重要一环。
修复一系列由团队与社区共同发现的Lovelace版本漏洞
若您想测试最新的测试网版本,欢迎从BluzelleGithub中下载:
https://github.com/bluzelle/swarmDB
PBFT共识
如之前的进度更新提及,PBFT共识已在十月完成了开发,现仍在内部进行测试,内测完成后将发布到Github进行公测。
除此之外,系统要符合PBFT标准的关键是要能够检测和处理拜占庭故障。我们正在修复当前的JS、Python、Ruby、PHP和C#等不同的客户端以支持PBFT,使它们能检测到这些故障,并可以对这些故障进行及时高效的响应。
用户权限
Bluzelle的用户权限引擎开发正在有效进行,我们也对之前的设计进行了一些改进。现在,数据库创建者需要明确创建数据库命名,并需要把创建者的公钥指定为数据库所有者。一旦创建成功,该所有者可以对该数据库执行CREATE、UPDATE、DELETE的命令。因此在Bernoulli版本中,所有对数据库的写入请求都将需要使用数据库所有者的私钥进行签署交易。
我们也在修复当前的JS、Python、Ruby、PHP和C#客户端以支持密钥管理。客户端将可以生成非对称公/私钥对,并安全地存储在文件系统上,应用程序也可以安全地使用这些密钥对数据库写入进行签署授权。
CRUD客户端
我们还整合了基于Web和桌面的CRUD客户端新版本。新版本大幅提升了数据库的可用性、处理错误的能力、为服务器提供GET参数的能力以及处理请求与交易的能力,这将极大地改进用户体验。除此以外,新的客户端也正在修复以支持数据库权限,可以向客户端提供加密公/私钥对,并对数据库的写入请求进行签署授权。
我们还为CRUD客户端取了一个新的名字,我们将在Bernoulli发布时为新名字揭晓!
其它更新
我们完成了对新的客户端线路协议和架构的重新设计,以适应PBFT和数据库权限,这些将全部由Protobuf驱动
我们创建了数据库管理API,以方便数据库的显示与管理,并支持附加元数据(metadata)
我们完善了客户端的技术使用文档,你可以通过此链接查看:
https://devel-docs.bluzelle.com/client-development-guide/v/v0.4.x/client-architecture
倒数一个月发布Bernoulli版本,你们准备好了吗?
Bluzelle中文社区有你更精彩!
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。