Anyza Club
CriarEntrar

← Sistema de sorteio baseado no hash do Bitcoin

Como funciona o sorteio baseado no hash do Bitcoin

Um sorteio justo de verdade não pede que você confie em ninguém. Aqui está o mecanismo inteiro — o que acontece, em que ordem e a conta exata — para qualquer pessoa conferir.

Fazer um sorteio grátis
Mascote da Anyza com o globo do sorteio e uma moeda de bitcoin

Passo 1

A lista é congelada

Passo 2

Escolhemos um bloco do Bitcoin que ainda não existe

Passo 3

A conta decide os ganhadores

1. A lista é congelada

Quando o organizador clica em Sortear, os nomes ficam guardados exatamente na ordem em que foram colados, um por linha: nº 1, nº 2, nº 3…

Na mesma hora calculamos a impressão digital da lista (SHA-256). Trocar uma única letra de um nome muda essa impressão digital inteira — por isso ela aparece na página: qualquer alteração depois ficaria evidente.

A impressão digital também é registrada no Bitcoin pelo OpenTimestamps. O arquivo .ots é a prova de que aquela lista exata já existia naquele momento.

2. Escolhemos um bloco do Bitcoin que ainda não existe

No congelamento, olhamos qual é o último bloco da rede (o topo) e fixamos o bloco topo + 2 como o que vai decidir o resultado.

O hash de um bloco é imprevisível: milhares de mineradores no mundo inteiro competem para criá-lo, gastando energia de verdade. Ninguém — nem o organizador, nem a Anyza — sabe qual será o hash antes de o bloco sair.

Esperamos o bloco escolhido sair e mais um por cima dele, para confirmar. Em média isso leva de 20 a 30 minutos.

3. A conta decide os ganhadores

Com o hash do bloco em mãos, cada ganhador sai de uma conta simples, igual para todo mundo:

  1. Monte o texto: hash do bloco + “:” + código do sorteio + “:” + k (k = 1 para o 1º ganhador, 2 para o 2º…).
  2. Calcule o SHA-256 desse texto e pegue os 15 primeiros caracteres — é um número em hexadecimal.
  3. Divida esse número pela quantidade de nomes que ainda estão na lista; o resto da divisão é a posição (resto 0 = o primeiro).
  4. O nome nessa posição ganha e sai da lista — assim ninguém ganha duas vezes. Repita para o próximo k.
posição = int( sha256(“hash_do_bloco:id_do_sorteio:k”)[0:15], 16 ) mod N

Um exemplo com números de verdade

Um bloco real do Bitcoin, um código de sorteio de exemplo e uma lista de 40 nomes:

Hash do bloco

00000000000000000000ba717add9e9ca88219ed055ab6a33fcb5a4a229036ef

Código do sorteio

5c033623-67a6-4a4c-bd5b-1d0721e0b6e6

1º ganhador (k = 1, 40 nomes)

sha256("…a229036ef:5c03…b6e6:1")

→ 3c13c940ddd9060 → 270564059204391008

→ 270564059204391008 mod 40 = 8

Resto 8 → a 8ª posição contando do zero = o nº 9 da lista ganha.

2º ganhador (k = 2, 39 nomes restantes)

sha256("…a229036ef:5c03…b6e6:2")

→ 0e74889ef2fd4a9 → 65100476880770217

→ 65100476880770217 mod 39 = 3

Resto 3 na lista de 39 que sobrou → ganha quem está nessa posição.

O código de cada sorteio é diferente: o mesmo bloco gera resultados diferentes em sorteios diferentes — e ninguém escolhe o código depois de ver o bloco, porque ele é criado no congelamento.

A linha do tempo que prova a ordem

A página de cada sorteio mostra quatro momentos, com data e hora:

  1. Lista congelada e hash salvo

    Os nomes e a impressão digital ficam fixos — antes de existir o bloco que decide.

  2. Lista registrada no Bitcoin

    O OpenTimestamps grava a impressão digital num bloco: prova independente de que a lista já existia.

  3. Bloco que decide é minerado

    Minutos depois, sai o bloco escolhido, com hora gravada nele mesmo.

  4. Resultado calculado

    Com o hash do bloco, a conta aponta os ganhadores — sempre os mesmos para quem refizer.

Se a lista fosse alterada depois do bloco, a impressão digital não bateria com a registrada no Bitcoin. Se o bloco já existisse antes da lista, a altura entregaria: ele foi escolhido como topo + 2 no congelamento.

Como qualquer pessoa confere

  • Refazer a conta

    Na página do sorteio, o botão “Refazer a conta aqui” calcula tudo no seu navegador: a impressão digital da lista e cada ganhador.

  • Conferir o bloco

    O hash e o horário do bloco são públicos em qualquer explorador do Bitcoin, como o mempool.space.

  • Enviar o arquivo .ots

    O botão “Enviar o arquivo .ots” (ou o opentimestamps.org) confere em que bloco a lista foi registrada.

Sorteios automáticos nas comunidades do Anyza Club

Nas comunidades, a conta é a mesma — a lista são os participantes que cumpriram as regras (membros, assinantes, quem foi ao evento, concluiu a aula ou fez um post), congelados no encerramento. Dois modos:

  • Modo rápido: o bloco topo + 2 no encerramento, como no sorteio público.
  • Prova máxima: o primeiro bloco depois de o registro da lista no Bitcoin ser confirmado — a lista comprovadamente existia antes do bloco que decide.
Criar minha comunidade grátis

Perguntas frequentes

Dá para prever o hash do próximo bloco?

Não. O hash depende de transações e de um número que os mineradores procuram por tentativa e erro, bilhões de vezes por segundo. Se fosse previsível, a mineração de Bitcoin não funcionaria.

A Anyza ou o organizador podem trapacear?

Não sem deixar rastro. A lista e a impressão digital ficam fixas antes do bloco, o bloco é escolhido no mesmo momento e a conta é pública. Qualquer mudança faria a impressão digital ou o resultado não baterem na conferência.

E se alguém fizer vários sorteios até sair o resultado que quer?

Cada sorteio tem página e link próprios, com a data de criação. Por isso o organizador deve divulgar o link antes do resultado: um sorteio que não foi anunciado antes não prova nada.

E se a rede do Bitcoin reorganizar o bloco?

Esperamos uma confirmação (um bloco por cima) antes de sortear. Reorganizações de dois blocos são raríssimas; e o hash usado fica gravado na página, então a conta sempre pode ser refeita.

O resto da divisão favorece alguém?

Na prática, não. Os 15 caracteres formam um número de até 60 bits; com até 5.000 nomes, a diferença de chance entre posições é menor que um em um trilhão.

A ordem dos nomes muda alguma coisa?

A ordem é fixada no congelamento e faz parte da impressão digital. Como o hash do bloco é imprevisível, nenhuma posição tem vantagem.

Pronto para fazer o seu?

Grátis, sem cadastro, com link para compartilhar e resultado por e-mail.

Fazer um sorteio grátis

Comunidades em alta no Anyza Club

Ver todos

Próximos eventos no Anyza Events

Ver todos

Novidades no Anyza Market — pague em cripto

Ver todos

Mais ferramentas grátis da Anyza

Anyza Classificados

Classificados para quem paga em cripto

Carros, relógios, bikes, apartamentos, serviços — vendedores confirmados e preço em stablecoin, negócio fechado entre você e a outra pessoa.

Abrir os Classificados
Anyza Radar

Onde o bitcoin já é aceito

Um mapa de lojas, cafés e serviços que aceitam bitcoin, em 11 idiomas — feito a partir do BTC Map e do OpenStreetMap.

Abrir o Radar
Anyza Events

Ingressos com QR e check-in na porta

Meetups, conferências e eventos online. Quem compra paga ao organizador; a porta funciona offline em qualquer celular.

Abrir o Events