# Code4rena

> Code4rena是一个智能合约安全市场，提供有竞争力的审计，以发现DeFi和NFT领域行业领导者的协议中的漏洞...

- Canonical URL: https://iq.wiki/zh/wiki/code4rena
- Categories: Projects & Protocols
- Tags: Developer, Infrastructure, NFT Marketplace
- Created: 2023-11-23T07:50:42.000Z
- Last updated: 2023-11-24T09:08:55.269Z
- Source: IQ.wiki — the world's largest blockchain and crypto encyclopedia (https://iq.wiki)

---

**Code4rena** 是一个 [智能合约](https://iq.wiki/wiki/smart-contract) 安全市场，由一个25人的远程团队运营，为安全研究人员提供有竞争力的审计，以发现漏洞。 [\[1\]](#cite-id-lomagxfewoc)[\[2\]](#cite-id-9kyhhu4gww6)

## 概述

Code4rena 通过提供更广泛的协议覆盖和有保障的补偿，区别于传统的审计和漏洞赏金。zkSync、ENS、[Chainlink](https://iq.wiki/wiki/chainlink) 和 [Opensea](https://iq.wiki/wiki/opensea) 等著名的 [DeFi](https://iq.wiki/wiki/defi) 和 [NFT](https://iq.wiki/wiki/non-fungible-token-nft) 行业领导者已经与 Code4rena 合作，以确保其协议安全并加速进入市场。该平台提供 48 小时的审计启动，已在 280 次审计中发现了超过 950 个高危漏洞，每次竞赛平均有 70 名专业审计员参与。[\[1\]](#cite-id-lomagxfewoc)[\[3\]](#cite-id-8x0131fjx4f)

在 Code4rena 生态系统中，守护者进行审计以保护 DeFi 领域，而赞助商建立奖金池以激励守护者审计他们的项目。法官在评估发现的重要性、有效性和质量以及评估守护者表现方面发挥着关键作用。独特的 C4 审计不同于漏洞赏金和传统的审计方法。[\[3\]](#cite-id-8x0131fjx4f)




## 角色

#

## 典狱官
##

## 角色和职责

管理员的主要职责是通过进行彻底的代码审计来保护[去中心化金融（DeFi）](https://iq.wiki/wiki/defi)生态系统。这些审计为具有不同技能的人提供了获得奖励的机会，同时展示了他们为更安全的DeFi环境所做的贡献。 [\[4\]](#cite-id-dxivpv3cgpt)


##

## 参与流程

任何个人都可以申请成为守卫者并参与 Code4rena 的审计。申请流程结束后，获得批准的守卫者可以加入 Discord 社区，并表达他们对正在进行的审计的兴趣。Code4rena 网站是访问开放和即将进行的审计详情的中心，包括奖金池大小、开始和结束日期以及相关信息。鼓励守卫者在参与代码审计之前熟悉 Code4rena 的行为准则。 [\[5\]](#cite-id-byofslx013r)

##

## 团队注册

对于希望注册团队的用户，流程包括首先注册个人 Warden 账号，然后创建团队。Code4rena 网站允许团队领导管理成员和更新付款信息。所有团队注册都需要经过 Code4rena 团队的审核。 [\[6\]](#cite-id-ybyp1xwjlaq)

##

## 审计时间线

大多数 Code4rena 审计通常运行 3-7 天，于 UTC 时间 20:00 开始和结束。 [\[7\]](#cite-id-ork265t348)

##

## 提交政策

赏金猎人遵循明确的提交政策，确保负责任和合乎道德地披露漏洞。报告可以在审计停止时间之前提交，并遵守指定的格式和指南。高危、中危和QA报告可以单独或集体提交，分析报告则提供对代码库的整体审查。Code4rena 强制执行严格的审计截止日期，不接受延迟提交。如果意外提交到错误的审计，赏金猎人可以重新提交到正确的审计，并遵循特定的撤回步骤。 [\[8\]](#cite-id-jda96vegxda)


###

## 问题和社区互动

Code4rena鼓励在指定的渠道中提出问题和进行讨论，以确保清晰度和理解。社区积极协作以解决疑问，并欢迎对政策改进提出建议。 [\[9\]](#cite-id-maicwh0ou9r)

###

## 知识产权和授权

看守者对其发现中包含的背景知识产权授予 Creative Commons 0 1.0 许可，以确保透明度和协作。Code4rena 授权并认可看守者的善意努力，提供支持，并且不会就授权的研究活动采取法律行动。 [\[10\]](#cite-id-hpuyo2oginv)

#

## 赞助商

##

## 发起赞助

赞助者通过购买竞争性审计参与Code4rena，这包括创建奖励池以激励审查员仔细检查其项目代码。任何寻求Code4rena审计的项目都可以提交赞助请求，启动合作流程。 [\[11\]](#cite-id-9sks0nolpwn)

##

## 审计范围界定

在提交请求后，Code4rena 团队会评估项目存储库，审查响应和合约，并推荐合适的审计包。范围界定阶段涉及技术细节，例如代码行数统计和测试覆盖率百分比，以准确评估审计的范围。 [\[12\]](#cite-id-gnq3m8fgxe6)

##

## 确定奖励池

为了在竞争激烈的市场中吸引有技能的审计员，Code4rena 根据审计范围确定了标准奖励池规模。奖金池大小是吸引审计员人才的关键因素，赞助商可以灵活地增加奖励池，从而获得更多关注。 [\[11\]](#cite-id-9sks0nolpwn)

###

## 分配池

Code4rena将每次审计奖励池的一部分分配给分析（5%）和有效的[gas](https://iq.wiki/wiki/gas)优化（2.5%）。分析提供高层次的建议和审查，提供超越特定错误报告的宝贵见解。gas优化池旨在激励那些为用户最小化gas费用的解决方案。[\[11\]](#cite-id-9sks0nolpwn)

##

## 组织费用

组织费用是独立于审计池之外的费用，用于支付 Code4rena [DAO](https://iq.wiki/wiki/dao) 的组织成本。该费用用于组织、推广和报告审计相关的工作。 [\[11\]](#cite-id-9sks0nolpwn)

##

## 审计安排和流程

标准的一周审计遵循固定的时间表，在工作日的 20:00:00 UTC 开始和结束。赞助商必须支付押金以确认时间安排。审计仓库，包括代码、文档和注释，应在审计开始前至少 48 个工作小时设置好，以便进行高效和有效的代码审查。 [\[11\]](#cite-id-9sks0nolpwn)

###

## 审计期间和之后

在整个审计过程中，赞助商必须遵守代码冻结，以维持公平的竞争环境。鼓励赞助商安排团队成员在 C4 Discord 服务器中私下回答 warden 的问题。审计结束后，赞助商审查结果，协助识别重复项，并参与缓解审查阶段，以解决已发现的问题。 [\[11\]](#cite-id-9sks0nolpwn)

###

## Code4rena 缓解审查

缓解审查涉及赞助团队与表现最佳的审查员合作，解决并验证审计期间发现的高风险和中等风险问题的缓解措施。此阶段包括类似于初始审计竞赛的审查和判断过程。 [\[11\]](#cite-id-9sks0nolpwn)


##

## 为 Code4rena 审计做准备

为了最大化 Code4rena 审计的价值，建议赞助商准备一个包含工作命令的独立仓库，确保仓库和 README 的组织性，如果可能的话分享一个视频演练，并在 C4 Discord 中保持活跃，以便快速访问 warden 的问题。 [\[13\]](#cite-id-jsihksbx298)

#

## 法官

法官在 Code4rena 竞争性审计模型中扮演着关键角色，负责确定赏金猎人提交的发现的严重性、有效性和质量。这种公正的评估是 Code4rena 平台整体成功的根本。 [\[14\]](#cite-id-0j4wmzslilyf)

##

## 选择和公正性

为了确保与赞助商保持一致并在严重性评估中保持客观性，Code4rena为每次审计选择公正的评委。评委独立审查赏金猎人的发现和赞助商的意见，使Code4rena能够公平地对审计报告的发现进行分类。社区授予评委确定严重性的最终权力，评委根据审计池的百分比获得报酬。 [\[14\]](#cite-id-0j4wmzslilyf)

##

## 成为一名法官

法官是 Code4rena 中一个受人尊敬且至关重要的角色，需要经过仔细的选拔过程。通常是 DeFi 社区的知名成员，根据之前的评审经验获得推荐。社区法官从 C4 社区内部自选，必须满足特定标准，包括参与 Code4rena 审计、发现漏洞以及遵守公平和清晰沟通等非技术标准。 [\[14\]](#cite-id-0j4wmzslilyf)

###

## 法官选拔流程

法官申请由C4法官选拔委员会每月审查，该委员会由排行榜顶尖的守护者和过去的法官组成。委员会评估申请，并提供“是”或“尚未”的决定。虽然守护者可以转变为法官，但他们必须放弃在同一审计中因发现而获得的奖励，以确保公正性。 [\[14\]](#cite-id-0j4wmzslilyf)

##

## 审计评审

评审过程理想情况下在交接后48小时内完成。评审员会收到关于评审工具的技术文档，评审过程会考虑赞助商的反馈、代码库验证以及对严重性和有效性的评估。评审员的角色延伸到与赞助商的讨论和最终确定一份综合报告。 [\[14\]](#cite-id-0j4wmzslilyf)

评审员遵循特定指南，审查技术文档和过去的审计报告以供参考。任何与智能合约逻辑不直接相关的提交都被认为是质量保证。评审员会权衡赞助商的反馈，但决策保持独立。鼓励与赞助商进行讨论以澄清问题，评审员必须为更改严重性评估提供理由。 [\[14\]](#cite-id-0j4wmzslilyf)

在交接结果之前，评审员会在得分最高的质量保证报告顶部添加评论，指出对严重性或无效项目的不同意见。这些信息有助于最终报告，评审员会向Code4rena竞赛管理员沟通他们对评审后质量保证和奖励分配的准备情况。在整个评审过程中，鼓励在#judges Discord频道或私信中进行公开沟通。 [\[14\]](#cite-id-0j4wmzslilyf)


#

## 认证贡献者

Code4rena提供了一个平台，供社区成员积极贡献，认证贡献者通过身份验证和协议享受更多机会。此认证为Code4rena生态系统内的各种角色和职责打开了大门。 [\[15\]](#cite-id-o6wkw67gyj)

##

## 合格的角色

经过认证的贡献者可以参与私有或仅限邀请的竞赛，担任侦察员角色以进行范围界定和赛前代码情报收集，参与赛后分类和赛后质量保证，提供缓解审查服务，甚至可以通过 Code4rena 提供单独的审计和咨询服务。正在考虑的其他机会包括特定的代币奖励和潜在的未来奖励考虑。 [\[15\]](#cite-id-o6wkw67gyj)

##

## 认证过程

认证过程通过第三方 (Provenance) 执行，优先考虑隐私。贡献者提交申请，同意认证贡献者条款和条件，接受身份验证，并签署行为准则和保密协议。Code4 Corporation 收到认证确认，无需访问个人信息，从而确保贡献者的隐私。 [\[16\]](#cite-id-6qe73c6td3u)

###

## 约束  
  
经过认证的贡献者受到合同协议的约束，任何违规行为都可能导致Code4rena Cayman Foundation采取补救措施。涉及漏洞的指控会触发Provenance向当局提供识别信息，强调遵守认证条款的重要性。 [\[17\]](#cite-id-qlpo8edzx5)  
  
##

## +后台管理员

表现突出的认证贡献者满足特定绩效标准后，可获得 Code4rena 审计的“+Backstage”权限，从而可以立即访问发现结果存储库、参与审计后分类以及参与评审后质量保证。标准包括认证批准、参与至少三次 Code4rena 审计、特定严重程度的发现结果以及遵守认证贡献者条款和条件。 [\[18\]](#cite-id-gl639uwxrwg)

###

## 请求 +Backstage 访问权限

符合资格标准的认证贡献者可以通过指定流程提交 +Backstage 访问权限的请求。Code4rena 工作人员将在批准后协助设置。 [\[19\]](#cite-id-yg0dujcvnqd)

###

## 职业行为准则

认证贡献者必须遵守职业行为准则，确保以客观、合作和知识开放的方式对待调查结果。尊重所有社区成员，并在审计报告公开之前保持机密性，是维持+Backstage角色的重要组成部分。 [\[18\]](#cite-id-gl639uwxrwg)

##

## 瞭望员

瞭望员在 Code4rena 中扮演着关键角色，他们审查和组织提交给竞赛的内容，从而减轻项目团队的工作量，并为评审准备存储库。要成为瞭望员，个人可以由信誉良好的法官或瞭望员提名，也可以自荐。该角色要求至少参加过三次 Code4rena 审计，证明有发现，并承诺公平和有效的书面沟通。 [\[20\]](#cite-id-nge5yafwgqa)

###

## 申请流程

申请人填写一份综合表格，分享一份简短的个人简介、相关经验和提交的例子。申请每月审核一次，成功的候选人会收到通知。 [\[20\]](#cite-id-nge5yafwgqa)

##

## 侦察员

Code4rena 侦察员专注于范围界定和预审计情报，评估诸如图书馆依赖性、外部调用、时间锁和代码行数等因素。他们的见解有助于优化审计参数。侦察员在审计开始前审查提议的代码和存储库，提供关于范围界定准确性和存储库准备情况的反馈。在审计期间，侦察员监控公共代码存储库，确保符合指南。侦察员的报酬包括每次竞赛 500 美元 [USDC](https://iq.wiki/wiki/usdc) 的固定费用。 [\[21\]](#cite-id-orviyttlpym)

###

## 选拔过程

由于角色的敏感性，侦察员目前由 Code4rena 团队精心挑选，这反映了其贡献中精确性和可靠性的重要性。 [\[21\]](#cite-id-orviyttlpym)

## 奖项

#

## 激励模型和评分系统

Code4rena采用独特的评分系统，旨在实现双重目标：奖励参赛者发现独特的漏洞，并保护审计免受女巫攻击。该系统还鼓励参赛者之间的合作。 [\[22\]](#cite-id-d88xgbnm52v)

##

## Warden 激励

参赛者根据漏洞的严重程度获得份额，中风险和高风险漏洞会计算份额。评分系统采用按比例分配模型，确保公平的奖励。此外，对于包含在审计报告中的最佳提交，每个独特的高风险或中风险发现将获得 30% 的份额奖励。[\[22\]](#cite-id-d88xgbnm52v)

##

## 处理重复提交和部分奖励

识别出相同功能漏洞的问题被认为是重复的，奖励会相应地共享。未能有效证明最高严重性案例合理的提交可能会获得“部分奖励”，法官可酌情将奖励除以2或4。 [\[22\]](#cite-id-d88xgbnm52v)

##

## 机器人竞赛

每个 Code4rena 审计的最初一小时都会进行机器人竞赛，优先考虑高质量的自动化发现。获胜的机器人报告将与所有审核员共享，并将某些发现指定为超出奖励范围，从而简化工作并使人工审核员专注于独特的挑战。 [\[23\]](#cite-id-ey5cryjxi0b)


##

## 分析、质量保证（QA）和Gas优化报告

鼓励安全审计员提交分析报告以及漏洞报告，以竞争奖金池的一部分。质量保证（QA）和Gas优化报告侧重于高危和中危漏洞，根据质量进行评分并奖励，以确保高质量和价值。每个类别（分析、QA报告和Gas报告）中最好的报告将获得30%的奖金份额。值得注意的是，即使被选中包含的B级报告，在比例奖励和奖金考虑方面也被视为A级报告。 [\[22\]](#cite-id-d88xgbnm52v)

##

## QA和Gas优化报告的曲线逻辑

对QA和Gas报告进行评分涉及一个三层系统（A、B或C级），对应于奖励池的不同部分。如果分数相同，则相应名额的总奖励将在并列报告之间分配。 [\[24\]](#cite-id-7q6vfxpw38d)

#

## 评判标准

评判在奖励过程中起着至关重要的作用，他们评估严重性、有效性、重复性和报告质量。这些决定会经过48小时的质量保证流程，以确保公平性和质量。 [\[25\]](#cite-id-mahllu8y69)

##

## 满意/不满意提交

被认为不满意的提交作品没有资格获得奖励。合格提交的标准设定在与专业审计师的报告草案相当的水平，强调技术实质和有效的沟通。 [\[25\]](#cite-id-mahllu8y69)

##

## 分析的评判标准

分析报告分为A、B或C等级，A级报告得分为2。最佳分析会被选中并纳入审计报告，从而影响C4严重性标准的演变。 [\[25\]](#cite-id-mahllu8y69)

#

## 公平性和有效性

Code4rena 强调公平、公正和一致性，参与者应遵守既定角色和原则。该系统不断发展，解决挑战并改进流程，以造福所有利益相关者。 [\[26\]](#cite-id-eoohpi0v50a)

##

## 规则的演变

规则的持续演变受到一个标准的指导，该标准概述了有效性的主观阈值。该标准旨在为提交作品的质量建立标准，并为参赛者提供清晰度，从而促进公平和相互认可的基线。与规则改进相关的问题和建议会公开讨论和记录，以便进行迭代改进。 [\[25\]](#cite-id-mahllu8y69)
