【源代码验证】Cover如何为IC生态提高透明度和信任度
文章来自于|Cover Medium
翻译|DfinitySZ
投稿、转载请联系|DfinitySZ小助手
Cover(Code Verification的缩写)是Psychedelic工作室旗下的一项开放互联网服务,其愿景是帮助任何人验证容器源代码的可信度。本期文章带各位小伙伴探讨Cover如何为IC生态提高透明度和可信度。
Cover于11月20日上线Alpha版本,开发人员可以轻松的将Cover集成到他们的开发流程中,每当容器创建新的WASM时,Cover会将WASM与构建信息(存储库、构建日志)一起发送到Cover的注册表中,并将此信息中提供的WASM校验与主网上的实时容器进行比较,如果WASM校验相匹配,则开发者提供的源代码|构建生成WASM 文件被验证。
注意:WASM文件中的唯一哈希/校检,对于它包含的代码是唯一的,因此Cover可以将开发者提交到注册表的源代码|WASM文件等与实时容器中的WASM校验进行比较匹配,如果两者相匹配,则开发者提供的源代码是可信的。
如果不存在匹配(例如,开发人员在没有通知Cover的情况下进行了更新,或使用潜在的恶意版本),提交到注册表中的源代码会被判定为未验证。
Cover通过促进透明模型来降低恶意行为者(修改代码或不安全的做法),在该模型中任何开发者可以通过提交他们的源代码进行验证增加其项目的透明度和信任度。
IC上的代码透明性
在Internet Computer生态的早期发展阶段中,许多标准和安全实践正正积极进行和讨论(从Token|NFT的标准到智能合约和基础设施等)。
在这种情况下,要确保容器代码是否安全或公开源代码是否与实时容器相匹配主要取决于信任,特别是在容器一旦上线,容器中的WASM代码就不能完全被审计,因此在现有阶段源代码审计尤为重要。
在未来发展中Cover会成为一个灵活且自动化的工作流程,供于任何人集成和验证。
Cover的运作
Cover的组成架构方面非常简单,重要的组件分为两个:
Cover registry(Cover注册表):它接收来自于与容器ID相关的源代码和WASM文件。
Cover Github Action(入口点):开发者通过该入口点向Cover注册表提交源代码,Github Action将提交的CanisterID、WASM校验等信息进行快照,并保存在Cover的注册表中供于验证。Cover的Alpha版本仅包含Github Action作为其提交入口点,后续迭代还会添加更多入口点服务于开发者。
其他辅助组件:
Lambda Service:将GitHub Action连接到 Cover 注册表。
ProviderAPI:用于输入提交的Cover API。
UserAPI:用于创建请求的Cover API。
GeneralAPI:用于查询容器的验证状态。
AdminAPI:用于未来的提交入口点。
总结
基于SNS还未上线,容器的更新都是由控制器管理的,在这层环境下可能会衍生出开发者与社区之间的信任隔阂,因此拥有一个源代码验证服务对于社区来说尤为重要。
近期发展:Cover的Alpha版本只迈出了源代码验证的第一步,在后续的迭代中将会有更多的强化改进。
Cover官网:covercode.ooo
Cover使用文档:docs.covercode.ooo
Cover Github:github.com/psychedelic/cover
必看周刊
生态精选
寻宝回顾
精彩活动
联系我们
t.me/DfinitySZ
dfisz.com
twitter.com/DfinitySZ
twitter.com/DfinitySZCN
reddit.com/user/DfinityShenZhen