O padrão de Crypto-Conditions apresenta potencial de se tornar uma referência capaz de implementar toda a lógica e conceitos que descrevem as condições que definem Smart Contracts.
A aplicação dos contratos inteligentes (Smart Contracts) visa executar lógicas que estão definidas por meio de contratos de maneira rápida e confiável. O resultado final da execução desses contratos é denominado transação. Os contratos inteligentes permitem a eliminação de intermediários, tornando o tempo necessário para a sua conclusão mais rápido e, além disso, as transações geradas via contratos são rastreáveis e irreversíveis, o que aumenta o grau de confiabilidade da solução como um todo.
Apesar de parecer um termo novo, o conceito por trás dos contratos inteligentes tem raízes antigas e define os termos básicos de um contrato legal, ou seja, os contratos inteligentes são capazes de realizar transações com total amparo legal, garantido pelas regras computacionais ali implementadas.
O surgimento de algoritmos Byzantine Fault Tolerance (BFT) e de linguagens de programação, que possuem nativamente diferentes graus de completude de Turing, tornaram possível o desenvolvimento de contratos inteligentes com regras complexas. Inúmeras plataformas de Blockchain implementam padrões próprios para a codificação desses contratos com variadas funcionalidades, como multiassinaturas, gestão de contas e integração com outras redes.
A rede Bitcoin possui uma linguagem de scripts para a criação de Smart Contracts, a rede Ethereum também possui uma plataforma própria para a criação desses contratos inteligentes, entretanto, para a comunicação entre as duas, é necessária uma implementação paralela, que torne possível ter acesso à lógica entre essas redes. O RootStock é um exemplo de plataforma de Smart Contracts que busca criar uma representação que funcione entre a rede Bitcoin e Ethereum.
Uma das premissas atuais para a saída de um Smart Contract é que ela seja determinística, ou seja, o conjunto de valores de saída seja finito e previsível. Com isso, é possível inferir que um conjunto de condições codificadas e dados estruturados consigam estabelecer um padrão que, por meio de mensagens assinadas, garanta o cumprimento das regras implementadas.
As Crypto-Conditions são um padrão de formato para descrever condições e critérios de satisfação de execuções lógicas, por meio de regras criptográficas serializáveis. O formato suporta diferentes algoritmos, incluindo funções de hash e esquemas de assinatura criptográficas.
A estrutura das Crypto-Conditions é dinâmica, sendo composta por condições básicas, ou outras mais complexas, com a existência de subcondições que, por sua vez, podem possuir subcondições e assim recursivamente. Essa característica denomina-se multinível.
Outro ponto importante está na utilização de multiassinaturas para a satisfação das condições, ou seja, dado “n” condições apenas “m” precisam ser garantidas para que a validação seja positiva. Como utiliza-se de regras criptográficas serializáveis, é possível trabalhar apenas com as informações criptografadas consolidadas para estender as regras para estruturas mais complexas. Isso permite o reuso das regras, assim como a liberação do hash para ser validado em qualquer outra plataforma.
Todas essas características demonstram o potencial das Crypto-Conditions como padrão de encapsulamento de regras para Smart Contracts multiplataforma, com transparência e confidencialidade.