关于 Kontos

大家好,我是 Gavin,Zecrey Labs 的核心开发者。今天我想先解释一下 “Kontos” 这个单词的含义。Kontos 来源于德语,意指 “账户”。在许多语言中,它也具有 “账本” 或 “账目” 的含义。我们选择这个名字作为项目名,是因为我们希望构建一个通用的账户管理基础设施。

我来自 Zecrey Labs,而 Kontos 正是由 Zecrey Labs 开发的一款专注于简化账户管理的基础设施产品。我们团队的核心技术方向是零知识证明和隐私计算,并且我们还在轻节点技术方面进行了一些创新研发。

Zecrey Labs 成立于三年前,也就是 2021 年。起初,我们专注于隐私相关的基础设施开发。到了 2023 年,我们开始构思并开发 Kontos 项目,并于 2023 年 6 月推出了阿尔法主网。当时我们支持了 6 到 10 条区块链,而目前,我们的主网已经支持大约 20 条区块链。

在发展过程中,我们也获得了许多投资机构的支持,主要投资方包括 Binance Labs、Shima Capital 和 The Spartan Group 等。我们在 2022 年 7 月官宣了 Binance Labs 对我们的 600 万美金战略投资。这是我们项目发展的一些关键历程。

为什么使用德语取名,团队有德语背景吗?

其实我们团队并没有德国的背景。我们选择 “Kontos” 这个名字,主要是希望找到一个能够在多个语言中通用的词汇。虽然这个词源自德语,但其实它在波兰语、瑞典语、挪威语和丹麦语等语言中也有类似的含义。我们的团队里有一些来自这些国家的成员,他们给我们提了这个建议。我们发现 “Kontos” 在这些语言中是一个很常见的词汇。

相比之下,如果我们直接使用 “account” 这样的词汇,可能会显得有点不合适或过于直白。而 “Kontos” 这个词不仅传达了账户管理的含义,同时它在某些语言中还有比较严肃和正式的表达方式,这也让我们觉得它更加适合作为项目名。

通过这个名字,我们希望传递出一个愿景,就是通过 Kontos 平台帮助用户管理多个世界中的账户,建立一个简化且通用的账户管理平台。这个名字恰好能够体现我们项目的核心目标。

是什么契机让你们从隐私跨链赛道转向当前的 Kontos

在 2021 年我们专注于隐私赛道时,市场上其实有两个主要的竞争对手,然而他们专注的是混币池和匿名交易,而隐私和匿名在加密领域是两个不同的概念。从密码学角度来看,隐私意味着隐藏交易相关的信息,比如说在交易场景下,隐私性解决的是交易的具体金额和细节。我可能给你转账,但你不会知道具体的转账金额或者交易内容。而匿名则是解决交易主体的隐匿问题,比如在区块链上,我给你转账时,匿名性意味着你无法知道这笔转账是由我发起的。

当时我们开发的 Zecrey Zero 主要聚焦于隐私问题,而非匿名性。然而,由于一些法律问题,当时与匿名相关的项目也陷入了许多麻烦,包括与监管的冲突。此外,还有一些 Layer 1 隐私项目,因为交互成本过高而遇到了阻碍。我们的团队在 ZK Rollup 领域有比较深入的研究,所以我们当时想到通过 Layer 2 的解决方案降低隐私计算的成本。具体来说,我们的方案使用了双重 ZK 技术:第一层 ZK Rollup 负责隐私保护,第二层则用于扩容。这个方案不仅能天然支持多链,还能有效降低隐私计算的 Gas 费用。

这种方案在当时是非常创新的,因为它为交易隐私性提出了新的解决思路,并得到了如 NEAR 联合创始人 Illia 等社区成员的支持。然而,经过上线后的用户反馈,我们发现用户对于大额隐私交易的需求并不强烈,反倒是多链交互受到了极大的关注。比如,用户希望能在不同链上实现方便的存取款操作,我们的系统通过二层解决方案,允许用户在一个链上存款,然后通过隐私技术在另一个链上取款。这种多链池的构建方式受到了用户的高度关注。

通过这些反馈,我们意识到,真正的 Web3 需求并不是隐私交易,而是多链交互的便捷性。这也是我们后来转向开发 Kontos 的契机。

谈到多链解决方案,当时的市场其实分为两类:一类是类似于 Loopring 和 ZKSwap 的二层 Swap 方案,它们通过以太坊单链进行二层扩展,但存在账户管理不统一的问题。随着链的爆发,尤其是 Layer 1 和 Layer 2 的网络大规模增长,这种方案变得难以扩展。此外,存取款流程非常繁琐,操作复杂性导致 90% 的区块链用户流失。

从 2021 年末到 2022 年,随着公链和二层网络的井喷式发展,跨链桥的需求也大幅增加,尤其是资产发行速度远超交易所的上架速度,造成了交易空缺的问题。我们观察到,当时大多数加密用户在新资产发行的前几个月内很难在交易所快速获得这些资产,除非使用一些专业的交易机器人。

看到这些问题后,我们决定利用之前在 Zecrey 中积累的多链经验,进一步研究并开发一个能够帮助用户高效管理多链资产的基础设施。通过与加密老用户的访谈,我们发现账户管理和跨链操作的复杂性是他们面临的主要挑战。例如,当一个新链如 Sui 发行新资产时,用户想要参与其中,往往因为账户体系的复杂性和交易所上架的延迟而错过了最佳时机。如果我们能够提供一个成熟的产品,允许用户快速通过其他链上的资产(例如 USDT)来购买这些新资产,用户会非常愿意采用这样的方案。

新用户面临的障碍则更多,例如,使用 Metamask 本身就让 95% 的互联网用户望而却步,再加上要购买新的链上的 Gas 代币,几乎刷掉了 99.5% 的潜在用户。因此,我们希望通过 Kontos 来解决这些痛点。

我们发现,市场上的许多解决方案往往只能解决部分问题,很少有一个完整的基础设施能解决用户从账户管理到跨链操作的所有需求。这也正是我们决定转向开发 Kontos 的契机,希望通过这一平台真正解决 Web3 用户的痛点。

Kontos 是如何解决问题的?使用了哪些技术方案?

首先,对于新用户进入加密领域时需要管理私钥和链 RPC 的复杂问题,我们采用了一种基于硬件的解决方案。这里的硬件指的是用户日常使用的电子设备,如手机、电脑或浏览器。这些设备中内置了 TEE(可信执行)芯片,这些芯片具备管理私钥的能力。举个例子,每部手机里其实都有一个专门的芯片,这个芯片里的私钥对外界来说是一个 “黑盒”,只能执行签名和验签操作,无法被其他程序读取。我们利用这一点,让私钥永远存储在用户自己的设备中,而不需要用户去记住复杂的助记词或私钥。

考虑到用户可能会更换或丢失手机,我们还设计了社交恢复机制。用户可以通过社交恢复的方法,在新的设备上替换链上或合约中的公钥。这样一来,用户只需要记住自己的手机和一个六位数的密码,并设置一些社交恢复人来保障账户安全。通过这种方式,我们有效地解决了用户在管理复杂私钥时遇到的困难,提升了用户体验。

第二个场景是如何简化从法币(如 Visa、万事达)到 DApp 的交互。我们已经通过 AlchemyPay 等相关服务商集成服务,允许用户直接通过 Visa 或 MasterCard 购买链上的稳定币(例如 USDT)。这一点已经是相对成熟的解决方案,并且市面上有很多团队也在解决类似问题,我们也采用了许多第三方方案来完善这一流程。

当用户手中已经有了一些加密资产后,如何与 DApp 进行交互是我们进一步优化的重点。我们通过 “账务抽象” 和 “链抽象” 两个概念来简化整个流程。首先,“账务抽象” 意味着每个用户在链上实际上都有一个合约账户,这个账户存在于每一条链上。而对于 Kontos 的用户来说,他们并不需要理解每条链的差异,无论是 Polygon 链上的交互还是 Arbitrum 上的交互,对于用户来说都是一样的。我们将不同链上的资产(如 Polygon 上的 USDT 和 Arbitrum 上的 USDT)视为同类的有价值资产,只不过它们的价格可能略有不同。

我们设计 Kontos 时的理念很像 Uber 的打车平台。用户在 Web3 中的所有操作都可以简化为 “从 A 点到 B 点”,选择合适的 “交通方式” 即可。Kontos 会根据用户的行为自动计算交易所需的费用。例如,如果用户想在某个 DApp 中购买 NFT,我们会根据 NFT 的市场价格估算出交易可能需要 10 USDT 或 10.5 USD 的费用,并帮助用户确定如何使用他们的资产组合来支付这些费用。

通过这种方式,Kontos 不仅支持不同链上资产的组合支付,还能帮助用户通过模拟交易来预估成本。更重要的是,用户的每一笔交易都可以在链上定价。通过这种行为定价模型,可以帮助用户非常精确地计算交易成本。

其中一个重要创新是 “组合支付” 功能。假如用户在多个链上,如 Polygon、Arbitrum、Optimism,拥有零散的资产,或者在某些链上没有足够的原生资产支付交易费用,Kontos 可以帮助用户将这些零碎的小额资产组合起来,支付例如以太坊链上的一笔交易。这种组合支付大大简化了用户管理多链资产的难度,也为他们提供了更加灵活的支付方式。

通过这些解决方案,我们实现了从 Visa、MasterCard 到 DApp 的顺畅过渡,并且缩短了用户从法币到加密应用的路径,为用户提供了更直观、便捷的操作体验。

账户恢复功能是否会带来安全性问题?

在设计这个系统的时候,我们其实也考虑到了它并没有一个绝对完美的方案。与传统的纯硬件钱包那种离线签名的模式相比,我们的方案在某些方面确实做出了权衡。我们的目标是极大地提高用户的便捷性。通过这种方式,用户只需要携带自己的手机,通过简单的操作就可以完成交易签名。只要没有你手机的签名能力,其他人是无法签署任何信息的,这大大增强了安全性和便捷性。

至于社交恢复机制,例如通过 Gmail 的社交恢复功能,这是一个可选的功能。我们支持这个选项,但用户可以根据自己的需求选择是否启用。如果你将手机视为一个专门用于签名的设备,而不需要额外的恢复机制,那完全可以不启用社交恢复。这样的话,我们的方案其实就像一个带有社交恢复功能的硬件钱包。只不过,这个硬件钱包的恢复机制是基于账户抽象(Account Abstraction)来实现的。账户抽象的核心是用户的合约账户,它拥有一个公钥,而对应的私钥是存储在用户的设备(手机)中的。通过 Gmail 社交恢复,用户可以有一定的权限来更换合约中的公钥。

当然,这里也存在一个权衡。如果用户选择不使用社交恢复功能,在丢失手机的情况下,恢复私钥会更加麻烦。与传统的硬件钱包类似,一旦设备丢失,用户没有助记词来恢复私钥,因为芯片是设备的出厂设置,一旦丢失,私钥就无法恢复。

所以,这是一个典型的权衡问题(trade-off)。如果用户选择不使用社交恢复功能,手机丢失后会面临和硬件钱包丢失相同的困境:无法恢复私钥。而如果启用了社交恢复,虽然一定程度上增加了复杂性,但它提供了一种额外的保障,让用户在手机丢失的情况下仍然能够恢复账户。因此,我们认为这个设计既提供了便捷性,也为用户提供了选择权,让他们根据自己的风险承受能力和需求,选择适合的方案。

接入新主网这一过程是自动的还是手动的?

对于 Kontos 来说,当前的重点仍然是如何接入不同的区块链。尽管我们已经有了相对成熟的方案,但接入哪条链仍然是我们目前的工作重点之一。正如之前提到的,我们团队的背景是专注于零知识证明(ZK)技术,因此我们能够安全地实现组合支付,并帮助用户购买任何链上的资产。这背后的核心技术是一个基于零知识证明的轻节点跨链桥。

Kontos 本身可以被视为一个区块链系统,在这个系统中,我们与任意一条链之间都通过一个 ZK 轻节点的跨链桥来实现连接。通过这个基于零知识证明的跨链桥,我们能够在不同链之间安全、高效地进行资产转移和验证。

目前,对于 EVM 兼容链,我们已经基本解决了大部分技术问题,因此接入这些链的时间可以控制在一周以内。当然,某些链可能会有一些特定的定制或修改,这需要我们做一些额外的更新工作,但总体来说接入过程比较快速和顺利。而对于非 EVM 链,由于架构和技术栈的不同,接入会面临更多的挑战,因此需要更长的研发和测试周期。

一旦我们成功接入某条链之后,接下来的一切操作就变得非常简单了。通过接入轻节点,Kontos 可以从底层验证这条链上的所有行为,包括时间(交易时间)、地点(区块高度)以及具体交易内容(交易事件)。这意味着,一旦链接入成功,我们就不需要逐个资产,逐个 APP 去接入和适配。我们只需通过一些辅助工具,例如使用像 GoPlus 这样的服务,来帮助用户识别那些潜在的诈骗资产或高风险资产。

针对貔貅币或重名币的交易是否有识别、提示功能?

在我们上一版本的开发中,我们投入了大量时间来做资产信息的统计和整合。我们接入了大约四到五个信息平台,核心任务是统计关键的链上数据,例如 24 小时的交易量、Token 的交易情况、以及合约是否发生变动等。我们会结合自有的数据抓取以及一些安全审计平台的动态更新,为用户提供实时的提示和预警。通过这样的方式,我们能够快速、准确地给用户反馈,特别是在价格波动和重要事件发生时,能第一时间做出提示。

我们认为在 Web3 中,最核心的使用场景就是交易。作为资深的 Crypto 用户都清楚,交易和新资产的发行是用户的刚性需求。因此,Kontos 的核心之一就是为用户提供安全、及时的交易信息。

接下来,我们的重点将是优化产品的用户体验。在搭建了基础架构之后,未来我们会持续关注如何进一步提升产品的易用性和流畅度,确保用户在使用 Kontos 时能够获得最佳的体验。这一方向会是我们未来持续投入的重点之一。

什么是 Broker,是否可以将其理解为 “链上中介”?它存在的意义是什么?

你的比喻确实非常贴切,特别是在设计 Kontos 时参考了 Uber 的模式,我们的目标是成为一个类似于 Uber 的平台,而不是亲自成为 “司机” 去接单。然而,现实中,“司机” 要做的工作非常多,包括为用户行为定价和执行交易。这两个部分目前是由 “broker”(中介)来完成的,但这也带来了一些挑战。

定价和执行的难点

我们目前自己运行的一些 broker,有时为了用户体验,在定价过程中会承担亏损。比如,在市场剧烈波动的情况下,我们可能没能及时调整价格,而导致在下跌了 5% 的时候,仍以之前的价格执行交易。这种情况下,broker 会承担 5% 的损失,帮助用户完成交易。

目前,我们的平台设计是有权限控制的(permissioned),但是为了优化体验,我们暂时开放了三个 broker 角色。未来,我们计划让系统逐步向去中心化方向发展,即实现 permissionless broker 模式。这样,任何拥有足够资产和技术能力的人都可以参与到定价和执行的过程中,并帮助用户发送跨链的证明。

跨链证明的技术挑战

实现跨链交易的一个复杂之处在于如何生成一个证明并将其传递到其他链上。例如,用户在 A 链上完成操作后,我们需要在 B 链上收取费用。这需要一个跨链证明,证明 A 链上的操作已经完成。这种多链证明的技术难度较大,但我们在 Zecrey Labs 正在研究如何开源这一部分代码,并将其发展为一个通用的、可组合的跨链协议。交易只是其中一个重要场景,未来我们希望这个协议可以支持更多的应用场景。

关于 MEV 和价格攻击

在设计和运行的过程中,我们确实遇到了一些问题,特别是在早期阶段,曾受到过价格攻击。比如,有些用户利用预言机价格高估时进行操作,但实际市场深度不足,导致 broker 在处理这些交易时产生亏损。不过,值得注意的是,这些亏损始终由 broker 承担,用户的资金是安全的。

MEV(最大可提取价值)机器人也是一个挑战,特别是当它们抢先执行我们为用户安排的交易时。有些交易,例如在 A 链上帮助用户卖出资产后进行转账,MEV 机器人通过提高 Gas 费抢先执行,从而赚取少量利润。虽然这些交易利润微薄,但机器人仍然愿意介入,这反而为我们节省了部分工作,就像是 “顺风车司机”。然而,这样的抢跑行为有时也会给我们带来困扰,比如我们还要支付 Gas 费和交易费用。

未来发展方向

尽管我们在设计去中心化平台时遇到了一些困扰和挑战,但整体流程仍然是安全且可验证的,这也是我们早期的目标。未来,我们将进一步优化交易速度和手续费,并研究如何让多个 broker 角色在竞争中互相协调。比如,用户需要特定资产时,某个 broker 可能手中没有,而另一个 broker 则拥有更合适的资产。在这种情况下,如何通过竞争机制让多个 broker 更高效地协作并完成交易,是我们未来要探索的方向。

这种多 broker 模式可能会衍生出更多的经济模型,甚至形成社区之间的竞争机制。但现阶段,我们的重点仍然是优化基础设施,并确保整个交易过程的安全性和可验证性。

中间多了一个角色,就意味着多了一个流程,交易速度是否会下降?

要看具体使用场景,假设用户并没有在某些区块链操作过,我们的角色其实是在帮助他们大大加速整个过程。因为用户如果要进行跨链操作,可能需要先去交易所提币,再进行下一步操作,这无疑会耗费时间。而通过我们的组合支付方案,我们可以帮助用户在两条链上同时处理资产,例如卖掉两条链上的资产,然后直接进行支付,再去另一条链上完成购买。这不仅大大增强了资金流动性,还能显著提升交易速度和成功率。

不过,我认为如果未来是一个无许可的经纪人(permissionless broker)模式,可能会面临一些流程上的问题。比如,当有任务需要完成时,哪个参与者会首先领取任务?以及 broker 是否能在有限时间内完成任务?如果任务无法按时完成,应该设置什么样的惩罚机制?这些问题可能会影响整体流程的顺畅度。因此,未来在这部分的设计上,经济模型可能需要更复杂的考量,尤其是在我们发行代币之后,还需要更多地在这方面进行进一步的经济模型设计和调整。

使用 Kontos 时手续费是否比使用 EOA 地址更高?

最近的情况相比之前有所好转。当年以太坊的 Gas 费特别高,尤其是当价格达到 60、80 甚至 100 Gwei 的时候,确实感觉压力很大。那时候,创建一个以太坊智能合约大概需要 50 美元左右,有时候甚至更高,大约三五十美元是常态。而现在大概只需要 10 美元左右。最近,新的 EIP 提案不断推出,也带来了新的模式和优化。在我们看来,创建一个智能合约对于未来用户行为的管理和系统扩展性来说,无疑是一个长期的投资,能够带来很大的帮助。

关于当前的账户活跃情况,我可以详细说明一下。根据目前的数据,一个比较有代表性的统计平台显示,链上 AA(账户抽象,Account Abstraction)合约地址与 EOA(外部拥有账户,Externally Owned Account)地址的活跃比率大约是 2% 对 98%,也就是说,EOA 地址的占比接近 98%。这个比率说明目前的市场环境下,单链操作的用户还是占多数,尤其是那些在多条链上拥有资金或使用过成熟工具的用户。例如,有些交易者会使用工具快速跨链,将资金从一条链转移到另一条链。

另一个有趣的数据是,近半年的合约用户增长率大约为 70%。这意味着近六个月内创建的合约用户占到了总用户的 60% 以上。随着时间的推移,我认为这个比率还会继续上升,这也是从长期角度来看合约发展的一种趋势。

你提到的另一个问题是,关于 Kontos 合约的手续费是否会比 EOA 更高。手续费主要包括两个部分:一是帮助用户创建合约的初始费用,这相当于一个固定成本,类似于用户在付费平台开户的费用,因为在区块链上创建合约则需要支付一定的 Gas 费。我们在设计 Kontos 项目时,花了很长时间思考如何优化这个问题。实际上,核心的花费在于验证其他链上发生的行为所需要的证明费用。通过 zk 递归证明机制,我们可以在 20 万的 Gas 限制下验证多达 2000 个区块的交易。这意味着我们可以无限聚合交易,并均摊这 20 万的 Gas 费。

比如,如果我们聚合了 10 笔交易,那么每笔大约只需要支付 2 万的 Gas 费。这是因为 1 万 6 的 Gas 是用于转账的,而 5000 是固定常量。因此,随着交易频次的增加,我们的手续费会越来越接近 EOA 的费用。比如说,在主网测试期间,平均每笔交易的 Gas 费大约在 3 万 Gas 左右,实际支付费用随着频次增高几乎与 EOA 相当。

此外,还要从更广的角度来看问题。比如说,在多个链上有资金时,你需要跨链操作,不能仅仅计算 EOA 的一次费用,还要考虑交易所提现、跨链桥的费用。在某些特殊链上,这些费用可能会达到 1% 到 13% 不等。但在我们的系统中,手续费的比率相对较低,大概在千分之一到千分之二之间。综合考虑这些因素,无论是从速度还是费用的摩擦成本来看,我们的体验都是非常出色的。

Kontos 会不会发空投?对早期采用者有哪些激励?

关于我们项目的实际情况,正如我之前提到的,项目从最初的隐私保护阶段一路发展到现在,经历了许多变化。值得一提的是,一些用户一直以来都在陪伴和支持我们,特别是那些从早期隐私产品测试阶段就积极参与的用户,他们帮助我们发现了很多问题,给予了重要的反馈。我们也非常重视这些用户的贡献,会将他们的支持考虑在未来的激励计划中。

具体的项目工作规则会在 TGE(代币生成事件)之前发布。同时,我们还准备了一些与 NFT 相关的激励活动。在此前的几轮测试中,我们已经发放了许多 NFT,这些 NFT 是赠送给用户的,虽然免费发放,但它们具备一定的价值。接下来,我们计划推出一些 NFT 和代币相关的活动。