berm-labs/berm

GitHub: berm-labs/berm

BERM 是 Solana 上首个参数化 DeFi cover 协议,通过预言机数据自动触发结算来覆盖智能合约漏洞、稳定币脱锚、罚没、清算和预言机偏差五类常见链上损失。

Stars: 0 | Forks: 0

# BERM [![网站](https://img.shields.io/badge/Site-berm.sh-5BC0EB?style=flat-square&labelColor=2A2A2A)](https://berm.sh) [![文档](https://img.shields.io/badge/Docs-architecture-D4AF37?style=flat-square&labelColor=2A2A2A)](docs/architecture.md) [![X](https://img.shields.io/badge/X-@berm__sh-F0EAD6?style=flat-square&labelColor=2A2A2A)](https://x.com/berm_sh) [![构建](https://img.shields.io/github/actions/workflow/status/berm-labs/berm/ci.yml?style=flat-square&labelColor=2A2A2A&color=5A6B7C)](.github/workflows/ci.yml) [![许可证](https://img.shields.io/badge/License-MIT-5BC0EB?style=flat-square&labelColor=2A2A2A)](LICENSE) [![Stars](https://img.shields.io/github/stars/berm-labs/berm?style=flat-square&labelColor=2A2A2A&color=FFD93D)](https://github.com/berm-labs/berm/stargazers) [![Rust](https://img.shields.io/badge/Rust-1.78%2B-D4AF37?style=flat-square&labelColor=2A2A2A)](https://www.rust-lang.org/) [![TypeScript](https://img.shields.io/badge/TypeScript-5.4%2B-5BC0EB?style=flat-square&labelColor=2A2A2A)](https://www.typescriptlang.org/) [![Solana](https://img.shields.io/badge/Solana-devnet-5A6B7C?style=flat-square&labelColor=2A2A2A)](https://docs.solana.com/) ## 什么是 BERM? BERM 是 Solana 上的首个参数化 DeFi cover 协议。当链上条件和预言机数据越过设定的阈值时,cover 头寸会自动结算——无需理赔裁定,无需文书工作,也没有不透明的资金池。五种 cover 类型针对 DeFi 中最常见的重大损失类别: - **ExploitCover** -- 防范导致受保协议 TVL 枯竭的智能合约漏洞。 - **DepegCover** -- 防范持续超过规定时间窗口的稳定币脱锚事件。 - **SlashingCover** -- 保护 LST 持有者免受验证者罚没(slashing)的影响。 - **LiquidationCover** -- 部分吸收来自 Marginfi、Kamino 和 Solend 头寸的清算损失。 - **OracleCover** -- 防范由预言机数据偏差导致的强制清算。 该系统被设计为一个 monorepo,包含九个 Rust / Anchor crate 和 TypeScript 包,其理论基础源自成熟的参数化结算和链上承保文献(Nexus Mutual、Sherlock、InsurAce 以及世界银行的指数化结算研究)。本仓库包含链上程序、SDK、CLI 和移动端客户端;Web 前端为专有资产,不包含在此处。 ## 架构 ``` %%{init: {'theme':'base','themeVariables':{ 'primaryColor':'#2A2A2A', 'primaryTextColor':'#F0EAD6', 'primaryBorderColor':'#5BC0EB', 'lineColor':'#5A6B7C', 'background':'#0A0E27', 'tertiaryColor':'#0A0E27', 'tertiaryTextColor':'#E8EAED' }}}%% flowchart TD Oracle[Pyth + Switchboard + Chainlink CCIP] -->|price + slash event| OA[oracle-adapter] Marginfi[Marginfi / Kamino / Solend] -->|liquidation event| OA OA -->|aggregated signal| CE[cover-engine] RU[risk-underwriter] -->|risk score| CE CE -->|trigger decision| AP[anchor-program] AP -->|payout instruction| PV[pool-vault Token-2022] PV -->|tokens| User[Cover Holder] AP -->|claim record| CR[claim-resolver] CR -->|dispute? vote| Gov[Governance, BERM holders] Gov -->|slash bad actor| AP ``` 完整的数据流和组件契约详见 [`docs/architecture.md`](docs/architecture.md)。 ## 仓库结构 ``` packages/ cover-engine/ parametric oracle trigger engine (Rust) anchor-program/ cover pool executor on Solana (Anchor 0.31) pool-vault/ Token-2022 cover pool vault risk-underwriter/ protocol risk scoring (Rust) claim-resolver/ auto-trigger + governance dispute (Anchor + Rust) oracle-adapter/ Pyth + Switchboard + Chainlink CCIP sdk-ts/ TypeScript SDK -- @berm/sdk cli/ npm global -- berm-cli mobile-app/ React Native BERM Alert docs/ architecture.md cover-spec.md security.md ``` Web 前端(cover 设计器 + 监控仪表盘)为专有资产,不属于本仓库的一部分。 ## 快速开始 ``` # Rust + Anchor cargo build --release anchor build # TypeScript SDK cd packages/sdk-ts && npm install && npm run build # CLI cd packages/cli && npm install && npm run build && npm pack npm i -g ./berm-cli-0.1.0.tgz # 移动客户端 cd packages/mobile-app && npm install && npm run typecheck ``` ## CLI 用法 ``` berm scan --wallet # scan wallet risk across cover types berm cover --type depeg --amount 1000 # purchase a cover position berm pool list # list active cover pools berm oracle status # show Pyth/Switchboard health berm claim --id # check claim auto-trigger status ``` 默认使用 `https://api.berm.sh` 和 devnet RPC `https://api.devnet.solana.com`。可以通过 `--cluster` 覆盖集群设置,或通过 `--api` 和 `--rpc` 覆盖端点。无需任何密钥。 ## Cover 类型详情 完整的触发条件和赔付公式详见 [`docs/cover-spec.md`](docs/cover-spec.md)。快速参考: | 类型 | 触发条件 | 时间窗口 | 严重程度 | |------|---------|--------|----------| | ExploitCover | TVL 下跌 > 35% + 异常提取 | 2 slots | 限制后的下跌比率 | | DepegCover | 价格 < 0.95 或 > 1.05 | 8 slots | 限制后的脱锚深度 | | SlashingCover | 质押信息源记录到验证者罚没事件 | 1 epoch | 罚没比例 | | LiquidationCover | Marginfi / Kamino / Solend 清算指令 | 1 slot | 可配置的 cover 比例 | | OracleCover | Pyth 与 Switchboard 偏差 > 1% | 4 slots | 偏差超出量 | ## 集群 BERM 目前在 **Solana devnet** 上运行,同时正在进行最终的审查和集成工作。程序 ID 在执行 `anchor deploy --provider.cluster devnet` 后会发布到 `target/idl/berm.json` 中。向 Mainnet 的迁移需经过额外审查,并将通过 @berm_sh 提前公告。 ## 安全性 在审阅 cover 引擎之前,请先阅读 [`docs/security.md`](docs/security.md)。关键不变量: - 所有结算都是预言机数据和链上状态的确定性函数。 - 双预言机 (Pyth + Switchboard) 控制着 DepegCover 和 OracleCover 的触发器。 - 资金池金库使用具有多重签名权限的 Token-2022。 - 理赔解析器维护着一条争议路径,可通过治理投票推翻由预言机触发的结算。 审计、威胁模型和披露政策记录在 `docs/security.md` 中。 ## 链接 - 网站:https://berm.sh - X:https://x.com/berm_sh - 文档:[`docs/architecture.md`](docs/architecture.md)、[`docs/cover-spec.md`](docs/cover-spec.md)、[`docs/security.md`](docs/security.md) ## 许可证 MIT。
标签:DeFi, Rust, Solana, 区块链, 可视化界面, 智能合约, 网络流量审计, 通知系统, 风险对冲