Cookie ã®äœ¿çšã«ã€ããŠ.æ¬ãµã€ãã§ã¯ãåºæ¬æ©èœã®æäŸã«å¿ èŠãªå¿ é Cookie ã䜿çšããŠããŸããããã«ãåæããã ããå Žåã«éããã¢ã¯ã»ã¹è§£æ Cookie ãå©çšããŠå©çšç¶æ³ãææ¡ãããµãŒãã¹æ¹åã«åœ¹ç«ãŠãŸãã詳ãã㯠.
ãã®ããŒã«ã¯äœ¿ããããã£ãã§ããïŒ
ãã£ãŒãããã¯ã¯æ¹åã«åœ¹ç«ã¡ãŸã
åœé åå(IDN)äžASCIIç æ ŒåŒäºèœ¬å·¥å ·ïŒçšäºå€çäžæååçéASCIIå笊ã
æŠèŠ
解決ã§ãã課é¡ãåŠçã®ä»çµã¿ãããŒã¿ã®ç¯å²ã確èªã§ããŸãã
PunycodeïŒãã¥ãã³ãŒãïŒã¯ãUnicodeã®æååãASCIIæåã ãã§è¡šãããã®ç¬Šå·åæ¹åŒã§ããåœéåãã¡ã€ã³åã§ã¯ããã©ãŠã¶ãŒãèšå®ç»é¢ã«èŠããæ¥æ¬èªãªã©ã®è¡šèšãšãASCIIäºæã®ãxn--ã圢åŒã確èªãããšãã«äœ¿ãããŸããããšãã° bÃŒcher.example 㯠xn--bcher-kva.example ã«ãªããŸãããããã§åãããåã©ãã«ãåå¥ã«æ±ããããASCIIã ãã® example ã¯ãã®ãŸãŸæ®ãã倿ãå¿
èŠãªã©ãã«ã«ã ã xn-- ãä»ããŸãã
ããã§è¡ãã®ã¯æååã®ãšã³ã³ãŒããŸãã¯ãã³ãŒãã§ããå ¥åã¯åç¬ã®ã©ãã«ã§ãããããåºåãã®ãã¡ã€ã³åã§ãæ§ããŸãããå€æçµæããç»é²ç¶æ³ãDNSã®å¿çãç¥ãããšã¯ã§ããŸããã
RFC 3492ã¯Punycodeã®ç¬Šå·åã¢ã«ãŽãªãºã ãå®ããŠããŸããäžæ¹ãåœéåãã¡ã€ã³åãç»é²ã»æ€çŽ¢ããããã®IDNAã¯ãæåã®é©æ Œæ§ãªã©ãå«ãå¥ã®ãããã³ã«ã§ãããããã£ãŠãPunycodeãžå€æã§ããããšã ãã§ã¯ããã®ååãIDNAã®èŠåã«åããç»é²ã§ãããå®éã«æ¥ç¶ã§ãããšããæå³ã«ã¯ãªããŸããã
RFC 3492ã®å®çŸ©ã¯RFC 3492ã§ãIDNAã®ãããã³ã«äžã®ç¯å²ã¯RFC 5891ã§ç¢ºèªã§ããŸããã©ã¡ããIETFã®æšæºææžã§ãïŒ2026幎10æ1æ¥ç¢ºèªïŒã
äœ¿ãæ¹
æé ã«æ²¿ã£ãŠæäœããäŸã䜿ã£ãŠå ¥åãšçµæã確èªããŸãã
Unicode衚èšãASCIIäºæè¡šèšã«ãããå Žåã¯ãšã³ã³ãŒããxn--ããå§ãŸãã©ãã«ãèªããæåã«æ»ãããå Žåã¯ãã³ãŒããéžã³ãŸããå
¥åãèŠãŠæ¹åãèªåå€å®ããæ¹åŒã§ã¯ãããŸããã
äŸãšã㊠äŸã.jp ã®ãããªãã¡ã€ã³åããŸãã¯åäžã©ãã«ãå
¥åããŸããURLãã䜿ãå Žåã¯ãã¹ãåã ããæ®ããhttps://ãããŒãçªå·ããã¹ãã¯ãšãªãåãé€ããŠãã ãããã¡ãŒã«ã¢ãã¬ã¹ãå
¥å察象å€ã§ãã
çµæã§ã¯ãéASCIIæåãå«ãã©ãã«ãšASCIIã®ãŸãŸã®ã©ãã«ãããããã©ã衚ããããã確èªããŸããå ¥åã®ååŸã®ç©ºçœã¯é€ãããæ¥æ¬èªã®å¥ç¹ãªã©äžéšã®ãã¡ã€ã³åºåãæåã¯ASCIIã®ããªãªããšããŠæ±ãããŸããæ«å°Ÿã®ããªãªãã¯ã«ãŒãã瀺ã衚èšãšããŠä¿æãããŸãã
DNSãèšŒææžãªã©ã®èšå®æ¬ã«äœ¿ãå Žåã¯ãæåºå ãæ±ãã衚èšã確èªããŠããã³ããŒããŸããèšå®å ã§è¿œå ã®IDNAæ€æ»ãæåå¶éã®ç¢ºèªãå¿ èŠãã䜵ããŠç¢ºãããŠãã ããã
掻çšäŸ
ä»äºãæ¥åžžã®æµãã®äžã§ã®æŽ»ç𿹿³ã玹ä»ããŸãã
æ¥æ¬èªãå«ããã¡ã€ã³ãDNSãèšŒææžã®èšå®ç»é¢ãžå ¥åããæ åœè ã¯ãå¿ èŠã«å¿ããŠASCII衚èšãäœããå ã®åã©ãã«ãšå¯Ÿå¿ããŠããã確èªã§ããŸããæåºå ç¬èªã®æ€æ»ã¯å¥ã«è¡ããŸãã
ãã°ãèšå®ãã¡ã€ã«ã«ãã xn-- ä»ãã®ãã¡ã€ã³ãèªãå¿
èŠããããšãããã³ãŒãããŠå
ã®Unicode衚èšã確èªã§ããŸããçµæãèŠãŠã¢ã¯ã»ã¹å
ã®å®å
šæ§ãŸã§å€æããªãã§ãã ããã
æ¥æ¬èªã©ãã«ãšè±åã©ãã«ãå«ããã¡ã€ã³ããšã³ã³ãŒãããã©ã®éšåã«æ¥é èŸãä»ããã芳å¯ã§ããŸããRFC 3492ã®ã¢ã«ãŽãªãºã ãåŠã¶ããã®äŸãšããŠäœ¿ããŸãã
Q&A
ããããçåãè¿·ããããç¹ããŸãšããŠç¢ºèªã§ããŸãã
ã§ããŸããããããã³ã«ãããŒãããã¹ãã¯ãšãªãã¡ãŒã«ã¢ãã¬ã¹ã®èšå·ã¯åãä»ããŸãããURLã®å Žåã¯ãã¹ãåã ããåãåºããŠå ¥åããŠãã ããã
ASCIIæåã ãã®ã©ãã«ã¯ãã®ãŸãŸéãããã§ããéASCIIæåãå«ãã©ãã«ããšã«ç¬Šå·åãããã®ã§ããã¡ã€ã³å šäœãäžåŸã«æžãæããããã§ã¯ãããŸããã
ããã ãã§ã¯å€æã§ããŸãããPunycodeã¯æå衚çŸã倿ããåŠçã§ããIDNAã®é©æ Œæ§ãã¬ãžã¹ããªã®ç»é²æ¡ä»¶ãç»é²ç¶æ³ãDNSã®èšå®ãå¿çã¯ããããå¥ã«ç¢ºèªããŠãã ããã
ãããããã³ãŒãçµæã¯å ¥åãããASCII衚èšã衚ãUnicodeæååã§ããèŠãç®ã®äŒŒãæåã䜿ãçŽããããååããå®éã®éå¶è ã»ãµã€ãã®å®å šæ§ãå€å®ãããã®ã§ã¯ãããŸããã
泚æ
å©çšç¯å²ãçµæã®å¶éãå¿ èŠãªæ³šæç¹ãäºåã«ç¢ºèªããŸãã
ãã®ããŒãžã¯RFC 3492ã®Punycode倿ãè¡ããŸãããIDNAå šäœã®æåãããã³ã°ã驿 Œæ§å€å®ãç»é²å¯åŠãåå解決ãŸã§ã¯ç¢ºèªããŸãããDNSã©ãã«ã®é·ããæåäœ¿çšæ¡ä»¶ãªã©ãèšå®å ã»ã¬ãžã¹ããªã»å©çšç°å¢ã§å¿ èŠãšãªã確èªãçç¥ããªãã§ãã ããã
æ¥æ¬èªãã¡ã€ã³ã«ã¯èŠãç®ã䌌ãŠããŠãç°ãªãæåãå«ãŸããå ŽåããããŸãããªã³ã¯ã®çæ£æ§ããµã€ãéå¶è ã確èªãããšãã¯ã倿åŸã®è¡šç€ºã ããæ ¹æ ã«ãããä¿¡é Œã§ããå¥ã®çµè·¯ã§ç §åããŠãã ããã
é¢é£
é¢é£ããŒã«ãç¹éãå©çšå¯èœãªAPIãæ¢ããŸãã