No último texto eu contei a história do “Problema dos Generais Bizantinos”. Uma narrativa que ilustra como é complexo se alcançar consenso em um ambiente descentralizado e sem poder confiar nas partes envolvidas, exatamente como é o caso das moedas digitais. Diversas soluções já foram e continuam sendo propostas para esse problema, mas parece não haver uma solução definitiva. Como disse Vitalik Buterin, co-fundador do Ethereum, parece haver um trilema em ação, pois normalmente é necessário escolher duas dentre as seguintes propriedades: segurança, escalabilidade e descentralização.
Em textos anteriores eu falei sobre algumas destas soluções, como o Proof-of-Work e o Proof-of-Stake. Na primeira, os participantes da rede buscam resolver um problema matemático complexo e quem conseguir resolver o problema antes dos demais é remunerado por isso. No segundo método, os servidores colocam algo em rico (at stake) que será perdido/confiscado no caso de desonestidade.
Nesse texto pretendo abordar uma solução bastante diferente e que é adotada na moeda XRP: o XRP Ledger Consensus Process.
É um algoritmo extremamente eficiente que não requer a energia gasta com a mineração (POW). Uma das principais diferenças desse algoritmo para os demais é que cada participante da rede possui uma lista de servidores que teoricamente não tentarão burlar as normas da rede (UNL).
Essa lista é livre, cada nó pode criar a sua lista da maneira como bem entender, de modo com que, probabilisticamente, a maioria dos escolhidos será honesto. Esses servidores eleitos pelo nó são chamados de validadores, e sua função é verificar se as transações pedentes na rede estão de acordo com as regras do protocolo. Caso estejam, os validadores assinam as transações e os nós são responsáveis por gravá-las em seu banco de dados local.
A lista recebe o nome de UNL (Unique Node List) e é algo como uma sub-rede tida como honesta dentro da rede principal. Durante o processo de validação das transações, cada elemento (nó da rede) passa para frente uma lista de transações que ele foi capaz de ouvir na rede para os participantes que ele considerou “confiáveis”, os tais validadores.
Se a maioria dos validadores considerar que as transações propostas são legítimas (o percentual é configurado pelo nó, geralmente em torno de 80% de concordância), tem-se o consenso e é gerado um registro para o banco de dados (ledger). Cada nó é responsável por escrever seu registro com base no consenso de seus validadores (UNL).
É importante destacar que para essas sub-redes não chegarem a diferentes consensos, elas precisam estar suficientemente conectadas. Na prática, se pelo menos 20% da lista de validadores escolhidos por um nó estiver devidamente conectada à rede (e o protocolo garante essa conexão) será impossível que se cheguem a diferentes consensos.
Outro ponto importante sobre esse método se refere ao percentual de concordância necessário para se alcançar o consenso. Supondo que você configurou seu nó para um limite de 80%, ou seja, ao menos 80% dos validadores devem seguir as regras para que uma transação seja considerada válida. Na prática essa regra garante que se ao menos 21% da rede for honesta, não será possível validar uma transação inválida, impedido que esta seja incluída no blockchain (ledger). Neste caso, nenhuma transação será publicada.
O processo de validação é determinístico, ou seja, se uma transação legítima é ouvida por um validador honesto ela é considerada válida e fim. Um validador não tem poder de decidir se inclui ou não determinada transação, a decisão é determinada pelas regras do protocolo, diferente do bitcoin, onde um minerador escolhe quais transações entram ou não na rodada de validação (mineração do bloco).
Na prática, os blocos (ledgers) do XRP são gerados em intervalos relativamente regulares, a baixo custo e não é necessário aguardar a validação após a publicação de um ledger, pois ele é válido a partir do momento de sua criação, diferentemente de outras moedas em que se precisa esperar de 3 a 6 blocos para garantir a segurança absoluta da transação.

Tempo para publicação de um bloco de transações de XRP (em segundos).
Como foi dito, não existe apenas uma única solução para se alcançar um consenso em uma rede distribuída e todas as alternativas possuem pontos fortes e fracos. No caso do método apresentado hoje, a escolha de uma lista de servidores adequada é bastante importante para garantir a confiabilidade do blockchain (ledger). Apesar disso, o XRP consegue ser muito mais adequado à utilização comercial do que outras moedas justamente pela sua rapidez e baixo custo.
Seu ponto fraco reside no fato de que poucos participantes editam suas listas de validadores, tornando na prática o Ripple, empresa responsável pela tecnologia, como agente capaz de controlar a rede (embora tal atitude represente severo prejuízo econômico para a empresa).