Regole di selezione dei premi in base al valore hash della blockchain TON

2024-10-29 02:11

Disclaimer: I prodotti e i servizi qui menzionati potrebbero non essere disponibili nella tua regione.

1. Come determinare la sequenza vincente?

Binance selezionerà una data specifica durante l'evento e utilizzerà le ultime 9 cifre dell'ultimo hash del blocco della blockchain TON alle 23:59 (UTC) di quella data come sequenza vincente.

Per esempio:

Se l'ultimo hash del blocco sulla blockchain TON nel giorno di calcolo della ricompensa è: 0hVwGb09xU6rhZhs9JMHU29KuqYATsVwd+96R8X6wF4=

  • Binance rimuoverà i caratteri alfabetici per ottenere: 009692996864
  • Dopodiché, prenderemo le ultime 9 cifre come sequenza vincente: 692996864

2. Come applicare l'hash moltiplicativo all'indirizzo di un utente?

Binance utilizzerà la formula dell'hash moltiplicativo (simile a 'hashCode()' di Java) "h = 31 * h + value[i]" per determinare l'indirizzo del wallet dell'utente o degli utenti vincenti.

Calcolo:

1. Converti la stringa "0x22eEC85ba6a5cD97eAd4728eA1c69e1D9c6fa778" in minuscolo per ottenere "0x22eec85ba6a5cd97ead4728ea1c69e1d9c6fa778", quindi calcola il codice hash.

2. Il valore di ogni carattere è determinato dal suo codice ASCII:

  • '0' ha un valore di 48;
  • 'x' ha un valore di 120;
  • '2' ha un valore di 50;
  • 'e' ha un valore di 101;
  • 'c' ha un valore di 99;
  • '8' ha un valore di 56;
  • '5' ha un valore di 53;
  • 'b' ha un valore di 98;
  • 'a' ha un valore di 97;
  • '6' ha un valore di 54;
  • 'd' ha un valore di 100;
  • '9' ha un valore di 57;
  • '7' ha un valore di 55.

3. Inizializza il valore hash: h = 0

4. Elabora il primo carattere '0':

  • h = 31 * h + 48
  • h = 31 * 0 + 48
  • h = 48

5. Elabora il secondo carattere 'x':

  • h = 31 * h + 120
  • h = 31 * 48 + 120
  • h = 1608

6. Elabora il terzo carattere '2':

  • h = 31 * h + 50
  • h = 31 * 1608 + 50
  • h = 49898

7. Elabora il quarto carattere '2':

  • h = 31 * h + 50
  • h = 31 * 49898 + 50
  • h = 1546888

8. Elabora il quinto carattere 'e':

  • h = 31 * h + 101
  • h = 31 * 1546888 + 101
  • h = 47953629

9. Elabora il sesto carattere 'e':

  • h = 31 * h + 101
  • h = 31 * 47953629 + 101
  • h = 1486562610

10. Elabora il settimo carattere 'c':

  • h = 31 * h + 99
  • h = 31 * 1486562610 + 99
  • h = 46083441008

11. Elaborazione semplificata dei caratteri rimanenti  

Continua a elaborare i caratteri rimanenti seguendo i passaggi descritti sopra, fino a quando tutti i caratteri non saranno elaborati. Il valore hash finale, h, sarà un numero intero.  

12. Per garantire che il valore hash non sia negativo, applichiamo un bitwise e con "0x7fffffff": "h & 0x7fffffff".  

13. Utilizzando questo algoritmo, il valore hash dell'indirizzo TON sarà un numero compreso tra 0 e 2147483647. 

3. Come generare la sequenza della lotteria di un utente?

L'indirizzo wallet di ogni utente viene convertito in un valore hash per calcolare la sequenza della lotteria:

[Sequenza vincente - Hash indirizzo] = Sequenza della lotteria dell'utente

4. Come determinare i vincitori?  

Binance ordinerà la sequenza della lotteria di ogni utente in ordine crescente e selezionerà un certo numero di sequenze come vincitori a seconda delle regole della campagna. 

In caso di parità (ad es., due o più utenti hanno la stessa sequenza della lotteria), Binance utilizzerà il tempo di completamento dell'attività per determinare le classifiche degli utenti. Prima un utente completa l'attività, più alta sarà la sua posizione in classifica.

  • Per gli indirizzi con un hash uguale o superiore a 10 cifre, la decima cifra viene rimossa.
  • Se l'hash è inferiore a 10 cifre, non vengono apportate modifiche.

Successivamente, viene calcolata la differenza assoluta tra l'hash dell'indirizzo degli utenti e la sequenza vincente. Binance ordinerà la sequenza della lotteria di ciascun utente in ordine crescente e la sequenza o le sequenze della lotteria più piccole vinceranno.

Per esempio:

  • L'hash dell'indirizzo dell'utente A ha 10 cifre (1023456780). Dopo aver rimosso la decima cifra, la sequenza della lotteria è 102345678.
  • L'hash dell'indirizzo dell'utente B ha 9 cifre (201154321). Non sono necessarie modifiche per sistemare la sequenza della lotteria.

Come determinare il vincitore:

  • Sequenza vincente = 692996864
  • Risultato della lotteria dell'utente A = |692996864 − 102345678| = 590651186
  • Risultato della lotteria dell'utente B = |692996864 − 201154321| = 491842543

Poiché 491842543 è più piccolo, l'utente B vince.

Registrati ora - Ottieni fino a 100 USDT di rimborso sulle commissioni di trading (per gli utenti verificati)