éè¦ãªãã¼ã¿ã®ä¾µå®³ãæ¼æ´©ããããã³ã°ãä¸çä¸ã§é »çºãã¦ãããå人æ å ±ã®ä¸æ£æµåºãé²ããã¼ã«ãåæããç¶ãã¦ããããã®ããã®éè¦ãªææã®ã²ã¨ã¤ãããã¼ã¿ãã¼ã¹ç®¡çã·ã¹ãã ã§ç¥ãããMongoDBã6æ7æ¥ï¼ç±³å½æéï¼ã«çºè¡¨ãããQueryable Encryptionãã ã
ãã®ãMongoDB 6.0ãã®ä¸é¨ã¨ãã¦ãã¬ãã¥ã¼ã§å ¬éããããã¼ã«ã使ãã¨ããã¼ã¿ãã¼ã¹ã®ã¦ã¼ã¶ã¼ã¯ãã¼ã¿ãæå·åãããã¾ã¾ã®ç¶æ ã§æ¤ç´¢ã§ããããã«ãªããæå·æè¡ã®å¦è¡çã®ç¥è¦ã¨ç¾å®ä¸çã®ç°å¢ãæ©æ¸¡ãããææ°ã®çè«ãç¥ããªãã¦ã¼ã¶ã¼ã§ã使ããããã«ãããã®ã ã
éè¦ãªãã¤ã³ãã¨ãã¦Queryable Encryptionã¯ãæ¢åã®ãã¼ã¿ãã¼ã¹ã§ã使ããããã«è¨è¨ããã¦ãããã¤ã¾ããã¦ã¼ã¶ã¼ã¯ãã¼ã«ã®æ©æµãåããããã«ã·ã¹ãã ãåæ§ç¯ããªãã¦ãæ¸ãã
ãã¼ã¿ã¯ãããã¯ã¼ã¯ã移åããéãã¹ãã¬ã¼ã¸ã«ä¿åããã¦ããç¶æ ã«ããã¦ãæå·åããã¦ãã¦è§£èªã§ããªãï¼ããªãã¡ãçã価å¤ã®ãªãï¼ç¶æ ã«ããã¦ãããããã¯ä¼æ¥ããæ¿åºæ©é¢ãå»çæ©é¢ãéè¦ã¤ã³ãã©ã«è³ãã¾ã§åãã ã
ãããããã¼ã¿ãæ£å½ãªçç±ã§ä½¿ç¨ããã¦ããå ´åï¼ä¾ãã°æ£è ã®å»çè¨é²ã調ã¹ãããã¬ã³ã¿ã«ã¼ã®äºç´ãã¨ãéãªã©ï¼ã«ã¯ãããããä¿è·ãã¯ããããã¨ã¯ãªããã¤ã¾ããæ»æè ï¼æªæããå¾æ¥å¡ãå«ã¾ããï¼ã¯ãå»å¸«ãã«ã¹ã¿ãã¼ãµã¼ãã¹ã®ã¹ã¿ããã¨åãæ¹æ³ã§ãã¼ã¿ã«ã¢ã¯ã»ã¹ã§ããå¯è½æ§ãããã
ããã¯èª°ãã解決ãããã¨æã£ã¦ããé£é¡ã ããã¼ã¿ãã¼ã¹ãæãããMongoDBãé·å¹´ã«ããã£ã¦å®ç¾å¯è½ãªè§£æ±ºçã«åãçµãã§ããããã®ã»ã©ãææãå¾ããããã¨ã®çºè¡¨ã«è³ã£ãã®ã§ããã
ãããã¯ã¾ãã«é¡§å®¢ãæãã§ãããã®ã§ããããããã¡ã¯å¤§æéè¡ãå¹´éåºéãåå¼æã決æ¸ãããã¯ã¼ã¯ããã¶ãã§ã¼ã³ãªã©ãã¯ã©ã¤ã¢ã³ãã¨ãã¦ãã¾ããã誰ãããã¼ã¿ã®ç¢ºå®ãªä¿è·ãæãã§ãã¾ããã¨ãMongoDBã®ã»ãã¥ãªãã£ãçµ±æ¬ããã±ã³ã»ãã¯ã¤ãã¯è¨ãããå®ç¨çãªã¨ã³ã¸ãã¢ãªã³ã°ã§é£èºçãªé²å±ãå¾ããããã¨ãããå¦è¡çãªç¥è¦ã大è¦æ¨¡ãªãã¼ã¿ãã¼ã¹ã§å®éã«ä½¿ãããã®ã«ã§ããã®ã§ãã
ä¾ãã°ãéè¡ã«Queryable Encryptionãé©ç¨ããã¨ãã·ã¹ãã ã«è¦åãåºãå ·ä½çãªæ¥ä»ãå¾æ¥å¡ãç¥ããã¨ãªããä¸å®æéã®ä¸æ£ã«ã¤ãã¦é¡§å®¢ã®å£åº§ã調ã¹ããã¨ãã§ãããã«ã¹ã¿ãã¼ãµã¼ãã¹ã®å ´åãã¹ã¿ãããç¸æã®æ°åã®æåã®ããã¤ãã®æåã ããå ¥åããæ°åãæå·åãããå¤èªä¸è½ãªç¶æ ã®ã¾ã¾ããã»ã¹ãéå§ã§ããã®ã ã
ããããæè¡çãªé£èºã®å¤ãã¯ããã©ã¦ã³å¤§å¦ã®æå·å¦è ã»ãã¼ã»ã«ãã©ã¨ãã«ãã©ã®é·å¹´ã®ç 究ãã¼ããã¼ã§ããã¿ãªã¯ã»ã ã¿ãºãããããããã®ã ã
ãµããã¯æ°å¹´åãæ¤ç´¢å¯è½ãªæå·åãã¼ã¿ãã¼ã¹ã®ã¹ã¿ã¼ãã¢ããã§ããAroki Systemsãèµ·æ¥è ã®ã¸ã§ã³ã»ãã¼ããªãã¸ã¨ã¨ãã«ç«ã¡ä¸ãããArokiã¯2019å¹´ããã¼ã¿ãã¼ã¹ã®ã»ãã¥ãªãã£æ©è½ã«é¢ãã¦MongoDBã¨ã®ææºãçºè¡¨ããã«ãã©ã¨ã ã¿ãºã¯çã«æ¤ç´¢å¯è½ãªæå·åãã¼ã¿ãã¼ã¹ã®ååã«åãçµãã§ãããMongoDBã¯21å¹´ã«Arokiãè²·åãã¦ããã
ã«ãã©ã¨ã ã¿ãºã¯ãæ§é åæå·ãã¨å¼ã°ããæå·æè¡ã®é åã«é·å¹´ã«ããã£ã¦åãçµãã§ãããQueryable Encryptionã®ã·ã¹ãã ã¯ã確ç«ãããæå·åãããã³ã«ã¨æ¦å¿µã®çºå±ã®çµã¿åããã®ä¸ã«æãç«ã£ã¦ãããåºæã®ã¢ã¼ããã¯ãã£ã¼ã§ãã¼ã¿ãæå·åãããã¨ã§ããã¼ã¿ã復å·ãããã¨ãªããããããã®ã¯ã¨ãªã«ç¹æã®ç¹å¥ãªãã¼ã¯ã³ã§æ¤ç´¢å¯è½ã«ããææ³ã§ããã
ä¸è¬çã«ç¨ãããããæºååæå·ããªã©ã®ææ³ã¯ãæå·åãããã¹ãã¬ããã·ã¼ãã«è¡ã2ã¤è¿½å ãããªã©ãã¦ãæå·åãã¼ã¿ã§ã®æ¼ç®ãå¯è½ã«ãããããã«å¯¾ãã¦æ§é åæå·ã¯ãæå·åãã¼ã¿ã®æ´çã«ç¹åãã¦ããããã¼ã¿èªä½ãæããã¨ãªãè¦ã¤ããããã®ã ã
ãããããã¡ã®ç 究ã®ä¸å¿ã¯æå·åãã¼ã¿ã®æ¼ç®ã®ããæ¹ã§ã¯ãªããã©ãã ãç´ æ©ãæ å ±ãè¦ã¤ãããã«ããã¾ããããªãç´ æ©ãã§ããã¨ããã©ã¦ã³å¤§å¦åææã®ã«ãã©ï¼ç¾å¨ã¯ä¼è·ä¸ï¼ã¯èª¬æããã
æå·æè¡ã®éç¨ã«ããã¦ã¯ã¹ãã¼ãã課é¡ã¨ãªãã確èªãè¨ç®ã追å ããããã³ã«ãåºæ¬çãªéç¨ã®è¤éããå¢ãããã ãããã«å¯¾ãã¦Queryable Encryptionã¯ç®è¦ã¾ããã¹ãã¼ãã§æ¤ç´¢ãå®è¡ã§ããä¸åçãªæ§è½æ失ã¯ãªãã¨MongoDBã¯èª¬æãã¦ããã
ä»åã®ãã¬ãã¥ã¼ã§ã¯ã顧客ãããããç¹ãå®éã«è©¦ããã¨ããããã¾ããå社ã¯Queryable Encryptionã®å¤§é¨åããªã¼ãã³ã½ã¼ã¹ã«ãã¦ããã®ã§ãã¦ã¼ã¶ã¼ãã»ãã®ç 究è ãæè¡çãªåºç¤ã詳ããè¦ããã¨ãã§ããã ããã
ããã®æè¡ã®å¤ãã®é¨åããã¢ã«ã´ãªãºã ãæå·ã»ãã¥ãªãã£ã®è¨è¿°ãªã©ãé«åº¦ãªçè«ã«åºã¥ãã¦ãã¾ãããããã¯æçµçã«ããããä½ããå¼ãåºãããã¨æã£ã¦ãã¾ããã¨ãã«ãã©ã¯è¨ãããç§å¦è ã®æ´»åã®èæ¯ã«ã¯ç¤¾ä¼çãªè¦è«ãããã¾ããMongoDBã®ãããªè¦æ¨¡ã®ä¼ç¤¾ã¨ææºãããã¨ã§é常ã«å¤ã人ã«ä½¿ã£ã¦ããããã¨ãã§ãã¾ãããå¦çããä½æ¥éãå¤ããªãã¾ãã
ã ã¿ãºã¨ã«ãã©ã«ããã¨ãå¦åã®ä¸çããç¾å®ã®ä¸çã¸ã¨ã¢ã¤ãã¢ãé²ãããã¨ãã§ããã®ã¯ãã¨ãã¥ã¬ã¼ã·ã§ã³ã«ããã¨ããã大ããã¨ãããä»®æ³çã«ã³ã³ãã¥ã¼ã¿ã¼ãåä½ãããããã«ç¨ããããã¨ãã¥ã¬ã¼ã¿ã¼ã®æè¡ã®ãããã§ãæ§é åæå·ã®ç¹æ§ãç°ãªãæ§é ã®æ¢åã®ãã¼ã¿ãã¼ã¹ã«é©ç¨ã§ããã®ã ã
ä¾ãããªããPCã§ã¹ã¼ãã¼ãã¡ãã³ã³ã®ã²ã¼ã ãéãã ããMacã§Windowsãåããããããå ´åã¨ä¼¼ã¦ãããããã¨åãããã«ãã¨ãã¥ã¬ã¼ã·ã§ã³ã«ãã£ã¦âæ©æ¸¡ãâã®å½¹å²ãæããã¹ãã¼ã¹ãçã¿åºããå¾æ¥åã®ãã¼ã¿ãã¼ã¹ã®ä¸ä½ã§æ§é åæå·ãå®è¡ã§ããã¨ããããã ã
ã¨ã¯ãããã®ã®ãMongoDBã®æè¡è ã¨ååããªããAroki Systemsã®ååãä¸çä¸ã§å¤§è¦æ¨¡ã«å±éã§ãããã®ã«ããææ¦ã¯ç¶ãã¦ããããã¾ãå¦ã³ã®æä¸ã§ããã¨ãµããã¯å¼·èª¿ããã
ãã»ãã¼ã¨ãããã¯ãç¾å®ä¸çã§å±éããéã®å¶ç´ã«ã¤ãã¦å¤ããå¦ãã§ãã¾ããããããç¹ã¯å¦è¡çã«ã¨ã£ã¦æªç¥ã®é åã§ããã¨ãã ã¿ãºã¯è¨ãããå¦è¡çã®ã¢ãã«ã«ã¯ããã»ã©å¤ãã®å¶ç´ã¯ããã¾ãããããããã¡ã¯å¶ç´ãããç¶æ ãåãå ¥ãã楽ãã¿ãªããã¢ãã«ãè¨è¨ãæ¹åãã¦ããã®ã§ãã
ãããããªãä»åã®çºè¡¨ã¯ãç¾å®ä¸çã«ããã¦Queryable Encryptionã詳細ã«åå³ã§ããåãã¦ã®æ©ä¼ã¨ãªã£ããçºè¡¨ã«å ç«ã¡Aroki Systemsã¯ãååã¨ãªãã·ã¹ãã ã®åºç¤ã«é¢ããæè¡é¢ã§ã®å¯©æ»ããæå·å¦è ã®JPã»ãªã¼ãã½ã³ã«è¨ãã¦ãããããã¦MongoDBã¯ãã·ã«ã´å¤§å¦ã§æå·å¦ãæ¤ç´¢å¯è½ãªæå·ã«ã¤ãã¦ç 究ãã¦ãããã¤ã´ã£ããã»ãã£ãã·ã¥ã«æ©ã段éã§è©ä¾¡ãä¾é ¼ããã
ãªã¼ãã½ã³ã¨ãã£ãã·ã¥ã«ããã¨ãã·ã¹ãã ã®å ¨ä½çãªå±éã«ã¤ãã¦ã¯ã¾ã è©ä¾¡ãæ¸ãã§ããªãã¨ãããã ããQueryable Encryptionãæ¯ãã¦ããæå·æè¡ã¯ç³ãåãªãã¨ããWIREDãã®åæã«èªã£ã¦ãããæ¤ç´¢å¯è½ãªæå·ã®å®ç¨çãªã·ã¹ãã ãã¤ãã«å®æãããã¨ã¯ã¨ã¦ãç´ æ´ãããã¨ããµããã¨ãå説ãã¦ãããã
ã80年代以éã®æå·ç 究ã®å¤ãããQueryable Encryptionã®ãããªã·ã¹ãã ã®å®ç¾ãç®æãã¦ãã¾ãããé·ãå¹´æããããã¾ããããã¨ããã£ãã·ã¥ã¯è¨ãããæå·æè¡ã¯ããããç¹ã§äºå¾èåãå¼·ãããã¾ãããç¾å®ã®ä¸çã¯è¤éã§ããã§ããããæè¨ããããã¨ãè¨ãéã«ã¯æ³¨æããªãã¦ã¯ãªãã¾ãããããã§ããä¸å®ã®ããã¡ã§ã¢ã¤ãã¢ãå®ç¾ããã®ã¯é常ã«åã°ãããã¨ã§ããã¾ããç©ãè¦ãããã¨ã¯ä¸ç·ãç»ãã¦ãã¾ããå½¼ãã¯ã¢ã¤ãã¢ãæ·±ãæãä¸ãã¦ãããéè¦ãªãã¨ããããã£ããã¨èãã¦ãã¾ãã
æ¤ç´¢å¯è½ãªæå·ãæå±ãã¦ããã»ãã®å°é家ã®å¤ãã¯ãæè¡çãªæ·±ã¿ãè½åããªããã®ã°ããã ã¨ãªã¼ãã½ã³ã¯ææããããæå·åæ¤ç´¢ã主張ãã¦ãããããã¯ãã¯ã»ãã«ãããã¾ãããå¦è¡çãªè¦³ç¹ã§ããã¨ãã¹ã¦âç¬ãèâã«ããã¾ãããMongoDBã®è£½åã¯å¦è¡çã®ã墨ä»ãã§ããããããç®ã«ã§ãããã¨ã¯å¤§ããªåã³ã§ãã
ï¼WIRED US/Edit by Daisuke Takimotoï¼
â»ãWIREDãã«ããæå·åã®é¢é£è¨äºã¯ãã¡ãã
æ¯é±ã®ã¤ãã³ãã«ç¡æåå ã§ããï¼
ãWIREDãæ¥æ¬çã®ã¡ã³ãã¼ã·ããä¼å¡ åéä¸ï¼
次ã®10å¹´ãè¦éãããã®ã¤ã³ãµã¤ãï¼æ´å¯ï¼ãè©°ã¾ã£ãé¸ããããã®ãã³ã°ãªã¼ãï¼é·ç·¨è¨äºï¼ããé±æ¿ããã®ãã¼ãã«åããã¦ãå±ãããä¼å¡ãµã¼ãã¹ãWIRED SZ ã¡ã³ãã¼ã·ããããæ¯é±éå¬ã®ã¤ãã³ãã«ç¡æã§åå å¯è½ãªåºæ¿ã«æºã¡ããµã¼ãã¹ã¯ãç¡æãã©ã¤ã¢ã«ãå®æ½ä¸ï¼è©³ç´°ã¯ãã¡ãã