Blockchain Capital :探究基于隐私保护的智能合约速率限制
通过限制每个用户的请求数量,有助于防止恶意行为者或机器人滥用服务或资源。
原文来源:BlockchainCapital
原文作者:Ryan Sproule,BlockchainCapital 研究工程师
原文标题:Privacy-PreservingSmartContractRateLimiting
编译:Yvonne,MarsBit
介绍
随着在线自主代理(onlineautonomousagents)复杂性的提高,限制它们对资源的访问将变得越来越困难。建立一种注重隐私的方法来微调实体和智能合约之间的交互速率是至关重要的。这种方法对于防止高阶参与者利用系统至关重要。
速率限制
速率限制是一项关键技术,用于控制用户在指定时间段内对资源的请求频率。在大多数基于Web的系统中,该技术是不可缺少的,它可以防止拒绝服务(DoS)攻击,在这种攻击中,单个实体可以垄断所有服务器资源。任何速率限制系统的基石都是能够生成速率限制“密钥”——发出请求的实体的唯一标识符。在Web2.0系统的环境中,这可以是用户的IP地址或每个电子邮件、电话号码等唯一的帐户ID。然而,这些策略并非不受“Sybil”(女巫)攻击的影响。在“Sybil”攻击中,单个实体操纵多个速率限制密钥(如ip或帐户),使Web服务难以辨别请求来自同一实体。
同样,以太坊和其他抗审查的公共智能合约平台也面临着类似的问题。例如与NFT相关的智能合约,它可能需要一种机制来防止单个用户铸造所有的NFT。目前,这是一个复杂的问题,因为没有可靠的方法来确定来自多个账户的交易是否确实来自单独的实体。换句话说,帐户(公钥)和单个人类用户之间没有明确的相关性。
保护隐私的灵活速率限制库:n-per-epoch
点击此处查看这一合约修饰符的开源实现。该修饰符使合约创建者能够设置特定用户在定义的epoch内可以调用函数的次数限制。epoch持续时间非常灵活,允许开发者将其设置为接近无穷大(1/forever)或非常短的一段时间,以获得更高的吞吐量。
保护隐私
至关重要的是,我们用于链上速率限制的密钥在默认情况下是保护隐私的。区块链行业的现状是,用户跨应用程序的历史记录是完全透明的。
你会注意到这些合约根本不关心msg.sender。这是设计好的!在底层,它通过使用semaphore库来利用零知识的包含证明。合约通过提供的zk证明来执行授权,而不是依赖于交易的签名者。ERC4337风格的帐户抽象可以轻松地利用这种类型的身份验证来将链上操作完全匿名化。
人类
从理论上讲,任何信号量组都可以用作该速率限制背后的匿名集。此示例使用一个已经非常大且具有一些唯一属性的组,例如保证集合中的每个条目都是人类。
这一例子利用了由Worldcoin开发的现有“匿名集”,其中包括大约180万经过验证的人类用户。Worldcoin通过扫描每个人的虹膜并确保每个虹膜之前没有被添加到集合中来建立这一集合。要使用不同的集合,只需在设置中修改groupId。
为什么限制速率是可行的?
关于【Blockchain Capital :探究基于隐私保护的智能合约速率限制】的延伸阅读
Pantera 合伙人:一文看懂兼容 EVM 的比特币经济层 L2 Mezo
Mezo是一家旨在解决比特币生态系统中可扩展性和可编程性问题的公司,由资深专业人士领导。他们最近获得了2100万美元的融资,受到顶级投资公司的关注。通过构建兼容EVM的比特币层,Mezo将释放比特币在DeFi和其他领域的新潜力,成为塑造比特币未来的重要力量。
Movement的公链新解:“将 Move 引入 EVM”如何重塑以太坊与 Move?
LFG Labs推出基于Move语言的以太坊L2,旨在将Move系智能合约的安全性和高性能与EVM系的流动性和用户群结合。Movement SDK提供了模块化的MoveVM虚拟机、编译器和自定义适配器,解决了Move生态系统的破碎化问题。M1和M2公链架构集成了以太坊虚拟机,允许开发者在M2上启动并引入EVM系的DApp。M2使用零知识证明提高隐私和安全性,同时支持EVM和Move语言编写的智能合约。顶级VC机构已开始布局,为新的场景用例和生态增长奠定基础。
防止滥用:通过限制每个用户的请求数量,有助于防止恶意行为者或机器人滥用服务或资源。这确保了真正的用户能够公平地访问系统,而不会被自动脚本或攻击所排挤。
鼓励公平分配:在资源、奖励或机会有限的场景中,限制人类用户的速率可以确保更公平的分配。这可以帮助防止少数用户垄断对有价值资产或服务的访问,例如NFTdrops或测试币。
增强用户体验:在资源受限的情况下,限制速率可以帮助合法用户持续获得流畅的响应体验。通过防止系统过载或资源耗尽,它确保用户可以在不中断的情况下继续与应用程序交互。
管理成本:在区块链应用程序中,限制费率的人类用户可以帮助管理与Gas费或其他运营费用相关的成本。通过控制交易或函数调用的频率,服务提供商可以优化其费用,同时仍然为用户提供有价值的服务。
保护隐私:通过关注人类用户并利用隐私保护技术,可以在不损害用户隐私的情况下实现速率限制。这在去中心化系统中尤为重要,在去中心化系统中,对系统的信任通常建立在用户隐私和数据安全的基础上。
用例
Gas-sponsoring中继器:中继器旨在为其应用的人类用户提供Gas,同时防止单个用户耗尽资源。该库有效地使协议能够管理单个用户的资源分配。
水龙头:以可控的速度将资产分配给人类用户,防止滥用。
奖励社交网络上的用户互动:限制费率有助于限制垃圾邮件的影响,同时仍然鼓励真正的用户参与。
稀缺资源的公平分配(例如,NFTdrops):通过实施速率限制,每个人类用户可以被允许铸造特定数量(例如,每小时一个)资产,促进公平分配。
结论
随着在线自主代理越来越复杂,限制对资源的访问将变得越来越具有挑战性。如果我们要防止一小部分复杂的参与者滥用系统,那么一种保护隐私的方式,对实体与智能合约交互的速率进行精细控制将是至关重要的。
免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:MarsBit,如有侵权请联系删除。转载或引用请注明文章出处!
标签:智能合约