OPEN 区块链技术路线图及更新
Open 在 2018 年 3 月首次宣布推出Scaffold GeneratorAPI,标志着
Open 开发者社区的成立。私下里,我们一直在研究、测试和实验去打破现有的区块链技术的局限性,并为主流应用创造最好的产品。明天,OPEN将正式发布开放式的Github,从而标志着我们开发者的下一个里程碑——公共开发者社区的诞生。
在OPEN,我们希望为开发人员及其最终用户构建最好的基础设施工具,因此我们认为为开发人员提供透明和一致的更新走向是非常重要的。在这份文件中,涵盖了一些我们的结构构想,以及提供了一个简短的未来路线图。我们诚邀尊贵的社区成员加入我们,给予反馈,并帮助我们改进开发下一代互操作数据共享协议。
OPEN 的展望
OPEN构想了一个世界,在这个世界里,所有的应用程序都能像接受法定货币一样容易地去接受加密货币。我们知道,未来的应用并不完全依赖区块链,而是,区块链将充当核心,并做适合其技术应用的事项,如支付、资产发行、操作透明度和可审计性。为了做到这一点,区块链核心必须能够与应用程序的其他部分及其大量的技术进行交互。这包括使中央数据库能够完成最佳运转。我们正在促进这一行业早期的状态。同时让分散网络利用其自己的好处。
这就是OPEN的核心——我们让不同的数据表示方式,一些是分散的网络,另一些是集中式的,以一种可伸缩的方式相互通信。该数据跨各种分散组件(区块链)的可互操作性,其方式是模仿技术公司和应用程序开发人员在过去15 年中的演进过程。对开发者来说,a)采纳 b) 开发c)进行交易 是非常方便的。
OPEN 关注两项关键技术:
· OPEN 平台,使开发者能够轻松地将他们的应用程序架构部署到OPEN区块链,将区块链集成到他们的后端,以及部署大量企业级的开发人员基础设施。
· OPEN 区块链,其中链链交易发生,并在有互操作性的区块链上进行划分,以确保可扩展性和可靠性。
平台和公共区块链构成基架与基架生成器
基架生成器在 2018 年 3 月公开发布于以太网。从那时起,我们将代码重构为kotlin 和基架生成器,在api.openfuture.io上线,并将在 6 月 4 日星期一再次上线。
此外,我们还构建了基架模板,这些模板可供我们的合作伙伴使用, 并展示了OPEN 在未来所能做的事情。本周我们将展示其中的两个模
板,一个 B2B 的激励基架,为服务软件的商业模式和其他 B2B公司提供解决方案。此外,我们还在创造游戏中的购买基架模板,可以由游戏开发人员部署与他们的应用程序集成。
这些是许多基架版本中的第一个版本,能使用区块链技术解决共同开发人员的痛点。我们还将发布基架生成器和我们的合作区块链技术之间的集成。
公共链设计综述
在区块链生态系统中,使用不同的技术和编程语言实现了各种类型的区块链技术应用。自然地,为它们中的每一个选择的重复考虑是基于特定项目试图实现的需求和目标。
在我们的特殊情况下,对于 OPEN 区块链,我们的技术具有以下特性:
· 可靠
· 现代
· 流行
· 安全
· 高性能
· 开放源码
· 商业组织的支持
· 易于扩展的编写良好的代码库
· 拥有许多现成工具和数据库的活跃社区
此外,在OPEN,我们需要一个虚拟机,其中网络参与者能够执行包括基架程序在内的智能合同。
一个可能的解决方案是利用JVM 技术的 Corda。Corda 会让我们有一个虚拟机和可执行代码,并运行智能合同。
在内部,我们对现有的区块链技术实现进行了研究,并比较了每个技术的优缺点,以满足我们的需求。
比较汇
总表Kotlin
我们相信,kotlin 是Java 的 V2 版本。它解决了很多Java 的缺点:它没有样板代码,语言级别是以空值实现的,泛型的问题是固定的。此外,它完全向后兼容 Java,允许用户从 Kotlin 调用Java 代码,反之亦然。这将使我们能够使用新一代的 Java 的所有原有技术和功能。
有了JVM,我们将有智能契约 VM,开发人员将能够部署基于 JVM 的编程语言(如Kotlin、Java、Groovy或JavaScript)的Smart Contracts。
TCP 与UDP 通信层
实现UDP 通信层技术更加复杂,因为 UDP 不能保证消息的传递。因此, 它必须在应用程序级别独立实现。
与tcp 不同,udp 中的消息大小受到严格限制,为了避免分组、可能丢失的数据包,并确保任何主机都能够接收数据包,在 UDP 中,数据大小不应超过508 字节。这意味着长度较长的消息必须被削减至 508字节,编号和发送。如果你考虑到数据包的传输没有保障,从接收方到发送方,您需要发送已接受的数据包的信息,而丢失的数据包则需要重新发送。
我们当然可以执行UDP 通信层,但是它将花费相当长的时间,而在
DPO 协商一致的情况下,不需要严格地这样做,这与建立在以下基础上的网络不同。基于上述论点,我们建议在 TCP 通信层上使用 Kotlin从头开始构建OPEN 区块链。
投票
协商意见的关键部分之一,是经营者的选择和投票。
当节点希望成为运算符时,它会向活动运算符发送请求。这些节点将被称为候选节点。操作员检查候选人的需求:可用性,硬件以及网络特性、技术数量、在网络中停留的时间等。类似于确认新块的规则,
如果候选人成功通过了 2/3 运算符的检查,它就会进行检查。加入候选人的列表(队列)。
每个节点最多有 8 个活动运算符连接,其中:
· 6 个具有主动随机选择的运算符
· 2 个候选人队列中的运算符
默认情况下,每个节点投票给发送有关新事件的信息的节点的速度更快,频率更高。因此,候选人有机会在速度上与运营者竞争,并成为被选中的代表,组成区块并获得赏金。队列中的候选对象按降序排序,其中额定值是其的声音和值的所有导数之和。大评级是所有投票节点和候选节点本身之和:候选人数量+∑(投标者数量)。
区块组成
根据DPOS 的共识,在每一轮之前,操作者被排成一排,每个操作者被分配一个固定的时间来形成区块,即 10秒。在这段时间里,操作员必须形成一个区块并分发给其他操作者,以获得 2/3 代表的确认。如果得到大多数操作者(2/3)的确认,则将区块添加到区块链中。
如果节点未能在分配的时间内形成区块,则从运算符列表中排除它。在接下来的 10 秒内,后面的节点应该形成 2 个区块:一个用于自身,一个用于前一个节点。
这一轮持续到每个节点形成一个区块,即一轮为 21 个区块(协商一致
中的操作者数),如果每块 10 秒,则该轮的持续时间为 3.5分钟。在该轮结束时,每个节点都得到一个与所生成的区块的数量和其中包含的事务成正比的奖励。在每一轮之前,所有活跃的运算符和候选人都是在列表中选择,按降序排序。选择Top-21作为下一轮的运算符。
路线图
我们的团队将在未来几周发布一个更深入的路线图,而我们现在希望为我们的开发人员社区提供一些初步的见解。我们将至少每周发布一次更新文章,让大家了解我们的发展进程。
OPEN 的基架和基架程序已经接近完成,并将在 6 月中旬完全投入使用。我们已经开始编写剩下的 API 文档,并将在接下来的 5 周内提供更新。该API 的公开版本将在 7 月初完成。与此同时,我们将各自构建我们的Javascript SDK、Java 虚拟机 SDK、Python SDK 和GoSDK。这些开发工具和SDK 对于开发人员采用区块链技术至关重要。
OPEN 区块链测试网计划在 2018 年 9 月中旬上线。我们已经开始了 TCP 通信层构建的工作,并计划在 7月底前完全部署,这对杠杆来说是必不可少的。这对于利用我们的可互操作的区块链网络,和对事务进行切分以实现可伸缩性的竞争力,是至关重要的。同时,我们将执行我们的投票和协商一致的事项,在八月中旬之前完成完整的代码开放源码。我们已经实现了公钥算法,并将在6 月底开始更新钱包软件,在
7 月底提供共用钱包。.
更多细节将于本周公布!
开发者社区建设
为了实践我们对创建最强大的开发人员社区的承诺,对于那些只使用集中技术的开发人员来说,这个社区是包容性的。我们的开发人员增长池,是在令牌生成事件中创建的,持有开放令牌总供应量的20%。这将被用于产生新的开发人员,与领先公司建立合作伙伴关系,开办黑客比赛和其他开发人员活动,并以多种方式赋予社区权力。
我们感到自豪的是,开放的开发者增长池是迄今为止在所有公共区块链项目中分配量最多的项目。在 GitHub上发布了第一个开放源码存储库之后,我们的公共技术社区将创立投入运营。无论您身在世界何处,我们都鼓励您参与塑造OPEN的使命,因为我们为您提供了最好的工具和资源。
OPEN 无疑是开放的。
关于作者
应用程序的第一个区块链基础结构。