ð Base64ãšã³ã³ãŒã/ãã³ãŒã
ããã¹ããBase64圢åŒã«ãšã³ã³ãŒãããŸãã¯Base64æååãå ã®ããã¹ãã«ãã³ãŒãã§ããããŒã«ã§ããAPIã®BasicèªèšŒããããŒãããŒã¿ã®äžæçãªé£èªåãèšå®ãã¡ã€ã«ãžã®åã蟌ã¿ãªã©ã«äœ¿ããŸãã
äœ¿ãæ¹
- ããšã³ã³ãŒãããŸãã¯ããã³ãŒããã®ã¢ãŒããéžã³ãŸãã
- å ¥åæ¬ã«ããã¹ããŸãã¯Base64æååã貌ãä»ããŸãã
- å®è¡ãã¿ã³ãæŒããšå€æçµæã衚瀺ãããŸãã
- ãã³ããŒããã¿ã³ã§çµæãã¯ãªããããŒãã«ã³ããŒããŸãã
èšç®ã®ä»çµã¿
Base64ã¯ããã€ããªããŒã¿ãè±æ°åãšã+ãã/ãã ãã®64çš®é¡ã®æåã§è¡šããšã³ã³ãŒãæ¹åŒã§ãã仿§ã¯ RFC 4648 ã§å®ããããŠããŸãã3ãã€ãïŒ24ãããïŒã6ããããã€4ã€ã«åããããããã64çš®é¡ã®æåã«çœ®ãæããŸããæåŸã3ãã€ãã«æºããªãå Žåã¯ãè¶³ããªãåãã=ãã§åããŠ4æååäœã«æããŸãã ããã¹ããBase64ã«ããã«ã¯ããŸãæåããã€ãåã«çŽãå¿ èŠããããŸãããã®ããŒã«ã¯æåãUTF-8ã§ãã€ãåã«å€æããŠãããšã³ã³ãŒããããã³ãŒãæãåŸããããã€ãåãUTF-8ãšããŠèªã¿æ»ããŸãããã®ããæ¥æ¬èªãªã©ã®ãã«ããã€ãæåãæ±ããŸããUTF-8ã§ã¯æ¥æ¬èªã®ã²ãããªã挢åã®å€ãã1æå3ãã€ãã«ãªããŸãã Base64ã¯æå·ã§ã¯ãããŸããã誰ã§ãåãæé ã§å ã«æ»ããããããã¹ã¯ãŒããªã©ã®ç§å¯ãå®ãç®çã«ã¯äœ¿ããŸããã
èšç®äŸ
ãHiãããšã³ã³ãŒãããå Žå ãHããiãã¯2ãã€ããªã®ã§ã3ãã€ãã«1ãã€ãè¶³ããŸãããçµæã¯ãSGk=ããšãªããè¶³ããªãåãã=ãã§åããããŸãã ãããã«ã¡ã¯ãããšã³ã³ãŒãããå Žå UTF-8ã§5æå à 3ãã€ã = 15ãã€ãã15 ÷ 3 à 4 = 20æå çµæïŒ44GT44KT44Gr44Gh44Gv
䜿çšäžã®æ³šæ
- Base64ã¯æå·åã§ã¯ãããŸãããç§å¿ãå¿ èŠãªããŒã¿ã®ä¿è·ã«ã¯äœ¿ããªãã§ãã ããã
- ãšã³ã³ãŒãåŸã®ããŒã¿ã¯å ã®çŽ4/3åïŒçŽ33%å¢ïŒã®é·ãã«ãªããŸãã
- URLã«å«ããå Žåã¯ã+ãã/ããåé¡ã«ãªããããã-ãã_ãã䜿ãBase64URL圢åŒã䜿ã£ãŠãã ããã
- ãã³ãŒãã§ããªãå Žåã¯ãéäžã«ç©ºçœãæ¹è¡ãBase64以å€ã®æåãå«ãŸããŠããªãã確èªããŠãã ããã
ãããã質å
Base64ã¯æå·åã§ãã?
ããããBase64ã¯æå·åã§ã¯ãªããšã³ã³ãŒã(笊å·å)ã§ãã誰ã§ãç°¡åã«ãã³ãŒãã§ãããããç§å¿æ§ãå¿ èŠãªããŒã¿ã«ã¯äœ¿ããªãã§ãã ããã
æ¥æ¬èªãªã©ãã«ããã€ãæåããšã³ã³ãŒãã§ããŸãã?
ã¯ããUTF-8ãšããŠæ±ããããããæ¥æ¬èªãå«ãä»»æã®ããã¹ãããšã³ã³ãŒãã»ãã³ãŒãã§ããŸãã
BasicèªèšŒã®ããããŒäœæã«äœ¿ããŸãã?
ã¯ããããŠãŒã¶ãŒå:ãã¹ã¯ãŒããã®åœ¢åŒã§ããã¹ãããšã³ã³ãŒãããã°ãAuthorization: BasicããããŒã«äœ¿ãå€ãäœæã§ããŸãã
ãã³ãŒãã«å€±æããå Žåã¯?
å ¥åãæ£ããBase64æååã§ãªãå Žåã«ãšã©ãŒã衚瀺ãããŸããäœåãªç©ºçœãæ¹è¡ãå«ãŸããŠããªãã確èªããŠãã ããã
å ¥åããããã¹ãã¯ãµãŒããŒã«éä¿¡ãããŸãã?
ãããããšã³ã³ãŒãã»ãã³ãŒãã¯ãã¹ãŠãã©ãŠã¶å ã§è¡ãããå€éšã«éä¿¡ãããããšã¯ãããŸããã