Contratos Bitcoin Cash Smart

Srihari Kapu Blocked Desbloquear Seguir Seguindo 28 de outubro de 2018

Hoje quero falar algo interessante. Trata-se de contratos inteligentes no topo da blockchain do Bitcoin. Para aqueles de vocês que não sabem o que é Bitcoin em dinheiro. Bitcoin cash é um fork duro do Blockchain Bitcoin em que as pessoas falavam sobre escalabilidade e taxa de transação, o volume de transações. ou seja, em palavras simples Bitcoin, a comunidade decidiu criar um novo blockchain que pode acomodar um tamanho maior de blocos e menos taxa de transação nas transações. Além de toda aquela transação instantânea está lá para explodir sua mente, eu quero dizer praticamente nenhum naquele instante mas é realmente melhor que velocidade de transação de bitcoin. Se você não sabe o que é uma bifurcação, deixe-me ajudá-lo a entendê-la, Uma bifurcação difícil é uma divergência permanente da versão anterior do Blockchain, e os nós que executam versões anteriores não serão mais aceitos pela versão mais recente.

garfo duro

O que há de tão especial no dinheiro do Bitcoin?

Não há muita diferença entre o Bitcoin e o Bitcoin. Ambos são construídos para servir o mesmo propósito “Dinheiro digital entre pares”. Abaixo estão alguns fatos interessantes sobre o Bitcoin e o Bitcoin Cash.

Bitcoin vs Bitcoin Cash

Podemos criar contratos inteligentes no Bitcoin Cash?

Sim! podemos escrever contratos inteligentes no Bitcoin Cash. Bem, deixe-me dizer quais são as dificuldades que vamos enfrentar ao escrever os contratos inteligentes do Bitcoin Cash.

  • Comunidade e desenvolvedores trabalhando em escrever o dinheiro Bitcoin está na fase inicial. Então, esteja preparado para você precisar fazer sua lição de casa pronto por si mesmo, não há muitas pessoas que estão lá a partir de agora para ajudá-lo a codificar os contratos do Bitcoin Cash.
  • Vamos usar uma linguagem de alto nível chamada “Spedn” para codificar nossos contratos inteligentes.
  • O Haskell é usado para testar contratos inteligentes de dinheiro em Bitcoin.

Vamos codificar nosso primeiro contrato inteligente de dinheiro em Bitcoin:

  1. Instale o Haskell Toolkit no seu dispositivo.
 $ curl -sSL https://get.haskellstack.org/ | sh 

2. Crie um novo projeto:

 $ stack new my-project 
$ cd my-project
$ stack setup
$ stack build
$ stack exec my-project-exe

3. Para executar o lançamento:

 $ stack ghci 

4. Para uma lista de comandos do Haskell:

 $ stack 

5. Clone o “Spedn”

 $ git clone https://github.com/sriharikapu/Spedn.git 

or

$ git clone https://bitbucket.org/o-studio/spedn.git

6. Construa “Spedn”

 $ cd spedn/spedn 
$ stack install

7. Crie um diretório para um contrato inteligente:

 $ mkdir samplecontract 
$ touch ExiringTip.spedn
$ nano ExiringTip.spedn

8. Vamos considerar um caso para escrever nosso contrato inteligente:

Vamos supor que Alice queira dar gorjeta a um garçom Bob com uma carteira de papel, mas ela quer ter certeza de que a moeda não será perdida devido a Bob perder o papel.

Este contrato trava uma moeda de tal forma que Bob pode resgatá-lo a qualquer momento, mas se ele não o fizer em 7 dias, então Alice pode recuperá-lo.

 contract ExpiringTip(Ripemd160 alice, Ripemd160 bob) { 

challenge receive(Sig sig, PubKey pubKey) {
verify hash160(pubKey) == bob;
verify checkSig(sig, pubKey);
}

challenge revoke(Sig sig, PubKey pubKey) {
verify checkSequence(7d);
verify hash160(pubKey) == alice;
verify checkSig(sig, pubKey);
}
challenge cancel(Sig Sig) {
verify checkSequence(8b);
verify checkSig(Sig, PubKey);
}
}

9. Compile seu contrato inteligente:

 $ spedn compile -c mycontract.spedn 

10. Modelo de contrato compilado:

 <alice> <bob> 2 PICK TRUE EQUAL IF 3 PICK HASH160 OVER EQUALVERIFY (...) 

Texto original em inglês.