# OB企业钱包用例-管理人员审批技术人员部署合约 **Published by:** [OpenBlock Operation ](https://paragraph.com/@openblock-operation/) **Published on:** 2023-05-26 **URL:** https://paragraph.com/@openblock-operation/ob ## Content 需求分析:项目方创始人,出资人经常并不具备合约部署能力。所以经常会出现合约技术人员权限过大,单点作恶的问题 虽然可以使用transfer owner的方式把合约owner权限,交给非技术出身的创始人,但是在这种场景下,项目的维护和升级依旧非常棘手 因此我们利用OB企业钱包使用权和所有权分离的特点,测试了如下场景。技术人员在企业钱包中赋予普通成员身份,可以发挥使用权提出部署合约的申请,由企业钱包中的拥有所有权其他管理员审批通过后完成部署。测试需求 体验/测试外部项目方使用OB企业钱包部署智能合约以及测试企业钱包审批流测试目标 企业钱包可以部署合约,来吸引外部的项目方用 OB 来部署项目。 如果支持了部署项目,那么也需具备管理项目(与已部署的合约交互)的能力。调研结果 通过 OB 插件,使用 remix 工具来实现合约部署 部署合约需要签名,钱包内部没有入口,所以当前版本企业钱包内部不支持部署合约(需安装外部插件remix)企业钱包部署步骤 1,安装 OB 浏览器插件 https://openblock.com/#/download2.Remix 编译合约 https://remix.ethereum.org/3部署3.1 选择网络选择 MetaMask 这时 OB钱包会 弹出授信网页的窗口3.2 选择要部署的合约点击 Deploy3.3 确认交易3.4 输入 PIN3.5 提交成功,进入审批流程部署合约流程说明 EOA 部署 1.编译合约生成 ABI 和 Bytecode 2.生成要签名的 Data 3.EOA 账户签名 4.发送交易 OB 钱包 EOA 部署 1.编译合约生成 ABI 和 Bytecode 2.生成要签名的 Data 3.OB 钱包签名 4.发送交易 加黑标注了流程中不一样的步骤, 如果使用企业钱包部署,则需要企业钱包的多签审批OB 内部待支持功能1.支持输入 ABI 和 Bytecode 或者 Data 来生成一笔部署交易 (用于部署合约) 2.支持外部合约的交互 (用于管理合约) 类似 Gnosis 输入合约地址及 ABI 来执行一笔链上交互测试结果本次测试结果显示,外部项目方安装OB钱包插件+remix第三方合约部署插件后,可以如传统EOA钱包一般部署智能合约; 团队成员在企业钱包内部发起审批时,需获得大多数 管理人的批准,方可进行合约发起、部署等操作,因此可满足市场上大多数团队多人公管的签名需求。 ## Publication Information - [OpenBlock Operation ](https://paragraph.com/@openblock-operation/): Publication homepage - [All Posts](https://paragraph.com/@openblock-operation/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@openblock-operation): Subscribe to updates