15 posts tagged with "xuejie"

View All Tags

可交换的签名验证协议标准

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

过去,在 CKB 的锁脚本中,签名验证算法与其他交易验证逻辑是紧密耦合的,比如,anyone-can-pay 锁脚本。这样做的一个原因是为了简化 CKB 脚本的任务。在早期,您肯定希望限制您正在处理的范围,以确保构建出的脚本足够安全。

但是慢慢地,我们越来越了解如何构建 CKB 脚本。与此同时,将签名算法和锁脚本逻辑的捆绑带来的问题也逐渐得到关注:假设我们有 N 个签名验证算法,M 个特定的锁脚本逻辑,我们就需要构建 N*M 个锁脚本才能完成所有的组合。这将带来巨大的维护负担,也将会造成链上资源的浪费。关于这个问题,有什么解决办法吗?

Diviner:确定性测试的新尝试

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

我一直以来对确定性执行的问题很感兴趣。我们在多线程模型上花了很大时间。我们大部分人都应该遇到过一些只在一定概率范围内发生的 bug。即使你已经准备好了一个修复程序,你也不能确定它是不是还会再次发生,你所能做的不过是测试,测试,再测试,并希望这样的问题不会再次出现。我们可以确定地进行调试并拍着胸脯说这是 100% 确定的,这是每一位工程师的梦想,而这个问题已经被解决了。

CKB 脚本编程简介[9]: 减少 Duktape 脚本的执行周期

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

之前的文章介绍过,可以使用纯 JavaScript 构建 CKB 脚本。但是,如果你以前尝试过这种方法,你会注意到一个问题,即基于 JavaScript 的脚本比原生版本消耗更多的周期。虽然这在实验中不是什么问题,但在生产环境中却是非常现实的:更多的周期可以自然地反映在更多的交易费用上。很明显,以下的解决方案可以用来解决这个问题:

CKB 脚本编程简介[8]: 高性能 WASM

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

先前的文章中,我已经向你展示过在 CKB 上运行 WASM 程序,但需要注意的是,WASM 程序的性能可能并不那么出色。我也提到了,有一个潜在的解决方案可以解决这个问题。就在今天,我们发布了一个新项目,这个项目可以用来生成高效的 WASM 程序!让我们赶紧来看看它具体是如何操作的。

Animagus 系列文章[1]: 开篇介绍

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

我们相信 Nervos CKB 在新一代的区块链中具有无限的潜能。但同时也需要独特的开发工具才能将 CKB 的潜能充分激发。 Animagus 就是在这种情况下应运而生。

「animagus」的名字来自《哈利·波特》,如果巫师具有将自己变成动物再变回来的本领,就会被称为「animagus」,不同的巫师可以变的动物也有所不同。我个人认为为我们现在的这个项目取名 animagus(阿尼玛格斯)是很适合的,希望大家看完本文后也会有这样的感觉。

CKB 脚本编程简介[3]: 自定义代币

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

CKB 的 cell 模型和 VM 支持许多新的用例。然而,这并不意味着我们需要抛弃现有的。如今区块链中的一个常见用途是 token 发行者发布具有特殊目的/意义的新 token 。在以太坊中,我们称之为 ERC20 token ,让我们看看我们如何在 CKB 中构建类似的概念。为了与 ERC20 区分,在 CKB 中的 token 我们称之为 user defined token,简称UDT。

CKB 脚本编程简介[2]: 脚本基础

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

上一篇我们介绍了当前 CKB 的验证模型。这一篇会更加有趣一点,我们要向大家展示如何将脚本代码真正部署到 CKB 网络上去。我希望在你看完本文后,你可以有能力自行去探索 CKB 的世界并按照你自己的意愿去编写新的脚本代码。

CKB 脚本编程简介[1]: 验证模型

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

截至目前,CKB 中的 Cell 验证模型或多或少已经趋于稳定,因此我将在这里开始写一系列文章来介绍 CKB 脚本编程。我的目标是补充在阅读白皮书后编写 CKB 脚本所需的所有缺失的细节实现,这样你就可以开始探索 CKB 呈现的这个美丽的仙境。