一个基于Hyperledger Besu和ACA-Py的跨链可验证凭证系统,支持在两个Besu区块链之间进行安全的跨链转账和VC验证。
- 跨链互操作性: 支持两个独立的Besu区块链之间的资产转移
- 可验证凭证: 集成ACA-Py实现W3C标准的可验证凭证
- 智能合约: 使用Solidity编写的跨链代币和桥接合约
- Web界面: 现代化的Web应用,支持实时监控和操作
- 安全性: 基于密码学证明的跨链验证机制
┌─────────────────┐ ┌─────────────────┐
│ Besu Chain A │ │ Besu Chain B │
│ │ │ │
│ ┌─────────────┐ │ │ ┌─────────────┐ │
│ │Token Contract│ │ │ │Token Contract│ │
│ └─────────────┘ │ │ └─────────────┘ │
│ ┌─────────────┐ │ │ ┌─────────────┐ │
│ │Bridge Contract│ │ │ │Bridge Contract│ │
│ └─────────────┘ │ │ └─────────────┘ │
└─────────────────┘ └─────────────────┘
│ │
└───────────┬───────────┘
│
┌─────────────────────┐
│ Oracle Service │
│ (Cross-chain Sync) │
└─────────────────────┘
│
┌─────────────────────┐
│ ACA-Py Services │
│ (VC Issuer/Holder) │
└─────────────────────┘
│
┌─────────────────────┐
│ Web Application │
│ (Monitoring & UI) │
└─────────────────────┘
- Python 3.8+
- Node.js 16+
- Docker & Docker Compose
- Java 11+ (for Besu)
- Go 1.19+ (for ACA-Py)
-
克隆项目
git clone https://github.com/mmjd2019/cross-chain.git cd cross-chain -
启动Besu区块链
# 启动两个Besu节点 docker-compose -f docker-compose1.yml up -d docker-compose -f docker-compose2.yml up -d -
部署智能合约
cd contracts/kept python3 deploy_contracts.py -
启动ACA-Py服务
# 启动发行者服务 aca-py start --admin 0.0.0.0 8080 --admin-insecure-mode --endpoint http://localhost:8080/ --inbound-transport http 0.0.0.0 8080 --outbound-transport http --log-level info --auto-provision --wallet-type indy --wallet-name issuer --wallet-key issuer --genesis-url http://localhost:9000/genesis # 启动持有者服务 aca-py start --admin 0.0.0.0 8081 --admin-insecure-mode --endpoint http://localhost:8081/ --inbound-transport http 0.0.0.0 8081 --outbound-transport http --log-level info --auto-provision --wallet-type indy --wallet-name holder --wallet-key holder --genesis-url http://localhost:9000/genesis
-
启动Web应用
cd webapp pip install -r requirements.txt python3 enhanced_app.py -
访问应用
- 主页: http://localhost:3000
- VC数据页面: http://localhost:3000/vc-data
- 支持在两个Besu链之间转移代币
- 基于锁定-释放机制的跨链验证
- 实时交易状态监控
- W3C标准可验证凭证支持
- 身份证明、学历证书、工作证明等
- 完整的VC生命周期管理
- 区块链状态实时监控
- 智能合约变量展示
- 交易历史记录
- 现代化响应式设计
- 实时数据更新
- 移动端支持
cross-chain-vc-system/
├── contracts/ # 智能合约
│ └── kept/
│ ├── SimpleCrossChainTokenWithBridge.sol
│ ├── deploy_contracts.py
│ └── web3_fixed_connection.py
├── webapp/ # Web应用
│ ├── enhanced_app.py # 主应用
│ ├── templates/ # HTML模板
│ ├── requirements.txt # Python依赖
│ └── start_vc_data_app.sh # 启动脚本
├── acapy/ # ACA-Py配置
├── docker-compose1.yml # Besu Chain A
├── docker-compose2.yml # Besu Chain B
├── ibft1.json # IBFT配置
├── ibft2.json # IBFT配置
└── README.md # 项目说明
主要的跨链代币合约,支持:
- ERC20标准代币功能
- 跨链锁定和解锁机制
- 桥接合约集成
- 余额管理
主要功能:
crossChainLock(): 锁定代币用于跨链转移crossChainUnlock(): 在目标链解锁代币getLockedBalance(): 查询锁定余额mint()/burn(): 代币铸造和销毁
GET /api/status- 获取系统状态GET /api/contracts- 获取合约信息
POST /api/transfer- 执行跨链转账GET /api/transfer-history- 获取转账历史
GET /api/vc-list- 获取VC列表GET /api/vc-detail/<vc_id>- 获取VC详情
GET /api/contract-variables- 获取合约内部变量
- 密码学验证: 基于Ed25519签名的VC验证
- 跨链安全: 锁定-释放机制确保资产安全
- 访问控制: 基于角色的合约访问控制
- 数据完整性: 区块链保证的数据不可篡改性
# 运行API测试
cd webapp
python3 test_vc_api.py
# 运行合约测试
cd contracts/kept
python3 test_contracts.py- 跨链转账延迟: < 30秒
- VC验证时间: < 5秒
- 并发支持: 100+ 用户
- 数据同步: 实时更新
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 打开 Pull Request
本项目采用 Apache-2.0许可证 - 查看 LICENSE 文件了解详情。
- Hyperledger Besu - 企业级以太坊客户端
- ACA-Py - 可验证凭证代理
- Web3.py - 以太坊Python库
- Flask - Web框架
- 项目链接: [https://github.com/your-username/cross-chain-vc-system](https://github.com/mmjd2019/cross-chain
- 问题反馈: Issues
- 邮箱: ggg1234567@163.com
- 支持更多区块链网络
- 添加零知识证明支持
- 实现去中心化身份管理
- 添加移动端应用
- 支持NFT跨链转移
⭐ 如果这个项目对您有帮助,请给我们一个星标!