A IBM está atualmente investindo na Blockchain Hyperledger e criando soluções para diversos setores, vamos explorar os conceitos básicos para criar uma aplicação com essa solução.
Eu sempre busco trazer os mais variados exemplos práticos para programadores de Blockchain, como a criação de um Token Ethereum e também de um ICO Ethereum, que pode ajudar a criar um norte a quem está no início desta jornada cripto como desenvolvedor, coloque este da Hyperledger como um a mais para seu portfólio.
Quando citamos essa tecnologia no Livecoins anteriormente, citamos também que um estudo apontou que mais de 80% das soluções criadas no Brasil atualmente utilizam a Hyperledger.
Com esta blockchain surgiu o primeiro projeto de Blockchain ligado a saúde no país, a ZHealth, e vamos aqui com este artigo explorar a criação de negócios por essa perspectiva.
Estamos em um momento de alta conectividade, e faz sentido lutarmos para aprimorar e gerar riqueza com transações e contratos em rede. Cabe lembrar que a Hyperledger não possibilita criação de tokens para ICO, mas sim de redes e contratos inteligentes para negócios.
Com essa rede é possível criar o Ledger, que é o Livro razão que é um sistema de registro distribuído, que guarda as transações e verifica os contratos, que possuem as condições para que as transações ocorram. Com a Hyperledger, a transação apenas alimenta a base de dados, não sendo possível excluir registros do Ledger (DLT).
As vantagens da solução para empresas está principalmente na possibilidade de colocar as informações vitais aos negócios em vários locais ao mesmo tempo, sem atuar de forma centralizada que custa mais e é suscetível a mais problemas de segurança e transparência. Com o conceito de dados distribuídos a iniciativa busca confiança e privacidade aos atores dos sistemas.
Para deixar um exemplo aqui, iremos trabalhar com o Hyperledger Composer, que é um ambiente para criação de Smart Contracts de forma rápida e fácil. É aberto e faz parte da Linux Foundation, do qual a IBM é uma das empresas investidoras e parceiras.
Não é necessário cadastro e nem login para testes, e ao acessar o site (clique aqui), vamos fazer exatamente isso: uma blockchain testes. Caso você queira uma blockchain de negócios real, deve realizar o download do Composer Local, realizar um login e exportar o arquivo para depois subir para um servidor da IBM.
Ao acessar o site, clique no Botão em Destaque “Let’s Blockchain“. Após isso, há uma opção para se rodar um exemplo que você pode fazer depois para aprender mais sobre o tema. Em seguida, clique em “Deploy a New Bussiness Network“.
Após isso, irá abrir uma nova janela com informações básicas do projeto, como o Nome de Negócio do Projeto, Descrição, Criar o administrador da rede.
Depois, você terá as opções de importar um projeto ja existente, criar um projeto do zero (empty business), ou criar um projeto com uma base (basic sample network). Para finalizar podemos escolher um exemplo de uma blockchain já com um caso, vamos criar uma “trade-network“, que no menu ao lado mostrará o que essa rede terá e o seu nome será criado automaticamente. Clique no “Deploy” após isso.
Ao clicar no Deploy será carregado o seu novo projeto, que após isso iremos clicar no botão “Connect Now” para dar início a nossa aplicação. Na nova tela será resumido o que pode ser feito com essa rede criada, onde há um participante TRADER, um ativo COMMODITY, uma transaction(s) TRANSACTION e um evento. No lado esquerdo há alguns arquivos onde temos um arquivo de modelo “Model File“, clique no mesmo.
Repare na Figura 4 então que abrimos o arquivo de modelo, do qual já possui uma estrutura pronta para a blockchain que utiliza uma escrita Web Model Language, que para trabalhar com objetos da classe utiliza um “o” antes do mesmo, e para relação utiliza a “–>”. Devemos lembrar sempre os seguintes pontos: quem são os meus participantes, o que eu estou manipulando e qual as transações que estão sendo realizadas.
Abaixo do arquivo de modelo, é possível verificar o “Script File” que mostra o que é possível fazer com esse Smart Contract pré-definido. No caso, um participante pode ser escolhido como o dono de um ativo, do qual pode realizar trades, e caso isso ocorra será atualizado na Blockchain essa informação.
Estando nesta tela ainda é possível conhecer os controles de acesso de atores, e as consultas possíveis, respectivamente nos locais “Acess Control” e “Query File“. Explore a vontade essas opções para conhecer mais sobre o ambiente e visualizar sua aplicação no ambiente. Ao terminar, clique na parte superior no botão “Test“.
Chegamos ao local onde a mágica acontece, pois é aqui que iremos criar atores e condições para um contrato, que após ser executado irá para a blockchain.
Podemos criar participantes, ativos e transações, que após isso terão seus futuros resolvidos pelas regras que observamos anteriormente.
Na figura 6 acima mostra o que podemos criar, clique na opção “Trader” e depois clique no Botão “+Create New Participant” no lado direito da tela. Na tela que irá aparecer faça as configurações de tradeID e FirstName e LastName como preferir, lembrando que a classe será a Trader e já estará pronta essa opção, segue exemplo:
Crie mais um Trader da mesma forma para podermos simular uma transação, e se lembre do código de algum trader para o próximo passo:
Após finalizar, vamos criar um ativo para que seja realizado uma transação, clique no botão “Commodity” no lado esquerdo e depois em “+Create New Asset” no lado direito da tela. Não esqueça de criar o ativo digital com o código de algum trader que cadastrou, para que possamos realizar a transação após isso.
No botão “All transactions” você verá a sua blockchain, com todas as informações do que foi gravado nas alterações que fizemos até aqui.
Para finalizar, vamos clicar no lado esquerdo da tela no botão “Submit Transaction” para poder mudar o ativo digital de dono. Na nova tela que irá se abrir, escolha o ativo digital que será negociado e o novo dono, escolhendo o Transaction Type -> Trade:
Ao finalizar e clicar em “Submit”, será gerada uma transação na Blockchain da Hyperledger, que irá alterar o dono do ativo. Isso pode ser checado no “All Transactions” ou pode ser conferido na opção “Commodity” também.
Se fosse necessário controle de acesso, a opção para configurar fica no canto superior direito, e para empresas isso é importante em vários momentos.
Essa é uma aplicação básica da Hyperledger que pôde ser criada como teste, e há vários outros exemplos por lá para que teste suas habilidades e conhecimentos antes de efetivamente criar algo “sério” para uma empresa.
Se você é um desenvolvedor e quer acompanhar as novidades, no site oficial há uma área dedicada ao tema, não deixe de conferir.
A comunidade Hyperledger no Brasil está sempre com eventos sobre a aplicação, fique atento e participe quando puder.
Se você não é um programador e ficou de certa forma confuso com termos e outros detalhes, confira as nossas seções:
O conceito de blockchain e smart contract da Hyperledger não são alinhados com a visão de Satoshi Nakamoto, o que não impede que a mesma tenha destaque no ambiente de negócios.