【swarm测试极简指南】Bee Clef 是什么?

关于Bee Clef

  • 概述
  • 通过包安装
  • 配置Bee-clef
  • 与Clef交互
    • 查询命令
  • 手动安装
    • 代码仓库

概述

Bee Clef 使用了以太坊的外部签名,因为 Bee 必须快速地签发大量的交易。

这是Bee Clef 的签发服务代码:

https://github.com/ethersphere/bee-clef

Clef 将在安装过程中,为矿机创建一个新的以太坊密钥对。请将密钥对的备份保存在安全可靠的地方!

通过包安装

wget https://github.com/ethersphere/bee-clef/releases/download/v0.4.12/bee-clef_0.4.12_amd64.deb
sudo dpkg -i bee-clef_0.4.12_amd64.deb

配置Bee-clef

配置文件存放在 /etc/bee-clef/

一般来说,对于使用包管理器的正常安装,开始使用 Bee Clef 不需要任何配置更改。

与Clef交互

一旦安装完成Clef, 它将会在系统后台启动服务。

检查 Clef 是否运行正常,我们可以使用systemctl来查询 bee-clef 服务的状态。

查询命令

systemctl status bee-clef
● bee-clef.service - Bee Clef
     Loaded: loaded (/lib/systemd/system/bee-clef.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-11-20 23:45:16 GMT; 1min 29s ago

如果你想查看日志打印,你可以使用:

journalctl -f -u bee-clef.service

当 Bee-clef 首次启动时,您应该会看到与以下内容非常相似的内容:

Feb 21 19:52:43 comp-name systemd[1]: Started Bee Clef.
Feb 21 19:52:43 comp-name bee-clef-service[494678]: WARNING!
Feb 21 19:52:43 comp-name bee-clef-service[494678]: Clef is an account management tool. It may, like any software, contain bugs.
Feb 21 19:52:43 comp-name bee-clef-service[494678]: Please take care to
Feb 21 19:52:43 comp-name bee-clef-service[494678]: - backup your keystore files,
Feb 21 19:52:43 comp-name bee-clef-service[494678]: - verify that the keystore(s) can be opened with your password.
Feb 21 19:52:43 comp-name bee-clef-service[494678]: Clef is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
Feb 21 19:52:43 comp-name bee-clef-service[494678]: without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
Feb 21 19:52:43 comp-name bee-clef-service[494678]: PURPOSE. See the GNU General Public License for more details.
Feb 21 19:52:43 comp-name bee-clef-service[494678]: INFO [02-21|19:52:43.862] Using stdin/stdout as UI-channel
Feb 21 19:52:44 comp-name bee-clef-service[494678]: INFO [02-21|19:52:44.036] Loaded 4byte database                    embeds=146841 locals=3 local=/etc/bee-clef/4byte.json
Feb 21 19:52:44 comp-name bee-clef-service[494678]: {
     "jsonrpc":"2.0","id":1,"method":"ui_onInputRequired","params":[{
     "title":"Master Password","prompt":"Please enter the password to decrypt the master seed","isPassword":true}]}
Feb 21 19:54:25 comp-name bee-clef-service[494678]: INFO [02-21|19:54:25.048] Rule engine configured                   file=/etc/bee-clef/rules.js
Feb 21 19:54:25 comp-name bee-clef-service[494678]: INFO [02-21|19:54:25.048] Starting signer                          chainid=5 keystore=/var/lib/bee-clef/keystore light-kdf=false advanced=false
Feb 21 19:54:25 comp-name bee-clef-service[494678]: INFO [02-21|19:54:25.049] IPC endpoint opened                      url=/var/lib/bee-clef/clef.ipc
Feb 21 19:54:25 comp-name bee-clef-service[494678]: {
     "jsonrpc":"2.0","method":"ui_onSignerStartup","params":[{
     "info":{
     "extapi_http":"n/a","extapi_ipc":"/var/lib/bee-clef/clef.ipc","extapi_version":"6.1.0","intapi_version":"7.0.1"}}]}

下面这串代码是安全的,可以放心:

{
     "jsonrpc":"2.0","id":1,"method":"ui_onInputRequired","params":[{
     "title":"Master Password","prompt":"Please enter the password to decrypt the master seed","isPassword":true}]}

一旦 bee 开始与 bee-clef 交互,您应该开始看到日志消息持续刷新,对于定期活动和连接的节点,它们将每隔几秒钟更新一次:

Feb 24 22:29:15 comp-name bee-clef-service[1118]: INFO [02-24|22:29:15.118] Op approved
Feb 24 22:30:17 comp-name bee-clef-service[1118]: INFO [02-24|22:30:17.371] Op approved
Feb 24 22:30:19 comp-name bee-clef-service[1118]: INFO [02-24|22:30:19.344] Op approved
...

Bee 可以通过多种方式与 Bee-clef 通信。如果通过软件包安装,默认方式将使用进程间通信 (IPC) 文件。这是 Bee-clef 在启动时创建的一个特殊文件,Bee 将使用该文件来回发送请求。当 Bee-clef 服务开始运行时,您会注意到出现了一个 /var/lib/bee-clef/clef.ipc 文件。

手动安装

代码仓库

https://github.com/ethersphere/bee-clef

因为 Bee 需要 Clef 签署许多交易,所以我们必须以最高的运行权限来运行 Clef 。为了确保 Clef 只对来自 Bee 的交易进行签名,我们必须通过创建 Bee专门的用户来运行 clef.ipc 文件,以便该用户只能使用这个 ipc 套接字。

此外,Bee的支票合约活动,都需要 Clef 对其进行签名。

可以在 Bee-clef 代码仓库中找到:
自动更改初始化后权限的 shell 脚本,包括 Clef 配置文件clef-service 以及 4byte.json 交易签名文件和 rules.js 文件。

最后,一旦 Clef 运行,只需使用 --clef-signer-enable 配置您的Bee 节点以启用Clef,并使用 --clef-signer-endpoint 将Bee 指向正确的ipc 套接字。

你可能感兴趣的:(swarm,bzz,以太坊,区块链,智能合约,以太坊,数字货币)