Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Criando uma Blockchain em Kotlin

Kassiano
September 15, 2018

Criando uma Blockchain em Kotlin

Talk apresentada no Kotlin Community Summit 2018.
https://eventos.imasters.com.br/kotlinsummit/

Nesta talk explico os conceitos de uma blockchain e mostro uma implementação de uma pequena blockchain em kotlin.

Você encontra o código desta implementação em:
https://github.com/kassiano/KotlinBlockchain

Kassiano

September 15, 2018
Tweet

More Decks by Kassiano

Other Decks in Programming

Transcript

  1. Agenda • Função hash • Criação do bloco • Mineração

    do bloco – Proof of Work • A blockchain • Blockchain distribuida • Uma blockchain em Kotlin (Android)
  2. Breve apesentação • Prof. Produção de Software com foco em

    Android – SENAI • Escritor do livro “Kotlin com Android – Crie Apps de forma rápida e divertida” • Dev. Kotlin/JAVA • Entusiasta de Bitcoin e do Mercado Financeiro • https://www.linkedin.com/in/kassian-resende/ • https://github.com/kassiano
  3. O que é um Hash ? Uma função hash é

    um algoritmo que mapeia dados de comprimento variável para dados de comprimento fixo. Os valores retornados por uma função hash são chamados valores hash, códigos hash, somas hash (hash sums), checksums ou simplesmente hashes. (Fonte: Wikipedia)
  4. Exemplificando Este é um conteúdo de texto para exemplificar o

    funcionamento de uma função Hash. Função HASH d2218b955bddbecd0721137edbc88eec3130d5e3a3a90e19b1144 1036ea9dafd
  5. Caracteristicas de uma função HASH • A mesma entrada sempre

    produz o mesmo Hash • Uma entrada ligeiramente diferente produz um Hash totalmente diferente • A partir do Hash não conseguimos reproduzir a entrada original • Podemos dizer que o hash é uma impressão digital de uma informação
  6. Composição do bloco Um bloco é um conjunto de informações

    agrupadas lógicamente. Um bloco é composto por: • Número do bloco • Valor de Nounce • Informação • Hash
  7. O que é um bloco minerado? • É considerado um

    bloco minerado é um bloco cujo o Hash está abaixo do target da rede.
  8. Definição Blockchain nada mais é que uma cadeia de blocos

    imúltáveis interligados através de seus hashs.
  9. Blockchains Distribuidas • Nesse momento você deve estar pensando “certo,

    blockchains são legais, mas faz sentido uma blockchain centralizada?” • A resposta é não.