Todas as aulas:
Listas > Curso Quebra-cabeça da Blockchain - Estou aqui pela tecnologiaOlá Avatar,
Na aula passada aprendemos o que o minerador precisa fazer para minerar o bloco, lembra? ele precisa encontrar um hash que seja válido para a blockchain, “chutando” valores no campo nonce.
Analogia com dadosNa prática, é como se cada minerador tivesse um dado com 1000 faces e precisasse tirar um valor menor 10. O primeiro que jogar o dado e conseguir um valor abaixo de 10 ganha a rodada, minera o bloco e fica com a recompensa.
Ver maisNote que qualquer número abaixo de 10 serve, então temos diversos números que satisfazem a regra (9,8,7...). É assim também com os hashes iniciados por zeros, não é um hash específico que precisa ser encontrado, mas qualquer hash que satisfaça a regra.
Dificuldade de mineraçãoQuanto mais zeros iniciais são exigidos pela blockchain, maior será a dificuldade de mineração. Achar um hash para a nossa blockchain de 4 zeros iniciais é mais fácil que encontrar na blockchain do bitcoin 19 zeros.
Quantos lados tem o dado do bitcoin?A chance de minerar um bloco da blockchain do bitcoin é uma em 16 trilhões. (em agosto de 2020) Por isso, se considerar um dado com 16.000.000.000.000 (16 trilhões de lados), para minerar um bloco do bitcoin, você precisa jogar o dado e tirar 1, qualquer outro número não será válido. Para fins de comparação, para ganhar na mega da virada, se jogar um cartão simples, sua chance é de uma em 50.063.860 (50 milhões). Boa sorte amiguinho!
Prova de trabalhoEsse esforço de calcular os hashes (jogar os dados) é chamado de prova de trabalho.
Assim, quanto mais dados os mineradores jogarem (mais cálculos de hash), maiores serão as chances dele de conseguir minerar. Além disso, quanto mais pessoas tiverem jogando, mais rápido será descoberto o hash que satisfaz as regras da blockchain.
Há outras formas de validar uma blockchain, esse assunto vai ficar para os tópicos avançados.
Por hoje é isso, deixo abaixo algumas referências utilizadas nessa aula, caso queira aprofundar o estudo desse assunto.
Bitcoin Mining is NOT Solving Complex Math Problems [Beginner's Guide] | BraiinsBitcoin Mining Definition