Pontos Principais
- Blockchains não precisam ser distribuídos para serem um blockchain, também podem ser centralizados ou descentralizados.
- Alguns exemplos de projetos reais em produção que utilizam registros distribuídos incluem determinados sistemas de pagamentos.
- A maioria dos projetos de blockchain que vão além da fase de prova de conceito ainda não suportam processos críticos para os negócios.
- Atualmente, os principais desafios que ocorrem no trabalho com registros públicos são: desempenho, permissão, privacidade e gerenciamento seguro de chaves.
- Casos de uso reais para registros distribuídos ainda estão surgindo mas incluem tokenização de ativos.
John Davies, CTO e co-fundador da Velo Payments, e Conor Svensson, autor da biblioteca web3j para interagir com o Ethereum, dão sua visão do estado atual do blockchain.
InfoQ: Por favor, apresentem-se e expliquem sua conexão com o espaço.
Davies: Olá, sou John Davies, CTO e co-fundador da Velo Payments. Somos uma startup, mas um pouco diferente, pois temos muita experiência, ou seja, somos veteranos. Fazemos pagamentos (mas não de salário) transfronteiriços de B2B e B2C para empresas da Fortune 100, majoritariamente na gig-economy (trabalho informal, sem um acordo formal de emprego). No caso, especialmente programadores, motoristas de carros e caminhões, pessoas da cadeia de suprimentos em hotéis, etc. Um dos co-fundadores foi o presidente da Visa, onde fui arquiteto-chefe e comecei a olhar para o BitCoin em 2009.
No verão daquele ano, eu representava exatos 0,25% das transações do mundo inteiro em um dia - naquele dia, haviam apenas 400 e a minha era uma delas. Cheguei a possuir mais de US$ 0,5 milhão no seu pico de valor, mas vendi uma parte em 2013 e o restante pouco antes do pico de dezembro de 2017. Fiz muitas palestras sobre blockchain ao longo dos anos e coloquei 2 em produção.
Sou, definitivamente, um cético sobre blockchain; amo a ideia de BitCoin mas nunca funcionará, e penso que as moedas de criptografia são uma perda total de tempo (e energia), sendo, na melhor das hipóteses, um esquema Ponzi. Sim, você pode ganhar dinheiro, assim como o Madoff também. As empresas de criptografia mais inteligentes saíram rapidamente e investiram em dinheiro fiduciário.
Um blockchain é um banco de dados, tendo todas as dores de cabeça que um banco de dados distribuídos tem (como o teorema CAP), mas aparentemente, por algum motivo, as pessoas passaram a achar que é a solução para todos os problemas. E como qualquer ferramenta, se usada no lugar certo, resolve problemas reais. Existem problemas por aí onde um blockchain se encaixa e muito bem.
Svensson: Sou Conor Svensson, autor da web3j, a biblioteca Java para integração com o Ethereum. Também sou fundador da blk.io, uma empresa de tecnologia blockchain corporativa, e presidente de normas técnicas da Enterprise Ethereum Alliance.
InfoQ: Como vocês caracterizariam o estado atual do ecossistema de registros distribuídos? É, como alguns sugeriram, "o fim do começo", ou outra coisa?
Davies: Há dois pontos aqui. Primeiramente, um blockchain não precisa ser distribuído para ser um blockchain, também podem ser centralizados ou descentralizados. Muitas pessoas entendem isso mas ainda há alguns obstinados que não pode ser um blockchain a menos que seja sem permissões e distribuído, o que é errado.
O segundo ponto é que blockchains não são todos registros; não gosto dessa suposição de que a palavra blockchain possa ser substituída pela palavra registro, como em um livro-razão. Se você está armazenando documentos legais em um blockchain, como um registro de imóveis, então não há registro real; se realmente quer registros, saiba que os bancos de dados relacionais têm funcionado bem como registros por décadas.
Então "fim do começo"? Não. "É outra coisa"? Sim, é outra ferramenta assim como bancos de dados de gráficos ou NoSQL.
Svensson: Acho que está certo. O hype inicial em torno do blockchain se estabilizou e estamos vendo certas plataformas surgindo com um conhecimento geral significativo de desenvolvimento, com um número de negócios tanto estabelecidos quanto novos construindo sobre elas.
InfoQ: Quais são os casos de uso reais para registros distribuídos? Existem mercados e setores específicos que possam fazer um uso especialmente bom deles? Quão amplamente aplicáveis são os casos de uso?
Davies: Me esforço para encontrar um caso de uso justificável para a DLT pura (Distributed Ledger Technology; Tecnologia de Registro Distribuído) fora do BitCoin e das outras 6.000 criptomoedas estranhas. Esse caso de uso foi espancado até a morte, a as DLTs são uma "solução" em busca de problemas. Qualquer organização com infraestrutura existente terá que tirar e substituir todo o sistema para substituir um sistema existente de registro por uma DLT. Se o seu banco disser que você tem £100 restantes na sua conta e a sua DLT disser que tem £120, você até poderá acreditar na sua DLT, mas boa sorte tentando gastar as últimas £20.
Svensson: Deixando de lado as ICOs, a tokenização de ativos e os tokens utilitários certamente ganharam muita tração nas redes públicas de blockchain. Estes são certamente bons casos de uso para a tecnologia, no entanto, neste momento existem muitos projetos diferentes fornecendo seu próprio sabor dessas tecnologias, e com a falta de adoção em larga escala é difícil dizer quais realmente terão sucesso.
No espaço de registros privados e autorizados, a tokenização de ativos também é muito popular, juntamente com iniciativas de identidade devido à natureza descentralizada dos blockchains, permitindo que os indivíduos tenham maior controle sobre a identidade, ou seja, não confiando na big-tech para aproveitar dados seus dados.
Em termos de casos de uso gerais, qualquer processo de negócios que tenha dados abrangendo vários limites da organização, resultando na duplicação de dados e, portanto, em reconciliações contínuas, pode se beneficiar potencialmente da DLT.
InfoQ: Qual a percepção de vocês dos projetos reais que usam os registros distribuídos e as ideias por trás deles? Quantos sistemas de produção reais existem por aí baseados em registos distribuídos?
Davies: Estamos usando um blockchain para pagamentos na hora e já faz algum tempo que não usamos o blockchain como o livro-razão, nós o usamos como uma trilha de auditoria e armazenamento seguro de dados. Inicialmente, resolvemos isso com um banco de dados e, para ser honesto, pudemos implementar quase tudo que temos em um banco relacional, mas investidores e clientes gostam de tecnologia com blockchains embutidos, então temos um também e todos estão felizes.
A imutabilidade em um blockchain (pelo menos nos blocos mais antigos) torna o histórico de replicação/mudança mais transparente do que um banco relacional tradicional (onde seria necessário executar um trabalho adicional para garantir que ninguém tivesse mudado sorrateiramente um histórico de transação). Projetamos nosso "VeloChain" do zero, construído em C para ser pequeno e performático (seis figuras por segundo). A segurança é a prioridade máxima, pois trabalhamos em serviços bancários internacionais, geoconfigurado (algo que não pode ser feito sem um DLT) e com opções de segurança pós-quântica.
Tudo no nosso sistema de AML para KYC, sanções e mensagens SWIFT são gravadas e logadas em nosso blockchain. Nossos clientes (pagadores, bancos e beneficiários ou vendedores, bancos e compradores, se preferir) podem adicionar metadados como faturas, declarações, documentos de integração em nosso blockchain, e provar que os processos, pagamentos, requisitos regulatórios e de conformidade foram atendidos.
Podemos proteger qualquer metadado (no nível do campo de input) com controle de acesso preciso e auditado, também definido no mesmo blockchain. Os dados criptografados só podem ser desbloqueados (descriptografados) pela chave privada do usuário, mesmo que não possamos ver parte do conteúdo. Temos um cofre criptografado para armazenamento de registros, portanto, também somos compatíveis com GDPR.
Isso não é um argumento de venda porque não vendemos isso, não somos uma empresa de blockchain, apenas faz parte da nossa plataforma. No entanto, vamos abrir o código apenas para "quebrar" os "quebradores".
Svensson: Existem projetos em produção usando registros distribuídos, no entanto, acho importante diferenciar aqueles que estão sendo executados em um ambiente de produção replicando dados de sistemas existentes e aqueles que são diretamente responsáveis pelo suporte às atividades principais de geração de receita de negócios.
Na empresa, sente-se certamente a falta do momento derradeiro - a maioria dos projetos blockchain que vão além da fase de prova de conceito e entram em produção ainda não estão suportando processos críticos para os negócios.
Isso não é surpreendente quando se pensa sobre os desafios de coordenar as mudanças de infraestrutura que abrangem várias organizações, cada uma com seus próprios processos de diligência técnica e de segurança que precisam ser seguidos.
Há também a questão da responsabilidade geral no caso de erros ou defeitos. Se há um consórcio ou grupo de organizações que participam da mesma DLT em escala, quem é o responsável legal? Acredito que será preciso ter o suporte do corpo regulatório ou da indústria em vigor com muitos desses projetos, caso contrário, os riscos poderiam ser altos demais para uma organização assumir no caso de falhas significativas.
InfoQ: Pensando especificamente na distinção entre sistemas públicos (como o Ethereum ou o Bitcoin) vs sistemas privados e autorizados, o que consideram como o equilíbrio entre eles? Os projetos preferem usar registros públicos ou privados? O que está dirigindo essa distinção, caso exista?
Davies: Acho que respondi isso na resposta anterior, considero os blockchains públicos uma perda de tempo. Se quer transmitir algo online, use o Twitter ou o Facebook, mas se for um segredo, a última coisa que quer é distribuí-lo publicamente, criptografado ou não. Porém, se o que quer é outra criptomoeda, então um blockchain público é a tecnologia para você!
Svensson: As empresas estabelecidas que trabalham com a DLT tendem a usar registros privados autorizados. Isso é para resolver uma série de desafios que existem atualmente no trabalho com registros públicos:
- Perfomance - os registros públicos são muito lentos (poucas dezenas de transações por segundo), além de deixá-lo à mercê do que os outros participantes da rede estão fazendo - criptogatinhos (cryptokitties) que diminuem a velocidade da rede Ethereum são um desses exemplos.
- Permissão - as empresas precisam de uma permissão bem refinada para os níveis de usuário, unidade de negócios e organização; esses controles não existem nas redes públicas.
- Privacidade - as transações na rede estão à vista de todos os participantes. As empresas precisam ser capazes de manter os dados privados, especialmente à luz da legislação (por exemplo, GDPR).
- Gestão segura de chaves - a finalidade da transação é a norma com registros públicos, o que dá pouca proteção às organizações, caso as chaves associadas aos blockchains públicos sejam ou estejam comprometidas.
Embora, ao longo do tempo, as redes públicas tenham se mostrado capazes de lidar com muitos desses itens, neste momento faz sentido para muitas empresas usarem registros particulares. Em alguns aspectos, é semelhante ao argumento da internet vs intranet.
InfoQ: Algumas tecnologias representam uma pequena melhoria no estado da computação e algumas representam uma verdadeira mudança no oceano. Por exemplo, podemos caracterizar o Processamento de Eventos Complexos (CEP) como um exemplo do primeiro, e a chegada do Hadoop anunciando o processamento de Big Data como um exemplo do último. Pensando sobre a tecnologia nesses termos, onde os registros distribuídos estão nesse espectro? Vocês podem apontar para algum indicador no mercado que demonstre isso?
Davies: CEP e Big Data são "tecnologias" recentes e para aqueles que me conhecem, também sabem que não sou fã de Big Data. Para mim, é o que acontece quando você pega dados normais e armazena de forma ineficiente, fica grande. CEP foi algo ok, apenas outro nome para SOA, SCA, ECA, etc. Cada fornecedor venderia a mesma ideia com um nome diferente.
Os blockchains são bancos de dados e geralmente lentos, com todos os mesmos problemas e dores de cabeça de qualquer bancos de dados. Resolvemos alguns problemas, mas 95% ou mais dos "problemas blockchain" atuais podem ser resolvidos igualmente bem por um banco de dados padrão, seja Oracle, Postgres, Neo4J, mas provavelmente não o MongoDB.
Dito isso, assim como qualquer uma das tecnologias de banco de dados de nicho, aqueles 5% de oportunidade onde o blockchain é a solução perfeita vale bilhões e é o nicho que imagino ter encontrado para nossos sistemas.
Svensson: Vejo registros distribuídos representando uma verdadeira mudança no mar, especialmente quando se olha para o que está acontecendo com os blockchains públicos, como o Ethereum. A quantidade de inovação que está ocorrendo aqui é fenomenal. A web 3.0, como vem sendo referida, muda fundamentalmente a estrutura de incentivos para os atores na web.
Um caso em questão é a adoção de tecnologias peer to peer. Embora amplamente utilizada para certos casos de uso (compartilhamento de arquivos), há pouco incentivo para que os participantes executem pares na rede. Redes descentralizadas como Ethereum, IPFS e os múltiplos serviços que estão sendo construídos sobre elas resolvem isso. Ao fornecer valor na forma de criptomoedas ou tokens utilitários, você é capaz de fornecer um modelo de incentivo para os participantes que fornecem valor à rede para os consumidores, o que é um paradigma totalmente novo na web.
Vai levar tempo para que essa mudança atinja a pessoa comum - a tecnologia ainda é muito complexa para se trabalhar com. No entanto, ainda estamos nos primórdios dessa tecnologia e há uma enorme quantidade de infraestrutura ainda sendo construída para nos aproximar desse novo modelo, indiscutivelmente mais justo, com mais controle nas mãos de muitos, em vez de poucos.
Em ambientes corporativos, acredito que teremos várias plataformas centrais de DLT, assim como temos bancos de dados. No entanto, haverá modelos de governança que os apoiarão, agilizando a implantação e o gerenciamento deles para os consórcios ou organizações que suportam. Algumas das DLTs serão instaladas nas redes públicas de blockchain para suportar a transferência de ativos ou outros tipos de valor entre redes diferentes, dentro desta internet de blockchains.
Sobre os entrevistados
John Davies, CTO e co-fundador da Velo Payments, tem mais de 30 anos de experiência em TI, de hardware com C, C ++, Java até arquitetura corporativa e participação em conselho executivo. Viveu pelo mundo inteiro, do Extremo Oriente, Europa até os EUA. Atualmente trabalha em um produto X em uma empresa Y, com mais para contar quando aparecerem no radar. Sua especialidade são arquiteturas de grande escala e alto desempenho. Dirigiu os sistemas de negociação FX da Paribas, liderou a arquitetura global no BNP Paribas, foi diretor global de arquitetura na JP Morgan Chase e arquiteto-chefe da equipe de inovação do V.me da Visa (agora Visa checkout). Palestra regularmente em conferências Java e bancárias em todo o mundo (QCon, JavaOne, Devoxx, JAX, etc).
Conor Svensson é autor da web3j, a biblioteca Java para trabalhar com o blockchain Ethereum. Também é fundador da plataforma blk.io, que fornece uma plataforma blockchain baseada em Ethereum.