Ìjìka Owó & Kẹ̀kẹ́ Ìyí Ọ̀fẹ́
Já owó fẹ́lẹ́fẹ́lẹ́, yí kẹ̀kẹ́ tí ó ṣeé ṣàtúnṣe, tàbí yan lọ́nà àdámọ́ lára àkójọpọ̀ àwọn àṣàyàn. Ó ń lo ìtòlẹ́sẹẹsẹ àdámọ́ tí ó dájú fún cryptography láti ọ̀dọ̀ ẹ̀rọ àwárí rẹ — kì í ṣe ìyàn ìtẹ̀wádàwọ̀ràn gbangba, nítorí náà yẹra fún àwọn ìdíje tí a ń darí.
🔒 Gbogbo àwọn mẹ́tẹ̀ẹ̀ta ń lo ẹ̀rọ àrìnàkò tí ó ní ààbò cryptographic ti aṣàwárí rẹ: a máa ń yan àbájáde náà kọ́kọ́, lẹ́yìn náà ni a fi hàn ní ìṣàwòrán — owó náà jẹ́ 50/50 tòótọ́, àyíká náà ni a yí lọ sí àbájáde tí a ti yàn tẹ́lẹ̀, yíyàn náà kò sì ní ẹ̀tọ́ǹkẹ̀. Kò sí ohun tí ó kúrò ní ẹ̀rọ rẹ. Èyí bára mu fún lílò lásán, ṣùgbọ́n kì í ṣe ìyàn gbogbogbò tí a lè ṣàyẹ̀wò, nítorí náà yẹra fún àwọn ìdíje tí a fi òfin ṣàkóso tàbí àwọn ìpinnu iye-tóbi.
Bí Ó Ṣe Ń Ṣiṣẹ́
Gbogbo ipò mẹ́tẹ̀ẹ̀ta — yíyí owó, yíyí kẹ̀kẹ́, àti yíyan àṣàyàn — ń lo API Web Crypto aṣàwákiri tí a kọ́ sínú rẹ̀ (crypto.getRandomValues) láti ṣẹ̀dá àbájáde tí ó ṣẹ́gun, kí ó sì darí àwòrán náà pátápátá lórí ẹgbẹ́-oníbàárà pẹ̀lú àwọn ìyípadà CSS àti requestAnimationFrame. Kò sí sáfà tí ó kàn ní àkókò èyíkéyìí.
- 1Web Crypto ń yan olubori náàKí àwòrán èyíkéyìí tó bẹ̀rẹ̀, crypto.getRandomValues ń kó Uint32Array kan pẹ̀lú nọ́mbà odidi 32-bit tí a yàn cryptographically. Iṣẹ́ modulo kan ń fi ẹ̀ka rẹ̀ sí iye àwọn àṣàyàn (2 fún orí/ìtẹ̀, N fún kẹ̀kẹ́ tàbí àyàn), nítorí náà àbájáde kọ̀ọ̀kan ní ìṣeéṣe dọ́gba gan-an.
- 2A ń ṣírò igun ìyí láti bọ́ sórí àbájáde náàFún owó náà, kóòdù náà ń ṣírò ìyí àfikún tí ó kúrú jùlọ (lórí igun tí ó ti kójọpọ̀ lọ́wọ́lọ́wọ́) tí ó parí pẹ̀lú ojú tí ó tọ́ ní òkè — orí ní 0°, ìtẹ̀ ní 180° — kí ó sì fi ìyí pípé 5 kún un kí ó lè dàbí yíyí gidi. Kẹ̀kẹ́ náà ń ṣe kan náà: ó ń rí ìwọ̀n ìyí tí ó mú àyè tí ó ṣẹ́gun wá lábẹ́ ìtọ́ka náà, ó ń fi ìyí pípé 6 kún un, ó sì ń fi ìjì kékeré tí a yàn láìròtẹ́lẹ̀ sílo kí ìtọ́ka náà má bàa dúró àárín gbùngbùn àyè náà nígbà gbogbo.
- 3Àwọn ìyípadà CSS àti requestAnimationFrame ń darí àwòrán náàOwó náà àti kẹ̀kẹ́ náà ń ṣe àwòrán nípasẹ̀ àwọn ìyípadà CSS pẹ̀lú ìlà ìrọ̀rọ̀ cubic-bezier tí a fi sí iye ìyí kan tí a kójọpọ̀ — kò sí JavaScript férémù-kọ̀ọ̀kan tí ó nílò ní kété tí a ti ṣètò igun náà. Àyàn àṣàyàn náà ń lo requestAnimationFrame dípò bẹ́ẹ̀: ní férémù kọ̀ọ̀kan, àyè tí ó ń dàgbà ní quadratic ń pinnu bóyá kí a mú ìtẹ̀síwájú náà lọ, tí ó ń mú ìdínkù bí i ẹ̀rọ slot-machine tí ó ń dúró nígbà gbogbo lórí olubori tí a ti pinnu.
- 4A ṣí àbájáde náà hàn tí a sì kọ ọ́ sínú ìtàn ìgbàsetTimeout kan ń dún nígbà tí àwòrán náà bá parí (ìṣẹ́jú-aaya 1.3 fún owó náà, 4.3 fún kẹ̀kẹ́ náà) tí ó sì kọ àbájáde náà sínú ipò. Ipò owó ń pa ìtàn ìgbà tí ó lọ títí dé 24 flips mọ́ pẹ̀lú iye orí/ìtẹ̀. Àwọn oníṣẹ́ tí wọ́n ti tan prefers-reduced-motion ń fo àwòrán náà kọjá pátápátá wọ́n sì rí àbájáde náà lẹ́sẹ̀kẹsẹ̀.
Àwọn Irinṣẹ Tó Jọra
Olùmúdásílẹ̀ Nọ́mbà Àdámọ́
Ṣẹ̀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.
Olùmúdásílẹ̀ Ẹgbẹ́ Àdámọ́
Pin àkójọpọ̀ orúkọ sí àwọn ẹgbẹ́ àdámọ́ tí ó dọ́gba — nípa iye ẹgbẹ́ tàbí iye ẹgbẹ́ kọ̀ọ̀kan. Ìṣàkàwé tí ó dájú fún cryptography, àtúndá kíákíá.
Olùpàdé Àwọ̀ àti Olùṣẹ̀dá Palette
Yan àwọn àwọ̀, yí padà láàárín HEX/RGB/HSL, tí o sì ṣẹ̀dá àwọn palette tó báramu.