Claves Seguras para Nodos Validadores en Ethereum

Monta tu Nodo de Ethereum desde CERO · 26:42

A walkthrough of generating Ethereum validator keys offline with staking-deposit-cli on Ubuntu Live. The tutorial covers key creation, secure operation and storage practices.

Speakers

Topics

From Monta tu Nodo de Ethereum desde CERO.

Transcript

[Música] [Música] Hola a todos estamos acá para el segundo workshop de esta serie que habla de los nodos validadores en ethereum mi nombre es Wilbur soy miembro de s latam participo activamente en sidn y lo que vamos a hablar hoy es cómo generar claves seguras para los nodos validadores Sí si esto es un workshop en sí mismo quiere decir que no es tan simple como agarrar un ledger o un tracor o un Hardware wallet eh

tradicional y generar una una clave en frío sí o offline como como nos gusta decir sino que hay una pequeña vuelta de rosca más en la cual tenemos que estar atentos si porque un nodo en ethereum es Al fin y al cabo manejar un capital de dinero importante el workshop básicamente se va a subdividir en la utilización del ubuntu del ubuntu vamos a usar una versión Live lo vamos a usar de forma offline para esto Les recomiendo que tengan a mano el pendrive que booteable que armaron en la primer

serie del workshop con con tute que vamos a utilizar ese mismo para no otra vez instalar el untu sino para utilizarlo en su versión Live o sea en su versión de de prueba las versiones Live tienen la particularidad de que no se instalan si es como una muestra gratis del sistema operativo Para probarlo a ver si nos gusta o no y tiene la particularidad de que podemos hacer algunas cosas y cuando apagamos desconectamos el el pendrive en ese pendrive no se guarda absolutamente nada o sea entonces al usar el un to live y en una máquina offline nos vamos a estar asegurando de

que todo lo que hagamos en esa sesión no se va a guardar ni en el pendrive ni va a estar expuesto a internet vamos a generar las claves en ese sistema operativo utilizando un cliente hay varios clientes para la instalación de para la creación de clave nosotros vamos a usar uno no sé si decir el principal pero si el primero eh directamente desde línea de comandos vamos a hacer el paso a paso de de todo esto Y por último vamos a verificar que las palabras que hayamos guardado coincidan con lo que tenemos s una

verificación yo recomiendo que cuando hay capital en juego capital que nos importe eh cuidar Hagamos una verificación doble verificación incluso triple verificación de que todo es correcto Recuerden que acá No hay a quien pedir la ayuda si nosotros no guardamos bien las claves todo lo que vamos a hablar y hacer en el workshop lo pueden eh ir a leer directamente en el mirror nuestro en s latam Ahí dejé la fuente y va a estar por escrito todo lo que vamos a estar trabajando hoy así que bueno

empecemos bueno vayamos a descargar el cliente necesario para la generación de claves por única vez en este workshop vamos a obtener el link del cliente de una forma segura lo vamos a hacer partiendo desde Twitter siempre es útil tener una cuenta de de Twitter en la cual sigamos a personalidades entre comillas del ecosistema sean desarrolladores influencers gente que esté activa Para qué para que cuando entremos a una cuenta por ejemplo etherium pun que es la que me interesa hoy ver que hay mucha gente que yo sigo que también sigue esta cuenta Esto me va a indicar que

posiblemente esta cuenta sea verdadera y no esté entrando en un link falso s entro en el link no me gusta a mí este tipo de páginas en español a veces me confundo lo voy aer en inglés y acá vamos a buscar los clientes si para nuestro cliente para generar las claves del cliente validador yo un poco el Caminito me lo sé de memoria si no es cuestión de usar el buscador y encontrarlo Run Note Vamos a aprender un poco más de esto yo no quiero un nodo normal Yo quiero un nodo validador un nodo que sirve para hacer stake entonces Estoy buscando eso Acá

está stake Your e y dentro de las opciones para hacer staking nosotros Armando el varador lo que estamos haciendo es solo home staking si desde casa entremos en esta opción y vamos a ver qué nos dice etherium org para generar las claves si este es un tema importante porque tiene su propio apartado generators y acá nos dice las diferentes opciones que podemos utilizar para crear nuestras claves nosotros vamos a usar el staking deposit client que es este es el link venimos

acá de esta forma obtuvimos el link de forma segura y vamos a descargar la última versión que haya salido para nuestro sistem operativo que vamos a usar el el ubuntu sí venimos a versiones releases dentro del rasis buscamos la última para Linux la tenemos acá sí la descargamos la descargamos y ahora una vez descargada lo que vamos a hacer es guardar ese archivo que está comprimido en un pendrive sí que esté eh nuevo un pendrive limpio un pendrive

diferente Si al que vamos a usar para levantar untu fíjense que este pendrive no tiene absolutamente nada y pego el cliente que acabamos de Descargar Acá ahora vamos a la próxima parte del video donde vamos a a trabajar con este cliente en nuestra distribución de ubuntu Life hagamos un par de aclaraciones respecto a la generación de claves es durante la generación de claves del validador cuando nosotros vamos a configurar la dirección de retiro Qué es la dirección de retiro donde vamos a retirar nuestros 32 If en

stake más los rewards generados por haber tenido el validador funcionando durante un tiempo determinado es sumamente aconsejable configurar la dirección de retiro en el momento de la creación de la clave por cuestiones evolutivas del protocolo se se podría omitir la la la configuración de la dirección de retiro en este paso por qué digo por razones evolutivas bueno porque cuando se lanzó proof of stake no se podía de retirar por lo tanto no se podía configurar la dirección de retiro hoy en día sí se puede retirar y es aconsejable hacerlo desde el primer momento sí

Cuáles son las consideraciones acerca de la elección de retiro bueno es una cuenta de etherium común y corriente y como cualquier cuenta de eterium común y corriente de la cual nosotros queremos estar seguros de que es nuestra necesitamos poseer sus claves privadas s jamás utilicemos para la dirección de retiro una cuenta exchange Eso sería el peor error que podemos cometer y les aconsejo Us hard wallets o eh multis la multis hoy en día incluso es más recomendada que la hard wallets Porque no tenemos el riesgo de tener un único punto de fallo s en caso de perder la las palabras de de esta Hardware wallet vayamos un antes de continuar vayamos un

poco a ver el kiub de del cliente el que vamos a instalar el que vamos a utilizar perdón vamos al ritme este es el archivo ritme vamos a la introducción y acá nos está diciendo la introducción que este cliente es una herramienta para generar el cas Store bls bls 12381 y su correspondiente archivos necesarios para el sterium stacking launchpad o sea nosotros vamos a generar básicamente con este cliente dos archivos a partir de qué lo vamos a generar Bueno A partir de una frase hemón a partir de 12 o 24

palabras por lo tanto nosotros podemos venir a este cliente Con 12 y 24 palabras y generar estos archivos o también podemos generar las 12 y 24 palabras utilizando este cliente cualquiera de las dos formas es válida vayamos a donde está acá Cómo se utiliza nos pide que instalemos yendo a la página de versiones ya lo hicimos y después nos dice Cómo utilizar eh el cliente que es deposit y cuáles son los comandos que podemos utilizar básicamente hay dos comandos que es New

nemonic existem nemonic cuando ponemos New nemonic qué va a hacer nos va a crear una nueva frase nemica Sí con la cual después a partir de esa frase nemica nueva que que nos va a generar este cliente vamos a poder generar los archivos del kstore o si no venimos con nuestras propias 12 o 24 palabras y usamos El Comando existing nemonic como nosotros vamos a usar New nemonic en la primer parte del de del videoo vamos a ver cuáles son los argumentos que se pueden utilizar con este con este Comando esto lo podemos ver

acá abajo New nemonic arguments y el que yo quiero hacer una Lupita Y que veamos con atención es execution address Sí por qué menciono este porque este es con el cual vamos a configurar la dirección de retiro sí Entonces es muy importante eh utilizar este argumento cuando queremos nuestro eh Cuando utilicemos eh El Comando New nemonic Por qué el resto de los argumentos el mismo cliente nos va a ir preguntando No

si vos no le pones Cuántos validadores querés te va a decir te va a preguntar Cuántos validadores querés Y vos le ponés te va a preguntar el lenguaje te va a preguntar todo lo que te necesario pero no te va a preguntar execution address si vos no no lo ponés de forma explícita No te lo va a preguntar por omisión vos vas a crear tus archivos kor sin una dirección de retiro configurada Bueno espero que esto se haya entendido porque ahora lo que voy a hacer es reiniciar la computadora en voy a tener que entrar al vios para que me se encienda la computadora con desde el pendrive del ubuntu y

cuando está cargando el ubuntu no lo voy a instalar sino que voy a poner usar versión trial Sí así ya entro en lo que sería el ubuntu Live que es como esa muestra gratis que les dije hace un ratito de del ubuntu para poder utilizar el sin instalarlo Así que en este momento voy a hacer eso voy a reiniciar la computadora para entrar y seguir mostrando el tutorial desde lun to Life algo muy importante es que a partir de ahora la computadora quede desconectada totalmente de internet sí podemos apagar el router si la computadora tiene un cable de red

desconectar ese cable de red Lo importante es asegurarse que a partir del próximo paso la computadora no esté conectada en internet y vamos a cumplir el segundo requisito de hacerlo offline Sí con el sistema operativo Live y totalmente offline bueno una vez en el ubun Live podemos ya utilizar el sistema operativo como si estuviera instalado es muy similar en si le hacemos doble clic acá seguiríamos con una instalación normal en instal untu cosa que evidentemente no queremos hacer sino que queremos utilizar el cliente que tenemos en el pendrive Así que vamos a buscarlo Acá tengo el

pendrive Este es el el cliente vamos a copiar extraemos aquí lo tenemos como es un nombre muy largo vamos a poner un nombre más corto Vamos a ponerle client una vez que está el cliente entramos a carpeta y acá está el el programita que vamos a utilizar lo abrimos desde una terminal para poder utilizar los comandos que vimos hace un ratito vamos a generar si la nueva clave entonces El Comando era con Slash

deposit newon lo que habíamos dicho que íbamos a usar es el comando el argumento perdón execution address Y acá es la dirección de retiro De dónde saco la dirección de retiro Bueno yo me aviv y lo copié en el pendrive me aviv la segunda vez en realidad abro Acá tengo la dirección de retiro esto tengo que chequear doble chequear y triple chequear que sea la

dirección de retiro correcta que nosotros tenemos bajo nuestro control de nuestra cuenta de pegamos y corremos eh En qué el primero que nos pide es vamos a agrandar un poco para que sea mejor nos pide Qué idioma vamos a poner en inglés el número tres nos está diciendo que nosotros samos una dirección de retiro por favor asegúrate de que sea correcta repetí la dirección de retiro yo hice un triple check sé que está correcto Y entonces la próxima que nos pregunta es en qué idioma queremos las

palabras de nuestra clave mnemónica Vamos a ponerle en inglés que es con el número cuatro Cuántos validadores vamos a utilizar nosotros eh sabemos que con una sola clave hemón podemos correr muchísimos validadores pero nosotros vamos a correr solamente un validador vamos a poner uno Si queremos una testnet o mnet vamos a poner mnet y acá No pide un pass phrase para si encriptar nuestro keor vamos a poner una clave una clave fuerte segura esta clave por favor anótenla en una hoja s

la tienen que tener anotada en hoja en hoja si en forma física no en una computadora y acá ya nos da las claves eh las 24 palabras Perdón Qué vamos a hacer con las 24 palas bueno la vamos a copiar en en un medio físico ya sea en una hoja de papel Por el momento después la podemos pasar a metal más adelante pero en una hoja de papel está bien así que bueno ahora yo voy a usar el video lo voy a copiar y seguimos copiadas las palabras una vez que tenemos las palabras seguimos damos enter nos está

creando las claves listo las claves fueron creadas con éxito Qué es lo que nos creó bueno dentro de la carpeta validator Case los archivos del habamos dicho al principio venimos acá a la carpeta Y estos son los archivos que vamos a necesitar para nuestro validador y para cargar en el launchpad de ethereum esto lo vamos a utilizar en el workshop siguiente Igual acá No termina el el tutorial sino que ahora vamos a verificar que lo que hayamos anotado que esas claves sean las correcta Así que vamos a seguir con eso ahora lo que vamos a hacer es verificar

que la s phrase O sea que la frase nemonic que tenemos anotada esté bien que sea la correcta vamos a utilizar eh nuevamente el cliente lo que vamos a hacer acá a esta carpeta validator Case vamos a poner entre vamos a agregar la palabra original si Nosotros sabemos que estas son las eh que creamos la primera vez y ahora vamos a a correr en una terminal para poder usar los comandos de este cliente que básicamente es deposit y El Comando que vamos a haer es

existing demonic con el argumento execution add no no se y acá le pegamos nuevamente la dirección de retiro ya tengo portapapeles a un check doble check triple check Qué idioma lo queremos en inglés nos está diciendo el Warning de la dirección de retiro como yo hice un triple check y sé que está bien Lo agrego bueno Y acá nos está

pidiendo si que que escribamos la frase nón que tenemos anotada en un papel Así que vamos con eso escribir las palabras le damos a continuar Inter enter de Index bueno acá lo que tenemos que poner es cero Qué es este Cero en El Paso anterior cuando creamos el el nuevo nemonico para un validador le pusimos que queríamos un

solo validador ese único validador va a tener el Index cero si habríamos creado dos validadores tendríamos el index c y el un sí y así sucesivamente nosotros como partimos de hicimos un solo vador el Index que queremos es el cero no se hace repetir el cero Cuántos validadores queremos hacer el Ke de uno solo queremos en minet nos está preguntando qué r queremos minet y de vuelta nos está pidiendo Si queremos agregarle un p FR voy agregar

acuérdense no habría hecho falta porque yo estoy tratando de verificar simplemente Pero bueno lo cre y acá me creo el cas me lo creo en la misma carpeta fíjense por eso puse este el original y este es el nuevo lo que vamos a hacer ahora es verificar si los nuevos que nos creó son iguales al original deberían ser iguales porque los creamos con las mismas palabras y es lo que vamos a hacer a continuación Bueno vamos a comparar los archivos vamos a abrir deposit Data de la versión que creamos para

verificar y la versión original vamos a abrirlos por separado si podemos ver un poco mejor y lo que tenemos que comparar es el p p sí Esto es lo importante vamos a ver que el pkey empieza en a60 d6 61 y acá dice en el otro a60 d6 61 es lo mismo vamos a ver cómo termina termina en 966 966 95 966 966 95 perfecto podemos verificar

la dirección de retiro con el withdraw credentials empieza en 01 Eso es porque está configurado y est dirección de retiro que empiez f2 BB y termina 60 f2 01 perfecto f2 BB 60 f2 Bueno podemos ver claramente que hemos podido recrear el deposit Data s a partir de las palabras podemos verificar también los cas es el original vamos a abrir el el otro vamos a separarlos como

hicimos antes y comparamos de vuelta el p Ke a60 d61 a60 d61 termina 96 695 y termina 26 695 el resto del no lo no lo verificamos porque son archivos encriptados Es lógico que sea diferente lo que tenemos que verificar es el p key coincide entonces pudimos eh verificar que podemos volver a crear el Ke Con la s phras que tenemos guardada lo que quiere decir que está bien eh anotada para finalizar

vayamos y copiemos editor key original copy en el pendrive Ahora cuando cu nosotros apaguemos esta computadora vamos a ver que todo lo que estaba que creamos en este sistema operativo eh Live se va a borrar y no va a quedar Rastros de que nosotros estuvimos por acá Así que apagar el sistema operativo Live Bueno una vez más en Windows solo para mostrar los cambios que han

sucedido en los pendrive si vamos al pendrive donde guardamos eh las claves sí acá están los archivos evidentemente cuando nosotros montemos el validador este pendrive Únicamente lo vamos a conectar en la computadora que va a tener el validador y el pendrive donde estaba el unun para mostrar que no se efectua ningún cambio Si buscamos una clave de validador van a ver que no existe porque no se guardó nada que lo que hicimos y de esta forma nosotros creamos el casor de forma segura de forma of change y con un sistema operativo Live Así que seguimos

eh en el próximo workshop para ya levantar el validador nos vemos e