Iyamura/RemitBridge-contracts

GitHub: Iyamura/RemitBridge-contracts

RemitBridge 是基于 Stellar 区块链的 Soroban 智能合约套件,通过稳定币和链上审计解决跨境薪资与援助发放的高成本、慢速度及合规透明度问题。

Stars: 0 | Forks: 1

# RemitBridge Contracts **用于 Stellar 上跨境薪资和援助发放的 Soroban 智能合约。** [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![OpenTrust Ecosystem](https://img.shields.io/badge/OpenTrust-Ecosystem-purple)](https://opentrust.dev) [![Stellar](https://img.shields.io/badge/Stellar-Testnet-brightgreen)](https://stellar.org) ## 合约 | 合约 | 路径 | 描述 | |---|---|---| | **Compliance** | `contracts/compliance` | 具备 48 小时撤回窗口的链上发放审计日志 | | **Payroll** | `contracts/payroll` | 定期薪资调度 —— 跟踪下一次支付的时间戳 | | **Multisig** | `contracts/multisig` | 用于大额发放提案的 N-of-M 审批门 | ## 前置条件 - [Rust](https://rustup.rs/) 及 `wasm32-unknown-unknown` 目标 - [Stellar CLI](https://developers.stellar.org/docs/tools/developer-tools/stellar-cli) (`stellar`) ``` rustup target add wasm32-unknown-unknown cargo install --locked stellar-cli --features opt ``` ## 构建 ``` # 构建所有 contracts cargo build --target wasm32-unknown-unknown --release # 或构建单个 contract cargo build -p remitbridge-compliance --target wasm32-unknown-unknown --release ``` 编译后的 `.wasm` 文件将写入 `target/wasm32-unknown-unknown/release/`。 ## 测试 ``` cargo test ``` ## 部署 (Stellar Testnet) ``` stellar contract deploy \ --wasm target/wasm32-unknown-unknown/release/remitbridge_compliance.wasm \ --source \ --network testnet ``` 对 `remitbridge_payroll.wasm` 和 `remitbridge_multisig.wasm` 重复此操作。 ## 合约接口 ### Compliance | 函数 | 描述 | |---|---| | `init(admin)` | 设置 admin 地址(仅一次) | | `log_disbursement(org_id, recipient, amount, currency)` | 记录一次发放;返回索引 | | `clawback(caller, index)` | 在 48 小时内撤销一次发放(仅限 admin) | | `get_record(index)` | 读取发放记录 | | `record_count()` | 存储的记录总数 | ### Payroll | 函数 | 描述 | |---|---| | `init(admin)` | 设置 admin 地址(仅一次) | | `schedule(caller, org_id, recipient, amount, currency, interval_secs)` | 创建一个定期条目 | | `cancel(caller, index)` | 停用一个 payroll 条目 | | `mark_paid(caller, index)` | 在结算后将 next_payout 时间戳向后推移 | | `get_entry(index)` / `entry_count()` | 读取调度状态 | ### Multisig | 函数 | 描述 | |---|---| | `init(signers, threshold)` | 配置签名者集合和审批阈值 | | `propose(proposer, description, amount, recipient)` | 提交发放提案 | | `vote(signer, proposal_id, approve)` | 批准或拒绝提案 | | `execute(signer, proposal_id)` | 将已批准的提案标记为已执行 | | `get_proposal(id)` / `proposal_count()` | 读取提案状态 | ## 生态系统 RemitBridge 合约被以下项目使用: - **[RemitBridge API](https://github.com/richardiyamura/remitbridge-api)** — 调用这些合约并与 TrustFlow / FlowIndexer 集成的 Node.js 后端 - **TrustFlow** — 在 multisig 层强制执行的信任分数门槛资金分配 - **FlowIndexer** — 读取合约事件以用于分析的链下 indexer ## 许可证 MIT
标签:Rust, Stellar, Web3, 区块链, 可视化界面, 智能合约, 网络流量审计, 跨境支付, 通知系统