Olùmúdásílẹ̀ Nọ́mbà Àdámọ́ Ọ̀fẹ́

Ṣẹ̀dá àwọn nọ́mbà àdámọ́ ní ààlà èyíkéyìí, ṣẹ̀dá àwọn àkójọpọ̀ nọ́mbà tí kò tún ara wọn ṣe, tàbí ju dídà. Ó ń lo ìtòlẹ́sẹẹsẹ àdámọ́ tí ó dájú fún cryptography.

Ó ń ṣiṣẹ́ láìsí ìsopọ̀ ní kété tí a bá kó wọlé

🔒 Nọ́mbà kọ̀ọ̀kan ń lo àrìnàkò tí ó ní ààbò cryptographic ti aṣàwárí rẹ (crypto.getRandomValues) — tòótọ́ ní àdálẹ́, kì í ṣe Math.random() tí a lè sọtẹ́lẹ̀. Kò sí ohun tí a fi ránṣẹ́ síbikíbi. Bí ó tilẹ̀ jẹ́ bẹ́ẹ̀, má lo àwọn nọ́mbà wọ̀nyí fún dídá kọ́kọ́rọ́ cryptographic, àwọn tókìnì ààbò, tàbí àwọn ohun èlò lọ́tẹ́rì/tẹ́tẹ́ tí a fi òfin ṣàkóso, tí ó nílò orísun àrìnàkò tí a ti dán wò tí ó sì ní àmì-ẹ̀rí lọ́nà ohun èlò.

Ṣé o fẹ́ yan olùṣẹ́gun ní orúkọ láti inú àtòjọ, tàbí ju owó? Lo irinṣẹ́ Coin Flip, Spin Wheel àti List Picker →

Bí Ó Ṣe Ń Ṣiṣẹ́

Nọ́mbà kọ̀ọ̀kan tí irinṣẹ́ yìí ń ṣẹ̀dá wá láti ọwọ́ crypto.getRandomValues — orísun àìròtẹ́lẹ̀ cryptographic aṣàwákiri, kan náà tí a ń lò fún ìṣẹ̀dá kọ́kọ́rọ́ TLS. Algorithm ìṣàyẹ̀wò-kíkọ̀ tí a fi ọwọ́ kọ ń wà lókè rẹ̀ láti yọ ìtẹ̀sí modulo tí ó ń bàjẹ́ àwọn àmúlò Math.random() % àyè lásán kúrò, títí kan àwọn àyè tí ó gbòòrò ju 2^32 lọ nípasẹ̀ ìṣírò BigInt.

  1. 1
    Ṣètò àyè àti ipò rẹ
    Yan láàrin nọ́mbà kan, àtòjọ àkópọ̀ (títí dé 1000), tàbí dice polyhedral (d4 títí dé d100). Fún àwọn àtòjọ o tún lè béèrè fún àwọn iye ọ̀tọ̀ọ̀tọ̀ tí o sì lè tò ìtọjade náà sí ìlọ́sókè.
  2. 2
    crypto.getRandomValues ń fà entropy gan-an
    A ń fa nọ́mbà kọ̀ọ̀kan láti inú Uint32Array (tàbí BigUint64Array fún àwọn àyè tí ó gbòòrò ju 2^32 lọ) tí a kó pọ̀ ní lílo RNG cryptographic aṣàwákiri — kì í ṣe Math.random(). Ìṣàyẹ̀wò-kíkọ̀ sì ń kọ àwọn iye tí yóò yí ìpín padà, nítorí náà nọ́mbà odidi kọ̀ọ̀kan nínú àyè rẹ ní ìṣeéṣe dọ́gba gan-an.
  3. 3
    Ipò iye-ọ̀tọ̀ọ̀tọ̀ ń lo Fisher-Yates tàbí ìtọpasẹ̀-kíkọ̀
    Nígbà tí ipò ọ̀tọ̀ọ̀tọ̀ bá tan tí àyè náà sì bára mu nínú ìrántí (títí dé àwọn iye 100,000), irinṣẹ́ náà ń kọ́ gbogbo ìpapọ̀ náà tí ó sì ń fi Fisher-Yates dàrú u. Fún àwọn àyè tí ó tóbi gan-an, ó dípò bẹ́ẹ̀ ń fa àwọn iye ní àkókò kan, tí ó ń fo àwọn tí a tún ṣe kọjá — tí ó ń yẹra fún iye owó ìrántí ti dídá àtòjọ bílíọ̀nù-ọ̀pọ̀ kan sílẹ̀.
  4. 4
    Àwọn àbájáde ń bọ́ pẹ̀lú ìdáhùn àwòrán tí ó sì ń dúró nínú ìtàn ìgbà
    Àwọn iye gbẹ̀yìn náà ń ṣe àwòrán sí ipò wọn (yíyí bí i slot-machine fún àwọn nọ́mbà, dice tí ń yí padà fún ipò dice) ní lílo requestAnimationFrame, wọ́n sì ń farahàn nínú àkọsílẹ̀ ìtàn tí a lè ràn tí o lè dàkọ ní àkókò èyíkéyìí. Kò sí ohunkóhun tí ó kúrò lára aṣàwákiri rẹ.

Àwọn Irinṣẹ Tó Jọra

Àwọn Ìbéèrè Tí A Máa Ń Béèrè