Tutorial do Hyperledger Fabric para iniciantes: guia abrangente

Publicados: 2021-02-24

Existem inúmeras estruturas e ferramentas do Hyperledger disponíveis . Um dos mais bem-sucedidos é o Hyperledger Fabric. Desde seu lançamento em 2016, o Hyperledger Fabric se tornou uma estrutura popular para o desenvolvimento de aplicativos corporativos. Neste tutorial do Hyperledger Fabric para iniciantes , vamos orientá-lo em tudo o que você precisa saber, desde o que é, qual é a estrutura e como executar seu primeiro aplicativo nele. Sem mais delongas, vamos começar com nosso tutorial do Hyperledger Fabric .

Índice

O que é o Hyperledger Fabric?

Hyperledger Fabric é uma estrutura baseada em blockchain de nível empresarial. É uma estrutura de código aberto que fornece permissão DLT (Distributed Ledger Technology) para o desenvolvimento de aplicativos e soluções de negócios. Alguns dos principais recursos do Hyperledger Fabric incluem:

  • Arquitetura altamente modular
  • Consenso plug-and-play
  • Suporte para Solidity e EVM
  • Suporta consultas JSON, consultas baseadas em chave e outros dados consultáveis
  • Suporte a contratos inteligentes em vários idiomas

Com o conhecimento básico do Hyperledger Fabric e seus principais recursos, vamos passar para a próxima parte deste tutorial do Hyperledger Fabric para iniciantes .

Aprenda cursos de software online das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.

O que é a arquitetura do sistema Hyperledger Fabric?

Antes de começar com nosso tutorial principal do Hyperledger Fabric , é essencial aprender sobre a arquitetura subjacente. Ter um conhecimento sólido da estrutura ajudará você a entender como a estrutura opera.

  • Transações : Existem dois tipos de transações: implantar e invocar. As transações de implantação são usadas para criar chaincodes, que são programas executados pelo blockchain. Por outro lado, as transações de invocação são usadas para executar transações em contexto com os chaincodes implantados anteriormente.
  • Estruturas de dados : como qualquer estrutura de blockchain, as estruturas de dados usadas no Hyperledger Fabric estão em pares de chave-valor. Os códigos de cadeia manipulam os dados com as operações put e get.
  • Ledger : É uma sequência de todas as mudanças bem-sucedidas e malsucedidas na cadeia.
  • Nós : São os agentes de comunicação ou, em outras palavras, entidades de uma rede.
  • Cliente : usuários finais ou alguém que atua em seu nome.
  • Peer : Eles lidam com os estados da cadeia e garantem que tudo corra bem.

Tutorial Hyperledger Fabric para iniciantes desenvolverem seu primeiro aplicativo

Agora que conhecemos a arquitetura básica, é hora de desenvolver nosso primeiro aplicativo Hyperledger Fabric.

Construindo e Lançando a Primeira Rede

Esta etapa inclui a instalação de pré-requisitos e componentes de amostra para iniciar o desenvolvimento de nosso aplicativo.

Construindo a Rede

A primeira coisa que você precisa fazer é construir e iniciar a rede. Sem uma rede em execução, seu aplicativo não terá utilidade. Confira o guia de pré-requisitos e os binários do Hyperledger Fabric, as imagens do Docker e o guia de instalação de amostra .

Depois que tudo estiver instalado, use o comando a seguir para mover para o repositório com a rede de amostra.

cd fabric-samples/first-network

Em seguida, use o script byfn.sh para executar a rede. A execução dessa rede facilitará a comunicação da rede e lançará o essencial, como contêineres, pares, código de cadeia, etc., que ajudarão no outro processo. Depois de executar a rede de amostra, é hora de gerar os artefatos.

Gerando os artefatos

Use o código a seguir para gerar os artefatos e pressione “Y” quando solicitado a confirmar para começar a preencher os detalhes necessários.

.byfn.sh gerar

Alimentando a rede

Depois de gerar os artefatos, você precisa alimentar a rede. Ele acionará todos os componentes, incluindo chaincode e contêineres, para permitir que novos pares entrem na rede. Use o seguinte código para alimentar a rede:

./byfn.sh up

O idioma padrão para o chaincode do Hyperledger Fabric é Go. No entanto, você pode alternar para Node.js ou Java usando os seguintes comandos, respectivamente:

.byfn.sh up -l nó

.byfn.sh up -l java

Você também pode optar por usar várias linguagens de programação usando um dos seguintes códigos:

./byfn.sh up -o etcdraft

./byfn.sh up -o kafka

Lançamento da rede

Agora vamos lançar a rede. Mas antes disso temos que:

  • obter o subdiretório do nosso aplicativo
  • faça um clone local do repositório de amostra de tecido

Use o seguinte script de comando para iniciar a rede:

./startFabric.sh javascript

Depois de iniciar a rede, você terá tudo certo, desde solicitantes a peers e autoridades de certificação para desenvolver seu aplicativo. Como estamos usando o subdiretório do aplicativo, um contrato inteligente será iniciado automaticamente.

Instalando seu primeiro aplicativo

Use o código a seguir para instalar as dependências necessárias para instalar e iniciar o aplicativo.

npm instalar

Conectando com Autoridades de Certificação

Uma vez que a rede esteja funcionando, vamos começar nos comunicando com as autoridades que podem nos permitir adicionar usuários à cadeia. Para fazer isso, precisamos passar pelo Certificate Signing Request (CSR). Use o comando abaixo para entrar em contato com a autoridade de certificação e criar um certificado público, privado e x.509.

nó registerAdmin.js

Suas informações agora serão mantidas na carteira. Da mesma forma, para adicionar qualquer novo usuário, você precisa passar pelo mesmo processo e usar o seguinte código:

nó reisterUser.js

Este código adicionará o usuário e os detalhes serão mantidos na carteira.

Consultando um Razão

Você pode usar consultas de leitura para consultar um livro-razão por meio da rede blockchain e obter os resultados. O aplicativo não executará nenhuma consulta de gravação, pois os ledgers são somente leitura.

Use o código abaixo para recuperar todos os dados do livro-razão:

consulta de nó.js

Em seguida, precisamos estabelecer uma conexão para transmitir os dados. Depois que a conexão for feita, crie um gateway para permitir que o aplicativo se conecte à rede. A seguinte linha de códigos irá ajudá-lo a fazer tudo isso.

const { FileSystemWallet, Gateway } = require('fabric-network');

const gateway = new Gateway();

aguardar gateway.connect(ccp, { carteira, identidade: 'usuário1' });

contrato const = network.getContract('subdirectory_name');

O CPP no código acima é usado para acessar e verificar as informações do usuário. A última linha do código está se conectando a um canal específico. É essencial, pois toda a rede blockchain é executada em vários canais.

Entendendo o Contrato

Vá para o subdiretório chaincode/subdirecory_name/javascript/lib para acessar o contrato inteligente do aplicativo. No diretório acima, o subdirectory_name será o nome do subdiretório do seu aplicativo. Abra o arquivo application_name.js obtido aqui em um editor. Nesse arquivo, você obterá o contrato inteligente e todas as transações definidas na classe Contrato. Suponha que seu aplicativo seja sobre carros, os detalhes da transação serão parecidos com:

consulta assíncronaCarro(ctx, carNumber) {…}

Leia: Por que Blockchain é o futuro

Atualizando o Razão

A última parte deste tutorial do Hyperledger Fabric para iniciantes é atualizar o ledger. Considerando o mesmo exemplo de carro, vamos ver como você pode adicionar um novo carro no log. Use a seguinte linha de código para adicionar um novo veículo ao livro-razão.

await contract.submitTransaction('createCar', 'CAR15', 'Proprietário', 'Marca', 'CarModel', 'Cor');

Usar o comando acima criará um novo carro junto com os valores de atributo mencionados. Para enviar esta nova transação para o ledger, escreva o código abaixo:

node invoke.js

Isso atualizará com êxito o livro-razão.

Conclusão

Isso nos leva ao final do nosso tutorial do Hyperledger Fabric . A tecnologia Blockchain e a estrutura Hyperledger Fabric têm o potencial de revolucionar vários setores em todo o mundo. Este tutorial deu uma breve ideia de como a estrutura Hyperledger Fabric funciona e como executar sua primeira transação e aplicativo nela. Se você quiser entrar em detalhes e aprender como desenvolver aplicativos de negócios reais usando a estrutura, você pode se inscrever para o programa de certificação avançada do upGrad e IIIT Bangalore no curso de tecnologia blockchain .

O curso tem mais de 250 horas de material de aprendizado em tecnologia blockchain e estruturas como Ethereum, Hyperledger Fabric, Distributed Application Development (desenvolvimento de contratos inteligentes, desenvolvimento de back-end, API). Se você deseja seguir uma carreira no desenvolvimento de blockchain, vá em frente e inscreva-se hoje.

Domine a tecnologia do futuro - Blockchain

Inscreva-se agora para certificação executiva em Blockchain da IIITB