1,摘要
在创建TEE硬件隐私合约链(标准合约链)的时候,配套已经创建了一个证书对和2个公私钥对,对应了这1个账号(duncanwang)。不理解辉哥说什么的参考《蚂蚁区块链第4课 如何创建TEE硬件隐私合约链?》文章的描述。
但是,智能合约运行中,一般会涉及账户切换等操作,那就需要创建新的账户的需求了。
参考本文指导,辉哥完成了需要的4个新账户的创建,包括ella,ouyang,dingheng,daming账号。
2,本地创建公私钥对
2.1 蚂蚁BAAS的账户理解
大部分人理解以太坊的账户体系,一个以太坊地址包括一个公钥,一个私钥,是固定的。但是在蚂蚁BAAS系统中,并不存在地址ADDRESS这个概念。它使用identity来表示账户体系,一个identity有2对公私钥对,其中一个是恢复公私钥对,想得挺周到的,双重防丢失。
2.2 本地运行密钥生成工具
蚂蚁BaaS 平台提供 Java 版本的本地密钥服务。辉哥在WINDOWS环境下操作测试完成。
- 准备 Java 运行环境,1.7 版本或以上。
- 下载密钥生成工具(点击此处 下载)。
- 运行命令
java -jar baas-crypto-tool-1.0.0.jar --server.port=8080
启动密钥服务。
2.2 生成公私钥对
启动密钥服务之后,在浏览器中访问 http://localhost:8080/api/crypto/generateUserKey?algo=ec&isPkcs8=true&password=${password} 生成 userkey.zip
文件包。解压该 .zip 包后得到 user.key
和 pub.txt
。其中,user.key
为用户私钥,pub.txt
中的内容为用户公钥。
注意:
目前生产公私钥对的密码要求比较严,必须包含大小写,数字和特殊字符,否则会有出错报警。例如{"errorMsg":"must contains number,a-z,A-Z and *^&"} ,辉哥改为例如http://localhost:8080/api/crypto/generateTlsKey?algo=rsa&isPkcs8=true&password=2015Juban 以上告警才消失。
蚂蚁专家孙善禄说,后面生成密码限制改为要求宽松一点。
可以执行该命令两次,生成两个公私钥对,一个用做账户的公私钥对,另一个用做恢复该账户的公私钥对。
辉哥本地生成了2组公私钥对。
3,创建新账号
在区块链创新大赛 > 赶紧去开发 > 管理 > 账户管理 页面,
创建新账号入口点击“添加账号”按钮,其中的公钥对就是刚才生产的2个pub.txt文件里面的密码。
添加账号注意:
(1)直接复制过来即可,不要加0x关键字哦;
(2)不同账号的公钥/恢复公钥可以重复;
所以辉哥一口气用相同的公钥/恢复公钥把所有需要的账号ella, ouyang, dingheng,daming全部创建好了。
4,参考
(1)合约链:本地生成证书请求和公私钥对
https://tech.antfin.com/docs/2/73764
网友评论