Está en la página 1de 15

Curso

Criptografía y Blockchain
Taller #1
Viernes 20 de Marzo 2020

Prof: Ricardo Seguel


Ayudante: Carla Mardones
Páginas 36-40

¿Qué es MetaMask?
MetaMask es un plugin que hace de puente entre varias ​dApps1 y tu navegador Chrome sin
comprometer tu seguridad, usando varias cuentas y sin necesidad de usar un nodo Ethereum
completo.

MetaMask​, desarrollada por el criptógrafo Aaron Davis y Dan Fiblay, intenta acercar aún más
las blockchain al usuario a través de una suerte de intérprete de dApps que funciona como una
extensión del navegador, permite acceder a servicios, firmar transacciones ​blockchain​,
administrar tokens, administrar varias ​wallets ​(billeteras), todo en una interfaz amigable y
segura. La idea es integrar todos los servicios, incluyendo aquellos de Ethereum, en el
navegador.

Por medio de integrar la API Ethereum web3 en el javascript de cada sitio web, permite que
cada DApp pueda leer blockchain. MetaMask posee su propia ​llave privada2, alojada
localmente y maneja ​tokens3 propios, de modo que tus transacciones no tocan nunca el
servidor y proveen una capa extra de seguridad. Una de las funcionalidades propuestas es la
autenticación de firmas sin necesidad de recurrir a terceras personas (y firmar contratos, por
ejemplo).

Usando MetaMask para Crear y Acceder al Wallet


Primero, se debe saber que el uso de MetaMask es compatible solamente con los siguientes
navegadores:

Ahora tienen que descargar MetaMask desde la página ​https://metamask.io

1
​DApp​: Decentralized APPlication (aplicación descentralizada) consiste en un código que se ejecuta en
una red P2P (peer-to-peer). Las DApp son un tipo de programa de software que no requieren una
autoridad central para funcionar.
2
​L​lave privada​:una especie de clave de acceso que sólo debe poseer la persona asignada para el
manejo de información importante o de carácter especial.
3
​CriptoMoneda​ es aquella que usa su propia cadena de bloques, separada e independiente.
CryptoToken​ es aquella que se usa sobre una cadena de bloques ya existente.
Ir a ​Get Chrome Extension​ y luego ​Add to Chrome
Cuando ya se haya descargado, se redirigirá a la siguiente imagen, donde deben seleccionar
Get Started​. Se pedirá la ​creación de una clave​, la cual se debe mantener ​guardada en
algún lugar seguro​. Sin ella, ​no habrá forma de volver a acceder​ al ​wallet.​

En seguida, se pide importar alguna ​wallet​ existente (si es que ya hayas creado una en otro
lugar como, por ejemplo, en​ https://www.myetherwallet.com​ donde solo te deja crearla pero no
acceder a ella), o crear una nueva. En este caso, seguiremos los pasos de crear una ​wallet
nueva.
Se creará una​ frase de 12 palabras​ la cual será la ​clave ​backup ​(secundaria o de refuerzo)​.
Esta, al igual que la primera, ​se debe mantener guardada en un lugar seguro​. ​Sin ellas dos,
la ​wallet​ será perdida por siempre​.

Al presionar ​Next,​ se hará una pequeña prueba para verificar si es que la memorizaron o
guardaron en algún lugar para poder referenciarla.

Listo! Con esos pasos ya habrán creado su ​wallet y​ podrán empezar a minar y transferir ether.
Siempre podrán revisar cuanto ether tienes disponible a través de la extensión.
Pagina 55-64

Implementar una Blockchain Privado de Ethereum con


Kaleido

Kaleido es una solución que le permite crear redes Blockchain basadas en Ethereum y Quórum
de forma rápida y sin complicaciones. Un ejemplo es una ​red privada4 de la cadena de
suministro donde un grupo de proveedores, distribuidores y usuarios finales rastrean los
productos a medida que se mueven a través de la cadena de suministro.

El primer paso es crear una ​cuenta nueva en Kaleido y luego iniciar sesión​.

Luego se debe crear un Consorcio (​Consortium)​ . Piensen en un consorcio como una colección
de participantes que se unen para un propósito común, por ejemplo, un grupo de proveedores y
distribuidores para una red privada de cadena de suministro basada en Blockchain.

4
​Redes privadas​: se pueden pensar como una red blockchain sin las características públicas de la
misma. En las redes privadas, los permisos de escritura están restringidos a una organización. En
cambio las de lectura pueden estar abiertas al público o restringidas hasta el punto que se quiera.
Luego, deben indicar la misión del Consorcio y seleccionar la ubicación en la que desea que se
aloje la red Blockchain.

Ahora deben agregar un nuevo entorno. Pueden pensar en el entorno como la red Blockchain
en la que las organizaciones participarán.
Asignen un nombre al entorno y decidan si desea que sea una red Ethereum Blockchain o una
basada en Quorum. Si desean que esto se base en Ethereum, eliga Geth. En este caso
elegimos Geth.

La característica "RELAY SNAPSHOT OF BLOCK HASH TO MAINNET" es un método


ingenioso que la gente de Kaleido ha creado para escribir un snapshot de esta Blockchain
privada en un momento específico para la red pública de Ethereum.

¿Por qué es útil esto? Tengan en cuenta que esta es una red privada de blockchain, por lo que
teóricamente es posible que un grupo de nodos deshonestos se unan para coludir y realizar
cambios no autorizados en transacciones pasadas en Blockchain. Para evitar esto, se puede
guardar un snapshot de este Blockchain en la red pública de Ethereum para que un hash de
bloque en la red privada se pueda contrarrestar contra lo que está escrito en el Blockchain
público.
Luego agregan un nodo. Cuantos ​más nodos tenga en un entorno Blockchain, más
participantes estarán allí para garantizar que esta red Blockchain se mantenga viva,
saludable y bien validada​. Si están creando una red privada de cadena de suministro, pueden
pensar en cada nodo como un participante. Luego, indiquen el propietario del nodo y asígnen
un nombre y decidan los recursos que desean que use su nodo.
Con un nodo en ejecución, los nuevos bloques comienzan a minarse continuamente.
Actualmente, cada bloque generado en su Ethereum Blockchain privado no contiene ninguna
transacción. Para ejecutar la transacción, debemos permitir que las personas se conecten a los
nodos. Para hacer esto, se debe agregar una nueva ​App Credentials​ y darle un nombre a su
aplicación.
Hagan una copia del nombre de usuario y la contraseña que le permitirán conectarse a su
Blockchain privada.

También necesitarán saber la dirección de su nodo. Para verlo, hagan clic en el nombre del
nodo que acaba de crear.
Copine la dirección del punto final RPC. Ahora tienen el nombre de usuario, la contraseña y la
dirección para acceder a este nodo.

Ahora, desde su navegador Chrome, inicie sesión en MetaMask y seleccione Red privada.
Seleccione "Custom RPC" porque estamos accediendo a una red Ethereum ​personalizada​, y
no a una de las públicas.
Suponiendo que su nombre de usuario es {nombre de usuario} y su contraseña es {contraseña}
y la dirección del punto final RPC es https://{node-rpc-url}, ingrese lo siguiente en el campo de
texto "New Network": ​https://{username}:{password}@{node-rpc-url}
Antes de que su cuenta en MetaMask pueda ejecutar cualquier transacción, necesita Ethers. A
diferencia de la red pública Ethereum Blockchain, ​no necesita intercambiar efectivo real​ por
Ethers.

Copien la dirección de su cuenta en MetaMask.

En los servicios de "Ether Pool", seleccionen "Cuenta de fondo".


Peguen la dirección de la cuenta e ingrese 10 para la cantidad. Estamos regalando 10 ETH a
esta cuenta. Si fuera el propietario de una red privada de cadena de suministro, probablemente
podría "vender" estos ETH como suscripción para su servicio.

Esperen mientras esta transacción se escribe en el ​libro de registros5. Cuando termine, verán
que aparece una nueva ETH en su cuenta.

5
Un blockchain es un libro de registros​ digital descentralizado, distribuido y muchas veces público
que se usa para registrar transacciones en muchas computadoras para que cualquier registro
involucrado no pueda ser alterado retroactivamente, sin la alteración de todos los bloques posteriores.

También podría gustarte