Namada

Namada 是一个用于跨链资产隐私的权益证明 L1 项目。Namada 协议专注于组件的子集,允许安全传输任何类型的令牌,无论它们是在哪个平台上创建的。使用 Namada,您可以转移您的 ETH、DAI 或任何其他资产(来自以太坊、ATOM、OSMO 等的 NFT)并以几秒的交易延迟和几乎零费用发送它们。 Namada 是 Anoma 的第一个分形实例,也

发布时间:Sat Apr 01 2023 04:26:07 GMT+0800 (Hong Kong Standard Time)分类:杂项记录

![](https://img4.teletype.in/files/b3/78/b3789021-fc8f-4cd1-a1df-41ffc30b2d0d.jpeg)

Namada是一个用于跨链资产隐私的权益证明 L1 项目。Namada 协议专注于组件的子集,允许安全传输任何类型的令牌,无论它们是在哪个平台上创建的。使用 Namada,您可以转移您的 ETH、DAI 或任何其他资产(来自以太坊、ATOM、OSMO 等的 NFT)并以几秒的交易延迟和几乎零费用发送它们。

Namada是 Anoma 的第一个分形实例,也是迈向具有同构架构和异构安全性的多链协议愿景的第一步。

Anoma 在由 Polychain Capital 领投的两轮融资中筹集了 3280 万美元。参与的还有 Electric Capital、Coinbase Ventures、FBG Capital、CMS Holdings 等。

> [网站](https://namada.net/)

> [不和谐](https://discord.gg/namada)

> [推特](https://twitter.com/namada)

*

*

服务器准备

\[crypto-connect label="Connect to Login" class="fl-button fl-is-info fl-is-light"\]

\[crypto-block\]

该节点比较吃硬盘,可用空间小于 200GB,官方要求:4 CPU,8 GB RAM,500GB SSD。

该节点使用以下端口:26656、26657、26658。

在 Namada,目前不值得将端口更改为自定义端口。

在安装之前,请确保服务器上不再有节点在默认端口 - 26xxx 上使用 tendermint 共识(spaceforks、Penumbra 等)。

sudo apt update && sudo apt upgrade -y

安装开发人员工具和所需的包

sudo apt install curl tar wget clang pkg-config libssl-dev libclang-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool uidmap dbus-user-session -y

安装GO

wget https://go.dev/dl/go1.19.5.linux-amd64.tar.gz; \\
rm -rv /usr/local/go; \\
tar -C /usr/local -xzf go1.19.5.linux-amd64.tar.gz && \\
rm -v go1.19.5.linux-amd64.tar.gz && \\
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash\_profile && \\
source ~/.bash\_profile && \\
go version

安装rustup

cd $HOME
sudo curl https://sh.rustup.rs -sSf | sh -s -- -y
. $HOME/.cargo/env
curl https://deb.nodesource.com/setup\_16.x | sudo bash
sudo apt install cargo nodejs -y < "/dev/null"
cargo --version

*

节点安装

创建变量

VALIDATOR\_ALIAS=名称
CHAIN\_ID\_NAMADA=public-testnet-6.0.a0266444b06
WALLET\_NAMADA=wallet

保存变量,重新加载 .bash\_profile 并检查变量值

echo "export VALIDATOR\_ALIAS="${VALIDATOR\_ALIAS}"" >> $HOME/.bash\_profile
echo "export CHAIN\_ID\_NAMADA="${CHAIN\_ID\_NAMADA}"" >> $HOME/.bash\_profile
echo "export WALLET\_NAMADA="${WALLET\_NAMADA}"" >> $HOME/.bash\_profile

source $HOME/.bash\_profile

echo -e "\\nvalidator\_alias > ${VALIDATOR\_ALIAS}.\\n"
echo -e "\\nchain\_id\_namada > ${CHAIN\_ID\_NAMADA}.\\n"
echo -e "\\nwallet\_namada > ${WALLET\_NAMADA}.\\n"

我们克隆 Namada 存储库,转到该文件夹​​并收集二进制文件

cd $HOME
git clone https://github.com/anoma/namada
cd namada
git checkout v0.14.3
make build-release
cp "$HOME/namada/target/release/namada" /usr/local/bin/namada && cp "$HOME/namada/target/release/namadac" /usr/local/bin/namadac && cp "$HOME/namada/target/release/namadan" /usr/local/bin/namadan && cp "$HOME/namada/target/release/namadaw" /usr/local/bin/namadaw

检查 Namada 的版本

namada --version
#Namada v0.14.3

克隆 Tendermint 存储库,转到该文件夹​​并构建二进制文件

cd $HOME
git clone https://github.com/heliaxdev/tendermint
cd tendermint
git checkout v0.1.4-abciplus
make build
cp $HOME/tendermint/build/tendermint /usr/local/bin/tendermint

检查 Tendermint 的版本

tendermint version
#v0.1.4-abciplus

加入网络

cd $HOME
namada client utils join-network --chain-id $CHAIN\_ID\_NAMADA

下载配置和创世文件

wget "https://github.com/heliaxdev/anoma-network-config/releases/download/public-testnet-6.0.a0266444b06/public-testnet-6.0.a0266444b06.tar.gz"
tar xvzf "$HOME/public-testnet-6.0.a0266444b06.tar.gz"

创建服务文件

printf "\[Unit\]
Description=Namada
After=network-online.target
\[Service\]
User=$USER
WorkingDirectory=$HOME/.namada
Environment=NAMADA\_LOG=debug
Environment=NAMADA\_TM\_STDOUT=true
ExecStart=/usr/local/bin/namada --base-dir=$HOME/.namada node ledger run
StandardOutput=syslog
StandardError=syslog
Restart=always
RestartSec=10
LimitNOFILE=65535
\[Install\]
WantedBy=multi-user.target" > /etc/systemd/system/namadad.service

我们启动服务并检查日志

sudo systemctl daemon-reload && \\
sudo systemctl enable namadad && \\
sudo systemctl restart namadad && \\
sudo journalctl -u namadad -f -o cat|grep indexed

![](https://img4.teletype.in/files/74/b2/74b2bb83-2ef2-4d6a-bcea-2deda3d8d7ed.png)

我们正在等待同步结束,可以通过命令查看同步情况

curl -s localhost:26657/status

如果输出显示false,则同步完成。

![](https://img3.teletype.in/files/a7/82/a7822c9d-2ee3-4290-a63f-34201ad1a05f.png)

PS 由于某些未知原因,“catching\_up”参数有时从同步一开始就显示为false 。在这种情况下,我们等到最后一个块(параметр - "latest\_block\_height")与资源管理器中的指标匹配 - [https://namada.explorers.guru/blocks](https://namada.explorers.guru/blocks)

*

创建钱包和验证器

创建钱包

cd $HOME
namada wallet address gen --alias $WALLET\_NAMADA --unsafe-dont-encrypt

从水龙头请求令牌

namada client transfer --source faucet --target $WALLET\_NAMADA --token NAM \\
--amount 1000 --signer $WALLET\_NAMADA

我们正在等待 PoW 计算结束。此过程需要 5 秒到几分钟。

该过程的成功完成像这样

![](https://img4.teletype.in/files/75/ae/75ae50e3-8346-4885-965c-83975c7b2246.png)

初始化验证器

namada client init-validator --alias $VALIDATOR\_ALIAS --source $WALLET\_NAMADA \\
--commission-rate 0.05 --max-commission-rate-change 0.01 --signer $WALLET\_NAMADA \\
--gas-amount 100000000 --gas-token NAM --scheme ed25519 --unsafe-dont-encrypt

初始化成功后,输出将显示有关验证器的信息:地址、帐户和共识密钥。

重要的!!我们将私钥存储在安全的地方:

- 钱包密钥:$HOME/.namada/public-testnet-xxxxxx/wallet.toml
- 验证器密钥:$HOME/.namada/public-testnet-xxxxx/tendermint/config/priv\_validator\_key.json

要创建一个验证器,我们需要 1000 个代币 + 佣​​金。由于水龙头一次只给1000个代币,我们请求两次

namada client transfer --token NAM --amount 1000 --source faucet \\
--target $VALIDATOR\_ALIAS --signer $VALIDATOR\_ALIAS

再次请求令牌

namada client transfer --token NAM --amount 1000 --source faucet \\
--target $VALIDATOR\_ALIAS --signer $VALIDATOR\_ALIAS

查看余额

namada client balance --owner $VALIDATOR\_ALIAS --token NAM
#NAM: 2000

在将代币抵押给验证者之前,您需要等待 2 个epoch。您可以使用以下命令检查当前epoch

namada client epoch

2 个epoch(约 30 分钟)后,我们将代币抵押给验证者

namada client bond --validator $VALIDATOR\_ALIAS --amount 1800 \\
--signer $VALIDATOR\_ALIAS --source $VALIDATOR\_ALIAS

我们再等待 2 个 epoch 并检查代币是否已抵押

namada client bonded-stake --validator $VALIDATOR\_ALIAS
namada client bonds --validator $VALIDATOR\_ALIAS

![](https://img1.teletype.in/files/44/29/4429da8c-3a34-494c-8fad-8af2ce274c95.png)

目前所有可用的浏览器都不稳定

*

更新 v0.14.3

创建变量

NEW\_CHAIN\_ID\_NAMADA = public-testnet-6.0.a0266444b06

保存变量,重新加载 .bash\_profile 并检查变量值

echo "export NEW\_CHAIN\_ID\_NAMADA="${NEW\_CHAIN\_ID\_NAMADA}"" >> $HOME/.bash\_profile

source $HOME/.bash\_profile

echo -e "\\nnew\_chain\_id\_namada > ${NEW\_CHAIN\_ID\_NAMADA}.\\n"

我们克隆 Namada 存储库,转到该文件夹​​并收集二进制文件

cd $HOME/namada
git fetch && git checkout v0.14.3
make build-release

停止节点并替换可执行文件

cd $HOME
sudo systemctl stop namadad

rm /usr/local/bin/namada /usr/local/bin/namadac /usr/local/bin/namadan /usr/local/bin/namadaw

cp "$HOME/namada/target/release/namada" /usr/local/bin/namada
cp "$HOME/namada/target/release/namadac" /usr/local/bin/namadac
cp "$HOME/namada/target/release/namadan" /usr/local/bin/namadan
cp "$HOME/namada/target/release/namadaw" /usr/local/bin/namadaw

检查版本

namada --version
#Namada v0.14.3

删除以前的数据库

rm -r $HOME/.namada/public-testnet-3.0.81edd4d6eb6
rm $HOME/.namada/public-testnet-3.0.81edd4d6eb6.toml
rm -r $HOME/.namada/public-testnet-4.0.16a35d789f4
rm $HOME/.namada/public-testnet-4.0.16a35d789f4.toml
rm -r $HOME/.namada/public-testnet-5.0.d25aa64ace6
rm $HOME/.namada/public-testnet-5.0.d25aa64ace6.toml
rm $HOME/.namada/global-config.toml

如果您是创世验证者,只需执行以下步骤

namada client utils join-network --chain-id $NEW\_CHAIN\_ID\_NAMADA --genesis-validator $VALIDATOR\_ALIAS

sudo systemctl restart namadad && \\
sudo journalctl -u namadad -f -o cat|grep indexed

#\[2023-02-22\] service start module=main msg="Starting Node service" impl=Node
#\[2023-02-22\] Genesis time is in the future. Sleeping until then... module=main genTime="\\\\\\

加入网络

cd $HOME
namada client utils join-network --chain-id $NEW\_CHAIN\_ID\_NAMADA

下载配置和创世文件

wget "https://github.com/heliaxdev/anoma-network-config/releases/download/public-testnet-6.0.a0266444b06/public-testnet-6.0.a0266444b06.tar.gz"
tar xvzf "$HOME/public-testnet-6.0.a0266444b06.tar.gz"

我们启动服务并检查日志

sudo systemctl restart namadad && \\
sudo journalctl -u namadad -f -o cat|grep indexed

*

删除节点

我们将私钥存储在安全的地方:

- 钱包密钥:$HOME/.namada/public-testnet-xxxxxx/wallet.toml
- 验证器密钥:$HOME/.namada/public-testnet-xxxxx/tendermint/config/priv\_validator\_key.json

要删除节点,请使用以下命令

sudosystemctl stop namadad
sudosystemctl disable namadad
rm -rf $(which namadad)
rm /usr/local/bin/namada /usr/local/bin/namadac /usr/local/bin/namadan /usr/local/bin/namadaw
rm -rf $HOME/.namada\*
rm -rf $HOME/namada
rm -rf /etc/systemd/system/namadad.service
rm -rf $HOME/tendermint
sudo systemctl daemon-reload

*

有用的命令

节点重启

sudo systemctl restart namadad

检查日志

sudo journalctl -u namadad -f -o cat

查找钱包地址

``
RAW_ADDRESS=
cat "$HOME/.namada/$CHAIN_ID_NAMADA/wallet.toml" | grep address
WALLET_ADDRESS=$(echo -e $RAW_ADDRESS | sed 's|.*=||' | sed -e 's/^ "//' | sed -e 's/"$//')
echo "export WALLET_ADDRESS=$WALLET_ADDRESS" >> ~/.bash_profile
source ~/.bash_profile
echo -e " YOUR WALLET ADDRESS: $WALLET_ADDRESS"
``

\[/crypto-block\]

如需交互式阅读、购买或评论,请打开站内完整版页面。