卡尔达诺设计原理
Introdução
Uma visão de longo prazo sobre como melhorar o design das criptomoedas para que possam funcionar
dispositivos móveis com uma experiência de usuário razoável e segura
●
Aproximando as partes interessadas das operações e manutenção de sua criptomoeda
●
Reconhecendo a necessidade de contabilizar vários ativos no mesmo livro razão
●
Abstrair transações para incluir metadados opcionais, a fim de melhor estar em conformidade com o
necessidades de sistemas legados
●
Aprendendo com as quase 1.000 altcoins, adotando recursos que fazem sentido
●
Adote um processo baseado em padrões inspirado na Força-Tarefa de Engenharia da Internet usando
uma base dedicada para definir o design final do protocolo
●
Explore os elementos sociais do comércio
●
Encontrar um meio-termo saudável para os reguladores interagirem com o comércio sem
comprometer alguns princípios fundamentais herdados de Bitcoin
A partir deste conjunto não estruturado de ideias, os diretores que trabalharam em Cardano começaram a explorar
literatura sobre criptomoedas e construir um conjunto de ferramentas de abstrações. O resultado desta pesquisa é
A extensa biblioteca de artigos da IOHK, numerosos resultados de pesquisas, como este script recente
visão geral da linguagem, bem como uma Ontologia de Contratos Inteligentes e o projeto Scorex. Lições
cedeu um apreciação para o criptomoeda da indústria incomum e em vezes
crescimento contraproducente.
Primeiro, ao contrário de protocolos bem sucedidos como o TCP/IP, há poucas camadas no design de
criptomoedas. Tem havido um desejo de preservar uma noção única de consenso em torno
fatos e eventos registrados em um único livro-razão, independentemente de fazer sentido.
Por exemplo, Ethereum sobrecarregou uma enorme complexidade ao tentar se tornar um
computador mundial universal, mas sofre de preocupações triviais que podem destruir o sistema
capacidade de operar como reserva de valor. O programa de todos deveria ser um cidadão de primeira classe
independentemente do seu valor económico, custo de manutenção ou consequências regulamentares?
Em segundo lugar, há pouca apreciação pelos resultados anteriores na investigação criptográfica convencional. Para
Por exemplo, a Prova de Participação delegada da Bitshares poderia ter gerado dados aleatórios de maneira fácil e confiável.
números usando lançamento de moeda com entrega garantida, que é uma técnica conhecida desde
década de 1980 (ver o artigo seminal de Rabin e Ben-Or).
Terceiro, a maioria das altcoins (com algumas exceções notáveis, como Tezos) não fizeram qualquer
acomodação para atualizações futuras. A capacidade de empurrar com sucesso um garfo macio ou duro é fundamental
para o sucesso a longo prazo de qualquer criptomoeda.
Como corolário, os usuários corporativos não podem comprometer milhões de dólares em recursos para
protocolos onde o roteiro e os atores por trás deles são efêmeros, mesquinhos ou radicalizados. Lá
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 3 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
precisa ser um processo eficiente através do qual o consenso social possa se formar em torno de uma visão para
evoluindo o protocolo subjacente. Se este processo é extremamente oneroso, a fragmentação
poderia separar a comunidade.
Finalmente, dinheiro é em última análise um sociais fenômeno. No esforço de anonimizar e
atores centrais desintermediários, Bitcoin e seus contemporâneos também descartaram a necessidade de
identidades, metadados e reputação estáveis em transações comerciais. Adicionando esses dados
através de soluções centralizadas elimina a auditabilidade, a disponibilidade global e a imutabilidade -
qual é o objetivo de usar um blockchain.
Os sistemas financeiros legados, como os compostos por SWIFT, FIX e ACH, são ricos em
metadados transacionais. Não basta saber quanto valor foi movimentado entre contas,
a regulamentação muitas vezes exige a atribuição de atores envolvidos, informações de conformidade, relatórios
atividades suspeitas e outros registros e ações. Em alguns casos, os metadados são mais
importante do que a transação.
Portanto, parece razoável inferir que a manipulação de metadados poderia ser tão prejudicial quanto
falsificar moeda ou reescrever o histórico de transações. Não fazendo acomodações para atores
que desejam incluir voluntariamente esses campos parece contraproducente para a adoção generalizada
e protecção do consumidor.
Fim da estadia
A agregação de nossa exploração baseada em princípios do espaço das criptomoedas consiste em duas coleções de
protocolos. Respectivamente, uma criptomoeda baseada em Prova de Participação [1][2] comprovadamente segura chamada
Cardano Camada de Liquidação (CSL) e um conjunto de protocolos denominado Camada de Computação Cardano
(CCL).
Nossa ênfase no design é acomodar os aspectos sociais das criptomoedas, construídos em camadas
separando a contabilização do valor da computação complexa e atendendo às necessidades de
reguladores no âmbito de vários princípios imutáveis. Além disso, onde for sensato,
1 tentamos examinar os protocolos propostos por meio de revisão por pares e verificar o código em relação aos protocolos formais.
especificações.
1 Consulte a seção Regulamento para obter a lista POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 4 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Prova de participação
Usar prova de participação para uma criptomoeda é uma escolha de design muito debatida, no entanto, porque
adiciona um mecanismo para introduzir votação segura, tem mais capacidade de escala e permite mais
esquemas de incentivos exóticos, decidimos adotá-los.
Nosso protocolo de prova de participação é chamado Ouroboros e foi desenvolvido por um especialista extremamente
talentosa equipe de criptógrafos de cinco instituições acadêmicas liderada pelo Professor Aggelos
2 Kiayias da Universidade de Edimburgo. A principal inovação que traz além de ser comprovadamente segura
usar um modelo criptográfico rigoroso é um design modular e flexível que permite o
composição de muitos protocolos para melhorar a funcionalidade.
Essa modularidade permite recursos como delegação, sidechains, pontos de verificação subscritíveis,
melhores estruturas de dados para clientes leves, diferentes formas de geração de números aleatórios e até
diferentes suposições de sincronização. À medida que uma rede se desenvolve de milhares para
milhões e até bilhões de usuários, os requisitos do seu algoritmo de consenso também
mudar. Assim, é vital ter flexibilidade suficiente para acomodar estas mudanças e, assim,
preparar o coração de uma criptomoeda para o futuro.
Elementos Sociais do Dinheiro
As criptomoedas são um excelente exemplo do componente social do dinheiro. Ao restringir
análise apenas à tecnologia, há pouca diferença entre Bitcoin e Litecoin e até
menos entre Ethereum e Ethereum Clássico. No entanto, tanto Litecoin quanto Ethereum Classic
manter grandes capitalizações de mercado e comunidades robustas e dinâmicas, bem como as suas próprias
mandatos sociais.
Pode-se argumentar que grande parte do valor de uma criptomoeda deriva de sua comunidade,
a forma como utiliza a moeda e o seu nível de envolvimento na evolução da moeda. Avançar
Pensando nisso, moedas como o Dash integraram sistemas diretamente no protocolo para
envolver a sua comunidade na decisão do que deve ser uma prioridade para desenvolver e financiar.
2 Universidade de Connecticut, Universidade de Atenas, Universidade de Edimburgo, Universidade de Aarhus, Tóquio Instituto de Tecnologia POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 5 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
A vasta diversidade de criptomoedas também fornece evidências dos seus elementos sociais.
Desentendimentos sobre filosofia, política monetária ou mesmo apenas entre os principais desenvolvedores
levar à fragmentação e bifurcações. No entanto, ao contrário das suas contrapartes criptomoedas, as moedas fiduciárias de
superpotências tendem a sobreviver a mudanças políticas e desentendimentos locais sem uma crise monetária ou
êxodo em massa.
Portanto, parece que existem elementos de sistemas legados que estão faltando no
indústria de criptomoedas. Argumentamos - e inculcamos no roteiro Cardano - que
os usuários de um protocolo precisam de incentivos para compreender o contrato social por trás de seu protocolo e
ter a liberdade de propor mudanças de forma produtiva. Esta liberdade estende-se a todos
aspecto de um sistema de troca de valor, desde decidir como os mercados devem ser regulados até quais
projetos devem ser financiados. No entanto, não pode ser intermediado através de intervenientes centralizados nem exigir
alguma credencial especial que poderia ser cooptada por uma minoria bem financiada.
Cardano implementará um sistema de protocolos de sobreposição construídos sobre CSL para acomodar o
necessidades de seus usuários.
Primeiro, independentemente do sucesso de um crowdsale para iniciar o desenvolvimento, os fundos acabarão por
dissipar. Portanto, Cardano incluirá um trust descentralizado financiado monotonicamente
3 diminuindo a inflação e as taxas de transação.
Qualquer usuário deve ser elegível para solicitar fundos do fundo por meio de um sistema de votação e o
as partes interessadas da CSL votam sobre quem se torna beneficiário. O processo cria um ambiente produtivo
ciclo de feedback visto em outras criptomoedas com sistemas de tesouraria/confiança, como Dash, por
iniciar uma conversa sobre quem deve ou não ser financiado.
As discussões sobre financiamento forçam uma relação de objetivos de longo e curto prazo, o impacto social da criptomoeda
contrato, prioridades e crença na criação de valor com propostas particulares. Esta conversa
significa que a comunidade está constantemente avaliando e debatendo suas crenças contra possíveis
roteiros.
Em segundo lugar, nossa esperança é que Cardano eventualmente inclua um sistema formal baseado em blockchain para
propor e votar em soft e hard forks. Bitcoin com seu debate sobre o tamanho do bloco, Ethereum com
o fork DAO e muitas outras criptomoedas têm perdurado por muito tempo e, em
casos frequentes, discussões não resolvidas sobre a direção técnica e moral da base de código.
Pode e deve argumentar-se que muitas destas divergências e a fractura da
comunidade que resulta quando a ação é tomada, são um resultado direto da falta de processos formais para
debatendo a mudança.
3 Isso também é conhecido como sistema de tesouraria
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 6 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Onde alguém vai para convencer os usuários de Bitcoin a adotar o Segregated Witness? Como deveria o
os principais desenvolvedores de Ethereum medem o sentimento da comunidade para resgatar o DAO? Se o
fraturas na comunidade, a criptomoeda está danificada sem possibilidade de reparo?
Nos piores casos, a autoridade moral para agir poderia simplesmente ser transferida para quem tem os desenvolvedores,
relações infraestruturais e dinheiro, e não os melhores votos da grande maioria do
comunidade. Além disso, se uma grande parte da comunidade estiver inacessível ou desligada devido
a maus incentivos, então como alguém pode realmente saber se seus atos são legítimos? 4
As criptomoedas propostas, como Tezos, fornecem um modelo interessante para examinar onde um
protocolo de criptomoeda é tratado como uma constituição contendo três seções (Transação,
Consenso e Rede) com um conjunto de regras e processos formais para atualizar a constituição. Ainda
ainda há muito trabalho a ser feito com incentivos e sobre como exatamente modelar e mudar
uma criptomoeda com uma linguagem formal.
O uso de métodos formais, especificações compreensíveis por máquina e fusão de uma tesouraria com
este processo de incentivos financeiros está sendo explorado como possíveis caminhos de inspiração.
Em última análise, apenas a capacidade de propor uma mudança de protocolo de forma transparente e livre de censura
com votação baseada em blockchain deve melhorar o processo, mesmo que soluções mais elegantes não possam
ser projetado.
Projetando em Camadas – Cardano Camada de Assentamento
Ao projetar grandes protocolos e linguagens, não se deve olhar para o futuro, mas sim para o passado. A história fornece uma série de exemplos de grandes ideias que são perfeitas no papel, mas de alguma forma não sobreviveram, como os padrões de interconexão de sistemas abertos. História também fornece acidentes felizes que ocorreram do TCP/IP ao JavaScript.
Alguns princípios extraídos de uma visão histórica são os seguintes:
1.
Você não pode prever o futuro, então crie espaço de manobra
2.
A complexidade é boa no papel, mas a simplicidade geralmente vence
3.
Muitos cozinheiros estragam o caldo
4.
Uma vez estabelecido um padrão, ele provavelmente permanecerá, independentemente de ser
abaixo do ideal
4 Veja a ignorância racional
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 7 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
5. Ideias ruins podem realmente evoluir para ideias muito boas se houver vontade
Cardano é um sistema financeiro que aceita sua natureza social. Haverá uma tremenda necessidade para flexibilidade e capacidade de lidar com a complexidade arbitrária na transação de um usuário específico. Se bem-sucedido, haverá uma necessidade enorme de recursos computacionais, de armazenamento e de rede para acomodar milhões de transações simultâneas.
No entanto, não temos um Robin Hood digital e descentralizado para tirar dos nós ricos e dar aos os pobres, a fim de alcançar uma rede justa. Nem temos o luxo de confiar nos humanos beneficência para sacrificar altruisticamente pelo bem maior da rede. Portanto, Cardano's O design toma emprestado do TCP/IP o conceito de separação de interesses.
Blockchains são, em última análise, bancos de dados que ordenam fatos e eventos com garantias sobre carimbos de data / hora e imutabilidade. No contexto do dinheiro, eles ordenam a propriedade de bens. Adicionando computação complexa armazenando e executando programas é um conceito ortogonal. Nós queremos saber quanto valor passou de Alice para Bob, ou queremos nos envolver em descobrir toda a história por trás da transação e decidir quanto enviar?
É incrivelmente tentador escolher o último como Ethereum fez porque é mais flexível, mas viola os princípios de design acima. Descobrir a história significa que um único protocolo tem que ser capaz de compreender eventos arbitrários, criar scripts de transações arbitrárias, permitir a arbitragem em casos de fraude e até mesmo transações potencialmente reversíveis quando novas informações são fornecidas disponível.
Então é preciso tomar decisões difíceis de design sobre quais metadados armazenar para cada transação. Que elementos da história por trás da transação de Alice e Bob são relevantes? São eles são relevantes para sempre? Quando podemos jogar fora alguns dados? Fazer isso viola a lei em alguns países?
Além disso, alguns cálculos são de natureza privada. Por exemplo, ao calcular a média salário dos trabalhadores de um escritório, não quereríamos necessariamente divulgar quanto cada pessoa faz. Mas e se todos os cálculos forem conhecidos publicamente? E se esta publicidade distorcer a execução para prejudicar o resultado?
Assim, escolhemos a posição de que a contabilização do valor deveria ser separada da história por trás do motivo pelo qual o valor foi movido. Em outras palavras, separação entre valor e computação. Esta separação não significa que Cardano não suportará smart contracts. Pelo contrário, ao tornar a separação explícita, permite significativamente mais flexibilidade no design, uso, privacidade e execução de smart contracts.
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 8 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
O razão de valores é chamado de Cardano Camada de Liquidação (CSL). Como o objetivo é contabilizar valor, o roteiro tem os seguintes objetivos:
1.
Suporta dois conjuntos de linguagens de script, um para movimentar valor e outro para aprimorar
suporte a protocolo de sobreposição
2.
Fornece suporte para cadeias laterais KMZ para vinculação a outros livros-razão
5
3.
Suporta vários tipos de assinatura, incluindo assinaturas resistentes a quantum para maior
segurança
4.
Suporte a ativos emitidos por vários usuários
5.
Alcance a verdadeira escalabilidade, ou seja, à medida que mais usuários ingressam, os recursos do sistema
aumentar
Scripts
Começando com a linguagem de script, as transações entre endereços em um livro-razão exigem alguns forma de um script para ser executado e ser provado válido. Idealmente, não se gostaria que Eva acessasse O dinheiro de Alice, nem ninguém iria querer que um script mal elaborado enviasse acidentalmente valor a um morto endereço tornando os fundos irrecuperáveis.
Sistemas como Bitcoin fornecem uma linguagem de script extremamente inflexível e draconiana que é difícil programar transações personalizadas, bem como ler e compreender. Ainda o geral a programabilidade de linguagens como Solidity introduz uma quantidade extraordinária de complexidade no sistema e são úteis apenas para um conjunto muito menor de atores.
Por isso, optamos por desenhar uma nova linguagem chamada Simon em homenagem ao seu criador 6 Simon Thompson e o criador dos conceitos que o inspiraram, Simon Peyton Jones. Simão é uma linguagem específica de domínio baseada em Composição de contratos: uma aventura no mundo financeiro engenharia.
A ideia principal é que as transações financeiras são geralmente compostas por um conjunto de elementos fundamentais. Se montarmos uma tabela periódica financeira de elementos, então poderemos 7 fornecer suporte para um conjunto arbitrariamente grande de transações compostas que cobrirá a maior parte, se não todos, tipos de transação comuns sem exigir programação geral.
5 Em breve em artigo de Kiayias, Zindros e Miller
6 Os detalhes serão divulgados em uma especificação futura. O idioma completo será suportado no
Lançamento do Shelley CSL planejado para o quarto trimestre de 2017
7 O Projeto ACTUS conta com uma elaboração aprofundada
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 9 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
A principal vantagem é que a segurança e a execução podem ser extremamente bem compreendidas. Provas pode ser escrito para mostrar a correção dos modelos e esgotar o espaço de execução de eventos de transação problemáticos, como a criação de dinheiro novo do nada ou transações maleabilidade. Em segundo lugar, pode-se deixar extensões para adicionar mais elementos por meio de soft forks se nova funcionalidade é necessária.
Dito isto, sempre haverá a necessidade de conectar a CSL a protocolos de sobreposição, sistemas financeiros legados sistemas e servidores para fins especiais. Assim, desenvolvemos Plutus tanto como um linguagem de propósito smart contract e também uma DSL de propósito especial para interoperabilidade.
Plutus é uma linguagem funcional tipada baseada em conceitos de Haskell, que pode ser usada para escrever scripts de transação personalizados. Para CSL, será usado para transações complexas necessárias para adicione suporte para outras camadas que precisamos conectar, como nosso esquema de cadeias laterais.
Cadeias laterais
Com relação às cadeias laterais, Cardano apoiará um novo protocolo desenvolvido por Kiayias, Miller e Zindros (cadeias laterais KMZ) com base em resultados anteriores de provas de provas de trabalho. O particular o design está além do escopo deste artigo; no entanto, o conceito permite a segurança e movimentação não interativa de fundos da CSL para qualquer camada de computação Cardano ou outra blockchain suportando o protocolo.
As cadeias laterais KMZ são a chave para encapsular a complexidade. Livros contábeis com requisitos regulatórios, operações privadas, linguagens de script robustas e outras preocupações especiais são efetivamente negras caixas para CSL, mas o usuário CSL ganhará certas garantias sobre contabilidade e a capacidade de recuperar fundos assim que o cálculo for concluído.
Assinaturas
Para transferir valor de Alice para Bob com segurança, Alice precisa provar que tem o direito de movimentar os fundos. A maneira mais direta e confiável de realizar esta tarefa é usar um serviço público esquema de assinatura de chave onde os fundos estão conectados a uma chave pública e Alice controla um chave privada associada.
Existem centenas de esquemas possíveis com diferentes parâmetros e suposições de segurança.
Alguns baseiam-se em problemas matemáticos ligados a curvas elípticas, enquanto outros são
conectado a conceitos exóticos usando redes.
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 10 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
O objetivo abstrato é sempre o mesmo. Existe um problema difícil que não pode ser resolvido a menos que alguém tem um conhecimento secreto. Diz-se que o detentor deste conhecimento é o proprietário do par de chaves e deve ser a única entidade que tem a capacidade de usá-lo.
Existem dois grupos de preocupações que uma criptomoeda enfrenta ao escolher um esquema de assinatura. Primeiro, existe a durabilidade da segurança a longo prazo do próprio esquema. Alguma criptografia esquemas usados nas décadas de 1970 e 1980, como o DES, foram quebrados. O período durante o qual espera-se que o esquema sobreviva deve ser decidido.
Em segundo lugar, há muitas empresas, governos e outras instituições que preferiram, ou em alguns casos, exigiu o uso de um esquema específico. Por exemplo, a NSA mantém o Conjunto de protocolos Suite B. Existem padrões da ISO e até mesmo de grupos de trabalho do W3C sobre criptografia.
Se uma criptomoeda escolher um esquema de assinatura única, ela será forçada a aceitar que o esquema pode ser quebrado em algum momento no futuro e pelo menos uma entidade não pode usar o criptomoeda devido a restrições legais ou do setor. No entanto, uma criptomoeda não pode suportar todos esquema de assinatura, pois isso exigiria que cada cliente entendesse e validasse cada esquema.
Para Cardano, decidimos começar usando criptografia de curva elíptica, a curva Ed25519 em
particular. Também decidimos aprimorar as bibliotecas existentes adicionando suporte para carteiras HD
usando as especificações do Dr. Dmitry Khovratovich e Jason Law.
8
Dito isto, Cardano suportará mais esquemas de assinatura no futuro. Em particular, estamos interessado em integrar o BLISS-B para adicionar assinaturas resistentes a computadores quânticos ao nosso sistema. Também estamos interessados em adicionar SECP256k1 para melhorar a interoperabilidade com legado criptomoedas como Bitcoin.
Cardano foi projetado com extensões especiais que nos permitirão adicionar mais assinaturas
esquemas através de um soft fork. Eles serão adicionados conforme necessário e durante grandes atualizações planejadas em
o roteiro.
9
Ativos emitidos pelo usuário (UIAs)
No início da história de Bitcoin, protocolos foram rapidamente desenvolvidos para permitir que os usuários emitisse ativos que
aproveitou o sistema de contabilidade de Bitcoin para rastrear várias moedas simultaneamente.
8 Esta é a documentação para a implementação da carteira HD de Cardano. Acreditamos que Cardano é o primeiro
criptomoeda para suportar carteiras Ed25519 HD
9 Veja cardanoroadmap.com
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 11 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Esses protocolos não eram suportados nativamente pelo protocolo Bitcoin, mas implementados através truques inteligentes.
No caso de sobreposições Bitcoin, como Moedas Coloridas e Mastercoin (agora chamado Omni), luz os clientes são forçados a confiar em servidores confiáveis. Além disso, as taxas de transação ainda precisam ser pagas em bitcoins. Essas propriedades combinadas com o pipeline único para aprovação de transações tornam Bitcoin abaixo do ideal para contabilidade de múltiplos ativos.
No caso Ethereum usando o padrão ERC20, há mais riqueza de recursos. No entanto, as taxas de transação ainda exigem Ether. Além disso, a rede Ethereum está tendo dificuldades dimensionando de acordo com as necessidades de todos os ERC20 tokens emitidos.
O problema fundamental pode ser dividido em três partes: recursos, incentivos e preocupação. No que diz respeito aos recursos, adicionar uma moeda inteiramente nova ao mesmo livro significa que se tem dois conjuntos independentes UTXO (entradas de transação não gastas) compartilhando a largura de banda, mempool e bloquear espaço. Nós de consenso responsáveis por incorporar transações dessas moedas precisa de um incentivo para fazê-lo. E nem todo usuário de uma criptomoeda irá ou deverá se preocupar com a moeda de uma determinada entidade.
Dados esses problemas, os benefícios são enormes, pois o token principal de um livro-razão multiativos pode efetivamente servir como uma moeda-ponte que permite a criação de mercado descentralizada. Especial ativos com finalidade específica poderiam ser emitidos para fornecer utilidade adicional, como ativos de valor estável, como Tether ou MakerDAO que são úteis para aplicações de empréstimos e remessas.
Dados os desafios, Cardano adotou uma abordagem pragmática para a contabilidade multiativos. Construído por etapas, o primeiro desafio é projetar a infraestrutura necessária para apoiar o demandas de milhares de UIAs. Nomeadamente, os seguintes avanços são necessários:
1. Estruturas de dados autenticadas para fins especiais para permitir o rastreamento de um grande número UTXO estado
2.
A capacidade de ter um mempool distribuído para armazenar um grande conjunto de transações pendentes
3.
Particionamento Blockchain e pontos de verificação para permitir um enorme blockchain global
4.
Um esquema de incentivos que recompensa os nós de consenso pela inclusão de diferentes conjuntos de
transações
5.
Uma mecânica de assinatura que permite aos usuários decidir quais moedas desejam rastrear
6.
A segurança forte garante que os UIAs desfrutem de segurança semelhante à do ativo nativo
7.
Apoio à criação de mercado descentralizada para melhorar a liquidez entre a UIA e o
primário token
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 12 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Nossos esforços preliminares para encontrar a estrutura de dados autenticada correta resultaram em uma nova tipo de árvore AVL+ desenvolvida em conjunto por Leo Reyzin, IOHK e Waves. Mais pesquisas são necessárias, mas é um avanço fundamental que será incluído em uma versão posterior de Cardano.
Um mempool distribuído poderia ser implementado usando o protocolo RAMCloud da Universidade de Stanford. Os experimentos começarão no terceiro trimestre de 2017 para estudar sua integração na camada de consenso de Cardano.
Os demais tópicos estão interligados e cobertos por pesquisas em andamento. Esperamos - assunto aos resultados da pesquisa - incluir um protocolo em Cardano para UIAs durante o Basho da CSL lançamento em 2018.
Escalabilidade
Os sistemas distribuídos são compostos por um conjunto de computadores (nós) que concordam em executar um protocolo ou
conjunto de protocolos para atingir um objetivo comum. Este objetivo poderia ser compartilhar um arquivo conforme definido por
o protocolo BitTorrent ou dobrar uma proteína usando Folding@Home.
Os protocolos mais eficazes ganham recursos à medida que os nós ingressam na rede. Um arquivo hospedado por
O BitTorrent, por exemplo, pode ser baixado muito mais rápido, em média, se muitos pares estiverem conectados.
baixá-lo simultaneamente. A velocidade aumenta porque os pares fornecem recursos enquanto
também consumi-los. Esta característica é o que normalmente se quer dizer quando se declara um
escalas do sistema.
O desafio do design de todas as criptomoedas atuais é que elas, na verdade, não são
projetado para ser escalável. Blockchains, por exemplo, são geralmente uma lista vinculada apenas com anexos de
blocos. A segurança e a disponibilidade de um protocolo blockchain dependem de muitos nós
possuir uma cópia completa dos dados blockchain. Assim, um único byte de dados deve ser replicado
entre N nós. Nós adicionais não fornecem recursos adicionais.
Este resultado é o mesmo para o processamento de transações e a fofoca de mensagens em todo
o sistema. Adicionar mais nós ao sistema de consenso não fornece
poder de processamento de transações. Significa apenas que mais recursos precisam ser gastos para fazer o mesmo
trabalho. Mais retransmissão de rede significa que mais nós terão que passar as mesmas mensagens para manter o
toda a rede em sincronização com o bloco mais atual.
Dada esta topologia, as criptomoedas não podem escalar para uma rede global equivalente ao legado
sistemas financeiros. Em contraste, a infraestrutura legada é escalável e tem ordens de grandeza para
mais poder de processamento e armazenamento. Adicionando um ponto específico, Bitcoin é uma rede muito pequena
em relação aos seus pares de pagamento, mas tem dificuldades em gerir a sua carga actual.
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 13 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Nossas metas de escalabilidade para Cardano são grandemente auxiliadas por nosso algoritmo de consenso. Ouroboros
permite uma forma descentralizada de eleger um quórum de nós de consenso, que por sua vez pode executar mais
protocolos tradicionais desenvolvidos nos últimos 20 anos para acomodar as necessidades de grandes
provedores de infraestrutura como Google e Facebook.
10
Por exemplo, a eleição de um quorum para uma época significa que temos um conjunto confiável de nós para
manter o razão por um período de tempo específico. É trivial eleger vários quóruns simultaneamente
e particionar transações em quóruns diferentes.
Técnicas semelhantes podem ser aplicadas para propagação de rede e também para fragmentação do blockchain
em partições exclusivas. Em nosso roteiro atual, os métodos de escalonamento serão aplicados a
Ouroboros a partir de 2018 e continuará sendo foco em 2019 e 2020.
Cardano Camada de computação
Conforme mencionado anteriormente, existem dois componentes de uma transação: o mecanismo para enviar e registre o fluxo de tokens e os motivos, bem como as condições por trás da movimentação de tokens. O este último pode ser arbitrariamente complexo e envolver terabytes de dados, múltiplas assinaturas e recursos especiais. eventos ocorrendo. O último também pode ser extremamente simples, com um único valor de envio de assinatura para outro endereço.
O desafio por trás da modelagem das razões e condições do fluxo de valor é que elas são imensamente pessoal para as entidades envolvidas das formas mais imprevisíveis. Lições de o direito contratual pinta um quadro ainda mais problemático, onde os próprios atores podem não até mesmo estar ciente de que a transação não corresponde à realidade comercial. Geralmente chamamos isso fenômeno “a lacuna semântica”. 11
Por que alguém deveria construir uma criptomoeda perseguindo uma camada infinita de complexidade e abstração? Parece Sísifo por natureza e ingênuo na prática. Além disso, cada abstração abraçou tem consequências jurídicas e de segurança.
Por exemplo, existem inúmeras atividades online que são universalmente consideradas ilegais ou desprezadas
como o tráfico de pornografia infantil ou a venda de segredos de Estado. Ao implantar robusto
10 Existem também outros protocolos de investigação independentes que tentam alcançar o mesmo fim, tais como
Elástico e Bitcoin-NG
11 Loi Luu et al. discutem essa lacuna em seu artigo recente sobre Tornando os Contratos Inteligentes mais Inteligentes
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 14 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
infra-estrutura descentralizada, está-se agora proporcionando um canal para que esta atividade ocorra com o mesma resistência à censura que as transações comerciais normais desfrutam. Não é legalmente claro se os nós de consenso da rede - que têm o incentivo para se tornarem mais federados tempo para promover a eficiência – seriam responsabilizados pelo conteúdo que hospedam.
A acusação dos operadores do Tor, o tratamento brutal do operador do Silk Road e a falta de a clareza jurídica por trás das proteções legais dos participantes do protocolo deixa um caminho incerto. Há não falta imaginação sobre o que mais uma criptomoeda suficientemente avançada poderia permitir (veja o Anel de Giges). É razoável forçar todos os usuários de uma criptomoeda a endossar ou pelo menos permitir os piores atos e condutas da web?
Infelizmente, não há respostas claras que forneçam informações para um designer de criptomoeda. É mais sobre como escolher uma posição e defender seu mérito. A vantagem que tanto Cardano quanto Bitcoin é que optamos por separar as preocupações em camadas. Com Bitcoin, há Porta-enxerto. Com Cardano, existe a camada de computação Cardano.
Os tipos de comportamento complexo que possibilitariam os atos elaborados anteriormente não podem ocorrer CSL. Eles exigem a capacidade de executar programas escritos em uma linguagem Turing completa e alguns forma de economia do gás para medir a computação. Eles também exigem nós de consenso dispostos a incluir as transações em seus blocos.
Assim, uma restrição de funcionalidade poderia proteger razoavelmente os utilizadores. Até agora, o mais estabelecido os governos não assumiram a posição de que o uso ou manutenção de uma criptomoeda é uma ato ilegal. Portanto, a grande maioria dos usuários deve se sentir confortável em manter um livro-razão que seja comparável em capacidade a um sistema de pagamento digital.
Quando se deseja ampliar a capacidade, existem duas possibilidades. É habilitado por um privado coletivo de indivíduos com ideias semelhantes e de natureza efêmera (por exemplo, um jogo de pôquer). Ou, é é habilitado por um livro-razão de capacidades comparáveis a Ethereum. Em ambos os casos, escolhemos terceirizar os eventos para outro protocolo.
No caso de um evento privado e efêmero, é razoável evitar o paradigma blockchain inteiramente, mas sim restringir os esforços em direção a uma biblioteca de protocolos MPC para fins especiais que possam ser invocado quando desejado por um grupo de participantes com ideias semelhantes. Os cálculos e atividades são coordenados em uma rede privada e fazem referência ao CSL apenas como um quadro de avisos confiável e um canal de passagem de mensagens quando necessário.
A principal percepção neste caso é que há consentimento, encapsulamento de responsabilidade e privacidade. CSL é sendo usado como um bem comum digital para os usuários se encontrarem e se comunicarem - como um parque hospedaria um evento privado - mas não oferece nenhuma acomodação ou facilitação especial. Além disso, POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 15 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
o uso de MPC para fins especiais permitirá interação de baixa latência sem a necessidade de blockchain inchaço. Assim, melhora a escala do sistema.
Os esforços de pesquisa de Cardano para esta biblioteca estão centralizados em nosso laboratório Tokyo Tech com alguma assistência de cientistas no exterior. Chamamos a biblioteca de “Tartaglia” em homenagem a um colega matemático e também contemporâneo de Cardano e espera que a primeira iteração esteja disponível no primeiro trimestre de 2018.
No segundo caso, é necessário um blockchain com uma máquina virtual, um conjunto de nós de consenso e um mecanismo para permitir a comunicação entre as duas cadeias. Nós começamos o processo de formalização rigorosa da máquina virtual Ethereum usando a estrutura K em 12 parceria com uma equipe da Universidade de Illinois.
O resultado desta análise informará a maneira mais ideal de projetar um modelo replicado e, eventualmente, máquina virtual distribuída com semântica operacional clara e fortes garantias de correta 13 implementação a partir da especificação. Em outras palavras, a VM realmente faz o que o código diz tem a ver com os riscos de segurança minimizados.
Ainda existem questões não resolvidas sobre a economia do gás proposta por Ethereum e como ela refere-se a trabalhos como o ML com reconhecimento de recursos de Jan Hoffmann et al e o estudo mais amplo de estimativa de recursos para computação. Também estamos curiosos sobre o nível de linguagem independência da máquina virtual. Por exemplo, o projeto Ethereum expressou o desejo para a transição da VM atual para o Web Assembly.
O próximo esforço é desenvolver uma linguagem de programação razoável para expressar estados contratos que serão chamados de serviços por aplicações descentralizadas. Para esta tarefa, temos escolheu tanto a abordagem de suporte à linguagem legada smart contract Solidity para baixo aplicações de garantia e desenvolvendo uma nova linguagem chamada Plutus para maior garantia aplicações que exigem verificação formal.
Assim como o projeto Zeppelin baseado em solidez, a IOHK também desenvolverá uma biblioteca de referência de código Plutus para desenvolvedores de aplicativos usarem em seus projetos. Também desenvolveremos um conjunto especializado de ferramentas para verificação formal inspirada no trabalho do projeto Liquid Haskell da UCSD.
Em termos de consenso, o Ouroboros foi concebido de forma suficientemente modular para suportar smart contract avaliação. Conseqüentemente, tanto o CSL quanto o CCL compartilharão o mesmo algoritmo de consenso. 12 Inventado pelo Professor Grigore Rosu et. al., K é uma estrutura universal para linguagem independente semântica executável por máquina. Antes do nosso trabalho, ele foi usado para modelar C, Java e JavaScript 13 Significa que diferentes nós de consenso executam diferentes smart contracts. Também conhecido como fragmentação de estado POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 16 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
A diferença é que o Ouroboros pode ser confirmado para permitir tanto permissões quanto livros contábeis sem permissão por meio de distribuição token.
Com a CSL, Ada foi distribuída por meio de um evento gerador token para compradores em toda a Ásia que acabará por revender num mercado secundário. Isso significa que o algoritmo de consenso do CSL é controlado por um conjunto diversificado e cada vez mais descentralizado de atores ou seus delegados atribui. Com o CCL, é possível criar um propósito especial token mantido por delegados daquele razão que poderiam ser entidades regulamentadas, criando assim um livro razão autorizado.
A flexibilidade desta abordagem permite que diferentes instâncias de CCL se materializem com diferentes regras sobre a avaliação de transações. Por exemplo, as actividades de jogo podem ser restringidas a menos que os dados KYC/AML estejam presentes simplesmente colocando transações não atribuídas na lista negra.
Nosso foco final de design é adicionar módulos de segurança de hardware (HSM) confiáveis ao nosso protocolo pilha. Estas são duas enormes vantagens ao introduzir estas capacidades no protocolo. Primeiro, os HSMs proporcionam grandes aumentos no desempenho sem introduzir segurança 14 preocupações além de confiar no fornecedor. Em segundo lugar, através do uso de Provas de Vidro Selado (SGP), Os HSMs podem fornecer garantias de que os dados podem ser verificados e depois destruídos sem serem copiado ou vazado para estranhos mal-intencionados.
Centrando-nos no segundo ponto, os PEC poderão ter um impacto revolucionário no cumprimento. Normalmente, quando um consumidor fornece informações de identificação pessoal (PII) para autenticar identidade ou comprovar o direito de participar, essas informações são entregues a um terceiro confiável com a esperança de que não aja maliciosamente. Esta atividade é intrinsecamente centralizada, o provedor de dados perde o controle sobre suas PII e também está sujeito a vários regulamentos com base na jurisdição.
A capacidade de selecionar um conjunto de atestadores confiáveis e, em seguida, armazenar PII em um enclave de hardware significa que qualquer ator com um HSM suficientemente capaz será capaz de verificar fatos sobre um ator de forma impossível de falsificar, sem que o verificador conheça a identidade do ator. Por exemplo, Bob é não é um cidadão dos EUA. Alice é uma investidora credenciada. James é um contribuinte dos EUA e deve-se enviar lucros tributáveis para a conta X.
A estratégia de HSM de Cardano será tentar implementar protocolos especializados nos próximos dois anos usando Intel SGX e ARM Trustzone. Ambos os módulos são integrados a bilhões de consumidores dispositivos, de laptops a celulares, e não exigem nenhum esforço adicional por parte do consumidor para usar. Ambos também são fortemente avaliados, bem projetados e baseados em anos de iteração de alguns dos as maiores e mais bem financiadas equipes de segurança de hardware.
14 Veja http://hackingdistributed.com/2016/12/22/scaling-bitcoin-with-secure-hardware/ de Cornell Universidade POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 17 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Regulamento
A dura realidade de todos os sistemas financeiros modernos é que, à medida que crescem, acumulam uma necessidade, ou pelo menos um desejo de regulamentação. Este resultado é geralmente o resultado de colapsos recorrentes devido à negligência de algum ator ou grupo de atores em um mercado.
Por exemplo, a crise Knickerbocker de 1907 resultou na criação do Federal Reserve System em 1913 como credor de última instância. Outro exemplo são os excessos da década de 1920 no Estados Unidos que resultou num terrível colapso financeiro, a Grande Depressão. Este colapso rendeu a criação da Comissão de Valores Mobiliários em 1934, a fim de evitar uma situação semelhante. evento ou pelo menos responsabilizar os maus atores.
Pode-se razoavelmente debater a necessidade, o âmbito e a eficácia da regulação, mas não se pode negar a sua existência e o zelo com que os principais governos a aplicaram. No entanto, o O desafio que todos os reguladores enfrentam à medida que o mundo se globaliza e o dinheiro se torna digital é duplo.
Primeiro, qual conjunto de regulamentos deveria ser supremo quando se trata de um conjunto de jurisdições? A noção antiquada de soberania da Vestefália derrete quando uma única transação pode atingir três dúzias de países em menos de um minuto. Deveria ser simplesmente quem exerce o maior influência geopolítica?
Em segundo lugar, as melhorias na tecnologia de privacidade criaram uma corrida armamentista digital onde torna-se cada vez mais difícil entender quem participou de uma transação, muito menos quem possui uma determinada reserva de valor. Num mundo onde milhões de dólares em activos pode ser controlado com nada mais do que um mnemônico secreto de 12 palavras, como você 15 impor uma regulamentação eficaz?
Como todos os sistemas financeiros, o protocolo Cardano deve ter uma opinião na sua concepção sobre o que é justo e razoável. Optamos por dividir entre os direitos individuais e os direitos de um mercado.
Os indivíduos devem sempre ter acesso exclusivo aos seus fundos, sem coerção ou bens civis confisco. Este direito tem de ser respeitado porque nem todos os governos são dignos de confiança abusar do seu poder soberano para ganho pessoal de políticos corruptos, como visto na Venezuela e Zimbabué. As criptomoedas devem ser projetadas para o menor denominador comum.
15 Consulte BIP39 https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 18 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Em segundo lugar, a história nunca deve ser alterada. Blockchains fornecem uma promessa de imutabilidade. Introduzir o poder de reverter a história ou alterar o registro oficial introduz muita tentação de mudar o passado para beneficiar um determinado ator ou atores.
Terceiro, o fluxo de valor deve ser irrestrito. Controles de capitais e outras paredes artificiais diminuir os direitos humanos. Fora a futilidade de tentar aplicá-las, num contexto global 16 economia com muitos cidadãos nas nações menos desenvolvidas viajando fora de sua jurisdição para encontrar um salário digno, a restrição dos fluxos de capital geralmente acaba prejudicando os mais pobres do mundo.
Afirmados estes princípios, os mercados são distintamente diferentes dos indivíduos. Enquanto os designers de Cardano acreditamos nos direitos individuais, também acreditamos que os mercados têm o direito de declarar abertamente seus termos e condições, e se um indivíduo concordar em fazer negócios neste mercado, então eles devem obedecer a esses padrões em prol da integridade de todo o sistema.
O desafio sempre foi o custo e a praticidade da aplicação. Pequeno, multijurisdicional
as transações são simplesmente muito caras em sistemas legados para fornecer alta garantia de recurso
em caso de fraude ou disputa comercial. Quando alguém envia sua transferência eletrônica para o
Príncipe Nigeriano, geralmente é muito caro tentar recuperar os fundos.
17
Para Cardano, sentimos que podemos inovar em três níveis. Primeiro, através do uso de smart contracts os termos e condições das relações comerciais podem ser melhor controlados. Se todos os ativos forem digital e pode ser expresso exclusivamente na CSL, fortes garantias de comércio livre de fraudes podem ser ganhou.
Em segundo lugar, o uso de HSMs para fornecer um espaço de identidade onde PII não seja vazado, mas ainda assim usado para os atores autenticados e credenciados devem fornecer um sistema de reputação global e permitir atividades regulamentadas com custos muito mais baixos a serem realizadas, como jogos online com automação conformidade fiscal ou trocas descentralizadas.
Finalmente, no roteiro de Cardano está a criação de um regulamento modular DAO que pode ser personalizado para interagir com smart contracts escritos pelo usuário, a fim de adicionar mutabilidade, consumidor proteção e arbitragem. O escopo deste projeto será descrito em um artigo posterior.
16 Como exemplo de contramedida ao fluxo de capital, consulte o Hawala Banking System 17 Veja golpe de taxa antecipada POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 19 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Qual é o objetivo de tudo isso?
Cardano foi um projeto maratona envolvendo feedback de centenas das mentes mais brilhantes
dentro e fora da indústria de criptomoedas. Envolve iteração incansável, o uso ativo de
revisão por pares e roubo descarado de grandes ideias quando descobertas.
Cada uma das seções restantes cobre um aspecto específico do foco que decidimos ser um núcleo
componente do nosso projeto. Alguns foram selecionados devido ao desejo de melhorar o melhor desempenho geral
práticas do espaço enquanto outras são específicas da evolução de Cardano.
Embora nenhum projeto possa cobrir todos os objetivos ou satisfazer todos os usuários, nossa esperança é fornecer uma visão para
como deveria ser uma pilha financeira autoevolutiva para jurisdições que não a possuem. O definitivo
A realidade das criptomoedas não é que elas irão perturbar os sistemas financeiros legados existentes.
Os sistemas financeiros legados são sempre capazes de absorver mudanças e manter a sua forma
e função.
Em vez disso, deveríamos olhar para locais onde é simplesmente demasiado dispendioso implementar os sistemas existentes.
sistema bancário, onde muitos vivem com menos de alguns dólares por dia, não têm identidade estável e
é impossível encontrar crédito.
Nestes locais, o poder de agrupar um sistema de pagamento, direitos de propriedade, identidade, crédito e risco
proteção em um único aplicativo executado em um telefone celular não é apenas útil, é uma mudança de vida.
A razão pela qual estamos construindo Cardano é que sentimos que temos uma chance legítima de entregar - ou
pelo menos avançando - esta visão para o mundo em desenvolvimento.
Mesmo no fracasso, se pudermos mudar a forma como as criptomoedas são projetadas, evoluídas e financiadas,
então há uma grande realização.
介绍
对改进加密货币设计以便其能够发挥作用的长远观点
具有合理且安全的用户体验的移动设备
●
让利益相关者更接近其加密货币的运营和维护
●
承认需要在同一分类账中考虑多种资产
●
抽象事务以包含可选元数据,以便更好地符合
遗留系统的需求
●
通过接受有意义的功能向近 1,000 种山寨币学习
●
采用受互联网工程任务组启发的标准驱动流程,使用
锁定最终协议设计的专用基础
●
探索商业的社交元素
●
为监管机构与商业互动找到一个健康的中间立场,而无需
损害从 Bitcoin 继承的一些核心原则
从这套非结构化的想法中,Cardano 的负责人开始探索
加密货币文献并构建抽象工具集。这项研究的输出是
IOHK 广泛的论文库、大量的调查结果,例如最近的脚本
语言概述以及智能合约本体和 Scorex 项目。教训
产生了 一个 鉴赏 为了 的 加密货币 行业的 不寻常的 和 在 次
适得其反的增长。
首先,与 TCP/IP 等成功协议不同,在设计中几乎没有分层
加密货币。人们一直希望保持一个单一的共识概念
事实和事件记录在单个分类账中,无论其是否有意义。
例如,Ethereum 在试图成为一个
通用世界计算机,但由于一些琐碎的问题可能会破坏系统
作为价值储存手段的能力。每个人的程序都应该是一等公民吗
无论其经济价值、维护成本或监管后果如何?
其次,主流密码学研究中的先前成果几乎没有受到重视。对于
例如,比特股的委托权益证明可以轻松可靠地生成随机数
使用抛硬币来计算数字并保证输出交付,这是一种已知的技术
20 世纪 80 年代(参见 Rabin 和 Ben-Or 的开创性论文)。
第三,大多数山寨币(除了 Tezos 等一些值得注意的例外)还没有做出任何贡献。
为将来的更新提供住宿。成功推动软分叉或硬分叉的能力至关重要
任何加密货币的长期成功。
因此,企业用户无法投入价值数百万美元的资源
路线图和背后的参与者是短暂的、琐碎的或激进的协议。那里
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 3 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
需要一个有效的过程,通过这个过程,社会可以围绕愿景形成共识
不断发展底层协议。如果这个过程非常繁重,那么碎片化
可能会导致社区分裂。
最后, 钱 是 最终 一个 社会的 现象。 在努力匿名化和
非中间的中心参与者 Bitcoin 及其同时代人也放弃了
商业交易中稳定的身份、元数据和声誉。添加这些数据
通过集中式解决方案消除了可审计性、全局可用性和不变性 —
这就是使用 blockchain 的全部意义。
传统金融系统,例如由 SWIFT、FIX 和 ACH 组成的系统,具有丰富的
事务元数据。仅仅知道账户之间转移了多少价值是不够的,
监管通常需要涉及参与者的归属、合规信息、报告
可疑活动以及其他记录和行为。在某些情况下,元数据更重要
比交易更重要。
因此,似乎可以合理地推断元数据的操纵可能与
伪造货币或重写交易历史。不为演员提供任何便利
那些想要自愿纳入这些领域的人似乎对主流采用适得其反
和消费者保护。
旅居结束
我们对加密货币空间的原则性探索的集合是两个集合
协议。分别,一种可证明安全的基于权益证明 [1][2] 的加密货币称为
Cardano 结算层 (CSL) 和一组称为 Cardano 计算层的协议
(覆铜板)。
我们的设计重点是适应加密货币的社会方面,分层构建
通过将价值核算与复杂计算分开并满足
监管范围内有几个一成不变的原则。此外,在合理的情况下,
1 我们尝试通过同行评审来审查拟议的协议,并根据正式的代码检查代码
规格。
1 列表见法规部分 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 4 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
权益证明
使用加密货币的权益证明是一个备受争议的设计选择,但是因为它
添加了引入安全投票的机制,具有更大的扩展能力,并允许更多
异国情调的激励计划,我们决定接受它。
我们的权益证明协议称为 Ouroboros,它是由一位极其出色的人设计的
由 Aggelos 教授领导的来自五个学术机构的才华横溢的密码学家团队
2 爱丁堡大学的基亚亚斯。它带来的核心创新不仅仅是被证明是安全的
使用严格的密码模型是一种模块化和灵活的设计,允许
许多协议的组合以增强功能。
这种模块化允许诸如委托、侧链、可订阅检查点等功能
更好的轻客户端数据结构、不同形式的随机数生成,甚至
不同的同步假设。随着网络从数千个发展到
数百万甚至数十亿的用户,其共识算法的要求也会随之提高。
改变。因此,拥有足够的灵活性来适应这些变化至关重要
面向未来的加密货币的核心。
金钱的社会要素
加密货币是货币社会组成部分的一个典型例子。限制时
仅对技术进行分析,Bitcoin 和 Litecoin 之间几乎没有区别,甚至
Ethereum 和 Ethereum Classic 之间的情况较少。然而,Litecoin 和 Ethereum 都是经典
维持庞大的市值和强大、充满活力的社区以及他们自己的
社会任务。
可以说,加密货币的很大一部分价值来自其社区,
它使用货币的方式,以及它对货币演变的参与程度。进一步推进
考虑到这一点,达世币等货币甚至将系统直接集成到协议中
让社区参与决定优先开发和资助的内容。
2 康涅狄格大学、雅典大学、爱丁堡大学、奥胡斯大学、东京 理工学院 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 5 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
加密货币的巨大多样性也为其社会元素提供了证据。
关于理念、货币政策、甚至核心开发人员之间的分歧
导致碎片和分叉。然而,与加密货币同行不同的是,法定货币
超级大国往往能够在政治转变和地方分歧中幸存下来,而不会发生货币危机或
大规模外逃。
因此,遗留系统中似乎缺少一些元素。
加密货币行业。我们认为——并且已经将其灌输到 Cardano 路线图中——
协议的用户需要激励来理解其协议背后的社会契约,并且
可以自由地以富有成效的方式提出变革。这种自由延伸到每一个
价值交换体系的一个方面,从决定如何监管市场到
项目应该得到资助。然而它不能通过集中的参与者进行中介,也不需要
一些特殊的证书可以被资金充足的少数群体增选。
Cardano 将实现一个构建在 CSL 之上的覆盖协议系统,以适应
其用户的需求。
首先,无论众筹能否成功引导开发,资金最终都会
消散。因此,Cardano 将包括去中心化信任 单调资助
3 降低通货膨胀和交易费用。
任何用户都应该有资格通过投票系统向信托基金请求资金,并且
CSL 的利益相关者投票决定谁成为受益人。这个过程创造了一个富有成效的
在其他具有财务/信托系统的加密货币(例如达世币)中看到的反馈循环
开始讨论谁应该和不应该获得资助。
资金讨论迫使长期和短期目标、加密货币的社交
合同、优先事项以及通过特定建议创造价值的信念。这段对话
意味着社区不断评估和辩论其信念与可能的
路线图。
其次,我们希望 Cardano 最终将包含一个正式的、基于 blockchain 的系统
对软分叉和硬分叉进行提议和投票。 Bitcoin 及其块大小争论,Ethereum 与
DAO 分叉以及许多其他加密货币都经久不衰,并且在
常见的案例,关于代码库的技术和道德方向的未解决的争论。
可以而且应该争辩的是,许多这些分歧以及关系的破裂
采取行动时产生的社区是缺乏正式流程的直接结果
辩论改变。
3 这也称为国库系统
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 6 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
去哪里说服 Bitcoin 用户采用隔离见证?应该如何
Ethereum 的核心开发人员衡量社区对救助 DAO 的情绪吗?如果
社区断裂,加密货币是否已经受损无法修复?
在最坏的情况下,采取行动的道德权威可能会简单地转移给拥有开发商的人,
基础设施关系和金钱,不是绝大多数人的最好愿望
社区。此外,如果社区的很大一部分由于原因而无法进入或脱离
不良激励,那么如何才能真正知道自己的行为是否合法呢? 4
拟议的加密货币(例如 Tezos)提供了一个有趣的模型来检查
加密货币协议被视为包含三个部分的宪法(交易、
共识和网络)有一套正式的规则和流程来更新宪法。然而
在激励以及如何建模和改变方面仍有许多工作要做
具有正式语言的加密货币。
使用正式方法、机器可理解的规范以及将金库与
正在探索这一财政激励程序,作为激发灵感的可能途径。
最终,只是能够以透明、不受审查的方式提出协议变更
使用基于 blockchain 的投票应该可以改进流程,即使更优雅的解决方案不能
被设计。
分层设计 – Cardano 沉降层
在设计优秀的协议和语言时,我们不应该着眼于未来,而应该着眼于未来。 过去。历史提供了一长串伟大想法的例子,这些想法在纸面上是完美的,但 不知何故没有幸存下来,例如开放系统互连标准。历史也 提供了从 TCP/IP 到 JavaScript 一直存在的幸福意外。
从历史观点中提取的一些原则如下:
1.
你无法预测未来,所以要有回旋余地
2.
纸面上复杂性很好,但简单性通常更胜一筹
3.
厨师太多,汤就坏了
4.
一旦设定了标准,无论它是否符合标准,它都可能会一直存在
次优的
4 参见理性无知
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 7 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
5. 如果有意愿的话,坏主意实际上可以演变成好主意
Cardano 是一个接受其社会本质的金融系统。将会有巨大的需求 灵活性和解决特定用户交易中任意复杂性的能力。如果 成功的话,将需要大量的计算、存储和网络资源 以容纳数百万并发交易。
然而,我们没有一个数字化的、去中心化的罗宾汉可以从丰富的节点中获取并给予 穷人才能实现公平的网络。我们也没有能力去信任人类 为了网络的更大利益而无私地牺牲的仁慈。因此,Cardano 的 设计借鉴了TCP/IP 关注点分离的概念。
区块链最终是对事实和事件进行排序的数据库,并保证 时间戳和不变性。在金钱的背景下,他们要求资产的所有权。添加 通过存储和执行程序进行复杂计算是一个正交概念。我们想要吗 知道从爱丽丝到鲍勃的价值有多少,或者我们是否想参与计算 交易背后的整个故事以及决定发送多少?
像 Ethereum 那样选择后者是非常诱人的,因为它更灵活, 但这违反了上面的设计原则。弄清楚这个故事意味着一个单一的协议 必须能够理解任意事件、编写任意交易脚本、允许仲裁 出现新信息时出现欺诈甚至可能逆转交易的情况 可用。
然后,人们必须做出艰难的设计决策,决定为每个数据存储哪些元数据 交易。 Alice 和 Bob 交易背后的故事元素有哪些相关?是 它们永远相关吗?我们什么时候可以丢弃一些数据?这样做是否违法 一些国家?
此外,某些计算本质上是私有的。例如,计算平均值时 办公室员工的工资,我们不一定想泄露每个人的工资 使。但如果每个计算结果都是公开的呢?如果这种宣传影响了执行力怎么办 为了损害结果?
因此,我们选择的立场是价值核算应与价值核算分开。 价值被移动背后的故事。换句话说,价值与计算的分离。 这种分离并不意味着 Cardano 将不支持 smart contract。相反, 通过明确分离,它可以在设计、使用、 smart contracts 的隐私和执行。
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 8 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
价值账本称为 Cardano 结算层 (CSL)。由于目的是为了考虑 价值,路线图有以下目标:
1.
支持两套脚本语言,一套用于移动值,一套用于增强
覆盖协议支持
2.
提供KMZ侧链链接其他账本的支持
5
3.
支持多种类型的签名,包括抗量子签名,以实现更高的性能
安全
4.
支持多用户发行资产
5.
实现真正的可扩展性,这意味着随着更多用户的加入,系统的功能
增加
脚本编写
从脚本语言开始,账本中地址之间的交易需要一些 要执行并被证明有效的脚本形式。理想情况下,人们不希望 Eve 访问 爱丽丝的钱,人们也不希望设计糟糕的脚本意外地将价值发送给死者 地址使资金无法收回。
诸如 Bitcoin 之类的系统提供了一种极其不灵活且严酷的脚本语言, 很难对定制交易进行编程、阅读和理解。然而一般 Solidity 等语言的可编程性带来了极大的复杂性 进入系统并且仅对一小部分参与者有用。
因此,我们选择设计一种名为 Simon 的新语言来纪念它的创造者 6 西蒙·汤普森(Simon Thompson)和激发其灵感的概念的创造者西蒙·佩顿·琼斯(Simon Peyton Jones)。西蒙是 一种基于撰写合约的特定领域语言:金融领域的冒险 工程。
其主要思想是金融交易通常由一系列 基本要素。如果人们编制了一份金融元素周期表,那么人们就可以 7 为任意大的复合交易集提供支持,这些交易将覆盖大多数(如果不是的话) 所有常见的交易类型,无需通用可编程性。
5 Kiayias、Zindros 和 Miller 即将发表的论文
6 具体细节将在即将发布的规范中发布。将支持完整的语言
Shelley CSL 计划于 2017 年第四季度发布
7 ACTUS项目有深入阐述
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 9 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
主要优点是可以很好地理解安全性和执行性。证明 可以写成显示模板的正确性并耗尽执行空间 有问题的交易事件,例如凭空创造新钱或交易 可塑性。其次,如果满足以下条件,可以保留扩展以通过软分叉的方式添加更多元素 需要新的功能。
也就是说,始终需要将 CSL 连接到覆盖协议、传统金融 系统和专用服务器。因此,我们将 Plutus 开发为一个通用的 目的 smart contract 语言,也是一种用于互操作性的特殊目的 DSL。
Plutus 是一种基于 Haskell 概念的类型化函数语言,可用于 编写自定义交易脚本。对于 CSL,它将用于需要的复杂交易 添加对我们需要连接的其他层的支持,例如我们的侧链方案。
侧链
关于侧链,Cardano 将支持 Kiayias、Miller 和 Zindros(KMZ 侧链)基于工作量证明的先前结果。特别是 设计超出了本文的范围;然而,这个概念允许安全和 资金从 CSL 到任何 Cardano 计算层或其他层的非交互式移动 blockchain 支持协议。
KMZ 侧链是封装复杂性的关键。符合监管要求的账本, 私人运营、强大的脚本语言和其他特殊问题实际上都是黑色的 框到 CSL,但 CSL 用户将获得有关会计的某些保证以及能够 计算完成后撤回资金。
签名
为了安全地将价值从 Alice 转移到 Bob,Alice 需要证明她有权 转移资金。完成此任务最直接、最可靠的方法是使用公共 密钥签名方案,其中资金连接到公钥,Alice 控制 关联的私钥。
有数百种可能的方案,具有不同的安全参数和假设。
有些依赖于与椭圆曲线相关的数学问题,而另一些则依赖于与椭圆曲线相关的数学问题。
使用格子连接到奇异的概念。
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 10 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
抽象目标始终是相同的。存在一个无法解决的难题,除非 有人拥有秘密知识。据说这段知识的持有者是 密钥对的所有者,并且应该是唯一有能力使用它的实体。
加密货币在选择签名方案时面临两类问题。 首先,方案本身具有长期的安全耐久性。一些密码学 20 世纪 70 年代和 80 年代使用的方案(例如 DES)已被破解。期间 必须决定该计划是否应该继续存在。
其次,有很多企业、政府和其他机构已经优先或 在某些情况下,强制要求使用特定的方案。例如,美国国家安全局 (NSA) 维护 Suite B 协议集。 ISO 甚至 W3C 工作组都制定了有关密码学的标准。
如果加密货币选择单一签名方案,则它被迫接受该方案 可能会在未来某个时刻被破坏,并且至少一个实体无法使用 由于法律或行业限制而产生的加密货币。然而加密货币并不能支持所有 签名方案,因为这需要每个客户端理解并验证每个方案。
对于 Cardano,我们决定首先使用椭圆曲线加密技术,即 Ed25519 曲线
特别的。我们还决定通过添加对 HD 钱包的支持来增强现有库
使用 Dmitry Khovratovich 博士和 Jason Law 的规范。
8
也就是说,Cardano将来会支持更多的签名方案。特别是,我们是 有兴趣集成 BLISS-B 以将抗量子计算机的签名添加到我们的系统中。 我们还有兴趣添加 SECP256k1 以增强与旧版的互操作性 加密货币,例如 Bitcoin。
Cardano 设计有特殊的扩展,使我们能够添加更多签名
通过软分叉进行计划。它们将根据需要以及在计划的重大更新期间添加
路线图。
9
用户发行资产(UIA)
在 Bitcoin 历史的早期,协议很快就被开发出来,允许用户发行资产
利用 Bitcoin 的会计系统来同时跟踪多种货币。
8 这是 Cardano 的 HD 钱包实现的文档。我们相信 Cardano 是第一个
支持 Ed25519 HD 钱包的加密货币
9 参见cardanoroadmap.com
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 11 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
这些协议本身不受 Bitcoin 协议支持,而是通过 聪明的黑客。
对于 Bitcoin 覆盖层,例如 Colored Coins 和 Mastercoin(现在称为 Omni),光 客户端被迫依赖可信服务器。此外,交易费用仍需支付 比特币。这些属性与交易审批的单一管道相结合,使得 Bitcoin 对于多资产会计来说不是最佳的。
在使用ERC20标准的Ethereum案例中,功能更加丰富。然而, 交易费用仍然需要以太币。此外,Ethereum 网络遇到困难 扩展以满足所有已发行的 ERC20 token 的需求。
根本问题可以分为三个部分:资源、激励和关注。 就资源而言,在同一个账本中添加一种全新的货币意味着人们拥有了 两个独立的 UTXO (未使用的交易输入)集共享带宽、内存池和 块空间。负责嵌入这些货币交易的共识节点 这样做需要激励。并不是每个加密货币用户都会或应该关心 特定实体的货币。
考虑到这些问题,作为多资产分类账的主要 token 带来的好处是巨大的 可以有效地充当桥梁货币,允许去中心化做市。特别 可以发行目的资产以提供额外的效用,例如价值稳定的资产,例如 Tether 或 MakerDAO 可用于借贷和汇款申请。
鉴于这些挑战,Cardano 采用了务实的多资产会计方法。 分阶段建设,第一个挑战是设计必要的基础设施来支持 数以千计的 UIA 的需求。也就是说,以下进步是必要的:
1. 特殊用途的经过验证的数据结构,允许跟踪非常大的数据 UTXO 状态
2.
拥有分布式内存池来保存大量待处理交易的能力
3.
区块链分区和检查点允许巨大的全局blockchain
4.
奖励共识节点包含不同集合的激励计划
交易
5.
订阅机制允许用户决定他们想要跟踪哪些货币
6.
强大的安全保障,UIA享有与原生资产相似的安全性
7.
支持去中心化做市,以改善 UIA 和
主要 token
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 12 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
我们为寻找正确的经过验证的数据结构所做的初步努力已经产生了一个新的 由 Leo Reyzin、IOHK 和 Waves 联合开发的 AVL+ Tree 类型。需要更多的研究, 但这是一项基础性的进步,将包含在 Cardano 的更高版本中。
分布式内存池可以使用斯坦福大学的 RAMCloud 协议来实现。 实验将于 2017 年第三季度开始,研究将其集成到 Cardano 的共识层中。
其余主题相互关联并由正在进行的研究涵盖。我们期望——主题 研究结果 - 将一项协议纳入 CSL Basho 期间 UIAs 的 Cardano 中 2018 年发布。
可扩展性
分布式系统由一组同意运行协议或协议的计算机(节点)组成。
实现共同目标的协议套件。这个目标可以是共享一个由以下定义的文件
BitTorrent 协议或使用 Folding@Home 折叠蛋白质。
当节点加入网络时,最有效的协议会获得资源。托管的文件
例如,如果有许多对等点,BitTorrent 的下载速度平均会快得多。
同时下载它。速度提高是因为同行提供资源,同时
也消耗它们。这一特征就是人们在描述分布式系统时通常所指的含义。
系统规模。
当前所有加密货币的设计面临的挑战是它们实际上并不是
设计为可扩展的。例如,区块链通常是一个仅附加链表
块。 blockchain 协议的安全性和可用性依赖于许多节点
拥有 blockchain 数据的完整副本。因此,必须复制单个字节的数据
N 个节点之间。额外的节点不提供额外的资源。
这个结果对于整个事务处理和消息八卦来说是相同的
系统。向共识系统添加更多节点并不提供额外的
交易处理能力。这只是意味着必须花费更多的资源来做同样的事情
工作。更多的网络中继意味着更多的节点必须传递相同的消息来保持
整个网络与最新区块同步。
鉴于这种拓扑结构,加密货币无法扩展到与传统网络相同的全球网络
金融系统。相比之下,遗留基础设施是可扩展的,并且具有几个数量级
更多的处理和存储能力。添加一个具体的点,Bitcoin是一个非常小的网络
相对于其支付同行,但仍难以管理其当前的负载。
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 13 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
我们的共识算法极大地帮助了我们 Cardano 的可扩展性目标。衔尾蛇
允许以去中心化的方式选举共识节点的法定人数,从而可以运行更多
过去 20 年开发的传统协议是为了满足大型企业的需求
基础设施提供商,例如谷歌和Facebook。
10
例如,选举一个纪元的法定人数意味着我们有一组可信的节点
在特定时间段内维护分类账。同时选举多个法定人数很简单
并将事务分区到不同的法定人数。
类似的技术可以应用于网络传播以及对 blockchain 进行分片
本身分成独特的分区。在我们当前的路线图中,缩放方法将应用于
衔尾蛇从 2018 年开始,并将继续成为 2019 年和 2020 年的焦点。
Cardano 计算层
如前所述,交易有两个组成部分: 发送机制 并记录token的流向以及移动token的原因和条件。的 后者可以任意复杂,涉及数 TB 的数据、多个签名和特殊 事件发生。后者也可以非常简单,只需一个签名推送值 到另一个地址。
对价值流的原因和条件进行建模背后的挑战在于,它们是 对于以最不可预测的方式涉及的实体来说,这是非常个人化的。教训 合同法描绘了一幅更有问题的画面,而行为者本身可能不会 甚至要意识到交易与商业现实不符。我们一般称之为 现象“语义鸿沟”。 11
为什么人们应该构建一种追求无限复杂性和抽象层的加密货币? 这在本质上似乎是西西弗斯式的,但在实践中却显得幼稚。此外,每个抽象都包含 具有法律和安全后果。
例如,有许多在线活动被普遍认为是非法的或受到蔑视的
例如贩运儿童色情制品或出卖国家机密。通过部署强大的
10 还有其他独立研究协议试图达到相同的目的,例如
Elastico 和 Bitcoin-NG
11 Loi Luu 等人。在他们最近的论文《让智能合约更智能》中讨论了这一差距
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 14 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
去中心化的基础设施,现在正在为这一活动的发生提供一个渠道 与正常商业交易享有相同的审查制度。法律上尚不清楚是否 网络的共识节点——它们有动力变得更加联盟 时间来提高效率 - 将对他们托管的内容负责。
对 Tor 运营商的起诉、丝绸之路运营商的残酷对待以及整体缺乏 协议参与者法律保护背后的法律清晰度留下了一条不确定的道路。有 不缺乏对足够先进的加密货币还可以实现什么的想象力(参见 盖吉斯之环)。强迫加密货币的所有用户认可或至少认可是否合理? 助长网络上最恶劣的行为和行为?
不幸的是,没有明确的答案可以为加密货币设计者提供洞察力。它是 更多的是关于选择立场并捍卫其优点。 Cardano 和 Bitcoin 的特点是我们选择将关注点分离到各层。对于 Bitcoin,有 砧木。有了 Cardano,就有了 Cardano 计算层。
那些能够实现先前阐述的行为的复杂行为无法在 中超。它们需要能够运行用图灵完备语言编写的程序以及一些 天然气经济学到计量计算的形式。他们还需要共识节点愿意 将交易包含在其区块中。
因此,功能限制可以合理地保护用户。迄今为止,最成熟的 各国政府尚未采取以下立场:使用或维护加密货币是一种行为 非法行为。因此,绝大多数用户应该能够轻松地维护一个如下的账本: 其功能可与数字支付系统相媲美。
当一个人想要扩展能力时,有两种可能性。它是由私人启用的 志同道合的个人的集体,本质上是短暂的(例如,扑克游戏)。或者,它 由具有与 Ethereum 类似功能的分类账启用。在这两种情况下,我们都选择了 将事件外包给另一个协议。
在私人、短暂事件的情况下,避免 blockchain 范例是合理的 完全,而是限制对特殊用途 MPC 协议库的努力,这些协议可以 当一群志同道合的参与者需要时可以调用。计算和活动 在专用网络中进行协调,并且仅将 CSL 作为受信任的公告板和参考 必要时消息传递通道。
本案的关键点是同意、责任和隐私的封装。中超联赛是 被用作用户见面和交流的数字共享空间——就像公园举办活动一样 私人活动——但不提供任何特殊住宿或便利。此外, 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 15 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
使用专用 MPC 将实现低延迟交互,而无需 blockchain 膨胀。因此,它提高了系统的规模。
Cardano对该库的研究工作集中在我们的东京工业大学实验室 国外科学家的一些帮助。我们将图书馆称为“塔塔利亚”,以纪念一位同事的名字 数学家以及 Cardano 的当代人,并期望第一个迭代可用 2018 年第一季度。
第二种情况,需要一个带有虚拟机的blockchain,一组共识节点 以及实现两条链之间通信的机制。我们已经开始了 使用 K 框架严格形式化 Ethereum 虚拟机的过程 12 与伊利诺伊大学的团队合作。
该分析的结果将告知设计可重复且最终的最佳方法 分布式虚拟机,操作语义清晰,正确性保证有力 13 规范中的实现。换句话说,虚拟机实际上按照代码执行的操作 这与将安全风险降到最低有关。
关于 Ethereum 提出的天然气经济学及其如何实现仍存在未解决的问题 与 Jan Hoffmann 等人的资源感知机器学习等工作以及更广泛的研究相关 用于计算的资源估计。我们也很好奇语言水平 虚拟机的独立性。例如,Ethereum 项目表达了愿望 从当前的 VM 过渡到 Web Assembly。
接下来的努力是开发一种合理的编程语言来表达有状态的 合约将被去中心化应用程序调用为服务。对于这个任务,我们有 选择了支持旧版 smart contract 语言 Solidity 的方法,以实现低 保证应用程序并开发一种名为 Plutus 的新语言以实现更高的保证 需要形式验证的应用程序。
与基于 Solidity 的 Zeppelin 项目一样,IOHK 也将开发一个 Plutus 代码参考库 供应用程序开发人员在他们的项目中使用。我们还将开发一套专门的工具 受 UCSD Liquid Haskell 项目工作启发的形式验证。
在共识方面,Ouroboros 以足够模块化的方式设计,以支持 smart contract 评估。因此,CSL和CCL将共享相同的共识算法。 12 由 Grigore Rosu 教授等人发明。 al., K 是一个独立于语言的通用框架 机器可执行语义。在我们工作之前,它已被用于对 C、Java 和 JavaScript 进行建模 13 意味着不同的共识节点运行不同的smart contract。也称为状态分片 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 16 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
不同之处在于,衔尾蛇可以被确认为允许许可的和允许的 通过 token 分发的无需许可的分类帐。
通过 CSL,Ada 已通过 token 生成活动分发给整个亚洲的购买者 最终将在二级市场上转售。这意味着CSL的共识算法是 由多样化且日益分散的参与者或其授权的群体控制 分配。使用 CCL,可以创建由该代表持有的特殊用途 token 账本可以是受监管的实体,从而创建一个许可的账本。
这种方法的灵活性允许 CCL 的不同实例以不同的方式实现 有关交易评估的规则。例如,赌博活动可能受到限制 除非仅通过将非归属交易列入黑名单来提供 KYC/AML 数据。
我们最终的设计重点是将可信硬件安全模块(HSM)添加到我们的协议中 堆栈。将这些功能引入到系统中时,这是两个巨大的优势 协议。首先,HSM 在不引入安全性的情况下大幅提升性能 14 除了信任供应商之外的担忧。其次,通过使用密封玻璃校样(SGP), HSM 可以保证数据可以被验证然后销毁而不会被破坏。 复制或泄露给恶意的外部人员。
重点关注第二点,SGP 可能会对合规性产生革命性影响。 通常,当消费者提供个人身份信息 (PII) 进行身份验证时 身份或证明参与权,该信息将被交给受信任的第三方 希望它不会做出恶意行为。这项活动本质上是中心化的,数据提供者 失去对其 PII 的控制权,并且还受到基于司法管辖区的各种法规的约束。
能够选择一组可信证明者,然后将 PII 存储在硬件飞地中 意味着任何具有足够能力的 HSM 的参与者都能够验证有关参与者的事实 以不可伪造的方式,而验证者不知道参与者的身份。例如,鲍勃是 不是美国公民。爱丽丝是一位合格的投资者。詹姆斯是美国纳税人,应该发送 应税利润记入 X 账户。
Cardano 的 HSM 策略将是尝试在接下来的两年内实施专门的协议 使用 Intel SGX 和 ARM Trustzone 已有多年。这两个模块均内置于数十亿消费者中 从笔记本电脑到手机的设备,并且不需要消费者方面进行额外的努力 使用。两者都经过严格审查、精心设计,并且基于一些公司多年的迭代 规模最大、资金最充足的硬件安全团队。
14 参见康奈尔大学的 http://hackingdistributed.com/2016/12/22/scaling-bitcoin-with-secure-hardware/ 大学 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 17 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
监管
所有现代金融体系的严酷现实是,随着规模的扩大,它们会积累需求, 或者至少是对监管的渴望。这种结果通常是反复崩溃的结果 由于市场中某些演员或演员集团的疏忽。
例如,1907 年的尼克博克危机导致了美联储的成立 1913年系统作为最后贷款人。另一个例子是 20 年代的过度行为 美国导致了可怕的金融崩溃,即大萧条。这次崩溃 1934 年成立了证券交易委员会,以防止类似的情况发生 事件或至少追究不良行为者的责任。
人们可以合理地争论监管的必要性、范围和效力,但不能否认 它的存在以及主要政府执行它的热情。然而, 随着世界全球化和现金数字化,所有监管机构都面临着两方面的挑战。
首先,在处理集合时,哪一套规则应该是最高的? 司法管辖区?当单一交易发生时,威斯特伐利亚主权的过时概念就消失了 一分钟之内可以到达三打国家。难道只是任何人掌握了 最具地缘政治影响力?
其次,隐私技术的进步引发了一场数字军备竞赛,它将 甚至越来越难以了解谁参与了交易, 更不用说谁拥有特定的价值储存手段了。在一个拥有数百万美元资产的世界 只需一个暗藏的12字助记词就可以控制,你如何 15 实施有效监管?
与所有金融系统一样,Cardano 协议必须在其设计中就什么是有自己的意见。 公平合理。我们选择区分个人权利和集体权利 市场。
个人应始终有权单独使用其资金,而无需受到胁迫或民事资产 没收。这项权利必须得到执行,因为并非所有政府都可以相信不会这样做 正如委内瑞拉所见,腐败政客滥用主权权力谋取个人利益 和津巴布韦。加密货币的设计必须遵循最低公分母。
15 参见 BIP39 https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 18 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
第二,历史不容篡改。区块链提供了不变性的承诺。 引入回滚历史或更改官方记录的权力引入了太多的内容 为了使某个或多个特定演员受益而改变过去的诱惑。
第三,价值的流动应该不受限制。资本管制和其他人造墙 削弱人权。除了试图强制执行它们是徒劳的之外,在全球范围内 16 最不发达国家的许多公民在其管辖范围之外旅行的经济体 为了维持生活工资,限制资本流动通常最终会伤害世界上最贫穷的人。
这些原则指出,市场与个人明显不同。虽然设计师们 Cardano 相信个人权利,我们也相信市场有权公开声明 他们的条款和条件,如果个人同意在这个市场内开展业务,那么 为了整个系统的完整性,它们必须遵守这些标准。
挑战始终是执行的成本和实用性。小型、跨司法管辖区
遗留系统中的交易成本太高,无法提供高度的追索保证
发生欺诈或商业纠纷时。当一个人将电汇发送至
尼日利亚王子,试图收回资金通常成本太高。
17 号
对于Cardano,我们认为我们可以在三个层面上进行创新。首先,通过使用smart contracts 可以更好地控制商业关系的条款和条件。如果所有资产都是 数字化且只能在 CSL 上表达,可以有力保证无欺诈的商业 获得了。
其次,使用 HSM 提供一个身份空间,其中 PII 不会泄露,但仍可用于 身份验证和凭证参与者应提供全球声誉系统并允许 进行成本低得多的受监管活动,例如具有自动化功能的在线游戏 税务合规或去中心化交易所。
最后,在 Cardano 的路线图中,创建了一个模块化法规 DAO,可以 定制为与用户编写的 smart contract 进行交互,以添加可变性、消费者 保护和仲裁。该项目的范围将在后面的论文中概述。
16 作为资本流动对策的示例,请参见哈瓦拉银行系统 17 请参阅预付费骗局 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 19 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
这一切的意义何在?
Cardano 是一个马拉松项目,涉及数百名最聪明的人的反馈
加密货币行业内外。它涉及不知疲倦的迭代,积极使用
同行评审,以及在被发现时无耻地盗窃伟大的想法。
其余部分分别涵盖我们确定的核心重点的特定方面
我们项目的组成部分。有些人被选中是因为希望提高整体最佳水平
空间的实践,而其他则特定于 Cardano 的演变。
虽然没有一个项目能够涵盖所有目标或满足每个用户,但我们希望提供一个愿景
对于缺乏自我发展的金融体系的司法管辖区来说,自我发展的金融体系应该是什么样子。终极
加密货币的现实并不是它们会破坏现有的传统金融系统。
传统金融体系总是能够吸收变化并维持其形式
和功能。
相反,人们应该寻找部署现有技术成本太高的地方。
许多人每天的生活费不足几美元的银行系统没有稳定的身份,而且
信用是不可能找到的。
在这些地方,捆绑支付系统、产权、身份、信用和风险的权力
对手机上运行的单个应用程序进行保护不仅有用,而且可以改变生活。
我们构建 Cardano 的原因是我们认为我们有合法的机会来交付——或者
至少推进了这一对发展中国家的愿景。
即使失败,如果我们能够改变加密货币的设计、发展和资助方式,
然后就有了伟大的成就。
Ciência e Engenharia
A arte da iteração
Criptomoedas são protocolos implementados como software. Os protocolos são simplesmente inteligentes conversas entre os participantes. O software é, em última análise, a manipulação de dados, dada alguma POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 20 de 44
IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
objetivo. No entanto, a diferença entre software sólido e confiável e protocolos e protocolos úteis e seguros sua conversa é completamente humana.
Um bom software precisa de responsabilidade, requisitos de negócios claros, processos repetíveis, testes completos e iteração incansável. Um bom software também precisa de talentos razoavelmente talentosos desenvolvedores com conhecimento específico de domínio suficiente para projetar adequadamente um sistema que possa totalmente resolver qualquer problema que estejam tentando resolver.
Quanto aos protocolos úteis e seguros, especialmente aqueles que envolvem criptografia e distribuição sistemas, eles começam em um processo mais acadêmico e orientado por padrões. Revisão por pares, interminável debates e um conceito firme de compromissos são necessários para garantir que um protocolo seja útil. No entanto, estes por si só não são suficientes, os protocolos precisam ser implementados e testados para uso na vida real.
O desafio único na indústria de criptomoedas é que duas empresas completamente diferentes filosofias são mutiladas sem uma síntese hegeliana adequada. Nossa tese é um “movimento mentalidade de startup rápida e quebre as coisas, impulsionada pela juventude, ganância e paixão. A antítese é uma abordagem lenta, metódica e academicamente orientada, motivada pelo desejo de solidificar o inovações do nosso espaço em um nicho agradável, desfrutando de amplo financiamento e prestígio.
O resultado é que muitas criptomoedas são totalmente especificadas apenas em um white paper relevante para um currículo ou apenas por código escrito às pressas. Nenhuma das dez principais criptomoedas atuais por 18 capitalização de mercado são baseadas em um protocolo revisado por pares. Nenhum dos dez principais atuais as criptomoedas foram implementadas a partir de uma especificação formal.
19
No entanto, estão em jogo milhares de milhões de dólares de valor. Uma vez implantada, uma criptomoeda é extremamente
difícil de mudar. Como um usuário sabe que está usando um sistema seguro? Como um usuário
sabe que as alegações de marketing são legítimas? E se o protocolo proposto nunca conseguir alcançar
as reivindicações?
Esta falta de síntese e respeito pelo processo é uma das principais razões pelas quais a IOHK quis
construir Cardano. Nossa esperança era desenvolver um projeto de referência que servisse de exemplo de
como fazer as coisas de uma forma mais eficaz, sensata e honesta.
O objetivo não é propor uma forma totalmente nova de desenvolver software e protocolos, mas sim
reconhecer que já existem excelentes softwares e protocolos e podemos imitar as condições
que levou à sua criação. Em segundo lugar, tornar essas condições publicamente conhecidas e de código aberto, se
possível para que possam ser imitados em benefício de todo o campo. 18 Consulte www.coinmarketcap.com para obter uma listagem abrangente por capitalização de mercado 19 Ethereum possui uma especificação semiformal conhecida como Livro Amarelo; no entanto, a semântica EVM é não são totalmente especificados nem são suficientes para uma implementação completa do protocolo. POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 21 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Fatos e opiniões
A outra preocupação é onde terminam os fatos e começa a opinião. Existem centenas de
linguagens de programação, dezenas de paradigmas de desenvolvimento e mais de uma filosofia em
gerenciamento de projetos. O mundo académico está repleto de desafios próprios decorrentes da sua
distância das preocupações comerciais e da praticidade.
Para Cardano, primeiro tentamos capturar deficiências óbvias que podem ser universalmente aceitas
ser útil do ponto de vista da engenharia. Por exemplo, criptografia e distribuição
sistemas são tópicos extraordinariamente complexos, com muitos exemplos de como mãos ingênuas
pode cometer erros horríveis. Portanto, qualquer protocolo que exija insights desses domínios precisa
ser elaborado por um especialista reconhecido e submetido à revisão por outros especialistas.
Ouroboros é nosso primeiro estudo de caso nesta área. Ele foi projetado por uma equipe de criptógrafos com
um histórico de publicação grande, diversificado e publicamente verificável. Foi construído de acordo com o padrão
processo de criptografia, com suposições de segurança, modelo adversário e provas. Estes
as provas foram verificadas por submissão a conferências e também de forma independente por computador
20
provas escritas em Isabelle por uma equipe da Universidade de Cambridge.
21
No entanto, este trabalho por si só não oferece garantias de utilidade – apenas uma verificação rigorosa de um sistema de segurança
modelo dado algumas suposições. Para ter utilidade, é necessário implementar e testar o protocolo.
Nossos desenvolvedores fizeram isso em Haskell e também em Rust. Este trabalho revelou que mais esforço
precisava estar focado no modelo de sincronização, o que levou à criação da Ouroboros
Praos.
Esta arte da iteração é o que produz grandes protocolos, com cada passo levando a novas lições e
um requisito para verificar novamente a exatidão da etapa anterior. É caro, demorado e custa
22 vezes realmente tedioso, mas é necessário garantir que um protocolo seja projetado corretamente.
Os protocolos — especialmente aqueles que serão usados por bilhões de pessoas — não têm vida curta e são rapidamente
evoluindo. Em vez disso, destinam-se a ser seguidos durante anos ou décadas. Parece inteiramente
É razoável que, antes de sobrecarregarmos o mundo com um novo sistema financeiro, todos tenhamos de conviver com
para os próximos 100 anos, queremos exigir algum tédio e rigor aos seus designers.
20 Artigo aceito número 71 da Conferência Anual de Criptografia da IACR na Califórnia
21 Por Kawin Worrasangasilpa sob a supervisão do Professor Lawrence Paulson
22 Seguindo uma tangente, por uma questão de leviandade, deveríamos assistir à discussão do Professor Halmos sobre como
escrever um livro de matemática
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 22 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Pecados Funcionais
Movendo-se para um território mais opinativo, as ferramentas, linguagens e metodologias utilizadas em
desenvolvimento de software são mais artefatos da providência religiosa do que da realidade objetiva. Fonte
o código é como prosa escrita. Todo mundo tem uma opinião sobre o que é bom — e o que está sendo
comunicado é, às vezes, menos importante do que a forma como é comunicado.
Devemos cometer o pecado de escolher um lado aceitando que estará errado em pelo menos um aspecto.
os olhos da pessoa. No entanto, há pelo menos um grande corpus de justificação por detrás da nossa escolha.
Os protocolos que tornam Cardano possível estão sendo implementados em Haskell. A interface do usuário
foi encapsulado em um fork do Electron que chamamos de Daedalus. Nós escolhemos
usamos o modelo de arquitetura web sempre que possível e, para nosso banco de dados, optamos por um valor-chave
paradigma usando RocksDB.
Do nível do componente, essa abstração significa que a manutenção é muito mais simples, melhor
a tecnologia pode ser substituída posteriormente com pouco esforço, e que nossa pilha está parcialmente ligada ao
esforços de desenvolvimento do Github e do Facebook.
Usar uma WebGUI nos permite aproveitar o React e desenvolver recursos de front-end usando ferramentas
compreendido por centenas de milhares de desenvolvedores de JavaScript. Usando uma arquitetura web
significa que os componentes podem ser tratados como serviços e o modelo de segurança é sensato.
Escolher Haskell para desenvolvimento de protocolo foi a escolha mais difícil. Mesmo no funcional
mundo, existem amplas opções. Do lado mais flexível e impuro, existem linguagens como
Clojure, Scala e F#, que se beneficiam das enormes bibliotecas de Java e .Net
ecossistemas, preservando alguns dos melhores aspectos da programação funcional.
Existem linguagens de orientação mais acadêmica, como Agda e Idris, que têm uma relação próxima
conexão com técnicas que permitiriam uma forte verificação de correção. No entanto, eles não têm
bibliotecas razoáveis e têm uma experiência de desenvolvimento abaixo da média.
Para Cardano, a escolha recaiu sobre Ocaml e Haskell. Ocaml é uma linguagem maravilhosa com
uma grande comunidade, boas ferramentas, experiência razoável em desenvolvimento e um grande legado no
espaço de verificação formal através de Coq. Então, por que escolhemos Haskell? 23
23 Somando-se a este ponto, a IOHK realmente tem um projeto sendo implementado em Ocaml chamado Qeditas que herdamos do pseudônimo Bill White POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 23 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Por que Haskell?
Os protocolos que compõem Cardano são distribuídos, empacotados com criptografia e requerem um
alto grau de tolerância a falhas. Nos melhores dias, ainda haverá atores bizantinos, malformados
mensagens e clientes defeituosos causando involuntariamente algum tipo de confusão na rede.
Primeiro, queríamos uma linguagem que tivesse um sistema de tipos forte, onde pudéssemos usar facilmente ferramentas
como Quickcheck e técnicas mais elaboradas, como Tipos de Refinamento, ao mesmo tempo em que tem um
expectativa razoável de tolerância a falhas. Um modelo OTP estilo Erlang satisfaz o último
enquanto linguagens como Haskell e Ocaml satisfazem o primeiro.
Com a introdução do Cloud Haskell, Haskell ganhou muitas das vantagens de Erlang, embora não
entregando o que é seu. Além disso, a modularidade e a capacidade de composição de Haskell nos permitiram
use uma biblioteca personalizada mais leve chamada Time Warp para Cardano.
Em segundo lugar, as bibliotecas de Haskell evoluíram muito nos últimos anos graças a um extenso trabalho
de entidades comerciais como Galois, FP Complete e Well-Typed. Como consequência, Haskell pode
ser usado para escrever aplicativos de produção.
24
Terceiro, a rápida evolução do PureScript forneceu uma ponte muito necessária para o mundo JavaScript
semelhante ao que Clojurescript deu ao Clojure. Esperamos que o PureScript seja especialmente importante
quando se trata de fazer Cardano funcionar em um navegador e desenvolver carteiras móveis.
Quarto, no que diz respeito à resolução de dependências, Haskell nos últimos anos tem desfrutado de uma
esforço social e tecnológico significativo liderado por tecnólogos como Michael Snoyman através de um
plataforma chamada stackage que é fácil de usar e bem suportada pelo FP Complete.
Quinto, além da resolução adequada de dependências, pretendemos que nossas compilações de software sejam
reproduzível. Em outras palavras, com os mesmos valores de configuração e versões de dependência
deve produzir exatamente os mesmos artefatos de construção. Através do stackage, temos usado NixOps
para alcançar a reprodutibilidade com grande sucesso.
Finalmente, o conjunto de talentos de desenvolvedores especializados em Haskell é razoavelmente grande — comparado
seus pares – e bastante bem treinados com a combinação certa de credenciais acadêmicas e industriais. Também
atua como um filtro de competências, pois é incomum encontrar desenvolvedores Haskell experientes sem
conhecimento detalhado de ciência da computação.
24 Bryan O'Sullivan oferece aqui uma bela palestra sobre o uso industrial de Haskell.
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 24 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Especificação e Verificação Formal
Um ponto forte significativo do desenvolvimento de um protocolo usando um modelo de segurança comprovadamente correto é que ele fornece um limite garantido de poder adversário. É-nos dado um contrato que, desde que o protocolo for seguido e as provas estiverem corretas, o adversário não pode violar a segurança propriedades reivindicadas.
Uma reflexão mais profunda torna a afirmação anterior ainda mais significativa. Os adversários podem ser arbitrariamente inteligente e capaz. Dizer que eles são derrotados apenas através de um modelo matemático é extraordinário. E, claro, isso não é inteiramente verdade.
A realidade introduz factores e circunstâncias que impedem a utopia da segurança pura e comportamento correto do existente. As implementações podem estar erradas. Hardware pode introduzir ataque vetores anteriormente não considerados. O modelo de segurança pode ser insuficiente e não estar em conformidade com uso na vida real.
É necessário um julgamento sobre quanta especificação, rigor e verificação são exigidos para um protocolo. Por exemplo, empreendimentos como o projeto SeL4 Microkernel são um excelente exemplo de uma solução totalmente ataque à ambiguidade, exigindo quase 200.000 linhas de código Isabelle para verificar menos de 10.000 linhas de código C. No entanto, um kernel de sistema operacional é uma infra-estrutura crítica que poderia ser um grave vulnerabilidade de segurança se não for implementada adequadamente.
Todo software criptográfico deveria exigir o mesmo esforço hercúleo? Ou pode-se escolher um menos caminho vigoroso que produz resultados equivalentes? Também importa se o protocolo é perfeitamente implementado se o ambiente em que é executado for notoriamente vulnerável, como em WindowsXP?
Para Cardano, escolhemos o seguinte compromisso. Primeiro, devido à natureza complexa do domínios da criptografia e da computação distribuída, as provas tendem a ser muito sutis, longas e complicado e às vezes bastante técnico. Isto implica que a verificação conduzida por humanos pode ser tedioso e sujeito a erros. Portanto, acreditamos que toda prova significativa apresentada em branco o papel escrito para cobrir a infraestrutura principal precisa ser verificado por máquina.
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 25 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Segundo, para verificar o código Haskell para que corresponda corretamente aos nossos white papers, podemos escolher entre duas opções populares: interface com provadores SMT via LiquidHaskell e uso Isabelle/HOL.
Os solucionadores SMT (teorias do módulo de satisfatibilidade) lidam com o problema de encontrar soluções funcionais parâmetros que satisfazem uma equação ou inequação ou, alternativamente, mostrando que tais parâmetros não existem. Conforme discutido por De Moura e Bjørner, os casos de uso de SMT são vários, mas a chave O ponto é que essas técnicas são poderosas e podem reduzir drasticamente bugs e erros semânticos.
Isabelle/HOL, por outro lado, é uma ferramenta mais expressiva e diversificada que pode ser usada para
especificam e verificam a implementação. Isabelle é uma solucionadora de teoremas genérica que trabalha com
construções lógicas de ordem superior, capazes de representar conjuntos e outros objetos matemáticos para
ser usado em provas. A própria Isabelle se integra ao provador Z3 SMT para trabalhar com problemas envolvendo
tais restrições.
Ambas as abordagens agregam valor e, portanto, decidimos adotá-las em etapas.
Provas escritas por humanos serão codificadas em Isabelle para verificar sua exatidão, satisfazendo assim
nossa exigência de verificação de máquina. E pretendemos adicionar gradualmente Liquid Haskell a todos
código de produção na implementação de Cardano ao longo de 2017 e 2018.
Como ponto final, a verificação formal é tão boa quanto a especificação a partir da qual se está verificando e os conjuntos de ferramentas disponíveis. Uma das principais razões para escolher Haskell é que ele fornece o equilíbrio certo entre praticidade e teoria. A especificação derivada de white papers se parece muito com código Haskell, e conectar os dois é consideravelmente mais fácil do que fazê-lo com um imperativo linguagem.
Ainda há enorme dificuldade em capturar uma especificação adequada e também atualizar o especificação quando alterações como atualizações, correções de bugs e outras preocupações precisam ser feitas; no entanto, esta realidade não diminui de forma alguma o valor global. Se alguém tiver problemas de construir uma base sobre segurança comprovável, então a implementação deve ser o que foi realmente proposto no papel.
Transparência
Uma questão final ao discutir a ciência e a engenharia do desenvolvimento de uma criptomoeda é como abordar a transparência. As decisões de design não são booleanas e etéreas, chegando a desenvolvedores em sonhos e de repente se tornando canônicos. Eles são derivados da experiência, debate e lições aprendidas com erros anteriores.
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 26 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
O desafio é que um processo de desenvolvimento totalmente transparente poderia influenciar a discussão para tornar-se mais teatral do que baseado em evidências. Egos, tentativas de conquistar uma comunidade e medo parecer estúpido poderia forçar as conversas a se tornarem estéreis e contraproducentes.
Além disso, pessoas de fora poderiam tentar cooptar a conversa num esforço para forçar a sua tangente particular para se tornar o único tópico relevante. Todo mundo tem uma vaca sagrada.
Então, como equilibrar a necessidade de um processo de desenvolvimento transparente, que se deve à comunidade que confiou o progresso a um conjunto de desenvolvedores principais, com necessidade de liberdade de expressão sem medo?
Com Cardano, decidimos adotar um processo orientado por padrões com supervisão direcionada. A comunidade precisa saber que a ciência e o código são bem pensados, verificados e realmente resolvem as coisas que os desenvolvedores afirmam que fazem. Para este fim, a revisão por pares deve satisfazer completamente a componente científica, uma vez que foi concebido especificamente para este fim e nos deu o mundo moderno.
Para código, este tópico é um pouco mais opinativo. Para Cardano, optamos por confiar o Cardano Fundação servirá como auditor final do trabalho da IOHK. Em particular, são-lhes confiados com as seguintes atribuições:
1.
Revisão regular do código-fonte contido no Cardano Github para verificar a qualidade,
cobertura do teste, comentários adequados e integridade
2.
Revisão de toda a documentação Cardano quanto à correção e utilidade
3.
Verificando as alegações de que os protocolos produzidos pelos cientistas estão totalmente implementados
Para cumprir esta tarefa, a IOHK apresentará relatórios regulares e oportunos à Fundação – e aos seus atribui – para revisar. A Fundação, por sua vez, divulgará um relatório de supervisão do desenvolvimento ao Cardano comunidade pelo menos trimestralmente.
Este primeiro esforço pretende iniciar uma conversa mais ampla sobre como um projeto descentralizado alcança a responsabilidade. A supervisão do desenvolvimento por parte de terceiros de confiança é uma ferramenta poderosa para garantir que os desenvolvedores estejam no caminho certo, mas não é suficiente para garantir completamente que o projeto sempre entregará.
Por isso, após a integração da tesouraria na CSL, a Fundação incentivará equipes de desenvolvimento adicionais para construir clientes alternativos com base no formal especificações desenvolvidas em conjunto com a IOHK. A diversidade de desenvolvimento tem sido uma ótima técnica usado pelo projeto Ethereum para evitar a formação de uma monocultura em torno de um único conjunto de ideias ou desenvolvedores. POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 27 de 44
IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
No que diz respeito às especificações, há uma riqueza de conhecimentos a serem obtidos a partir dos padrões processo seguido pelo WC3 e pelo IETF. Em última análise, cada protocolo Cardano integra requer uma especificação independente de trabalho acadêmico ou código-fonte. Em vez disso, precisa estar em um formato adequado, como um RFC.
Um dos princípios fundamentais da Fundação Cardano é atuar como órgão de padronização especificamente para o Cardano protocolos e para hospedar conversas para atualizar, adicionar ou alterar padrões relevantes para Cardano. Se a Internet (um produto de padrões) através da IETF puder chegar a um consenso sobre o que protocolos principais devem ser usados, então é inteiramente razoável supor que um órgão dedicado poderia facilitar o mesmo resultado.
Como nota final, é interessante explorar a transferência destas discussões para uma entidade descentralizada hospedado em um blockchain. Este conceito é chamado de organização autônoma descentralizada (DAO) e trabalhos preliminares estão em andamento nesta área. A IOHK desenvolverá um modelo de referência DAO para entidades que fazem interface com Cardano para usar se desejar e é prerrogativa da Fundação Cardano decidir se irão adotá-lo sob seu mandato de padrões.
科学与工程
迭代的艺术
加密货币是作为软件实现的协议。协议非常智能 参与者之间的对话。软件最终是对数据的操纵 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 20 页,共 44 页
IOHK |我们为何构建 CARDANO | 2017/06/28
目标。然而,可靠、可靠的软件与有用、安全的协议之间的区别 他们的对话完全是人类的。
好的软件需要问责制、明确的业务需求、可重复的流程、 彻底的测试和不懈的迭代。好的软件也需要相当的人才 具有足够领域特定知识的开发人员可以正确设计一个系统,该系统可以完全 解决他们试图解决的任何问题。
至于有用且安全的协议,尤其是涉及密码学和分布式的协议 系统,它们从一个更加学术和标准驱动的过程开始。同行评审,永无止境 为了确保协议有用,辩论和坚定的权衡概念是必要的。然而这些 仅靠协议是不够的,协议需要通过现实生活中的使用来实施和测试。
加密货币行业的独特挑战是两种完全不同的 没有适当的黑格尔式综合,各种哲学就被拼凑在一起。我们的论文是“移动 “快速、打破常规”的创业心态由年轻、贪婪和激情驱动。其对立面是 缓慢、有条理、以学术为导向的方法,其动机是巩固知识的愿望 我们的空间创新成为一个良好的利基市场,享有充足的资金和声望。
结果是许多加密货币要么仅在白皮书上完全指定 与简历相关或只是匆忙编写的代码。目前排名前十的加密货币都没有 18 市值基于同行评审协议。目前排名前十的都没有 加密货币是根据正式规范实施的。
19
然而,数十亿美元的价值正处于危险之中。一旦部署,加密货币就非常有用
很难改变。用户如何知道他们正在使用安全系统?用户如何
知道营销主张是合法的吗?如果提议的协议永远无法实现怎么办
索赔?
缺乏综合和对流程的尊重是 IOHK 想要的主要原因之一
构建 Cardano。我们希望开发一个参考项目作为示例
如何以更有效、理智和诚实的方式做事。
我们的目标不是提出一种全新的软件和协议开发方式,而是
承认伟大的软件和协议已经存在,我们可以模仿条件
这导致了他们的创作。其次,将这些条件公开并开源,如果
以便可以为了整个领域的利益而模仿它们。 18 请访问 www.coinmarketcap.com 了解按市值列出的综合列表 19 Ethereum 有一个半正式规范,称为黄皮书;然而, EVM 语义是 没有完全具体说明,也不足以充分实施该议定书。 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 21 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
事实与观点
另一个问题是事实在哪里结束,观点从哪里开始。有数百个
编程语言、数十种开发范例和不止一种哲学
项目管理。学术界充满了来自其自身的挑战
与业务关注点和实用性的距离。
对于 Cardano,我们首先尝试捕捉可以普遍同意的明显缺陷
从工程角度来看是有用的。例如,密码学和分布式
系统都是非常涉及的主题,有太多的例子来说明天真的双手如何
可能会犯下可怕的错误。因此,任何需要从这些领域洞察的协议都需要
由公认的专家设计并提交其他专家审查。
衔尾蛇是我们在该领域的第一个案例研究。它是由密码学家团队设计的
大量、多样化且可公开验证的出版历史。它是按照标准建造的
密码学过程,具有安全假设、对抗模型和证明。这些
通过提交给会议来检查校样 也可以通过计算机独立
20
剑桥大学的一个团队用伊莎贝尔语言编写的证明。
21
然而,这项工作本身并不能保证有用——只是对安全性进行严格检查
模型给出了一些假设。为了实用性,需要实现并测试该协议。
我们的开发人员已经在 Haskell 和 Rust 中这样做了。这项工作表明,需要付出更多努力
需要关注同步模型,这导致了 Ouroboros 的创建
普劳斯。
这种迭代的艺术产生了伟大的协议,每一步都会带来新的经验和教训
要求重新验证先前步骤的正确性。这是昂贵的、耗时的,而且
22 这确实很乏味,但需要确保协议设计正确。
协议——尤其是供数十亿人使用的协议——并不是短暂且迅速的
不断发展。相反,它们的目的是跟踪数年至数十年。看来完全是
合理的是,在新的金融体系给世界带来负担之前,我们所有人都必须忍受
在接下来的 100 年里,我们希望它的设计者能够保持一些乏味和严谨。
20 加州 IACR 年度加密会议接受的第 71 号论文
21 Kawin Worrasangasilpa,劳伦斯·保尔森教授指导下
22 为了轻松起见,我们应该看一下 Halmos 教授关于如何
写一本数学教科书
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 22 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
功能性罪恶
进入更加固执己见的领域,使用的工具、语言和方法
软件开发更多的是宗教的产物而不是客观现实。来源
代码就像写的散文。每个人对于什么是好的以及什么是存在都有自己的看法
有时,沟通的方式并不重要。
我们必须犯下选择一方的罪过,承认它至少在一个方面是错误的
人的眼睛。然而,我们的选择背后至少有大量的理由。
使 Cardano 成为可能的协议正在 Haskell 中实现。用户界面
已被封装在 Electron 的一个分支中,我们称之为 Daedalus。我们选择了
尽可能使用 Web 架构模型,对于我们的数据库,我们选择了键值对
使用 RocksDB 的范例。
从组件级别来看,这种抽象意味着维护更加简单、更好
以后可以毫不费力地替换技术,并且我们的堆栈部分依赖于
Github 和 Facebook 的开发工作。
使用 WebGUI 允许我们利用 React 并使用工具开发前端功能
被数十万 JavaScript 开发人员理解。使用网络架构
意味着组件可以被视为服务并且安全模型是合理的。
选择 Haskell 进行协议开发是最困难的选择。即使在功能上
世界,有充足的选择。在更灵活和不纯粹的方面,有像这样的语言
Clojure、Scala 和 F#,受益于 Java 和 .Net 的庞大库
生态系统,同时保留函数式编程的一些最佳方面。
还有更多面向学术的语言,例如 Agda 和 Idris,它们具有紧密的联系
连接到可以对正确性进行强有力验证的技术。然而他们缺乏
合理的库并具有较差的开发经验。
对于 Cardano,选择权归结为 Ocaml 和 Haskell。 Ocaml 是一门美妙的语言
一个伟大的社区、良好的工具、合理的开发经验和伟大的遗产
通过 Coq 进行形式化验证空间。那么我们为什么选择 Haskell? 23
23 除此之外,IOHK 实际上确实在 Ocaml 中实施了一个名为 Qeditas 的项目,该项目 我们继承了化名比尔·怀特 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 23 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
为什么是哈斯克尔?
组成 Cardano 的协议是分布式的,与加密技术捆绑在一起,并且需要
容错程度高。最好的日子里,依然会有拜占庭演员,畸形的
消息和故障客户端无意中对网络造成某种形式的破坏。
首先,我们想要一种具有强大类型系统的语言,我们可以在其中轻松使用工具
例如快速检查和更复杂的技术,例如细化类型,同时具有
容错的合理预期。 Erlang 风格的 OTP 模型满足后者
而像 Haskell 和 Ocaml 这样的语言则满足前者。
随着 Cloud Haskell 的引入,Haskell 获得了 Erlang 的许多优点,同时又没有
放弃自己的。此外,Haskell 的模块化和可组合性使我们能够
对 Cardano 使用名为 Time Warp 的轻量级定制库。
其次,由于大量的工作,Haskell 的库在过去几年中取得了巨大的发展
像 Galois、FP Complete 和 Well-Typed 这样的商业实体。因此,Haskell 可以
用于编写生产应用程序。
24
第三,PureScript 的快速发展为 JavaScript 世界提供了一座急需的桥梁
类似于 Clojurescript 为 Clojure 提供的功能。我们预计 PureScript 将特别重要
当谈到让 Cardano 在浏览器中工作并开发移动钱包时。
第四,在依赖解析方面,Haskell 在过去几年中享有盛誉。
由迈克尔·斯诺伊曼 (Michael Snoyman) 等技术专家领导的重大社会和技术努力
称为 stackage 的平台既易于使用,又受到 FP Complete 的良好支持。
第五,除了充分的依赖性解决之外,我们的目标是我们的软件构建
可重现。换句话说,使用相同的配置值和依赖版本
应该产生完全相同的构建工件。通过stackage,我们一直在使用NixOps
取得巨大成功的可重复性。
最后,与
其同行 - 并且训练有素,具有适当的学术和行业资格组合。它还
充当能力过滤器,因为很少有经验丰富的 Haskell 开发人员没有
详细的计算机科学知识。
24 Bryan O'Sullivan 在这里精彩地讲述了 Haskell 的工业用途。
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 24 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
正式规范和验证
使用可证明正确的安全模型开发协议的一个重要优势是 提供了对抗力量的有保证的限制。一个人获得一份合同,只要 遵循协议且证明正确,对手无法破坏安全 声称的财产。
更深入的思考使先前的断言变得更加重要。对手可以是任意的 聪明能干。说他们仅仅通过数学模型就被击败了 非凡的。当然,这并不完全正确。
现实引入了阻碍纯粹安全和乌托邦的因素和情况 现有的正确行为。实施可能是错误的。硬件可能会引入攻击 先前未考虑的向量。安全模型可能不足并且不符合 现实生活中的使用。
需要对一个项目需要多少规范、严格性和检查进行判断 协议。例如,像 SeL4 Microkernel 项目这样的努力就是一个典型的例子。 对歧义性的攻击需要近 200,000 行 Isabelle 代码来验证小于 10,000 行 C 代码。然而,操作系统内核是关键的基础设施,可以成为 如果实施不当,会出现严重的安全漏洞。
所有加密软件都需要付出同样的艰巨努力吗?或者可以选择少一个 产生同等结果的积极路径?协议是否也很重要 如果它运行的环境非常脆弱,例如在 视窗XP?
对于 Cardano,我们选择了以下折衷方案。首先,由于其复杂性 在密码学和分布式计算领域,证明往往非常微妙、冗长, 复杂且有时相当技术性。这意味着人工驱动的检查可以 乏味且容易出错。因此,我们相信每一个重要的证据都以白色呈现 为涵盖核心基础设施而编写的论文需要经过机器检查。
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 25 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
其次,要验证 Haskell 代码,使其正确对应我们的白皮书,我们可以选择 两种流行的选项之间:通过 LiquidHaskell 与 SMT 验证器连接并使用 伊莎贝尔/HOL。
SMT(可满足性模理论)求解器处理寻找泛函的问题 满足方程或不等式的参数,或者表明这些参数 不存在。正如 De Moura 和 Bjørner 所讨论的,SMT 的用例多种多样,但关键是 重点是这些技术都很强大并且可以显着减少错误和 语义错误。
另一方面,Isabelle/HOL 是一种更具表现力和多样化的工具,可用于
两者都指定并验证实施。 Isabelle 是一个通用定理求解器
高阶逻辑结构,能够表示集合和其他数学对象
用于证明中。 Isabelle 本身与 Z3 SMT 验证机集成,可解决涉及以下问题的问题:
这样的限制。
这两种方法都提供了价值,因此我们决定分阶段采用它们。
人类书面证明将被编码在 Isabelle 中以检查其正确性,从而满足
我们的机器检查要求。我们打算逐步将 Liquid Haskell 添加到所有
Cardano 在 2017 年和 2018 年实施的生产代码。
最后一点,形式验证的好坏取决于所验证的规范以及 可用的工具集。选择 Haskell 的主要原因之一是它提供了 实践与理论的正确平衡。来自白皮书的规范看起来很像 Haskell 代码,连接两者比使用命令式连接要容易得多 语言。
获取正确的规范并更新规范仍然存在巨大困难 需要进行升级、错误修复和其他问题等更改时的规范; 然而,这一现实并不会以任何方式削弱整体价值。如果有人遇到麻烦 建立在可证明安全性的基础上,那么实施应该是这样的 实际上是在纸上提出的。
透明度
讨论开发加密货币的科学和工程时的最后一个问题是 如何解决透明度问题。设计决策不是布尔型和空灵的,而是 梦想中的开发者,然后突然成为佳能。它们源自经验, 辩论以及从早期错误中吸取的教训。
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 26 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
挑战在于,完全透明的开发过程可能会影响讨论 变得更加戏剧化而不是基于证据。自负、试图赢得社区支持以及恐惧 听起来很愚蠢可能会迫使谈话变得毫无意义并且适得其反。
此外,局外人可能会试图拉拢对话,以迫使他们 特别切线成为唯一相关的话题。每个人都有一头神圣的牛。
那么,如何平衡透明开发流程的需求呢? 将进步委托给一组核心开发人员的社区,需要自由 没有恐惧的表达?
通过 Cardano,我们决定采用带有定向监督的标准驱动流程。 社区需要知道科学和代码是经过深思熟虑、检查和验证的 实际上解决了开发人员声称他们所做的事情。为此,同行评审应 完全满足科学成分,因为它是专门为此目的而设计的 并给了我们现代世界。
对于代码来说,这个话题有点固执己见。对于 Cardano,我们选择委托 Cardano 基金会担任 IOHK 工作的最终审计员。特别是他们被委托 具有以下职责:
1.
定期审查 Cardano Github 中包含的源代码以检查质量,
测试覆盖率、适当的注释和完整性
2.
审查所有 Cardano 文档的正确性和有用性
3.
验证科学家制定的协议已得到充分实施的说法
为了完成这项任务,IOHK 将定期、及时地向基金会及其下属机构提交报告 分配——审查。基金会随后将向政府发布发展监督报告 Cardano 社区至少每季度一次。
这第一项工作旨在引发一场更广泛的讨论,讨论去中心化项目如何 实现问责制。来自可信第三方的开发监督是一个强大的工具 确保开发人员步入正轨,但不足以完全保证 项目总会交付。
为此,国库并入CSL后,基金会将鼓励 额外的开发团队根据正式版本构建替代客户端 与 IOHK 联合开发的规范。发展多样性是一项伟大的技术 Ethereum 项目使用它来避免围绕一组想法形成单一文化或 开发商。 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 27 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
关于规范,可以从标准中获得丰富的知识 WC3 和 IETF 遵循的流程。最终,每个协议 Cardano 集成 需要一个独立于学术工作或源代码的规范。相反,它需要 采用合适的格式,例如 RFC。
Cardano 基金会的核心原则之一是充当专门针对以下领域的标准机构: Cardano 协议并主持对话以更新、添加或更改相关标准 Cardano。如果互联网(标准的产物)通过 IETF 能够就什么达成共识 应该使用核心协议,那么假设有一个专门机构是完全合理的 可以促进相同的结果。
作为结束语,探索将这些讨论转移到去中心化实体是很有趣的 托管在 blockchain 上。这个概念称为去中心化自治组织 (DAO) 该领域的前期工作正在进行中。 IOHK 将开发一个参考 DAO 模型 如果需要,可以与 Cardano 连接的实体进行使用,这是 Cardano 基金会的特权 决定是否根据其标准授权接受它。
Interoperabilidade
A Grande Miopia
As finanças e a ideia mais ampla de comércio são, em última análise, um empreendimento humano. Existem elegantes linguagens, ferramentas extremamente precisas para capturar intenções e labirintos intermináveis de técnicas para conseguir recurso em caso de resultados ruins, bem como milhares de anos de leis buscando equidade no comércio. Na verdade, algumas das primeiras formas de escrita eram contratos comerciais.
No entanto, o elemento humano não pode ser evitado, independentemente da desintermediação da lógica, máquinas ou sentinelas governamentais dotadas de poderes terríveis. É aí que reside o grande miopia das criptomoedas. Eles estão em sua maioria divorciados da realidade humana.
As pessoas cometem erros. As pessoas mudam de ideia. As pessoas nem sempre compreendem completamente o relações comerciais que eles estão concordando em entrar. As pessoas são enganadas e fraudadas. As circunstâncias mudam a nível individual e estadual e exigem soluções únicas. Trabalhando neste ponto, a maioria dos contratos contém cláusulas de força maior.
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 28 de 44
IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
No entanto, as criptomoedas procuram eliminar a compreensão, a compaixão e o julgamento humanos em troca de um juiz digital indiferente, perfeitamente vinculado a uma constituição sem consideração justiça ou resultado. Dado que os humanos sempre tentaram e continuarão a tentar mudar as regras para fins egoístas, é revigorante ter realmente um sistema que não pode ser corrompido.
Mas o que acontece quando um usuário precisa combinar esses novos sistemas com sistemas financeiros tradicionais? sistemas? O que acontece quando alguém precisa viver no mundo humano? Por exemplo, propriedade direitos como o registo de terras vivem inteiramente no mundo físico. Mesmo tokenizing a terra ainda requer algum reconhecimento da jurisdição competente.
Para fornecer outro ponto, uma barra de ouro não pode se mover sozinha. O juiz digital pode comandar seu movimento, mas não pode forçá-lo sem que os humanos o acomodem. Portanto, um livro-razão digital pode afastar-se da realidade.
Assim, um projetista de protocolo precisa decidir quanta realidade humana deve ser permitida em seu criptomoeda. Quanto mais flexibilidade, menos fidelidade ao absoluto se deve esperar. O mais proteção do consumidor, mais mecanismos deverão existir para fornecer reversões, reembolsos e edição da história.
Esta seção e a próxima sobre regulamentação cobrem a abordagem pragmática de Cardano ao tema. Em termos de interoperabilidade, há dois grandes grupos a discutir. Primeiro, a interoperabilidade com sistemas financeiros legados (o mundo sem criptomoeda). Em segundo lugar, a interoperabilidade com outros criptomoedas.
Legado
A Fintech não é composta por um único padrão ou mesmo por uma linguagem comum. Há um tremendo
diversidade de abordagens, as entidades responsáveis pela liquidação e compensação, os negócios
processos e outros domínios envolvidos na contabilidade, transformação e movimentação de
valor.
Não é razoável sugerir que, simplesmente porque uma tecnologia é superior, o resto das
ecossistema irá de alguma forma admitir a derrota e a atualização. Por exemplo, muitas pessoas ainda usam
Windows XP 16 anos após o lançamento inicial. Este triste estado de coisas equivale a alguém
usando o Macintosh original lançado em 1984 no ano 2000.
Deixando de lado o comportamento do consumidor, as empresas geralmente são ainda mais lentas em seu ciclo de atualização. Muitos
os bancos ainda usam back-ends escritos em Cobol. Uma vez que a infraestrutura é conhecida por funcionar e atende
requisitos de negócios, geralmente há pouco incentivo para atualizar ou refinar o software e
protocolos para benefício do consumidor fora de questões de conformidade ou segurança. POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 29 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Para Cardano, primeiro precisamos estabelecer o que uma ponte legada implicaria? Quais sistemas,
padrões, entidades e protocolos que devemos ter como objetivo garantir que haja uma certeza razoável de
interoperabilidade? Essas pontes podem ser federadas ou descentralizadas? Ou como trocas eles vão
tornam-se pontos centrais de falha para hackers, proprietários mal-intencionados ou reguladores excessivamente zelosos?
Há três preocupações que precisam ser abordadas. Primeiro, a representação da informação e
crença em sua precisão. Em segundo lugar, a representação do valor e a propriedade associada. Terceiro,
representação de entidades e de um determinado usuário juntamente com o nível agregado de confiança em tal
entidades.
Para serem úteis, a informação e o valor precisam fluir livremente entre o mundo financeiro legado e
Cardano. Em seguida, os resultados precisam ser estabelecidos e registrados para construir reputação e fundamentos
para recurso. No entanto, essas coisas são principalmente atribuídas, por natureza, aos atores envolvidos. Para codificar
colocá-los em um blockchain os tornaria globais e permanentes.
Além disso, o valor nem sempre pode fluir livremente no mundo legado. Embargos, sanções, capital
controlos e acções judiciais poderiam congelar activos. Para ser interoperável, não se pode criar um
sempre abra a válvula de escape para que o valor vaze.
Por fim, a marca e a reputação das entidades são um dos pilares da gestão comercial. relacionamentos. Bilhões de dólares são gastos anualmente em campanhas de marketing para estabelecer, manter e marcas de reparo. Se forem feitas alegações difamatórias, falsas ou enganosas sobre uma pessoa ou entidade, então eles têm o direito de buscar recursos legais. No entanto, a tentativa de blockchains de preservar permanentemente história.
Assim como nossa escolha de linguagem de programação, não existe uma solução ideal para Cardano resolver essas preocupações de uma forma onipresentemente correta. Em vez disso, temos de ceder à opinião apoiada novamente.
Com relação ao fluxo de informações, esse fluxo é conhecido como feed de dados confiável. Tem uma fonte e conteúdo. As fontes têm alguma noção de credibilidade e incentivo para enganar ou manter honestidade. O conteúdo pode ser codificado arbitrariamente.
Dado que pretendemos oferecer suporte a hardware confiável em nossa pilha de protocolos, optamos por explore a adição de suporte para o Town Crier Protocol do Professor Ari Juel et al. Supondo que existência de um conjunto confiável de fontes de dados, o Town Crier permite a coleta segura de dados da web conteúdo para uso em smart contracts e outros aplicativos.
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 30 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Uma lista inicial de fontes será fornecida pela Emurgo, IOHK e pela Fundação Cardano. Mais tarde esta lista será substituída por uma lista com curadoria da comunidade usando mecânica derivada de Cardano sistema de tesouraria. Nossa esperança é que um sistema de reputação possa se materializar em torno de bons feeds de dados, criando assim um ciclo de feedback positivo para melhorar gradualmente a confiabilidade e a fidelidade.
A representação de valor é um tema mais complexo. Ao contrário da informação – onde uma vez o veracidade, oportunidade e integridade são estabelecidas, os protocolos podem se comportar de maneira confiável e forma determinística – o valor é mais delicado.
Uma vez tokenizado, o valor deve se comportar como um objeto único. As informações podem ser copiadas e repassado, mas um token representando a propriedade de algo (digamos, um título de veículo) não pode ser clonado e negociado em dois livros diferentes. Este ato destruiria efetivamente a integridade do sistema.
O desafio da interoperabilidade legada ao lidar com valor tokenizado é que a confiança suposições, confiabilidade e auditabilidade mudam à medida que tokens fluem entre os livros contábeis. Por exemplo, se Bob possui alguns Bitcoin e depois os deposita em uma exchange, então Bob agora tem o representação da bolsa de seu Bitcoin em seu livro-razão. No caso do MtGOX, o seu livro-razão não se conformam com a realidade, fazendo com que os usuários percam tudo.
O problema é ainda mais complicado pela necessidade de sistemas legados reconhecerem tokens que vivem em uma criptomoeda. Como mencionado anteriormente, as empresas são historicamente resistentes à modernização seu software e suporte a novos protocolos. Esta situação torna difícil ver uma clara solução.
Para Cardano, nossa melhor esperança é fornecer uma opção para os usuários anexarem um rico suprimento de metadados às suas transações e depois esperar que surjam os padrões da indústria para se conectar. Alguns progresso foi feito com o grupo de trabalho Interledger, esforços como R3Cev e iniciativas internacionais mandatos para atualizar antigos protocolos financeiros.
No entanto, o maior desafio continua a ser quantificar e qualificar o valor enviado de um legado sistema para um livro-razão de criptomoeda. Por exemplo, se Bob é dono de um banco e emite um dólar apoiou token, então ele sempre pode construir uma ponte para enviar seus tokens para um livro-razão como Cardano como um ativo emitido pelo usuário.
Embora Cardano rastreie a propriedade com precisão e forneça todos os recursos aos quais chegamos amor, como registro de data e hora e auditabilidade, nenhuma criptomoeda pode fazer de Bob um banqueiro honesto. Ele sempre tem a opção de administrar um banco de reservas fracionárias, não garantindo todo o seu dólar. POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 31 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
tokens com dólares reais. Esta fraude não pode ser detectada por uma criptomoeda, a menos que o dólar em si era um token contabilizado por um livro-razão digital. 25
Finalmente, a representação de entidades online é um problema de rede clássico que remonta ao início dias de internet. Universidades, empresas, departamentos governamentais e quaisquer usuários arbitrários precisam estabelecer sua identidade em algum momento.
Para este fim, soluções pragmáticas mas centralizadas, como a Infraestrutura de Chave Pública da web e O sistema DNS da ICANN foi implementado. Dado que gostamos da web moderna, estes as soluções são escaláveis e práticas. Mas eles não respondem a uma questão mais comercialmente orientada questão de confiabilidade, confiabilidade e outras metacaracterísticas necessárias para determinar se alguém quiser fazer negócios com a entidade.
Os hosts de mercado multifacetados, como o eBay, construíram um modelo de negócios fornecendo alguns desses metadados juntamente com uma estrutura para concluir transações. Julgamentos sobre o a qualidade do conteúdo, eventos e negócios são muitas vezes profundamente influenciadas apenas pelas classificações online de fontes confiáveis. 26
A parte deste ponto relevante para Cardano é uma questão de centralização da reputação. Um dos nossos objetivos para Cardano é fornecer uma pilha financeira para o mundo em desenvolvimento. Uma chave para esse esforço é a capacidade de estabelecer confiança com atores que nunca conhecemos.
Se uma única entidade ou um consórcio de entidades controlar quem é rotulado como bom ou mau, e não uma entidade orgânica processo derivado de interações reais na comunidade como um todo, então essas entidades poderiam arbitrariamente colocar qualquer pessoa na lista negra por qualquer pecado percebido. Este poder é contra nossos valores como projeto e anula o ponto mais amplo de usar uma criptomoeda.
Felizmente, os mesmos mecanismos usados na votação nas cédulas do Tesouro, acrescentando fontes a uma lista de feeds de dados confiáveis e bifurcação de um protocolo podem ser reutilizados para estabelecer um espaço de reputação. É um área aberta de pesquisa e nossa esperança é fornecer um protocolo de sobreposição para um sistema descentralizado reputação da rede de confiança em 2018-2019, depois que mais elementos fundamentais foram resolvidos.
Interoperabilidade de criptomoeda
25 Por outro lado, para os livros digitais, a prova de reserva foi proposta como uma forma inteligente de manter criptomoeda apenas troca honesta. 26 Essas taxas impactam até mesmo a própria criação de conteúdo. Veja esta história interessante sobre como o Rotten Tomatoes impactou a indústria cinematográfica. POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 32 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Passando do mundo legado para livros digitais distribuídos, a interoperabilidade se torna muito mais simples. Cada razão tem um protocolo de rede, padrões de comunicação e premissas de segurança sobre seu respectivo algoritmo de consenso. Estes, por sua vez, podem ser facilmente quantificados.
A circulação de informações é estabelecida conectando-se à rede estrangeira e traduzindo sua mensagens. A movimentação de valor pode ser feita através de um sistema de retransmissão, negociação atômica em cadeia cruzada ou através de um esquema inteligente de cadeias laterais. Como não existe um operador centralizado, é representação de entidades se restringe mais a uma metadiscussão de confiança em desenvolvedores, mineradores ou algum outro corretor de poder.
Para Cardano, estamos integrando um novo protocolo sidechain desenvolvido por Kiayias, Miller e Zindros. Ele fornece uma maneira não interativa de movimentar valor com segurança entre duas cadeias que apoiar o protocolo. Este mecanismo será a principal forma pela qual o valor fluirá entre CSL e um Camada CCL.
Para outras criptomoedas, pontes federadas devem se formar à medida que Cardano cresce em valor e usuário básico. Para ajudar a acelerar esse crescimento, Cardano SL oferece suporte a uma versão restrita do Plutus para scripts de interoperabilidade. Novas transações serão adicionadas no Shelley e em versões posteriores do CSL especificamente para atender a essas necessidades.
O Labirinto de Dédalo
Os pontos sobre a interoperabilidade vêm de uma perspectiva global. Protocolos especializados, novos
tipos de transações, os sistemas para avaliar a credibilidade e o fluxo de informações não podem ter como escopo
apenas um único gatekeeper ou usuário. Em vez disso, devem estar prontamente disponíveis para qualquer pessoa sem
censura ou pedágios.
No entanto, o que acontece quando Cardano não suporta um protocolo, transação ou aplicação que um
o usuário não pode viver sem? Deveríamos simplesmente estar fora do escopo? A web enfrentou uma preocupação semelhante
durante a década de 1990.
Ironicamente, a web oferece duas soluções diferentes que podem ser replicadas com criptomoedas.
A introdução do JavaScript proporcionou programabilidade a qualquer site para adicionar
recursos. A introdução de plug-ins e extensões de navegador adicionou recursos personalizados para
usuários dispostos a instalá-los. Ambas as abordagens nos deram a web moderna juntamente com toda a sua segurança
horrores.
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 33 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Ethereum adotou a abordagem anterior, permitindo que os usuários incorporassem subprotocolos no
Ethereum blockchain como smart contracts. Cardano oferece suporte a esse recurso por meio do CCL
paradigma. Mas e as extensões personalizadas?
Um exemplo elucidativo seria um comerciante de criptomoedas. Imagine um mercado descentralizado,
chamado DM, que suporta um conjunto de diferentes criptomoedas. Um trader deseja automatizar seu
estratégias que atuam no DM.
Num ecossistema fragmentado, o trader teria que instalar dezenas de clientes para cada
criptomoeda e, em seguida, escrever um software personalizado para conversar com cada cliente a fim de coordenar
negociações automatizadas. Se um cliente atualizar, isso poderá danificar o software personalizado. Além disso,
e se o comerciante quiser vender o software?
Inspirado no modelo web de extensões, se a interface para diversas criptomoedas puder ser
puxado para uma pilha da web, a tarefa do trader se torna dramaticamente mais fácil. Um universal
interface pode ser estabelecida. A instalação é um clique. A distribuição de software pode ser modelada
depois da loja virtual do Chrome.
Para Cardano, decidimos experimentar este paradigma implantando nossa referência
front-end da carteira no Electron. É um projeto de código aberto mantido pelo Github que combina
tanto Node quanto Chrome juntos. A construção do Electron de Cardano é chamada Daedalus.
A primeira geração de Dédalo funcionará como uma carteira HD com suporte para muitos dos esperados
27 recursos de contabilidade e segurança que são padrões do setor, como gastar senhas e
BIP39. Nas gerações posteriores, o Daedalus se desenvolverá em uma estrutura de aplicação com uma loja,
APIs de integração universal e um SDK.
As principais inovações são a facilidade de desenvolvimento, permitindo que os programadores usem JavaScript,
HTML5 e CSS3 para construir seus aplicativos e uma ponte unificada para aplicativos cruzados
comunicação. Comportamento complexo, como criptografia, gerenciamento de uma rede distribuída e
a mecânica do banco de dados pode ser abstraída, permitindo assim que o desenvolvedor se concentre apenas no usuário
experiência e a lógica central de sua aplicação.
Como o Daedalus pretende ser uma estrutura universal, seu roteiro e evolução são um tanto
independente de Cardano. Durante 2017 eles estão fortemente acoplados, mas mais tarde Cardano será apenas
outro aplicativo para um usuário Daedalus. Também pretendemos explorar recursos extremamente exclusivos
como um serviço universal de gerenciamento de chaves executado exclusivamente em Intel SGX.
27 Que já está disponível em daedaluswallet.io
POR QUE ESTAMOS CONSTRUINDO CARDANO
Licença Creative Commons Atribuição 4.0 Internacional
Página 34 de 44
IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Em última análise, como criadores de protocolos, não podemos suportar todas as necessidades. A nossa esperança é que a flexibilidade
que a Daedalus fornecerá combinada com smart contracts com estado em execução no CCL irá satisfazer
aqueles deixados de fora por nossas decisões de design. Esperamos também que possam surgir melhores normas para
incentivar todas as criptomoedas a desfrutar de melhor interoperabilidade e segurança.
互操作性
大近视
金融和更广泛的商业理念最终是人类的努力。存在优雅 语言,捕捉意图的极其精确的工具,以及无穷无尽的技术迷宫 在发生不良后果时实现追索以及数千年的法律寻求 贸易公平。事实上,一些最早的书写形式是商业合同。
然而,无论逻辑如何去中介化,人的因素都无法回避, 被赋予可怕权力的机器或政府哨兵。其中蕴含着伟大的 加密货币的近视。它们大多脱离了人类现实。
人们会犯错误。人们改变主意。人们并不总是完全理解 他们同意建立的业务关系。人们被误导和欺骗。 个人和州层面的情况发生变化,需要独特的解决方案。劳累 就这一点而言,大多数合同都包含不可抗力条款。
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 28 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
然而,加密货币试图抛弃人类的理解、同情心和判断力 换取一个冷漠的数字法官,不加考虑地与宪法完美结合 为了公平或结果。鉴于人类一直在尝试并将继续尝试 为了自私的目的改变规则,真正拥有一个不能被破坏的系统是令人耳目一新的。
但是,当用户需要将这些新系统与传统金融融合时会发生什么? 系统?当一个人需要生活在人间时会发生什么?例如,财产 土地登记等权利完全存在于物质世界中。即使token化土地仍然 需要对现有管辖权有所承认。
另外一点是,金条不能自行移动。数字法官可以指挥其 运动,但不能在没有人类适应的情况下强迫它。因此,数字账本可以 偏离现实。
因此,协议设计者需要决定他的协议中应该允许多少人类现实。 加密货币。灵活性越大,对绝对值的忠诚度就越低。的 消费者保护越多,提供回滚、退款的机制就越多 和编辑历史。
本节和下一节有关监管的内容涵盖了Cardano对该主题的务实态度。在 就互操作性而言,有两大类需要讨论。首先,互操作性 遗留金融系统(非加密货币世界)。二、与其他的互操作性 加密货币。
遗产
金融科技不是由单一标准甚至通用语言组成的。有巨大的
方法的多样性、负责结算和清算的实体、业务
流程以及涉及会计、转换和移动的其他领域
值。
仅仅因为一项技术优越,其他技术就认为其他技术优越,这是不合理的。
生态系统会以某种方式承认失败并升级。例如,很多人仍然使用
Windows XP 首次发布 16 年后。这种悲惨的境遇就相当于某人
2000 年使用 1984 年发布的原始 Macintosh。
除了消费者行为之外,企业的升级周期通常甚至更慢。很多
银行仍然使用用 Cobol 编写的后端。一旦知道基础设施可以工作并满足
业务需求,通常没有动力升级或改进软件,
除了合规性或安全问题之外,为了消费者利益而制定的协议。 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 29 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
对于 Cardano,我们首先必须确定遗留桥会带来什么?什么系统,
我们应该以标准、实体和协议为目标,以确保有合理的确定性
互操作性?这些桥梁可以联合还是分散?或者像交换一样,他们会
成为黑客、恶意所有者或过于热心的监管机构的中心故障点?
有三个问题需要解决。首先,信息的表示和
相信其准确性。其次,价值的表示及其相关的所有权。三、
实体的代表以及特定用户的总体信任水平
实体。
为了发挥作用,信息和价值需要在传统金融世界和传统金融世界之间自由流动。
Cardano。然后需要建立并记录结果以建立声誉和基础
寻求追索权。然而,这些事情本质上大多局限于所涉及的参与者。编码
将它们放在 blockchain 上将使它们成为全球性和永久性的。
此外,价值并不总是能够在遗留世界中自由流动。禁运、制裁、资本
控制和司法行动可能会冻结资产。为了实现互操作,不能创建一个
始终打开逃逸阀以防止价值泄漏。
最后,实体的品牌和声誉是商业的基石之一。 关系。每年花费数十亿美元用于营销活动,以建立、维护 和维修品牌。如果对个人或实体提出诽谤、虚假或误导性的主张,则 他们有权寻求法律追索。然而 blockchain 试图永久保存 历史。
就像我们选择的编程语言一样,Cardano也没有理想的解决方案来解决 以普遍正确的方式表达这些担忧。相反,我们必须屈服于支持的意见 再次。
就信息流而言,该流被称为可信数据馈送。它有一个来源 和内容。消息来源有一定的可信度和欺骗或维持动机的概念 诚实。内容可以任意编码。
鉴于我们打算在协议栈中支持可信硬件,我们选择 探索增加对 Ari Juel 教授等人的 Town Crier Protocol 的支持。假设 存在一组可靠的数据源,Town Crier 允许安全地抓取网络 用于 smart contracts 和其他应用程序的内容。
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 30 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
Emurgo、IOHK 和 Cardano 基金会将提供引导源列表。后来 该列表将被社区策划的列表所取代,该列表使用源自 Cardano 的机制 国库系统。我们希望声誉系统能够围绕良好的数据源实现, 从而创建一个正反馈循环,逐步提高可靠性和保真度。
价值的表示是一个更复杂的话题。与信息不同——一旦 建立了准确性、及时性和完整性,协议能够以可靠和可靠的方式运行 确定性方式——价值更加微妙。
一旦 token 化,值的行为应该像一个唯一的对象。信息可以复制并 传递,但代表某物所有权(例如车辆所有权)的 token 不能被传递 在两个不同的分类账上克隆和交易。这一行为将有效地破坏该组织的完整性 系统。
在处理 tokenized 值时,遗留互操作性的挑战在于信任 假设、可靠性和可审计性随着 token 在账本之间的流动而变化。例如,如果 Bob 拥有一些 Bitcoin ,然后将它们存入交易所,那么 Bob 现在就拥有了 交易所在其账本上表示他的 Bitcoin。就 MtGOX 而言,他们的账本确实 不符合实际,导致用户血本无归。
由于遗留系统需要识别居住在其中的 token,问题变得更加复杂。 一种加密货币。如前所述,企业历来抵制升级 他们的软件和支持新协议。这种情况让人很难看清 解决方案。
对于 Cardano,我们最大的希望是为用户提供附加丰富元数据的选项 他们的交易,然后等待行业标准的出现。一些 Interledger 工作组、R3Cev 和国际组织等的努力已经取得了进展 强制升级旧的金融协议。
然而,更大的挑战仍然是量化和限定遗产所带来的价值 系统到加密货币分类账。例如,如果鲍勃是银行老板并发行一美元 支持 token,那么他总是可以建立一座桥梁,将他的 token 发送到像 Cardano 这样的分类账,作为 用户发行的资产。
虽然 Cardano 会精确跟踪所有权并提供我们所掌握的所有功能 喜欢诸如时间戳和可审计性之类的东西,没有加密货币可以使鲍勃成为诚实的银行家。 他总是可以选择通过不支持所有美元来运营部分储备银行 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 31 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
tokens 用真实的美元。这种欺诈行为无法被加密货币检测到,除非美元 本身是一个由数字分类账记录的 token 。 25
最后,在线实体的表示是一个可以追溯到早期的经典网络问题 互联网的日子。大学、企业、政府部门及任意用户 需要在某个时候确定自己的身份。
为此,实用而集中的解决方案,例如网络的公钥基础设施和 ICANN的DNS系统已经实施。鉴于我们喜欢现代网络,这些 解决方案既可扩展又实用。但他们并没有回答更商业化的问题 可靠性、可信度和确定所需的其他元特征的问题 如果有人想与该实体开展业务。
像 eBay 这样的多边市场主机已经构建了一个商业模式,提供一些 这些元数据与框架一起完成交易。关于的判断 内容、活动和业务的质量往往仅受在线评级的深刻影响 来自可信来源。 26
这一点与 Cardano 相关的部分是声誉集中化问题。其中之一 我们的 Cardano 目标是为发展中国家提供金融堆栈。这项努力的关键 是一种与素未谋面的演员建立信任的能力。
如果单个实体或实体联盟控制谁被贴上好或坏的标签,而不是有机组织 源自整个社区的实际互动的过程,那么这些实体可以 任意将任何人因任何被认为有罪的人列入黑名单。这种权力违背了我们作为一个项目的价值观 并违背了使用加密货币的更广泛的观点。
幸运的是,与财政部选票投票所使用的机制相同,将来源添加到列表中 可信数据源和分叉协议可以被重用来建立信誉空间。它是一个 开放的研究领域,我们希望为去中心化的网络提供覆盖协议 在更多基本要素得到解决后,2018-2019 年将建立信任信誉网。
加密货币互操作性
25 另一方面,对于数字账本来说,储备证明被认为是一种聪明的保存方式。 加密货币只进行诚实的交换。 26 这些费率甚至会影响内容本身的创作。请参阅烂番茄上这个有趣的故事 影响了电影界。 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 32 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
从传统世界转向分布式数字账本,互操作性变得更加简单。 每个账本都有一个网络协议、通信标准和安全假设 关于其各自的共识算法。这些又可以很容易地量化。
信息的流动是通过连接到外部网络并翻译其信息来建立的 消息。价值的移动可以通过中继系统、原子跨链交易来完成 或者通过巧妙的侧链方案。由于没有一个中心化的运营商, 实体的代表更多地局限于对开发商、矿工或开发商的信任的元讨论 其他一些权力掮客。
对于 Cardano,我们正在集成由 Kiayias、Miller 和 辛德罗斯。它提供了一种在两条链之间安全转移价值的非交互方式 支持该协议。该机制将成为价值在 CSL 和金融机构之间流动的主要方式。 覆铜板层。
对于其他加密货币,随着 Cardano 价值和用户的增长,应形成联合桥 基地。为了帮助加速这一增长,Cardano SL 支持 Plutus 的受限版本 互操作性脚本。新交易将添加到 Shelley 和更高版本的 CSL 中 专门为了满足这些需求。
代达罗斯迷宫
关于互操作性的观点来自全球视角。专业协议,新
交易类型、评估可信度的系统和信息流不能局限于
只有一个网守或用户。相反,它们必须可供任何人随时使用,无需
审查制度或通行费。
然而,当 Cardano 不支持协议、交易或应用程序时会发生什么?
用户离不开?我们应该超出范围吗?网络也面临着类似的担忧
20世纪90年代。
讽刺的是,网络提供了两种可以用加密货币复制的不同解决方案。
JavaScript 的引入提供了可编程性,可以向任何网站添加任意内容
特点。浏览器插件和扩展的引入添加了自定义功能
用户愿意安装它们。这两种方法都为我们提供了现代网络及其安全性
恐怖。
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 33 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
Ethereum 采用了前一种方法,允许用户在
Ethereum blockchain 为 smart contracts。 Cardano 通过 CCL 支持此功能
范式。但是自定义扩展呢?
一个说明性的例子是加密货币交易员。想象一个去中心化的市场,
称为 DM,支持一组不同的加密货币。交易者想要自动化他的交易
作用于 DM 的策略。
在分散的生态系统中,交易者必须为每个客户端安装数十个客户端。
加密货币,然后编写自定义软件与每个客户对话以进行协调
自动化交易。如果一个客户端更新,则可能会破坏定制软件。此外,
如果交易者想出售该软件怎么办?
受扩展网络模型的启发,如果各种加密货币的接口可以
拉入网络堆栈中,那么交易者的任务就会变得非常容易。通用型
可以建立接口。一键安装。软件的分布可以建模
Chrome 网上应用店之后。
对于 Cardano,我们决定通过部署我们的参考来试验这种范例
Electron 上的钱包前端。它是一个由 Github 维护的开源项目,结合了
Node 和 Chrome 一起。 Cardano 的 Electron 版本称为 Daedalus。
第一代代达罗斯 将充当 HD 钱包,支持许多预期的功能
27 号 符合行业标准的会计和安全功能,例如支出密码和
BIP39。在后世,Daedalus将发展成为一个带有商店的应用框架,
通用集成 API 和 SDK。
关键的创新是通过允许程序员使用 JavaScript 来简化开发,
HTML5和CSS3构建他们的应用程序和跨应用程序的统一桥梁
沟通。复杂的行为,例如密码学、管理分布式网络和
数据库机制可以被抽象出来,从而让开发人员只关注用户
经验及其应用的核心逻辑。
由于 Daedalus 旨在成为一个通用框架,因此它的路线图和演变在某种程度上是
独立于 Cardano 的。 2017 年期间,它们紧密耦合,但稍后 Cardano 将只是
Daedalus 用户的另一个应用程序。我们还打算探索极其独特的功能
例如仅在 Intel SGX 中运行的通用密钥管理服务。
27 已在 daedaluswallet.io 上提供
我们为何构建卡尔达诺
知识共享归属 4.0 国际许可证
第 34 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
最终,作为协议设计者,我们无法支持所有需求。我们的希望是灵活性
Daedalus 将提供的与在 CCL 上运行的有状态 smart contract 相结合将满足
那些被我们的设计决策遗漏的。我们也希望能够出现更好的标准
鼓励所有加密货币享有更好的互操作性和安全性。
Regulamento
A falsa dicotomia
Por mais inconstante e misteriosa que a regulamentação possa muitas vezes ser, pode-se inferir metaforicamente uma elegante ciclo narrativo dos corruptos e seus promotores em busca de justiça. Os regulamentos são o kit de ferramentas de o legislador. Mas, como todas as ferramentas, elas podem ser rudimentares, antigas ou simplesmente mal utilizadas.
As criptomoedas não mudaram a condição humana nem o ciclo narrativo. Sempre haverá ser fraudes, maus atores e resultados terríveis, apesar das melhores intenções. Enquanto as criptomoedas podem remover o julgamento humano, mas não podem remover o comportamento humano.
Um designer de criptomoeda deve se posicionar sobre qual kit de ferramentas ele oferecerá ao regulador corrigir eventos ruins. O desafio único que as criptomoedas enfrentam é que elas são um produto de fracasso regulatório e monetário. 28
Culturalmente, muitos envolvidos em criptomoedas consideram a ação do governo corrupta, inepta ou ineficaz. Portanto, eles têm pouco respeito, paciência ou desejo de endossar um backdoor especial para um regulador ou homem da lei corrigir erros. Este ato seria um anátema para todo o propósito da criptomoedas.
Por outro lado, contando as falhas cambiais e os acontecimentos históricos, mais de 10 por cento dos Bitcoin foi perdido ou roubado desde que o protocolo começou em 3 de janeiro de 2009. Em 30 de junho, Em 2017, o valor perdido ou roubado chega a pouco mais de US$ 4 bilhões. E esse número não leva em conta para Bitcoin e outros tokens perdidos em golpes e ICOs mal formados.
28 Na verdade, Satoshi incorporou no Bitcoin Genesis Block a seguinte manchete retirada do The Times: The Times 03/Jan/2009 Chanceler à beira do segundo resgate aos bancos POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 35 de 44
IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Depois, há a questão da privacidade. Numa escala macro, o valor flui através de canais especializados que são regulamentados, ricos em metadados e monitorados ativamente pelas autoridades policiais, governos e reguladores internacionais. É um jogo bem compreendido, com vazamentos ocorrendo apenas no lado do dinheiro, que tem diminuído gradualmente à medida que o mundo migra para o dinheiro digital.
29
O paradigma, se as criptomoedas não existissem, pareceria ser um mundo que trata cada vez mais privacidade financeira, como conteúdo de mídia social. Não há nenhum e não se pode optar por sair. Daí nós temos um dilema que produz uma aparente dicotomia.
Um designer de criptomoeda pode renunciar a princípios e ceder a qualquer demanda que seu local jurisdição atribui ao seu código, comprometendo assim a privacidade e a integridade de seus usuários. Ou ele pode adotar uma filosofia mais baseada em princípios, mas anarquista, que se divorcie da melhores práticas e leis atuais.
Para Cardano, sentimos que esta narrativa é uma falsa dicotomia provocada pela falta de imaginação. O a realidade é que a maioria dos utilizadores não está preocupada com as regras existentes para os mercados. Eles geralmente são preocupado com mudanças repentinas nas regras para beneficiar um ou mais atores. Eles estão preocupados sobre a falta de transparência sobre quem recebe privilégios especiais.
Precisamos distinguir entre direitos individuais e de mercado. Dado que as criptomoedas têm um alcance global, os direitos precisam ser tão orientados quanto possível para o usuário.
A privacidade deve ser razoável e estar sob o controle do usuário, e não de um guardião. O fluxo de valor deveria ser irrestrito. O valor não deve estar sujeito a perda repentina sem consentimento.
Do ponto de vista do mercado, o mercado precisa ser transparente sobre o uso de dados, como os fundos serão administrados internamente e todos precisam seguir o mesmo conjunto de regras. Além disso, uma vez que o usuário tenha consentido, ele não poderá mudar de ideia repentinamente devido a inconveniente. As contrapartes também precisam de certeza.
Mas como exatamente alguém passa do sistema abstrato para um sistema real? O que deveria algo prático e legal? Dividimos nossa solução em três categorias: metadados, autenticação e conformidade, bem como DAOs de mercado.
29 O leitor deve considerar adquirir um exemplar de The End of Money, de David Wolman. Ele cobre o movimento internacional rumo ao desaparecimento do dinheiro. POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 36 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Metadados
O ato de algo muitas vezes pode ser menos interessante do que os metadados que o rodeiam. Para por exemplo, dirigir de Denver a Boulder é uma atuação. Dirigindo de Denver a Boulder em uma Ferrari 488 a uma média de 120 MPH são metadados. Certamente isso infere uma experiência diferente daquela em um Toyota Prius a uma média de 30 MPH.
As transações financeiras não são diferentes. O contexto que os rodeia é extraordinariamente importante para economistas, autoridades fiscais, autoridades policiais, empresas e outras entidades. Infelizmente em nosso atual sistema baseado em moeda fiduciária, a maioria dos consumidores nunca vê quão ricos em metadados seus são as transações ou com quem elas são compartilhadas. 30
Para Cardano, reconhecemos que os usuários podem precisar ou são legalmente obrigados a compartilhar metadados transacionais com determinados atores, como autoridades fiscais. Mas acreditamos que esta partilha tem que estar com o consentimento do usuário.
Também acreditamos que os sistemas blockchain têm um tremendo poder para eliminar fraudes, desperdícios e abuso, fornecendo auditabilidade, registro de data e hora e imutabilidade. Assim, alguns metadados devem ser postado em Cardano blockchain.
A parte difícil é encontrar um equilíbrio correto que não condene o nosso blockchain a substanciais inchaço. Dada esta preocupação, optámos por uma abordagem pragmática.
Primeiro, a Daedalus suportará durante os próximos 12 meses uma grande variedade de recursos para rotular transações e atividades financeiras. Esses metadados podem ser exportados e compartilhados sob demanda com quem o usuário julgar necessário. Além disso, os dados podem ser operados por terceiros aplicações para fins específicos de domínio (por exemplo, contabilidade fiscal).
Em segundo lugar, estamos explorando a adição de suporte para endereços especiais que podem incluir hashes e campos criptografados. Esta estrutura permitiria que um usuário postasse metadados em nosso blockchain sem revelando-o publicamente. Mas se ela quiser compartilhar os dados, isso traria toda a auditabilidade, imutabilidade e garantia de carimbo de data/hora de que uma transação desfruta.
30 Numa escala mais macro, o autor Juan Zarate escreve sobre como estes dados são utilizados pelo Tesouro dos EUA Departamento na guerra ao terrorismo na Guerra do Tesouro. Ele fornece uma visão abrangente de como o a actual estrutura dos mercados financeiros globais pode ser usada para fins geopolíticos. POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 37 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Já implantamos uma estrutura de endereço que contém um campo de atributo. Atualmente é sendo usado para armazenar uma cópia criptografada da estrutura das árvores da carteira HD para recuperação rápida da carteira (consulte Documentação da Carteira HD). Versões posteriores generalizarão esta construção.
Autenticação e Conformidade
Intimamente ligados às transações estão os temas do direito de realizar transações e da propriedade dos fundos. Por exemplo, embora possa haver fundos suficientes para comprar algo (por por exemplo, álcool), poderá haver restrições à sua compra (requisitos de idade).
A propriedade e a origem dos fundos normalmente dependem do conhecimento dos regulamentos do cliente. Quando uma empresa de serviços financeiros, como um banco ou uma bolsa, abre uma conta para um novo cliente, geralmente é necessário coletar fatos básicos sobre o cliente e onde ele adquiriu seus fundos de.
O desafio tecnológico é que no processo de apresentação deste documento legalmente exigido informações, o usuário que as envia não tem garantia de como elas serão utilizadas, armazenadas e se algum dia serão destruído. As informações de conformidade são comercialmente valiosas. Pode ser roubado para roubo de identidade ou revendido onde os regulamentos permitirem.
Para Cardano, queremos inovar o máximo possível. No lado do software dos protocolos, há é pouco para fornecer uma garantia de que o receptor da informação de conformidade se comportará dentro de um âmbito da conduta. Entretanto, no lado do hardware dos protocolos, usando hardware confiável, pode-se aproveitar o Intel SGX e outros HSMs para aplicar determinadas políticas.
Assim, estamos explorando o uso de Provas de Vidro Selado juntamente com uma política de compartilhamento para permitir a segurança transmissão de informações de conformidade a um verificador que, por sua vez, é forçado a cumprir as políticas sob as quais foi transmitido. Acreditamos que tanto as normas uniformes poderão surgir como também que este método reduzirá o risco para os verificadores, evitando a perda de dados do cliente de hackers.
Como corolário deste esforço, o modelo em camadas que propomos para Cardano separando valor de a computação também pode se beneficiar dessa abordagem. Se a camada de computação for executada por entidades (por exemplo, bolsas ou cassinos), então elas precisariam realizar verificações de conformidade e potencialmente impor a política tributária aos usuários.
Usando SGPs, o usuário pode enviar fundos junto com informações de identificação pessoal sem preocupação de que vaze para a Internet em geral ou seja preservado pelos nós de consenso do POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 38 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
camada de computação. Além disso, a camada de computação ganharia a certeza de que todos os usuários transações são autenticadas e legítimas.
Este paradigma permite também a portabilidade de clientes entre entidades reguladas. As trocas poderiam transferir saldos e contas para clientes instantaneamente através desses canais seguros e também - onde as políticas permitirem – compartilhe dados com os reguladores.
Esperamos que o nosso primeiro teste beta desta tecnologia seja realizado em meados de 2018 com o objetivo rumo à integração de Cardano no final de 2018 ao início de 2019, aguardando resultados de pesquisa. Esta linha do tempo também assume a capacidade de colaborar com ARM e Intel para obter código assinado para execução em seu hardware. 31 Mercado DAOs
As duas seções anteriores cobriram a geração e movimentação de informações assumindo o existência de algum sistema externo. Para garantir a interoperabilidade legada, esses recursos sempre serão ser necessário, mas não abordam a regulamentação baseada em blockchain.
Os contratos inteligentes permitem um tipo completamente novo de sistema comercial onde os relacionamentos são determinista, auto-aplicável e livre de ambiguidade. Eles, por sua vez, podem ser usados para criar regras para mercados, incluindo estruturas arbitrariamente complexas, como arbitragem, reembolsos orientados por eventos, e revelação de fatos em condições especiais.
Chamamos essas smart contract estruturas impostas de Marketplace DAOs. Eles não exigem suporte de protocolo especial nem mutabilidade para ser incorporado no livro-razão. Na verdade, eles podem ser totalmente construído usando uma coleção de smart contracts interdependentes.
O conceito arquitetônico é projetar uma coleção de templates comerciais inspirados em direito contratual e melhores práticas empresariais. Esses modelos podem ser conectados ao desenvolvedor smart contract para impor padrões específicos ao mercado.
Por exemplo, digamos que um desenvolvedor queira emitir um ERC20 token no CCL para realizar um crowdsale. Um O mercado DAO pode ser estabelecido especificamente para vendas coletivas e seus termos e condições parametrizado ou mesmo aplicado por padrões voluntários ou legais. Coisas como reembolsos, a realocação de fundos ou o congelamento de pagamentos podem ser herdados no ERC20 do desenvolvedor contrato.
31 Consulte a Política de Licença Comercial Intel SGX POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 39 de 44
IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Este esforço nos permite ter uma discussão macro sobre como um mercado deve ser controlado a fim de garantir a protecção do consumidor. Em segundo lugar, podemos discutir como modelar transações em um maneira de garantir automaticamente proteção legal e direitos dentro de jurisdições específicas, como Nova Hampshire.
Trabalhando com a Fundação Cardano, IOHK e outras entidades, o projeto Cardano criará um biblioteca de referência do Marketplace DAOs para uso dos desenvolvedores smart contract. Nossa esperança é que mercados regulatórios e de seguros podem se formar em torno desses DAOs e que eles serão auto-evolutiva com base em resultados.
规定
错误的二分法
尽管监管往往是反复无常和神秘的,但人们可以隐喻地推断出一种优雅的 腐败者及其检察官寻求正义的叙事循环。法规是工具包 法律使者。但与所有工具一样,它们可能很粗糙、陈旧,或者只是被滥用。
加密货币并没有改变人类的状况或叙事循环。总会有 尽管本意是好的,但仍可能是骗局、不良行为者和可怕的结果。同时 加密货币可以消除人类的判断,但不能消除人类的行为。
加密货币设计者必须就他将为监管机构提供哪些工具包表明立场 纠正不良事件。加密货币面临的独特挑战是它们是以下产品的产物: 监管和货币失灵。 28
从文化角度来看,许多加密货币人士认为政府行为是腐败、无能或 无效。因此,他们没有多少尊重、耐心或意愿来支持特殊的后门 监管者或执法者纠正错误。这种行为将违背整个目的 加密货币。
另一方面,如果算上交易所失败和历史事件,超过 10% 自 2009 年 1 月 3 日协议启动以来,Bitcoin 已丢失或被盗。截至 6 月 30 日, 2017 年,丢失或被盗的价值略高于 40 亿美元。而这个数字并没有考虑到 Bitcoin 和其他 token 因诈骗和结构不良的 ICO 而损失。
28 事实上,中本聪在 Bitcoin 创世区块中嵌入了以下摘自《泰晤士报》的标题: 《泰晤士报》 2009 年 1 月 3 日财政大臣濒临第二次银行救助 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 35 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
然后是隐私问题。从宏观来看,价值通过专门的渠道流动 受到监管、拥有丰富的元数据并受到执法部门、政府的积极监控 和国际监管机构。这是一个很好理解的游戏,泄漏仅发生在 随着世界转向数字货币,现金方面逐渐减少。
29
如果加密货币不存在的话,这个范式似乎会是一个越来越多地对待加密货币的世界。 财务隐私,如社交媒体内容。没有,也没有人可以选择退出。因此我们 陷入两难境地,产生明显的二分法。
加密货币设计者可以放弃原则并屈服于当地的任何要求 司法管辖区对其代码施加影响,从而损害其隐私和完整性 用户。或者他可以采用一种更有原则性但无政府主义的哲学,这种哲学与 当前的最佳实践和法律。
对于Cardano,我们认为这种叙述是由于缺乏想象力而造成的错误二分法。的 现实情况是,大多数用户并不关心市场现有的规则。他们通常是 担心规则突然改变以使一个或多个参与者受益。他们很担心 关于谁获得特权缺乏透明度。
我们需要区分个人权利和市场权利。鉴于加密货币具有 为了实现全球影响力,权利需要尽可能以用户为导向。
隐私应该是合理的,并且由用户而不是看门人控制。价值的流动 应该是不受限制的。未经同意不得突然没收价值。
从市场角度来看,市场需要对数据的使用、如何使用保持透明。 资金将在内部处理,每个人都需要遵守同一套规则。此外, 一旦用户同意,他们就不能突然改变主意 不便。交易对手也需要确定性。
但究竟如何从抽象系统转向实际系统呢?应该有什么 实用又合法是什么样的?我们将解决方案分为三类:元数据、 身份验证和合规性以及市场 DAOs。
29 读者应该考虑买一本大卫·沃尔曼(David Wolman)的《金钱的终结》(The End of Money)。它涵盖了 现金消失的国际趋势。 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 36 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
元数据
某件事的行为往往不如它周围的元数据那么有趣。对于 例如,从丹佛开车到博尔德就是一种行为。驾驶法拉利从丹佛到博尔德 平均时速 120 英里的 488 是元数据。当然,这意味着与在 丰田普锐斯平均时速 30 英里。
金融交易也不例外。他们周围的环境非同寻常 对经济学家、税务机关、执法部门、企业和其他实体很重要。可悲的是 在我们当前基于法币的系统中,大多数消费者从来没有看到他们的元数据有多么丰富 交易是或与谁共享。 30
对于 Cardano,我们承认用户可能需要或法律要求共享 与税务机关等某些参与者的交易元数据。但我们相信这种分享必须 须经用户同意。
我们还相信 blockchain 系统具有消除欺诈、浪费和 通过提供可审计性、时间戳和不变性来滥用。因此一些元数据应该是 发布到 Cardano blockchain。
困难的部分是找到一个正确的平衡,不会使我们的 blockchain 变得实质性 膨胀。考虑到这种担忧,我们选择了务实的做法。
首先,Daedalus 将在未来 12 个月内支持大量要标记的功能 交易和金融活动。这些元数据可以按需导出和共享 用户认为有必要的人。此外,数据可以由三方操作 用于特定领域目的的应用程序(例如税务会计)。
其次,我们正在探索添加对特殊地址的支持,这些地址可以包括 hashes 和 加密字段。此结构将允许用户在我们的 blockchain 上发布元数据,而无需 公开揭露它。但如果她想分享数据,它将带有所有的可审计性, 交易享有的不变性和时间戳保证。
30 在更宏观的层面上,作者 Juan Zarate 撰写了美国财政部如何使用这些数据的文章 财政部战争中的反恐战争。它提供了关于如何 当前的全球金融市场结构可用于达到地缘政治目的。 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 37 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
我们已经部署了一个包含属性字段的地址结构。目前是 用于存储 HD 钱包树结构的加密副本,以实现快速钱包恢复(请参阅 HD 钱包文档)。以后的版本将推广这种结构。
认证与合规性
与交易密切相关的是交易权和交易权的主题。 资金所有权。例如,虽然可能有足够的资金来购买某些东西(例如 例如酒精),其购买可能有限制(年龄要求)。
资金的所有权和来源通常是了解客户法规的前提。 当银行或交易所等货币服务企业为新客户开设账户时, 通常需要收集有关客户及其资金来源的基本事实 从。
技术挑战在于,在提交法律要求的过程中 信息,发送该信息的用户无法保证该信息将如何使用、存储以及是否会被使用 被毁了。合规信息具有商业价值。它可能因身份盗窃而被盗 或在法规允许的情况下转售。
对于 Cardano,我们希望尽可能地创新。在协议的软件方面,有 几乎无法保证合规信息的接收者将在规定的范围内行事 行为范围。然而,在协议的硬件方面,使用可信硬件,人们可以 利用英特尔 SGX 和其他 HSM 来执行某些策略。
因此,我们正在探索使用密封玻璃校样以及共享政策,以确保安全 将合规信息传输给验证者,而验证者又被迫遵守 其传输依据的政策。我们相信统一标准可能会出现并且 此外,这种方法将通过防止客户数据丢失来降低验证者的风险 黑客。
作为这项工作的必然结果,我们为 Cardano 提出的分层模型将价值与 计算也可以从这种方法中受益。如果计算层由受监管的 实体(例如交易所或赌场),那么他们需要进行合规检查和 可能对用户实施税收政策。
使用 SGP,用户可以发送资金以及个人身份信息,而无需 担心它会泄漏到更广泛的互联网或被共识节点保存 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 38 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
计算层。此外,计算层将获得所有用户的确定性 交易经过验证且合法。
这种范例还允许客户在受监管实体之间进行可移植。交易所可以 通过这些安全渠道立即为客户转移余额和账户,并且 - 在政策允许的情况下——与监管机构共享数据。
我们预计该技术的首次 Beta 测试将于 2018 年中期进行,目标是 2018 年末至 2019 年初的 Cardano 整合尚待研究结果。这个时间线 还假设能够与 ARM 和 Intel 合作,以便获得可以在其上运行的代码 他们的硬件。 31 市场 DAOs
前两节介绍了信息的生成和移动,假设 某些外部系统的存在。为了确保传统的互操作性,这些功能将始终 是必要的,但它们没有涉及基于 blockchain 的监管。
智能合约实现了一种全新的商业系统,其中关系是 确定性的、自我执行的、没有歧义的。它们又可以用来创建规则 市场包括任意复杂的结构,例如仲裁、事件驱动的退款、 并在特殊条件下披露事实。
我们将这些 smart contract 强制结构称为市场 DAO。他们不需要 特殊协议支持或嵌入账本的可变性。事实上,他们完全可以 使用相互依赖的 smart contract 集合构造。
建筑理念是设计一系列商业模板,灵感来自于 合同法和商业最佳实践。这些模板可以连接到开发人员的 smart contract 在市场上执行特定标准。
例如,假设开发者想要在 CCL 上发行 ERC20 token 来进行众筹。一个 可以专门为众筹及其条款和条件建立市场 DAO 由志愿者或法律标准参数化甚至强制执行。诸如退款之类的事情, 资金重新分配或冻结付款可以在开发商的ERC20中继承 合同。
31 请参阅英特尔 SGX 商业许可政策 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 39 页,共 44 页
IOHK |我们为何构建 CARDANO | 2017/06/28
这项工作使我们能够对如何控制市场进行宏观讨论 以确保消费者保护。其次,我们可以讨论如何对交易进行建模 自动确保特定管辖范围内的法律保护和权利的方式,例如 新罕布什尔州。
Cardano 项目将与 Cardano 基金会、IOHK 和其他实体合作,创建一个 Marketplace DAOs 的参考库,供 smart contract 开发人员使用。我们的希望是 保险和监管市场可以围绕这些 DAO 形成,并且它们将 基于结果的自我进化。
Sustentabilidade
Um imersão em o criptomoeda área rendimentos muitos conceitual contradições.
As criptomoedas são projetadas para serem difíceis de mudar, mas, como toda tecnologia, elas precisam
mudança para resolver falhas e avanços de design. Blockchains têm como objetivo prevenir
centralização, mas exigem atores fortes para liderar mudanças ou manter o código.
Talvez a experiência mais frustrante ocorra quando há deficiências claras que a maioria
as partes interessadas concordam que precisam de ser corrigidas, mas não é possível surgir consenso sobre o caminho a seguir.
O debate sobre o tamanho do bloco de Bitcoin tem sido uma questão ativa há mais de dois anos. Diariamente,
transações totalizando mais de um bilhão de dólares estão pendentes porque a rede está em sua capacidade máxima.
Se a alteração de um parâmetro simples — mesmo na presença de soluções temporárias — não puder ser
coordenados, então como podem as empresas e os governos sentirem-se confortáveis em investir milhares de milhões de
dólares para construir infraestrutura sobre esses sistemas? Aliás, como pode alguém
as empresas apostam no risco estratégico de integrar protocolos isentos de responsabilidade que não podem
fazer atualizações de design racionais?
Olhando para trás na história, a evolução da Internet seguiu um padrão semelhante, mesmo com
mudanças simples, como a transição do IPv4 para o IPv6, levam décadas para serem concretizadas. No entanto, há um
forte contraste entre a tecnologia blockchain e a Internet, pois seguem uma linha muito
estilo diferente de custódia.
A internet foi um projeto militar que cresceu da DARPA para círculos acadêmicos com forte
apoio governamental e um conjunto bem definido de guardiões iniciais. A internet cresceu sob
condições não comerciais, sem as maquinações da influência corporativa tentando
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 40 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
monopolizar a rede. Na verdade, o comércio eletrónico violou a NSF AUP até ser revogada em
Na época em que as empresas tiveram o luxo de comercializar a Internet, já existia um
forte conjunto de padrões, princípios e adeptos evangelísticos. Isso não impediu empresas como
AOL e Microsoft de tentarem construir jardins murados e criarem tecnologia proprietária como
ActiveX. Esta base não impediu que os intervenientes da próxima geração, como a Google, promovessem
suas próprias agendas, dadas as suas enormes bases de usuários e capitalizações.
Com enxames de aluguéis atores, de comerciantes a mineradores, as criptomoedas são a última palavra
32 ecossistemas com motivação comercial. Dado esse fundamento, a evolução da custódia de
criptomoedas resultou na otimização em torno do interesse próprio.
Por exemplo, a mineração sem validação está começando a ocorrer com mais frequência, pois melhora o desempenho do minerador.
margem de lucro, mas isso ignora completamente todo o propósito e utilidade da mineração. Mineração
a centralização já ocorreu com apenas um punhado de atores no controle da maioria dos
Poder hash de Bitcoin.
Assim como a Internet, as criptomoedas exigem consenso para mudar. Mas quando tão rápido
ocorre a centralização do poder para um punhado de corretores, o que acontece quando a mudança não é
conveniente para eles?
Ao contrário da Internet, a inicialização da maioria das criptomoedas não é feita de forma altruísta.
meios não comerciais ou acadêmicos. Desde o início, algum grupo procura obter ganhos e
existem corretores de poder designados para ajudar a garantir esses ganhos.
A centralização fundadora é uma realidade que cada criptomoeda deve enfrentar em sua evolução. Nós
não pode escapar totalmente, mas deve pelo menos tentar conceber em torno da descentralização gradual.
Para Cardano, pensamos cuidadosamente sobre quais fatores promovem a centralização e quais
técnicas poderia ser aplicado para incentivar nosso protocolo a se tornar gradualmente público
infraestrutura como a web.
Nós totalmente admitir isso total descentralização é ambos impossível e talvez mesmo
contraproducente. No entanto, certos factores podem ser encorajados para produzir um sistema mais equilibrado.
Primeiro, embora a custódia centralizada dos fundos de crowdsale permita um desenvolvimento ágil e rápido
do protocolo durante os primeiros dias, eventualmente o financiamento terá que diversificar e a velocidade de
32 Veja link para mais informações sobre este termo POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 41 de 44IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
o desenvolvimento precisa de regressar a um ritmo mais sistemático e deliberado. Seguindo este ponto,
o financiamento precisa evitar preconceitos culturais, linguísticos e geográficos.
Em segundo lugar, à medida que a comunidade se torna mais informada sobre a natureza subjacente do
tecnologia da criptomoeda, as decisões sobre o roteiro não podem ser centralizadas em um conjunto de
desenvolvedores principais ou fundação. É necessário haver um método baseado em blockchain para propor,
verificação e promulgação de alterações no protocolo.
Terceiro, os incentivos por trás da manutenção do Cardano SL blockchain devem estar diretamente alinhados
com os desejos agregados de todos os usuários. Não podemos permitir que uma conspiração de actores especializados
emergem aqueles que são independentes da vontade da comunidade maior.
Para o primeiro princípio, optamos por integrar um sistema de tesouraria em Cardano. Para o
segundo, implantaremos um processo formal para propor Cardano Propostas de Melhoria por meio de um
sistema coordenado pela própria CSL. Para o terceiro, acreditamos que a Ouroboros oferece um ambiente elegante
solução.
Mais detalhes poderiam ser fornecidos sobre os tópicos acima, mas eles são extensos por si só e
além do escopo de um documento de pesquisa. O projeto do mecanismo é um dos mais complexos e
campos acadêmicos interdependentes com teoria incompleta e nenhum modelo canônico sólido para se sustentar
ligado.
Em vez disso, a nossa abordagem orientada pela ciência descrita na secção dois serve-nos bem aqui. Veritas da IOHK
equipe está trabalhando em parceria com um grupo de pesquisadores da Lancaster University sob o
direção do Professor Bingsheng Zhang para desenvolver o modelo de tesouraria de referência de Cardano. Com
objetivo de integração em 2018, esperamos uma publicação dedicada revisada por pares até o final de
Para descrição formal e verificação de alterações em um protocolo de criptomoeda, este tópico é o
menos compreendido, pois requer noções ontológicas, bem como um mecanismo para incentivar
ampla participação. Talvez alguma forma de processo democrático representativo possa surgir ou
uso de feedback líquido para fornecer votação mais racional.
Esperamos que a pesquisa nesta direção consuma a maior parte do envolvimento formal da IOHK no
desenvolvimento de Cardano . Como ponto de partida, iremos implantar juntamente com a tesouraria de referência
33 modelar vários mecanismos para capturar o consentimento. Mais estudos são necessários para uma definição definitiva
solução.
33 IOHK é contratado para construir Cardano até o final de 2020 POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 42 de 44
IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Por fim, o trabalho para melhorar os incentivos ao Ouroboros está sendo supervisionado pelo professor Elias
Koutsoupias da Universidade de Oxford. Depois que os fundamentos criptográficos do Ouroboros forem
solidificado junto com todo o trabalho de escalabilidade necessário, um estudo mais amplo de títulos, penalidades e exóticos
incentivos serão adicionados ao protocolo de referência.
可持续发展
安 沉浸式 进入 的 加密货币 面积 产量 许多 概念性的 矛盾。
加密货币被设计为难以改变,但是,像所有技术一样,它们需要
进行更改以解决设计缺陷和改进。区块链旨在防止
集中化,但需要强大的参与者来领导变更或维护代码。
也许最令人沮丧的经历是当大多数人都存在明显的缺陷时。
利益相关者一致认为需要纠正,但无法就前进的道路达成共识。
Bitcoin 的区块大小争论已经成为两年多以来的一个活跃问题。每日,
由于网络处于峰值容量,总计超过 10 亿美元的交易正在等待处理。
如果改变一个简单的参数——即使存在临时解决方案——也不能
协调一致,那么企业和政府如何放心投资数十亿?
在这些系统之上建设基础设施的资金?就此而言,怎么可能
企业将赌注押在整合无责任协议的战略风险上,而这些协议无法
进行合理设计升级?
回顾历史,互联网的发展也遵循着类似的模式,甚至
像从 IPv4 到 IPv6 的过渡这样的简单变化需要几十年才能实现。然而有一个
blockchain 技术与互联网之间形成鲜明对比,因为它们遵循非常
不同的托管方式。
互联网是一个军事项目,从 DARPA 发展成为学术界,具有强大的影响力。
政府的支持和一组明确的初始托管人。互联网的发展是在
非商业条件,没有公司影响力的阴谋试图
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 40 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
垄断网络。事实上,电子商务违反了 NSF AUP,直到该政策被废除
1992年。
当企业有机会将互联网商业化时,已经有一个
一套强有力的标准、原则和福音信徒。这并没有阻止像这样的公司
AOL 和 Microsoft 尝试建造墙壁花园并创造专有技术,例如
ActiveX。该基金会并没有阻止谷歌等下一代参与者推动
鉴于其庞大的用户群和资本,他们有自己的议程。
伴随着蜂拥而至的寻租 从交易者到矿工,加密货币是终极的
32 商业驱动的生态系统。在此基础上,托管权的演变
加密货币导致了围绕自身利益的优化。
例如,无验证挖矿开始更频繁地发生,因为它提高了矿工的效率
利润率,但这完全忽视了挖矿的整个目的和效用。采矿业
集中化已经发生,只有少数参与者控制了大多数
Bitcoin 的 hash 力量。
与互联网一样,加密货币需要共识才能改变。但当这么快的时候
当权力集中到少数经纪人手中时,如果不进行变革,会发生什么?
对他们来说方便吗?
与互联网不同,大多数加密货币的引导并不是通过无私的方式完成的
非商业或学术手段。从一开始,一些团体就寻求获得利益并
指定了权力掮客来帮助确保这些成果。
建立中心化是每个加密货币在其演化过程中必须面对的现实。我们
无法完全摆脱它,但至少应该尝试围绕逐步去中心化进行设计。
对于Cardano,我们仔细思考了哪些因素促进了中心化,哪些因素促进了中心化
技巧 可以 应用于鼓励我们的协议逐渐公开
像网络这样的基础设施。
我们 完全 承认 那个 总计 权力下放 是 两者 不可能的 和 也许 甚至
适得其反。然而,可以鼓励某些因素来产生更加平衡的系统。
首先,虽然众筹资金的集中托管可以实现敏捷、快速的发展
在协议的早期阶段,最终资金必须多样化,并且速度
32 有关该术语的更多信息,请参阅链接 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 41 页,共 44 页IOHK |我们为何构建 CARDANO | 2017/06/28
发展需要转向更加系统和审慎的步伐。继这一点之后,
资金需要避免文化、语言和地理偏见。
其次,随着社区越来越了解该问题的根本性质
就加密货币的技术而言,有关路线图的决策不能集中到一组
核心开发人员或基金会。需要有一个基于 blockchain 的提议方法,
审查并制定协议变更。
第三,维持 Cardano SL blockchain 背后的激励措施必须直接一致
满足所有用户的共同愿望。我们不能允许一群专门的行为者
出现独立于更大社区意志的人。
对于第一个原则,我们选择将财务系统集成到 Cardano 中。对于
其次,我们将部署正式流程,通过以下方式提出 Cardano 改进建议:
系统由中超联赛本身协调。对于第三种,我们相信衔尾蛇提供了一种优雅的
解决方案。
可以提供有关上述主题的更多详细信息,但它们本身就很广泛,并且
超出了调查论文的范围。机构设计是最复杂、最复杂的设计之一
相互依存的学术领域,理论不完整,没有可靠的规范模型
上。
相反,第二节中描述的科学驱动方法对我们很有帮助。 IOHK 的 Veritas
团队正在与兰卡斯特大学的一组研究人员合作,在
张秉生教授指导开发Cardano的参考国库模型。与
为了实现 2018 年整合的目标,我们预计在 2018 年底之前将有一份专门的同行评审出版物
2017年。
对于加密货币协议变更的正式描述和审查,本主题是
最不被理解的,因为它需要本体论概念和激励机制
广泛参与。也许某种形式的代议制民主进程可能会出现,或者
利用液体反馈来提供更理性的投票。
我们预计这个方向的研究将消耗 IOHK 正式参与的大部分时间。
Cardano 的开发。作为起点,我们将与参考金库一起部署
33 对几种机制进行建模以获取同意。需要进一步研究才能确定
解决方案。
33 IOHK 保留建造 Cardano 直至 2020 年底 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 42 页,共 44 页
IOHK |我们为何构建 CARDANO | 2017/06/28
最后,埃利亚斯教授正在监督改善衔尾蛇激励措施的工作
牛津大学的库特苏皮亚斯。在衔尾蛇的密码学基础建立之后
与所有必需的可扩展性工作、对债券、处罚和异国情调的更广泛研究一起巩固
激励措施将添加到参考协议中。
Conclusão
Uma criptomoeda é mais do que a soma de seus protocolos, código-fonte e utilidade. Em última análise, é um sistema social que inspira, capacita e conecta pessoas. Frustrado pelas muitas metades medidas, falhas e promessas quebradas de protocolos anteriores, partimos para construir algo melhor.
Este processo não é simples e nunca acreditamos que possa terminar. Os protocolos sociais continuam mudando indefinidamente à medida que as pessoas e a sociedade mudam. Para sermos úteis, queremos capturar o poder do evolução e portá-lo para Cardano.
A evolução não é guiada por uma única mão ou por um grande projeto. É um processo de serendipidade inspirado por erros e problemas intermináveis. Cardano busca ser a personificação digital deste processo — suficientemente apto para sobreviver aos mercados de hoje e suficientemente adaptável para evoluir e satisfazer as necessidades do futuro.
As seções anteriores capturam uma breve visão de como temos abordado esse objetivo. Nós tentaram diligentemente reconhecer preconceitos cognitivos, aprender com a história e seguir um rigoroso processo. Tentámos equilibrar a necessidade de um desenvolvimento rápido com métodos formais que tradicionalmente não pode se mover rapidamente.
Foi um privilégio extraordinário embarcar nesta jornada. Nos últimos dois anos, tivemos já desenvolveu um protocolo proof-of-stake comprovadamente seguro, recrutou um pequeno exército de Haskell desenvolvedores e fizeram do desenvolvimento de Cardano a preocupação de muitos cientistas talentosos.
À medida que passamos do laboratório para um sistema implantado em estado selvagem, haverá dificuldades crescentes, mas nossa esperança é que o futuro de Cardano possa ser resumido em um único texto antropomorfizado sentença. Cardano é um sonhador pragmático que aprende com os mais velhos, é um bom cidadão em seus comunidade, e sempre encontra uma maneira de pagar suas contas.
POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 43 de 44
IOHK | POR QUE ESTAMOS CONSTRUINDO CARDANO | 28/06/2017
Não podemos conhecer o futuro, mas estamos felizes por tentar torná-lo melhor para todos. Obrigado por ler. POR QUE ESTAMOS CONSTRUINDO CARDANO Licença Creative Commons Atribuição 4.0 Internacional Página 44 de 44
结论
加密货币不仅仅是其协议、源代码和实用程序的总和。它最终是一个 激励、赋能和联系人们的社会系统。对许多一半感到沮丧 措施、失败和过去协议的失信,我们着手建立更好的东西。
这个过程并不简单,我们也不相信它能完成。社交协议仍在继续 随着人和社会的变化而无限地变化。为了变得有用,我们想要捕获的力量 evolution 并将其移植到 Cardano 中。
进化不是由单手或宏伟设计引导的。这是一个偶然发现灵感的过程 无数的错误和问题。 Cardano 寻求成为这一过程的数字化体现 — 足够适应,能够在当今的市场中生存,并且具有足够的适应性,能够不断发展以满足 未来的需求。
前面的部分简要介绍了我们如何实现这一目标。我们 努力认识认知偏差,从历史中学习并遵循严格的规则 过程。我们试图在快速开发的需求与正式方法之间取得平衡 传统上无法快速行动。
踏上这段旅程是一种非凡的荣幸。在过去的两年里,我们 已经开发了一个可证明安全的 proof-of-stake 协议,招募了一小支 Haskell 军队 开发者,并使 Cardano 的发展受到许多才华横溢的科学家的关注。
当我们从实验室转向野外部署的系统时,将会遇到成长的烦恼, 但我们希望 Cardano 的未来可以概括为一个拟人化的 句子。 Cardano 是一个务实的梦想家,向长辈学习,是一个好公民 社区,并且总是找到支付账单的方法。
我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 43 页,共 44 页
IOHK |我们为何构建 CARDANO | 2017/06/28
我们无法知道未来,但我们很高兴能够努力让未来对每个人来说都变得更好。 感谢您的阅读。 我们为何构建卡尔达诺 知识共享归属 4.0 国际许可证 第 44 页,共 44 页