Você pede
Você escolhe o dado e seu navegador assina o pedido com uma chave que só ele tem. O pedido entra num registro público e fica preso a um sorteio do futuro: o próximo número que o drand vai publicar, daqui a uns 3 a 6 segundos.
Por que confiar?
Cada rolagem usa um número sorteado em público, por uma rede independente, segundos depois do seu pedido. Quando você clica em Rolar, esse número ainda não existe. Depois que ele sai, qualquer pessoa refaz a conta e chega no mesmo dado.
Conferir uma rolagemVocê escolhe o dado e seu navegador assina o pedido com uma chave que só ele tem. O pedido entra num registro público e fica preso a um sorteio do futuro: o próximo número que o drand vai publicar, daqui a uns 3 a 6 segundos.
O drand é uma rede de organizações independentes (a League of Entropy, com Cloudflare, Protocol Labs, universidades e outras) que publica um número aleatório assinado a cada 3 segundos. Nenhuma delas sozinha consegue saber o próximo. Nós também não.
O dado sai de uma conta simples e conhecida (SHA-256) sobre o número do drand, a sua seed e o número do pedido. Mesmos ingredientes, mesmo resultado, em qualquer computador. Seu navegador já refaz essa conta sozinho a cada rolagem.
Cole o link de uma rolagem (ou só o código). Seu navegador baixa a prova, busca o número direto no drand, confere a assinatura e refaz a conta. Nada disso depende de confiar no nosso servidor.
Um programa separado, escrito em outra linguagem, que não usa nada do site. Rode no seu computador:
Pegue o número (randomness) direto no drand, por exemplo em , e preencha com a seed, o nonce e a expressão da rolagem.
Seu navegador não acredita no servidor: ele busca o número direto no drand, confere a assinatura criptográfica do drand e refaz a conta. Se o servidor inventasse qualquer coisa, a conferência ficaria vermelha.
O pedido guarda o horário e o round alvo, que é sempre um round futuro. A conferência compara o horário do pedido com o horário em que o round foi publicado: o pedido tem de vir antes. E o round alvo é sempre dois à frente do mais recente: o servidor não escolhe um round a dedo.
O número só existe quando um mínimo de membros independentes da rede assina junto. Para prever o resultado, seria preciso corromper ao mesmo tempo várias organizações em países diferentes. Por isso o drand é usado por outros projetos para sorteios públicos.
É um texto seu que entra na conta. Você escolhe antes de rolar (o site sorteia uma por você, mas dá para trocar em Opções avançadas). Assim, duas rolagens no mesmo round dão resultados diferentes, e a sua rolagem é só sua.
O número do pedido dentro da mesa: 1, 2, 3… Ele entra na conta e impede que o mesmo pedido seja reaproveitado. Como é sequencial, um pedido sumido deixaria um buraco visível.
Não. O registro da mesa é público e mostra até os pedidos que ainda esperam o drand. Em "Verificar a mesa inteira", no histórico, seu navegador confere cada elo da cadeia desde a primeira rolagem.