Leia sobre o Zen

F* — Verificação Formal

Todas as plataformas de contratos inteligentes precisam lidar com dois problemas: execução correta e consumo de recursos. Isso é algo particularmente difícil de se resolver em uma plataforma descentralizada.

Zen leva F* como o ponto de partida para definir contratos inteligentes. F* foi desenvolvido pela Microsoft Research, é uma linguagem voltada para a verificação formal. O Zen usa as poderosas técnicas do F* tanto para criar provas de correção quanto para provar que os contratos sejam executados em um período limitado de tempo. A provas de correção significa que qualquer pessoa pode escrever um novo contrato, implementando um determinado tipo de ativos - uma opção de compra por exemplo - e qualquer usuário ou contrato pode imediatamente verificar e usar esse recurso, com a garantia de que ele irá executar conforme diz.

Computação Limitada

A comprovação do limite de recursos permitem que os mineradores aceitem e cobrem por qualquer transação que use um contrato, sem sofrer o risco de um ataque de negação de serviço. A comprovação do limite de recursos também permitem uma otimização muito significativa: os contratos podem ser compilados em código .NET no momento em que são criados, tornando a execução muito mais rápida do que em uma linguagem de script interpretada.

UTXOs & imutabilidade

Em um nível mais baixo o Zen funciona de forma semelhante ao Bitcoin, com transações que desbloqueiam moedas e bloqueiam-nas novamente para novas saídas. Este paradigma, geralmente chamado de "saída de transação não utilizada" ou "UTXO", significa que cada transação, incluindo uma transação gerada por contrato, tem um efeito claramente visível no consenso da rede, mesmo antes de executar um contrato ou verificar as assinaturas das transações. Os contratos Zen são imutáveis: uma vez criados, eles nunca mudam internamente. Os contratos que precisarem armazenar mais dados devem fazem isso com transações de saídas.

Conjunto de Contrato Ativo & Transações Offchain

Os contratos Zen são pagos para permanecer ativo por um período de tempo determinado: após o esse período eles ficam inativos e não consomem carga dos mineradores ou nós. Quando reativados, os contratos aparecem com o código original exato, como se nunca tivessem sido desativados. Isso permite que os usuários troquem os ativos emitidos por determinado contrato sem usá-los, ativando os contratos apenas para a liquidação final.

A combinação do paradigma UTXO e do contrato ativo também permite canais de pagamento garantidos por um contrato inteligente. Os usuários podem fazer trading em off-chain, trocar transações assinadas e só colocá-las na rede Zen em caso de disputa ou para fechar um canal. Mesmo contratos muito complexos podem ser mantidos em reserva, nunca ativados ou pagos, a menos que surja uma disputa.

Oráculos e Dados Externos

Os dados de fora do Zen e da blockchain Bitcoin permitem acordos no Zen acerca de eventos e recursos do mundo externo. Os oráculos Zen são eficientes e bem recompensados: os oráculos usam uma árvore de Merkle conjuntamente a uma grande quantidade de dados e então podem vender fragmentos individuais de dados, como prova de pagamento por cada parte.

Consenso Mesclado & Integração Bitcoin

No Zen os mineradores mineram a blockchain do Zen, mas também são necessários para monitorar e validar a blockchain do Bitcoin. Cada bloco no Zen pode referenciar um número de cabeçalho do bloco Bitcoin, confiando portanto no consenso do Bitcoin.

Isso não só aumenta o número de nós Bitcoin, como também torna o Zen interoperável com o Bitcoin. Qualquer ação no Bitcoin pode afetar eventos no Zen.

Os contratos Zen podem monitorar endereços Bitcoin e automaticamente emitir ativos. Isso significa que os usuários do Bitcoin podem assumir posições no Zen, entrar em contratos e fazer acordos descentralizados seguros, sem deixar o Bitcoin. Um contrato Zen que detém garantias e impõem pagamentos apropriados em Bitcoins.

Bitzen

Créditos de Bitcoin no Zen, protegidos por garantias, ganham propriedades especiais. Os contratos podem perceber o montante que está garantido, a existência de bitcoins atuais na rede Bitcoin e o grau de risco resultante. Eles podem então aceitar várias fontes de crédito Bitcoin diferentes, ajustando os preços para combinar o risco.