近日,CertiK基金会发布了安全预言机,同时邀请社区的小伙伴们积极尝试成为安全预言机的运营者,参与预言机运营者游戏,为建设区块链的安全生态贡献力量。
为了帮助运营者们更快上手,我们提供了这份预言机安装与操作的详细指南。
基本要求
首先运营者需要一台已安装“certikcli”二进制文件的联网设备(笔记本电脑或任何云服务器皆可)。
根据操作系统下载相应文件并进行安装:
https://certik-public-assets.s3.amazonaws.com/certikcli-oracle.zip
本文选用Ubuntu OS(主文件夹内已有可执行的二进制文件“certikcli”)作为演示。
安装ceryikcli
为certikcli创建一个安装文件:
mkdir .certikcli/config/
vi .certikcli/config/config.toml
将以下内容填入文件:
chain-id = “shentu-oracle-testnet”keyring-backend = “test”node = “tcp://52.90.247.10:26657″trust-node = tr
保存文件后,即可查看区块链测试网的最新状态:
注意:若之前设置过安装路径,则必需填入–home <.certikcli-path> 。
chmod +x certikcli./certikcli status –home .certikcli/
输出结果如下:
{“node_info”:{“protocol_version”:{“p2p”:”7″,”block”:”10″,”app”:”0″},”id”:”b7896136d50907eeb0e5b0b239b03361f72f0633″,”listen_addr”:”tcp://52.90.247.10:26656″,”network”:”shentu-oracle-testnet”,”version”:”0.33.7″,”channels”:”4020212223303800″,”moniker”:”Oracle-fullnode-1″,”other”:{“tx_index”:”on”,”rpc_address”:”tcp://0.0.0.0:26657″}},”sync_info”:{“latest_block_hash”:”77089F3E5EA5D46DFD2C6DCB33449A0EABA6A9DF393A89AE927AF23D42A4118A”,”latest_app_hash”:”CA9E9443D010F9D915FBCD61ED760E250FAA65258525A023638DCABD4E809F6B”,”latest_block_height”:”29565″,”latest_block_time”:”2020–09–07T23:54:18.089562301Z”,”earliest_block_hash”:”B0998268C4CA9EFD71428F7ACAE48986FA01971213F95ED784B46F699F2C3D0E”,”earliest_app_hash”:””,”earliest_block_height”:”1″,”earliest_block_time”:”2020–09–06T03:42:36.57213Z”,”catching_up”:false},”validator_info”:{“address”:”EE780F734585608B42B4EB1B4497AA9B7C04D28B”,”pub_key”:{“type”:”tendermint/PubKeyEd25519″,”value”:”WnwyOxSEVk5v/fc9JdUYFiCoIG89kfo+CCgucaDNDrE=”},”voting_power”:”0″}}
如果收到以上回复,说明你已完成了certikcli安装。可以试着运行任何命令,比如:./certikcli query oracle Operators,获取当前已注册的运营者名单。
钱包账户
要想在预言机游戏和神荼游戏中获得积分,首先需要创建一个DeepWallet钱包帐户。
创建钱包之后,请妥善保存助记词/私人密钥(24个随机生成的单词),密钥一旦丢失将无法找回。
通过certikcli,你可以使用以下命令导入和解锁钱包地址:
./certikcli keys add jack –recover “YOUR_MNEMONIC_WORDS”
将“YOUR_MNEMONIC_WORDS”替换为以空格分开的单词,比如:apple banana orange …. 接着可以运行命令./certikcli keys list.,查看添加地址的列表。
水龙头CTK
运营者在预言机网络中扮演着重要的角色,因此需要质押一定数量的CTK才能执行预言机任务。
由于预言机任务是除了神荼游戏测试网之外的另一个独立运行的测试网络,因此运营者需要访问https://oracle.explorer.certik.foundation/faucet,从水龙头获得一些测试CTK(可在shentu-oracle-testnet测试网页面右上角找到)。
运营者也可以发送邮件到[email protected],要求获得更多的测试CTK。
运行以下命令,即可查询余额:
./certikcli query account <your-account-address>
创建运营者
运行以下命令,注册成为CertiK链上的预言机运营者:
./certikcli tx oracle create-Operator certik1qqyq3dpcxfyjyv40htlagp9felss3tsg2g3gly 500000uctk –fees 10000uctk -b block –name “YOUR-CHOOSE-A-NAME” –from jack
用你的钱包地址替换certik1qqyq3dpcxfyjyv40htlagp9felss3tsg2g3gly,运行命令./certikcli query oracle Operators.,即可查看你的运营者信息。
安装与运行
在链上成功创建运营者的实体之后,就可以安装运营者的软件了。
CertiK基金会也为运营者们安排了各种创意方案,以适应他们执行安全任务时的个性设置。
在此仅复制安装项目示例:
vi .certikcli/config/oracle-Operator.toml
将以下内容填入文件。注意:原语(Primitive)的权重是指该原语的得分在总权重中所占的比例。总权重只是安装文件中定义的不同原语权重的线性总和,运营者随时可用其他数字更新权重。
# configurations related to runner
[runner]
[runner.strategy]
# strategy type
type = “linear”
# primitive configuration
[[runner.strategy.primitive]]
primitive_contract_address = “certik16c9hd93uxq8puq77t0za8f2vyt5jjdxudr9j44”
weight = 0.1
[[runner.strategy.primitive]]
primitive_contract_address = “certik17asart35rgvya9w9swmje36ncrsxs6npew8e3y”
weight = 0.1
安装文件中的原语环节表示运营者所选择的安全审查,其中每项都代表着CertiK链上的“原语合约”,既可以直接提供安全评分,也可以通过端点回应要求。
最后,只需要一个长久运行的后台工作来维护certikcli内的运营者软件:
nohup ./certikcli oracle-Operator –log_level ‘debug’ –from jack -b block > ~/oo.log 2>&1 &
运营者可以通过命令tail -f oo.log查看一些打印的日志事件:
I[2020–09–08|00:47:59.555] Starting oracle-operator… module=Oracle-Operator
I[2020–09–08|00:47:59.555] start to listen to certik-chain module=Oracle-Operator protocol=certik submodule=listener node=tcp://52.90.247.10:26657
结语
以上就是运营者指南的全部内容。
目前CertiK基金会已安排任务提交者们持续创建预言机任务,所以运营者将会看到一些描述安全任务完成情况的附加日志。
如果需要任何帮助,欢迎通过Discord服务器随时联系我们。
Discord服务器:
https://discord.com/channels/729116343760191590/752692901926010930