Entrar

Registre-se

Documentos

  1. Términos y condiciones
  2. Política de privacidad
  3. Juego responsable
  4. Política de registro
  5. Política de bonus
  6. Política de cookie
  7. Sobre lotodobicho
  8. Reglas del juego
  9. Tipos de apuestas
  10. Grupos de animales
  11. Usando Bloques de Ethereum para Asegurar Sorteos Justos en lotodobicho.com

Usando Bloques de Ethereum para Asegurar Sorteos Justos en lotodobicho.com

Ethereum es una red de blockchain, y como todas las blockchains, está compuesta por una secuencia de bloques. Cada bloque contiene un conjunto de transacciones e información asociada. En el caso de Ethereum, se agrega un nuevo bloque a la cadena aproximadamente cada 16 segundos. Esto significa que cada intervalo de 16 segundos, todas las transacciones que ocurrieron durante este período son verificadas, validadas y agregadas a la red en forma de un nuevo bloque.

Cada bloque de Ethereum tiene una marca de tiempo asociada, que marca el momento exacto en que se creó. En un sorteo, se elige un momento específico, la marca de tiempo del sorteo. Para generar los premios, utilizamos información de los bloques de Ethereum que están inmediatamente antes y después de esta marca de tiempo del sorteo.

La función utiliza los hashes de estos dos bloques. Al combinar estas dos secuencias de hash, y a través de procesos matemáticos, la función calcula los premios.

La elección de usar los bloques inmediatamente antes y después de la marca de tiempo del sorteo asegura que el proceso de generación de premios se basa en datos que no se pueden predecir o manipular, garantizando la integridad y la justicia del sorteo.

La función que extrae los números ganadores es como un algoritmo matemático que utiliza estos hashes para generar una serie de premios. Lo hace de la siguiente manera:

  1. Combinación de Hash: Toma dos hashes, uno del bloque actual y uno del bloque anterior, y los combina.
  2. Transformación: Transforma esta combinación en una nueva secuencia única (un nuevo hash) utilizando una fórmula matemática (SHA-512).
  3. Extracción de Números: De este nuevo hash, extrae cinco secuencias de caracteres específicas.
    [0, 1, 2, 3, 4].reduce((acum, index) => {
      const draw_hash = generateHash(hash, prev_hash);
      const stripped: string = draw_hash.substr(13 * index, 13);
      const val: number = parseInt(stripped, 16) / Math.pow(2, 52);
      const num: number = Math.floor(val * 10000);
      return [...acum, num.toString().padStart(4, '0')];
    }, []);
    
  1. Conversión: Convierte estas secuencias en números, utilizando reglas matemáticas.
  2. Normalización: Ajusta estos números para que estén dentro de un rango específico, en este caso, de 0 a 9,999.

Estos cinco números se utilizan como premios.

De esta manera, utilizando matemáticas y los hashes de los bloques de Ethereum, la función asegura que los premios se generan de manera justa e impredecible.