Pravidlá výberu ocenenia na základe hodnoty hashu blockchainu TON

Zverejnené dňa 2024-10-29 02:11

Vylúčenie zodpovednosti: Tu uvedené produkty a služby nemusia byť dostupné vo vašom regióne.

1. Ako určiť víťaznú sekvenciu?

Binance počas udalosti vyberie konkrétny dátum a ako víťaznú sekvenciu použije posledných 9 číslic hashu posledného bloku blockchainu TON o 23:59 (UTC) v tento deň.

Napríklad:

Ak je hash posledného bloku blockchainu TON v deň výpočtu odmeny: 0hVwGb09xU6rhZhs9JMHU29KuqYATsVwd+96R8X6wF4=

  • Binance odstráni písmená a získa číslo: 009692996864
  • Potom vezmeme posledných 9 číslic a určí ich ako víťaznú sekvenciu: 692996864

2. Ako aplikovať multiplikatívne hashovanie na adresu používateľa?

Na určenie adresy peňaženky víťazného používateľa (používateľov) použije Binance multiplikatívny hash vzorec (podobný vzorcu `hashCode()` v Jave) „h = 31 * h + value[i]“.

Výpočet:

1. Preveďte reťazec „0x22eEC85ba6a5cD97eAd4728eA1c69e1D9c6fa778“ na malé písmená, aby ste získali „0x22eec85ba6a5cd97ead4728ea1c69e1d9c6fa778“, a potom vypočítajte hash kód.

2. Hodnota každého znaku je určená jeho kódom ASCII:

  • „0“ má hodnotu 48;
  • „x“ má hodnotu 120;
  • „2“ má hodnotu 50;
  • „e“ má hodnotu 101;
  • „c“ má hodnotu 99;
  • „8“ má hodnotu 56;
  • „5“ má hodnotu 53;
  • „b“ má hodnotu 98;
  • „a“ má hodnotu 97;
  • „6“ má hodnotu 54;
  • „d“ má hodnotu 100;
  • „9“ má hodnotu 57;
  • „7“ má hodnotu 55.

3. Inicializujte hodnotu hash: h = 0

4. Spracujte prvý znak „0“:

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

5. Spracujte druhý znak „x“:

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

6. Spracujte tretí znak „2“:

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

7. Spracujte štvrtý znak „2“:

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

8. Spracujte piaty znak „e“:

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

9. Spracujte šiesty znak „e“:

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

10. Spracujte siedmy znak „c“:

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

11. Zjednodušené spracovanie zostávajúcich znakov  

Pokračujte v spracovaní zostávajúcich znakov podľa vyššie uvedených krokov, kým nespracujete všetky znaky. Konečná hodnota hashu, h, bude celé číslo.  

Aby sme zabezpečili, že hodnota hash nebude záporná, použijeme bitovú metódu a s „0x7fffffff“: „h & 0x7fffffff“.  

13. Pomocou tohto algoritmu bude hodnota hash adresy TON číslo medzi 0 a 2147483647. 

3. Ako vygenerovať sekvenciu lotérie používateľa?

Adresa peňaženky každého používateľa sa na výpočet ich lotériovej sekvencie skonvertuje na hodnotu hash:

[Víťazná sekvencia – adresa hash] = sekvencia lotérie používateľa

4. Ako určiť víťazov?  

Binance zoradí sekvencie lotérie každého používateľa vzostupne a vyberie určitý počet sekvencií ako víťazov v závislosti od pravidiel kampane. 

V prípade nerozhodného výsledku (napr. dvaja alebo viacerí používatelia majú rovnakú lotériovú sekvenciu) použije Binance na určenie poradia používateľov čas dokončenia úlohy. Čím skôr používateľ dokončí úlohu, tým vyššie je jeho hodnotenie.

  • V prípade adries s hodnotou hash rovnajúcou sa alebo dlhšou ako 10 číslic sa odstráni 10. číslica.
  • Ak má hash menej ako 10 číslic, nedôjde k žiadnym zmenám.

Potom sa vypočíta absolútny rozdiel medzi hashom adresy používateľov a výhernou sekvenciou. Binance zoradí lotériovú sekvenciu každého používateľa vo vzostupnom poradí a vyhrá menšia lotériová sekvencia (sekvencie).

Napríklad:

  • Hash adresa Používateľ A má 10 číslic (1023456780). Po odstránení 10. číslice je jeho lotériová sekvencia 102345678.
  • Hash adresa Používateľa B má 9 číslic (201154321). Na úpravu sekvencie lotérie nie sú potrebné žiadne zmeny.

Ako stanoviť víťaza:

  • Víťazná sekvencia = 692996864
  • Výsledok lotérie používateľa A = |692996864 – 102345678| = 590651186
  • Výsledok lotérie používateľa B = |692996864 – 201154321| = 491842543

Keďže číslo 491842543 je menšie, vyhráva Používateľ B.

 

Zaregistrujte sa hneď teraz a získajte až 100 USDT vo forme zľavy z obchodného poplatku (platí pre overených používateľov)