MPC Wallet
MPC,全称为Multi-Party Computation,是一种重要的加密安全措施。其包含了很多种技术方案,在本文的语境下主要指MPC-TSS。而MPC钱包,是通过对私钥进行多方计算在链下实现“多签“、”跨链“等等更复杂的验证方式。
简单来说,就是将一个私钥打碎成多片,将私钥碎片交与一个去中心化的网络(Multi-Party多方)进行计算和加密。当需要私钥签名时,则将多方碎片再拼接起来形成一个完整的私钥。MPC的核心思路为分散控制权以达到分散风险或提高备灾的目的,有效避免了单点失败等安全问题。
MPC钱包“多方参与”的概念与“多签钱包”有些类似,但实际上,虽然都可以实现“多签”的功能,二者的实现途径是不一样的。
之前我们所熟知的多签钱包,比如Gnosis Safe等等,是建立在智能合约上的钱包,合约中定义了验证逻辑,比如如果需要验证一笔交易,需要一个以上的私钥,或者五个中至少三个私钥进行验证。这类钱包属于后文即将提到的智能钱包的一种。
而MPC钱包,则是将一个私钥分解成多个片段,验证过程只涉及到一个私钥。并且计算网络是链下的,与智能合约并无联系。
Smart Wallet
智能合约钱包,正如其名,是基于智能合约(CA)而不是外部账户的钱包。市面上已经有不少的智能合约钱包,但因为这些智能合约是自定义的,缺乏统一的行业标准,且存在合约漏洞以及与其他合约兼容性等等问题未获得广泛的应用。
即将来临的以太坊上海升级,智能合约钱包又因为“账户抽象”提案EIP-4337的重大进展而再次成为了热议的话题。那么账户抽象到底是什么意思呢?实现了账户抽象后,又能给用户带来怎样全新的体验?在了解以太坊上的账户抽象之前,我们首先需要了解“抽象”的概念。
“抽象”是计算机科学最重要的概念之一,指在向外界提供必要的关键信息的同时隐藏其后台的实现细节,使得开发者在处理一个抽象层的任务时,只需要专注于这一个抽象层。
账户抽象同理,我们作为钱包用户,需要考虑很多因素,比如gas price、gas limit、事务阻塞等等复杂的费用逻辑。其根本原因是钱包不够“抽象”,导致需要处理很多本不应该由用户处理的问题。那如何解决呢?
逻辑很简单,我们可以将外部账户和合约账户抽象,使外部账户与合约账户相“结合”,通过智能合约赋予EOA钱包更加复杂的逻辑。智能合约钱包能够实现的功能也不止“多签”这一个场景了。
如果EIP-4337能够实现以太坊账户的系统性升级,作为用户能获得什么新的体验呢?理论上只要能通过智能合约代码定义的功能都能实现。首先,智能合约钱包可以通过非secp256k1的验证算法进行验证,用户不需要面对长长的密钥对和助记词。
智能合约还可以赋予密钥更多的逻辑。比如在多签的场景下,给每一个私钥定义不同的权限:50USDC以下的交易需要私钥A签名,50USDC以上的交易需要私钥B签名,超过2000USDC的交易需要私钥ABC共同签名等等。
此外,通过移动端与区块链交互会变得更加容易,我们可以授权一个专属于手机的密钥,且可以定义这个密钥加上限制,比如只能与固定几个智能合约交互,或者智能验证数额较小的交易等。其他能够实现的功能还包括一键授权批量交易、交易黑名单等等。总之,智能合约钱包的想象空间非常大。
原链接:https://www.panewslab.com/zh/articledetails/32u6r3790359.html