5.4.2.7 CITA智能合约包规范
为形成统一智能合约部署包规范,方便BSN运营方对各个应用进行安全扫描和审计以及方便运维人员在BSN上部署,针对智能合约部署包做出以下规定。
1. Solidity智能合约路径
单级文件夹里存放所有合约:包括应用合约、应用库和外部接口合约。合约引用方式都为:import “./XXXX.sol”
2. 修改数据(update_data)
deploy.md主要是按照规范说明清楚合约如何初始化部署。主要分为三个部分:
合约说明:规范合约说明,用于简单描述各个合约基本信息。
用户说明:规范用户说明,用于描述初始化部署过程中,各个交易签名用户的基本信息。
合约初始化步骤说明:规范合约初始化步骤说明,用于列举初始化部署的步骤,让运维人员能够按照文档完成部署。
3. 上传合约规范
上传链码包(智能合约包)时填写的链码名称(合约名称)要与主合约类名一致,建议主合约的文件名也一致。
例: CitaBsnBaseContract链码包(预置链码包)
CitaBsnBaseContract
└─CitaBsnBaseContract.sol
需在CitaBsnBaseContract/下进行打包,zip包名称无要求。如主合约类名为CitaBsnBaseContract,主合约的文件名即为CitaBsnBaseContract.sol,链码名称(合约名称)必须填为CitaBsnBaseContract。
4. BSN适配CITA Solidity版本说明
目前BSN适配的CITA只支持Solidity0.4.25及以下版本。