Guía de creación del validador
Esta guía describe el proceso para crear un nuevo validador en el BOT Chain. La dApp de participación BOT es la herramienta oficial para crear y administrar validadores en el BOT Chain.
- Red de prueba: https://staking.bohr.life
- Red principal: https://staking.botchain.ai
Terminología
- Dirección del operador: La dirección para crear y modificar la información del validador en el BOT. Debe utilizar esta dirección cuando se conecte a la dApp de participación. La cuenta correspondiente debe tener más de 2001 BOT para crear validadores y pagar tarifas de transacción.
- Dirección de consenso: una dirección única para el nodo de su validador. Se utiliza para motores de consenso al extraer nuevos bloques. Debe ser diferente de la dirección del operador. Si tiene un validador existente creado en Beacon Chain, la antigua dirección de consenso no se puede reutilizar y debe crear una nueva.
- Dirección de voto: una dirección utilizada para la votación rápida y definitiva. Si tiene un validador existente creado en Beacon Chain, la dirección de voto anterior no se puede reutilizar y debe crear una nueva.
- Prueba BLS: Una firma BLS que verifica la propiedad de la dirección de voto.
- Identidad: Para asociar un nuevo validador con uno existente de Beacon Chain. Es útil cuando los delegados migran sus apuestas: pueden saber que hay un nuevo validador ejecutándose por el mismo operador de validación. Esto es opcional a menos que estés migrando un validador antiguo.
Pasos
1. Conexión a la dApp
Conéctese a la dApp de participación utilizando su dirección de operador. MetaMask y las opciones WalletConnect están disponibles para este paso. Asegúrese de que la cuenta tenga más de 2001 BOT antes de continuar con el siguiente paso.
2. Rellenando el formulario
Navegue hasta la dApp y seleccione el botón Conviértase en validador en el centro derecho de la página para iniciar el proceso de creación.
Se requiere la siguiente información para crear un validador.
Información básica

Deberá proporcionar los siguientes detalles en la página Crear validador:
- Nombre del validador: elija un nombre que consta de 3 a 9 caracteres alfanuméricos, sin incluir los caracteres especiales.
- Sitio web: proporcione una URL a un sitio web con información adicional sobre su validador.
- Descripción: Una breve descripción de su validador.
Direcciones

Se requieren las siguientes direcciones:
- Dirección de consenso: una dirección única para el nodo de su validador.
- Dirección de voto: una dirección utilizada para la votación rápida y definitiva.
- Prueba BLS: Una firma BLS que verifica la propiedad de la dirección de voto.
- Identidad: Para asociar un nuevo validador con uno existente de Beacon Chain. Esto es opcional a menos que estés migrando un validador antiguo.
Generar discurso de consenso
Nota: asegúrese de descargar el binario correcto según la plataforma de su máquina; por ejemplo, si está utilizando MacOS, debe descargar el archivo geth_mac. A continuación, nos referiremos al binario como geth por simplicidad.
Para crear una nueva cuenta para minería, utilice el siguiente comando y establezca una contraseña para la cuenta.
geth account new --datadir ${DATA_DIR}
- DATA_DIR: el directorio donde desea almacenar los archivos del almacén de claves.
Este comando devolverá la dirección pública (es decir, la dirección de consenso) y la ruta a su clave privada. ¡Por favor haga una copia de seguridad del archivo clave!
Un ejemplo de dirección de consenso es 0x4b3FFeDb3470D441448BF18310cAd868Cf0F44B5.
Si ya tiene una cuenta para minería, puede usar la frase inicial para recuperar la cuenta.
geth account import --datadir ${DATA_DIR}
Si ha creado un validador en Beacon Chain, utilice uno diferente para la dirección de consenso.
Generar dirección de voto y prueba BLS
Para crear una nueva cuenta BLS, utilice el siguiente comando.
geth bls account new --datadir ${DATA_DIR}
- DATA_DIR: el directorio donde desea almacenar los archivos del almacén de claves.
Si ya tiene una clave de votación, cree una billetera bls y use el archivo de claves para recuperarla, usando el siguiente comando.
geth bls account import ${KEY_FILE} --datadir ${DATA_DIR}
- DATA_DIR: El archivo de respaldo para restaurar la cuenta BLS.
Luego puede obtener su dirección de voto ejecutando el siguiente comando.
geth bls account list --datadir ${DATA_DIR}
Una dirección de ejemplo es b5fe571aa1b39e33c2735a184885f737a59ba689177f297cba67da94bea5c23dc71fd4deefe2c0d2d21851eb11081f69.
Entonces puedes obtener tu prueba bls ejecutando el siguiente comando.
geth bls account generate-proof --chain-id ${BOT_CHAIN_ID} ${OPEATOR_ADDRESS} ${VOTE_ADDRESS}
- BOTCHAINID: 677 para la red principal BOT y 968 para la red de prueba BOT.
- OPEATOR_ADDRESS: La dirección de su cuenta, que será reconocida como el operador del nuevo validador.
- VOTE_ADDRESS: La dirección de voto creada en el último paso.
Un ejemplo de prueba es 0xaf762123d031984f5a7ae5d46b98208ca31293919570f51ae2f0a03069c5e8d6d47b775faba94d88dbbe591c51c537d 718a743b9069e63b698ba1ae15d9f6bf7018684b0a860a46c812716117a59c364e841596c3f0a484ae40a1178130b76a5
Crear identidad
Nota: asegúrese de descargar el binario correcto según la plataforma de su máquina; por ejemplo, si está utilizando MacOS, debe descargar el archivo macos_binary.zip y, después de descomprimirlo, encontrará botcli (para red principal) y tbotcli (para red de prueba). A continuación, nos referiremos al binario como botcli por simplicidad.
Configurar cuenta
Si tiene mnemotécnico, puede importar su cuenta ejecutando el siguiente comando:
${workspace}/bin/botcli keys add <your-account-name> --recover --home ${HOME}/.botcli
Enter a passphrase for your key:
Repeat the passphrase:
Ingrese su frase inicial de recuperación: Se le pedirá que establezca una contraseña para esta cuenta e ingrese su mnemotécnico. Después de eso, obtendrá la información de su cuenta.
${workspace}/bin/botcli: La ruta al ejecutable binario botcli. Para red de prueba, deberías usar tbotcli en su lugar.${HOME}: La carpeta donde almacena la información de su cuenta.
O si tiene un libro de contabilidad, puede importar su cuenta ejecutando el siguiente comando:
${workspace}/bin/botcli keys add <your-account-name> --ledger --index ${index} --home ${HOME}/.botcli
${workspace}/bin/botcli: La ruta al ejecutable binario botcli. Para red de prueba, deberías usar tbotcli en su lugar.${HOME}: La carpeta donde almacena la información de su cuenta.${index}: El índice de la cuenta contable que desea importar.
Obtener identidad
Después de importar la cuenta, puede obtener su identidad ejecutando el siguiente comando:
Para clave local:
${workspace}/bin/botcli \ validator-ownership \ sign-validator-ownership \ --bot-operator-address ${NEW_VALIDATOR_OPERATOR_ADDR_ON_BOT} \ --from ${ACCOUNT_NAME} \ --chain-id ${BOT_CHAIN_ID} \
Para clave del libro mayor:
${workspace}/bin/botcli \ validator-ownership \ sign-validator-ownership \ --bot-operator-address ${NEW_VALIDATOR_OPERATOR_ADDR_ON_BOT} \ --from ${BOT_OPERATOR_NAME} \ --chain-id ${CHAIN_ID} \ --ledger
${workspace}/bin/botcli: La ruta al ejecutable binario botcli. Para red de prueba, deberías usar tbotcli en su lugar.--to ${NEWVALIDATOROPERATORADDRON_BOT}: Especifica la dirección BOT a la que se asignará la nueva dirección del operador validador.--from ${ACCOUNT_NAME}: Especifica el nombre de la cuenta desde la cual se realizará la firma. La cuenta debe ser el operador del validador creado en Beacon Chain.
Y obtendrás el resultado como este:
TX JSON: {"type":"auth/StdTx","value":{"msg":[{"type":"migrate/ValidatorOwnerShip","value":{"bot_operator_address":"RXN7r5XZlaljqzp8msZvx6Y6124="}}],"signatures":[{"pub_key":{"type":"tendermint/PubKeySecp256k1","value":"Ahr+LlBMLgiUFkP75kIuJW1YHrsTy39GeOdV+IaTREDN"},"signature":"AL5mj52s0+tcdoEb6c6PAmqBixuv3XEmrLW3Y1kvUeYgG3RqVvWU/dIVcfxiHHwLGXlcn0X1v00jFrpLIsxtqA==","account_number":"0","sequence":"0"}],"memo":"","source":"0","data":null}}
Sign Message: {"account_number":"0","chain_id":"Bot-GGG-Ganges","data":null,"memo":"","msgs":[{"bot_operator_address":"0x45737baf95d995a963ab3a7c9ac66fc7a63ad76e"}],"sequence":"0","source":"0"}
Sign Message Hash: 0x8f7179e7969e497b5f3c006535e55c2fa5bea5d118a8008eddce3fccd1675673
Signature: 0x00be668f9dacd3eb5c76811be9ce8f026a818b1bafdd7126acb5b763592f51e6201b746a56f594fdd21571fc621c7c0b19795c9f45f5bf4d2316ba4b22cc6da8
PubKey: 0x021afe2e504c2e08941643fbe6422e256d581ebb13cb7f4678e755f886934440cd
La Firma es su identidad para asociarse con el antiguo validador creado en BOT Chain.
Comisiones

- Tasa: La tasa de comisión del validador.
- Tasa máxima: la tasa de comisión máxima que el validador puede establecer.
- Tasa de cambio máxima: el cambio de tasa máxima que el validador puede establecer en cada época (1 día).
Autodelegación

- Monto autodelegado: el monto a delegar al crear el validador. El número mínimo para ingresar es 2001; la cantidad mínima de autodelegación es 2000 BOT y 1 BOT adicional para bloquear una dirección inactiva.
3. Enviar el formulario
Una vez que haya completado toda la información requerida, haga clic en el botón Enviar para enviar la transacción.
Nota: Al completar estos pasos, no se garantiza que su nodo se convierta en un validador activo. La selección se basa en una clasificación que refleja la participación total de BOT, y solo los N nodos principales se eligen como validadores activos. El número N está determinado por el parámetro “maxElectedValidators” dentro de StakeHubContract (0x00000000000000000000000000000000000002002).