ãã¹ã¯ãŒãã»ãã¥ãªãã£ã®ä»çµã¿
ãã¹ã¯ãŒãã®åŒ·åºŠã¯çµå±äžã€ã®ããšããšã³ããããŒã«å°œãããæ»æè ã詊ãå¿ èŠã®ããçµã¿åããæ°ã ãå°æåã®ã¿ã®12æåãã¹ã¯ãŒãã¯çŽ56ãããã®ãšã³ããããŒïŒ26^12éãïŒã倧æåãæ°åãèšå·ã远å ãããšåã12æåã§çŽ79ãããïŒ95^12ïŒã«è·³ãäžãããããã¯ãæ°æéã§è§£èªããšãæ°äžçŽããããã®éãã
èšç®ã¯åçŽïŒãšã³ããã㌠= é·ã à log2(æåããŒã«ãµã€ãº)ã95æåã®ASCIIã»ããå šäœã䜿ã£ã16æåãã¹ã¯ãŒãã¯çŽ105ãããã®ãšã³ããããŒãåèãŸã§ã«ããããã³ã€ã³ã®ç§å¯éµã¯256ããããNetflixã®ãã¹ã¯ãŒãã¯ãããŸã§åŒ·ããªããŠãããããã¹ã¿ãŒãã¹ã¯ãŒãã¯80ããã以äžãç®æãã¹ãã
NIST SP 800-63BïŒç±³åœæ¿åºã®ããžã¿ã«IDæéã2024幎æçµæŽæ°ïŒã¯ã90æ¥ããšã«å€æŽããšããã¢ããã€ã¹ã廿¢ãããçŸåšã®æšå¥šïŒãã¹ã¯ãŒãã¯é·ãïŒæäœ8ãæšå¥š15+ïŒãä»»æã®è€éãã«ãŒã«ã匷å¶ããªããæ¢ç¥ã®æŒæŽ©ãã¹ã¯ãŒããªã¹ããšç §åãããé·ãã¯åžžã«è€éãã«åãã
äœ¿ãæ¹
- 1é·ããèšå®ãããã»ãšãã©ã®ã¢ã«ãŠã³ãã«ã¯16æåãããã©ã«ããšããŠé©åã
- 2æåã¿ã€ãã®ãªã³/ãªããåãæ¿ãããµã€ãã«å€ãªå¶éããªãéã4çš®é¡ãã¹ãŠãªã³ã
- 3çæãã¯ãªãã¯ãcrypto.getRandomValues()ã§äœæãããMath.random()ã§ã¯ãªãã
- 4ã³ããŒããŠãã¹ã¯ãŒããããŒãžã£ãŒã«ä¿åãã©ã³ãã ãã¹ã¯ãŒããæèšããããšããªãããšã
䜿çšå Žé¢
æ°ããã¢ã«ãŠã³ãã®èšå®
16-20æåã®ãŠããŒã¯ãªãã¹ã¯ãŒããçæããç»é²ãã©ãŒã ã«è²Œãä»ãããã¹ã¯ãŒããããŒãžã£ãŒã«ä¿åã10ç§ã§å®äºãäºåºŠãšèããå¿ èŠãªãã
APIããŒãšããŒã¯ã³ã®äœæ
APIã·ãŒã¯ã¬ãããWebhook眲åããŒãJWTã·ãŒã¯ã¬ããçšã®ã©ã³ãã æååãå¿ èŠïŒå šæåã¿ã€ãã§32-64æåãçæãæè¡çã«ã¯ããã¹ã¯ãŒããã§ã¯ãªããçææ¹æ³ã¯åãã
ã²ã¹ãçšWiFiãã¹ã¯ãŒã
çŽããããæåãªãïŒ0/Oã1/l/Iãé€å€ïŒã®10-12æåãã¹ã¯ãŒããçæãã«ãŒã¿ãŒã«è²Œã£ãçŽããå®éã«ã¿ã€ãã§ããããã«ã
æŒæŽ©ãããã¹ã¯ãŒãã®çœ®ãæã
HaveIBeenPwnedããã©ãŠã¶ããããã¹ã¯ãŒããããŒã¿æŒæŽ©ã«å«ãŸããŠããŸããéç¥ãåããïŒããã«æ°ãããã®ãçæãå€ããã¹ã¯ãŒãã®æ«å°Ÿã«ã2ãã远å ããã ãã¯ãã¡ã
ãã¹ã¯ãŒãã»ãã¥ãªãã£ã§æ¬åœã«éèŠãªããš
é·ã > è€éããåžžã«
ãTr0ub4dor&3ãïŒ11æåãè€éã«èŠããïŒã¯èŸæžèªããŒã¹ã®äºæž¬å¯èœãªçœ®æãªã®ã§çŽ28ãããã®ãšã³ããããŒãããªããã©ã³ãã ãª16æåå šæåã¿ã€ãïŒçŽ105ãããããèŠãã«ããããšãè§£èªãã«ããããæ··åããªãããšã
ãã¹ã¯ãŒããããŒãžã£ãŒã䜿ãããšãæ¬æ°ã§
ã©ã³ãã ãã¹ã¯ãŒããçæããŠãããªãïŒãããã¹ãïŒãæèšã¯äžå¯èœã1PasswordãBitwardenãKeePassã䜿ãããã¹ã¿ãŒãã¹ã¯ãŒãã¯å¯äžæèšãããã®ã§ã5èªä»¥äžã®ã©ã³ãã ãªãã¹ãã¬ãŒãºã«ããã
ãµã€ãéã§ãã¹ã¯ãŒãã絶察ã«äœ¿ãåããªã
LinkedInãæŒæŽ©ããæïŒå®éã«èµ·ããã2012幎ã«1.17åãã¹ã¯ãŒãæµåºïŒãæ»æè ã¯ãã®èªèšŒæ å ±ãä»ã®ãã¹ãŠã®ãµã€ãã§è©ŠããLinkedInã®ãã¹ã¯ãŒããGmailãšåãã ã£ãããã¡ãŒã«ã倱ãããµã€ãããšã«ãŠããŒã¯ãªãã¹ã¯ãŒãã¯äº€æžã®äœå°ãªãã
éèŠãªã¢ã«ãŠã³ãã§2FAãæå¹ã«ãã
å®ç§ãªãã¹ã¯ãŒãã§ããã£ãã·ã³ã°ãããå¯èœæ§ããããäºèŠçŽ èªèšŒïŒAuthyã®ãããªTOTPã¢ããªããŸãã¯YubiKeyã®ãããªããŒããŠã§ã¢ããŒïŒã¯ãçãŸãããã¹ã¯ãŒãã ãã§ã¯äžååã«ãããæäœéã¡ãŒã«ãéè¡ãã¯ã©ãŠãã¢ã«ãŠã³ãã§æå¹ã«ã
åºåäŸ
æšæºçãªåŒ·åãã¹ã¯ãŒãïŒ16æåãå šã¿ã€ãïŒ
ã»ãšãã©ã®ãªã³ã©ã€ã³ã¢ã«ãŠã³ãã«é©åãçŽ105ãããã®ãšã³ããããŒã
Input
é·ã: 16, 倧æå: â, å°æå: â, æ°å: â, èšå·: âOutput
k7#Qm9$vLx2&pN4wWiFiåããã¹ã¯ãŒãïŒ12æåãçŽããããæåãªãïŒ
å°å·ããã«ãŒãããèªã¿ãããã¿ã€ãããããã0/O/l/1/Iãé€å€ã
Input
é·ã: 12, 倧æå: â, å°æå: â, æ°å: â, èšå·: â, çŽããããæåé€å€: âOutput
Kx7mR4nP9wBtæ©èœ
- crypto.getRandomValues()ã䜿çšããMath.random()ã§ã¯ãªãïŒåŸè ã¯äºæž¬å¯èœïŒ
- 8ã64æåã®èª¿æŽå¯èœãªé·ã
- 倧æåãå°æåãæ°åãèšå·ãåå¥ã«åãæ¿ã
- 匷床ã¡ãŒã¿ãŒãå®éã®ãšã³ããããŒïŒãããïŒã衚瀺
- ã¯ã³ã¯ãªãã¯ã³ããŒã§ãã¯ãªããããŒãå±¥æŽã«æ®ããªã
- ããŒãžèªã¿èŸŒã¿åŸã¯ãªãã©ã€ã³ã§åäœãããããã¯ãŒã¯ãªã¯ãšã¹ããŒã
ãããã質å
2026幎ããã¹ã¯ãŒãã¯ã©ã®ãããã®é·ããå¿
èŠïŒ
éèŠãªã¢ã«ãŠã³ãïŒã¡ãŒã«ãéè¡ïŒã¯æäœ16æåãäœäŸ¡å€ã¢ã«ãŠã³ãã¯12æåã§èš±å®¹ç¯å²ããµã€ãã8æåã«å¶éããŠããå ŽåïŒäžéšã®éè¡ã¯ãŸã ããïŒãããèªäœãã»ãã¥ãªãã£ã®èµ€ä¿¡å·ã ããèš±å¯ãããæå€§é·ã§å šæåã¿ã€ãã䜿ãã
ãã¹ãã¬ãŒãºã¯ã©ã³ãã ãã¹ã¯ãŒãããè¯ãïŒ
ãã¹ã¿ãŒãã¹ã¯ãŒãïŒæèšããå¯äžã®ãã®ïŒã«ã¯ãã¯ãã5èªä»¥äžã®æ¬åœã«ã©ã³ãã ãªåèªã®ãã¹ãã¬ãŒãºã¯èŠããããéåžžã«åŒ·åããã以å€ã¯ãã¹ãŠãã¹ã¯ãŒããããŒãžã£ãŒã«ã©ã³ãã æååãçæã»ä¿åãããã
匷床ã¡ãŒã¿ãŒã8æåãã¹ã¯ãŒããã匱ãããšèšãã®ã¯ãªãïŒ
å šæåã¿ã€ãã®8æåãã¹ã¯ãŒãã¯çŽ52ãããã®ãšã³ããããŒãçŸä»£ã®GPUã¯æ¯ç§æ°ååã®ããã·ã¥ããã¹ãã§ããããã®é床ã§ã¯52ãããã¯æ°æéãæ°æ¥ã§ãã«ãŒããã©ãŒã¹å¯èœïŒããã·ã¥ã¢ã«ãŽãªãºã ã«ããïŒã80ããã以äžãå¿ èŠã
ãŸã 90æ¥ããšã«ãã¹ã¯ãŒãã倿Žãã¹ãïŒ
ããããNISTã¯æ°å¹Žåã«ãã®æšå¥šã廿¢ããã匷å¶ããŒããŒã·ã§ã³ã¯ãã匱ããã¹ã¯ãŒãã«ã€ãªããïŒäººã ã¯æ«å°Ÿã®æ°åãå¢ããã ãïŒã倿Žããã®ã¯ïŒ(1) æŒæŽ©ã®çãã(2) ãµãŒãã¹ããã®äŸµå®³éç¥ã(3) ã¢ã¯ã»ã¹äžèŠã«ãªã£ã人ãšå ±æããŠããå Žåã®ã¿ã
ç¹å®ã®ãµã€ãèŠä»¶ãæºãããã¹ã¯ãŒããçæã§ããïŒ
ã¯ãããµã€ãã®ã«ãŒã«ã«åãããŠæåã¿ã€ããåãæ¿ãããã倧æå1ã€ä»¥äžãæ°å1ã€ãèšå·1ã€ããå¿ èŠãªããå šã¿ã€ãããªã³ã«ããŠ12æå以äžã§çæããã°éåžž1åç®ã§èŠä»¶ãæºããã
ãã³ããšé¢é£ã¯ãŒã¯ãããŒ
- ãã¹ã¯ãŒãã®ããã·ã¥åãå¿ èŠã§ããïŒå®å šãªä¿åã«äœ¿ããŸããããã·ã¥çæããŒã«.
- ã»ãã·ã§ã³ããŒã¯ã³ãã©ã³ãã ã«çæããŠãããšå®å¿ã§ããUUIDçæããŒã«.
- ãã¹ã¯ãŒããURLçµç±ã§éãå Žåã¯Base64ã䟿å©ãBase64ãšã³ã³ãŒããŒ.
- Wi-Fiãã¹ã¯ãŒããæ¥å®¢ãšå ±æãããªããQRã³ãŒããæè»œã§ããQRã³ãŒãçæããŒã«.