
ãããããããåäžçŽã®90幎代ã«ãæé·ãç¶ããèªåè»åžå Žã§ã¯ãæ·±å»ãªçé£é²æ¢ã·ã¹ãã ïŒä»¥äžãã€ã¢ãã©ã€ã¶ãŒãšåŒã³ãŸãïŒãåå®ã«å¿
èŠã§ããã åœæã®èªåè»æ³¥æ£ã«ãšã£ãŠã¯ãããŒãæ©æ¢°çã«ã³ããŒããããããŒããŸã£ãã䜿çšããã«ãšã³ãžã³ãå§åãããããããã®ç¹å¥ãªé害ã¯ãããŸããã§ããã ãšã³ãžã³ãå§åããããã»ã¹ãããã«è€éã«ãããã€ãã£ãã®ã€ã°ããã·ã§ã³ããŒãªãã§è»ãããã«çãããšãã§ããã€ã¢ãã©ã€ã¶ãŒãå¿
èŠã§ããã
ãã®æãã³ã³ãã¯ããªç¡ç·ã¢ãžã¥ãŒã«ïŒä»¥äžããã©ã³ã¹ãã³ããŒãšåŒã³ãŸãïŒãäœæãããšããã¢ã€ãã¢ãæµ®ãã³ãŸãããããã¯ãè»ã®ã€ã°ããã·ã§ã³ããŒã«çŽæ¥çµã¿èŸŒãŸããŸããã è»ã«ã¯ãã€ã¢ãã©ã€ã¶ãŒãèšçœ®ãããç¡ç·ãã£ãã«ãä»ããŠãã©ã³ã¹ãã³ããŒãšéä¿¡ããŸããã ã€ã¢ãã©ã€ã¶ãŒã¯ãã©ã³ã¹ãã³ããŒã«ãªã¯ãšã¹ããéä¿¡ãããã©ã³ã¹ãã³ããŒã¯ç¹å®ã®ã³ãŒãã§å¿çããŸãããããããªãã§ã¯ã€ã¢ãã©ã€ã¶ãŒã¯ãšã³ãžã³ã®å§åãèš±å¯ããŸããã§ããã ãã ããæåã¯ãã©ã³ã¹ãã³ããŒã¯ãŸã ããªãåå§çã§ãããã€ã¹ãæ¯èŒçç°¡åã«è€è£œã§ããŸããã 亀æã¢ã«ãŽãªãºã ãç解ãããã©ã³ã¹ãã³ãã®å¿çãã·ãã¥ã¬ãŒãããã«ã¯ãè©ã«ã©ãžãªã€ã³ã¿ãŒã»ãã¿ãŒãšã©ã€ãããããããã°ååã§ãã ã€ã¢ãã©ã€ã¶ãŒãšãã©ã³ã¹ãã³ããŒéã®éä¿¡ã¢ã«ãŽãªãºã ã®æ ¹æ¬çãªå€æŽãå¿
èŠã§ããã
ä»æ¥ã¯ããããã®ã¢ã«ãŽãªãºã ã®ããããã®åºçŸãšãã®åŸã®ãããã³ã°ã®æŽå²ãããã³ç§å¯æå·åããŒã®ãã«ãŒããã©ãŒã¹ããã»ã¹ã®å®éã®è©³çŽ°ã«ã€ããŠèª¬æããŸãã
ããã«ãå¿
èŠã«å¿ããŠè©³çŽ°ã«èª¿ã¹ãããšãã§ããããã«ããã¹ãŠã®åçãã¯ãªãã¯ã§ããŸãã
ããŒã1ïŒãã€ãã£ãã¢ã¡ãªã«ã³ãžã§ãŒ
ãã®ãããéèŠã¯äŸçµŠãçã¿åºããŸããããŒã¿ãç¡ç·ã§éä¿¡ããããã»ã¹ã§æå·åã䜿çšããã·ã¹ãã ãåŸã
ã«åžå Žã«ç»å Žãå§ããŸããã å®éããããã®ã·ã¹ãã ã¯ãéµã®ææè
ãã¯ã€ã€ã¬ã¹ã§èå¥ããããã»ã¹ãå®è¡ããŸããã åæã«ããã©ã³ã¹ãã³ããŒã«ä¿åãããç§å¯éµã¯ã©ã®ãããªåœ¢åŒã§ããããŒããã£ã¹ããããŸããã§ããããã€ã¢ãã©ã€ã¶ãŒããåä¿¡ããèŠæ±ã®æå·åã眲åãã«äœ¿çšãããŸããã ãããã®ã·ã¹ãã ã®1ã€ã¯ããããµã¹ã€ã³ã¹ãã«ã¡ã³ãã®ãšã³ãžãã¢ã«ãã£ãŠéçºãããŸããã 圌ããéçºãã
ãã©ã³ã¹ãã³ããŒã¯ã
ããžã¿ã«çœ²åãã©ã³ã¹ãã³ã㌠ïŒDSTãšç¥ãããŸãïŒãšåŒã°ããŠããŸããã

DSTãã©ã³ã¹ãã³ããŒã¯éåžžã«å°åã§ããããšãå€æãããããèªåè»ã®ã€ã°ããã·ã§ã³ããŒãããŒãã§ãŒã³ãªã©ãåé¡ãªãããŸããŸãªã³ã³ãã¯ãããŒã¯ã³ã«çµ±åã§ããŸããã äžã®åçã§ã¯ããã¬ãŒãã®è¿ãã®ãã³ãã«ã«ããã©ã³ã¹ãã³ããŒãããŒã®å
åŽã«é
眮ãããŠãããã©ââã°ã§éããããç©ŽããããŸãã ãããŠããã®èšèšã§ããã·ã¥ã¹ããŒã ã䜿çšãããšãç¡ç·ã¹ãããã£ã³ã°ããã»ã¹ãå®å
šã«åœ¹ã«ç«ããªããªããŸããïŒãã°ããã®é-ããããåŸã§ããã«ïŒã ã
ãã©ã³ã¹ãã³ããŒã¯ã次ã®äž»èŠã³ã³ããŒãã³ãã§æ§æãããŠããŸãã

- ã¢ã³ããããã³ãã©ã³ã·ãŒããŒïŒä»¥éããã©ã³ã·ãŒããŒãšåŒã³ãŸãïŒïŒãã©ã³ã¹ãã³ããŒã«é»åãäŸçµŠããç¡ç·ãã£ãã«ãä»ããŠåºå°å±ãšéä¿¡ããããã«èšèšãããŠããŸãã
- æå·åã¹ããŒã ïŒåºå°å±ããåä¿¡ãããªã¯ãšã¹ããããã·ã¥ããããã«èšèšãããŠããŸãã
- äžæ®çºæ§ã®æžãæãå¯èœãªã¡ã¢ãªïŒæå·åããŒãšããã€ãã®è¿œå ãã©ã¡ãŒã¿ãŒïŒãã©ã³ã¹ãã³ããŒã®ã·ãªã¢ã«çªå·ãã¡ãŒã«ãŒIDãªã©ïŒãä¿åããããã«èšèšãããŠããŸãã
ãã©ã³ã¹ãã³ããŒã¯ãããã°ã©ããŒã«çŽæ¥æ¥ç¶ããããšãªããç¡ç·ã§ããã°ã©ã ãããŸãã ã»ãšãã©ãã¹ãŠã®æ
å ±ãäžæžãã§ããŸãããæžã蟌ã¿ä¿è·ããããèšå®ãããŠããªãå Žåã®ã¿ã§ãã èšé²ããããã©ã³ã¹ãã³ããŒã¯ãè¿œå ã®ããã€ã¹ã䜿çšããã«ããŒã¹ã¹ããŒã·ã§ã³ã«ç°¡åã«ãªã³ã¯ã§ããŸãïŒåææ¡ä»¶ã¯ããã©ã³ã¹ãã³ããŒãšããŒã¹ã¹ããŒã·ã§ã³ã®ã¡ãŒã«ãŒIDã®äžèŽã§ãïŒã
ã¯ã€ã€ã¬ã¹èªèšŒã·ã¹ãã å
šäœã®ã¢ã«ãŽãªãºã ã¯æ¬¡ã®ãšããã§ãã

- åºå°å±ã¯ãåºå°å±ãã©ã³ã·ãŒããŒã®ã«ãã¬ããžãšãªã¢ã«ãããã©ã³ã¹ãã³ããŒã®é»ååè·¯å
šäœã«é»åãäŸçµŠããã®ã«ååãªé»åãšæéã®ç¡å€èª¿ç¡ç·ä¿¡å·ãéä¿¡ããŸãã
- åºå°å±ã¯ãä¹±æ°çºçåšã䜿çšããŠã40ãããã®èŠæ±ãçæãããããä¿åããç¡ç·ä¿¡å·ã®æ¯å¹
å€èª¿ã䜿çšããŠãããŒããã£ã¹ãããŸãã
- ãã©ã³ã·ãŒããŒã¯ãã°ããã®éãå€èª¿ãããŠããªãç¡ç·ä¿¡å·ãçºä¿¡ããŸãããã®ããããã©ã³ã¹ãã³ããŒã¯èšç®æäœãå®è¡ããã®ã«ååãªé»åãæã£ãŠããŸãã
- åºå°å±ããèŠæ±ãåä¿¡ãããšããã©ã³ã¹ãã³ãã¯ãäžæ®çºæ§ã¡ã¢ãªã«ä¿åãããŠãã40ãããæå·åããŒã䜿çšããŠDST40ã¢ã«ãŽãªãºã ã«åŸã£ãŠããã·ã¥ãå®è¡ããŸããçµæã¯ããããã眲åãã§ãã
- ãã©ã³ã¹ãã³ããŒã¯ãããžã¿ã«çœ²åãšãµãŒãã¹æ
å ±ãåºå°å±ã«éä¿¡ããŸãã
- åºå°å±ã¯ãæ ŒçŽãããŠããã®ãšåãæå·åããŒã䜿çšããŠãã©ã³ã¹ãã³ããŒã«éä¿¡ãããèŠæ±ãããã·ã¥ããŸããçµæããã©ã³ã¹ãã³ããŒããåä¿¡ããçµæãšäžèŽããå ŽåãèªèšŒã¯æåãããšèŠãªãããŸãã ãã®ããŒã¹ã¹ããŒã·ã§ã³ãè»ã®ã€ã¢ãã©ã€ã¶ãŒãšããŠäœ¿çšãããŠããå ŽåãèªèšŒã«æåãããšããšã³ãžã³ãèµ·åããèš±å¯ãè»ã®äžå€®ã³ã³ãã¥ãŒã¿ãŒã«éä¿¡ããŸãã
éçºãšã³ãžãã¢ã®èæ
®äºé
ãäœã«åºã¥ããŠããã®ãã¯æ確ã§ã¯ãããŸããããäºå®ã¯æ®ã£ãŠããŸãïŒããã·ã¥ããã»ã¹ã§äœ¿çšãããæå·åããŒã®é·ãã¯ããã40ãããã§ãïŒããããã¢ã«ãŽãªãºã ãDST40ãšåŒã°ããçç±ã§ãïŒã ææ°ã®èŠ³ç¹ããèŠããšããã®ãããªæå·åããŒã®é·ãã¯ãå°ãªããšãããçšåºŠã®ã»ãã¥ãªãã£ã確ä¿ããã«ã¯å®å
šã«äžååã§ãã ããããåœæãéçºãšã³ãžãã¢ã¯ããã¯æããªãã£ãããã§ãã ããã«ãDST40ã¢ã«ãŽãªãºã ã¯å®å
šã«ç¬èªä»æ§ã§ãããæãå³æ Œãªéé瀺ãµãã¹ã¯ãªãã·ã§ã³ã®äžã§ã®ã¿ã¡ãŒã«ãŒã«é瀺ãããŸãã
é·ãéãã¢ã«ãŽãªãºã ã¯éåããªãã£ããããå°æ¥ããã©ã³ã¹ãã³ããŒã®å®å
šæ§ã«å¯Ÿããã¡ãŒã«ãŒã®ä¿¡é Œã¯ããã«é«ãŸããŸããã
ãã®çµæãDST40ãã©ã³ã¹ãã³ããŒã¯éåžžã«äººæ°ããããŸãã ãããã¯ãå€ãã®å€§æèªåè»äŒç€ŸïŒããšãã°ãããšã¿ããã©ãŒãããªã³ã«ãŒã³ãæ¥ç£ãªã©ïŒã«æ¡çšãããŸããã ã€ã¢ãã©ã€ã¶ãŒãDST40ãã©ã³ã¹ãã³ããŒã䜿çšããäœçŸäžå°ãã®è»ããç±³åœåžå Žã ãã§ãªããç±³åœããè»ãç©æ¥µçã«èŒžå
¥ããŠããä»ã®åœã®åžå Žã«ãåŸã
ã«æ®ºå°ããŸããã ããã«ããããã®ãã©ã³ã¹ãã³ããŒã¯ã
ç±³åœã®ããŸããŸãªãã¡ãŒã¹ãããŒããã¹ãŒããŒããŒã±ãããã¬ã¹ãã©ã³ãã¬ãœãªã³ã¹ã¿ã³ããæ¥éã«ç²åŸããŠãã
SpeedPasséæ¥è§Šå決æž
ã·ã¹ãã ã§ã䜿çšããå§ããŸããã
ããŒã2ïŒãããŠé·ã襲ããŸããïŒ
誰ãããã€ã³ãã®ãžã§ãŒã誰ã圌ãå¿
èŠãšããªãç¬éãŸã§ãšããã©ããã®ãªããŸãŸã§ããããšãé·ãéç¥ã£ãŠããŸããã ãããã£ãŠããã®ã¹ããŒãªãŒã§ã¯ãDST40ã¢ã«ãŽãªãºã ã¯ãè¥ããŠå
æ°ãªäººãã¡ããããåãäžãããŸã§éåããããšã¯ãããŸããã§ããã

2004幎ã«èµ·ãããŸããã ãã®æãŸã§ã«ãDST40ã¢ã«ãŽãªãºã ã®å
ç¢æ§ã«å¯Ÿãããããµã¹ã€ã³ã¹ãã«ã¡ã³ãã®ãšã³ãžãã¢ã®èªä¿¡ã¯éåžžã«å€§ãããªãã圌ãã¯åã«èªããšãå°ãªããšããã®ææã誰ãšã§ãå
±æããããšããæãã§ç Žè£ããŠããŸããã ãããŠã圌ãã¯äŒç€Ÿã®ãã€ãéšéã®åŸæ¥å¡ã®äžäººã§ãã
ãŠã«ãªããã»ã«ã€ã¶ãŒå士ã第4åAESäŒè°ã«æŽŸé£ããDST40ã«é¢ããå°ããªæŠèŠå ±åæžãéãããšã«ããŸããã ãã®ã¬ããŒãã¯ãã€ã³ãã£ã¢ã³ãžã§ãŒã®çµããã®å§ãŸãã§ããã
å®éããã®äŒè°ã«ã¯æå·åã®å°é家ããžã§ã³ãºãããã³ã¹å€§åŠæ
å ±ã»ãã¥ãªãã£å€§åŠïŒç±³åœïŒã®ææã§ãã
Aviel D. RubinææãåºåžããŸããã ã¢ã«ãŽãªãºã ã®äžè¬çãªã¹ããŒã ãäžç®èŠãã ãã§ãæ·±å»ãªã»ãã¥ãªãã£ããŒã«ãèŠã€ããããšãã§ããŸããã ããã¯ãã®å³ãã©ã®ããã«èŠãããã§ãïŒ

ã¹ããŒã ã¯éåžžã«äžè¬çã§ãããå€ãã®åŸ®åŠãªè©³çŽ°ãæ¬ ããŠãããšããäºå®ã«ãããããããçµéšè±å¯ãªæå·äœæè
ã®èšç·Žãããç®ã¯ããã«ããã€ãã®è匱æ§ã«æ°ã¥ããŸããïŒãŸããæå·åããŒãšãªã¯ãšã¹ã/ã¬ã¹ãã³ã¹ã¬ãžã¹ã¿ãåã¯ããã¯ãµã€ã¯ã«ã§æå°éã®ä¿®æ£ãåããããšã»ãã®å°ãã§ã 第äºã«ããŒãã®ã¿ã§æ§æãããã匱ããæå·åããŒãããããšã¯æããã§ãã-ããã·ã¥åŠçäžãæåŸãŸã§ãŒãã®ãŸãŸã«ãªããŸãã ããã«ããããã©ã³ã¹ãã³ããŒã®å
éšæ§é ãæããã«ã§ããããŸããŸãªæå·è§£æå®éšãè¡ãå¯èœæ§ãéãããŸããã ãããŠç¬¬äžã«ãããŒã®é·ãã¯ããã40ãããã§ããã2004幎ã®èŠæ Œã§ã¯ãããŒããŠã§ã¢ã䜿çšããŠå®è¡ããããã«ãŒããã©ãŒã¹ã«èããã«ã¯å®å
šã«äžååã§ããã

ãã¡ãããEvieã¯ããã®ãããªããã€ã¹ã®çç£ã«ãããŠéèŠãªã»ã°ã¡ã³ããå ãã倧äŒæ¥ã¯ãåã«èšèã ãã§ã¯ã¢ã«ãŽãªãºã ã®åŒ±ç¹ãšè匱æ§ã確信ã§ããªãããšãç解ããŠããŸããã ãã®åŸã圌ã¯DST40ããããã³ã°ããŠå®è·µãããšããã¢ã€ãã¢ãæãä»ããŸããããããæã説åŸåã®ããè°è«ã§ãã ãŸãã圌ã¯æ°äººã®å€§åŠçã®ããŒã ãç·šæããããšã«ããŸããã 圌ã¯ããã®ããžãã¹ãè¡ãããšãææ¡ããæã粟åçã§æèœãªäººãéžæããŸããïŒã¢ã«ãŽãªãºã ãæãäžãããšåæã«ãæå·åãšæå·è§£èªã®çè«çç¥èãšå®è·µçã¹ãã«ã匷åããŸãã ãã®ãããããŒã ãèªçããŸããïŒäžåçã®å·Šããå³ãžïŒ
Adam Stubblefield ã
Aviel D. Rubin ãStephen C. BonoãMatthew Green ã
次ã®ã¹ãããã¯ãTIã·ãªãŒãº2000éçºããã-Texas Instrumentsã®LF RFIDã®è²·åã§ããã ãã®ã»ããã«ã¯ããã©ã³ã¹ãã³ããŒããã³ããã€ãã®ãã©ã³ã¹ãã³ããŒãšéä¿¡ããããã®ãã©ã³ã·ãŒããŒãå«ãŸããŠããŸããããDST40ã¢ã«ãŽãªãºã ã䜿çšããŠæå·åãå®è¡ããªãã£ãããããããã¯ãŸã£ãã圹ã«ç«ã¡ãŸããã§ããã ãã®ãããé£äžã¯ãã©ã³ã¹ãã³ããŒãåå¥ã«å
¥æããå¿
èŠããããŸããã
ã¡ãªã¿ã«ããã®éçºãããã«ã¯ãDST40ã¢ã«ãŽãªãºã ã䜿çšããæå·åãå¯èœã«ãããœãããŠã§ã¢ãå«ãŸããŠããŸããã ãããã圌ãã¯åŸã«USENIXã·ã³ããžãŠã ã«åºåžããå
šå¡ãä¿èšŒããããšãèªã£ããããã©ã€ã»ã³ã¹å¥çŽã§çŠæ¢ãããŠããããããããã©ã€ãšã¿ãªã¢ã«ãŽãªãºã ã®æããããã³ã¯è²ã®ããã£ã«å°éããããã«ããã°ã©ã ã³ãŒããå解ããã³ãããã°ããŸããã§ããã
代ããã«ã圌ãã¯ãããã³ã°ã«ãäºæž¬ããŸãã¯ããã©ãã¯ããã¯ã¹ãæ¹åŒã䜿çšããããšã«ããŸããã ç°¡åã«èšãã°ã圌ãã¯ããŸããŸãªå®éšãè¡ããç°ãªãæå·åããŒããã©ã³ã¹ãã³ããŒã«æžã蟌ã¿ãç°ãªãèŠæ±ãéä¿¡ãããããããåŸãããããã·ã¥çµæã調æ»ãå§ããŸããã
Kaiserã¹ããŒã ãããæå·åã¹ããŒã ã®åºç€ã¯ãåºå®ççå€è¡šãæã€è«çèŠçŽ äžã®ä»ã®æå·åã¢ã«ãŽãªãºã ã§åºã䜿çšãããŠããFeistelãããã¯ãŒã¯ã§ããããšãããããŸããã ã¢ã«ãŽãªãºã ãå®å
šã«è§£èªããã«ã¯ã3ã€ã®åé¡ã解決ããå¿
èŠããããŸããã
- ã«ã€ã¶ãŒã¹ããŒã ãæ£ãããã©ããã確èªããŸãã
- ããŒã¬ãžã¹ã¿ã®åãããããã®ä¿¡å·ã®é
ç·ãšè«çèŠçŽ ãžã®èŠæ±ã決å®ããŸãã
- ãã¹ãŠã®è«çèŠçŽ ã®ççå€è¡šãèšç®ããŸãã
å®æœãããŠããå®éšã®è©³çŽ°ã«ã¯è§ŠããŸããã2005幎ã«ãã«ãã¢ã¢ã§éå¬ããã第14åUSENIXã»ãã¥ãªãã£ã·ã³ããžãŠã ã§äžè¬å
¬éããã
ãã®ããã¥ã¡ã³ã㧠ãèå³ã®ãã人ã¯èª°ã§ã
ãã®ããã¥ã¡ã³ããèŠãããšãã§ããŸãã
ãã®çµæã3人ãåé¡ããã¹ãŠè§£æ±ºããDST40æå·åã¢ãžã¥ãŒã«ã«å«ãŸããæ©èœãããã¯ã®å®å
šãªæ¥ç¶å³ïŒãããã®ãããã¯ã®ççå€è¡šãå«ãïŒã埩å
ã§ãããšèšããŸãã ããã«ãå®éã®æ©èœã¹ããŒã ã¯ãã«ã€ã¶ãŒã¹ããŒã ãšå®å
šã«äžèŽããŠããªãããšãå€æããããšã«æ³šæããŠãã ããã ããã€ãã®éãããããŸããã
- ããã·ã¥ã®éå§åŸã400ã§ã¯ãªã200ã¯ããã¯ãã«ã¹ãã¹ããŒã ã«äŸçµŠãããŸãã
- åã¡ãžã£ãŒã®èŠæ±ã¬ãžã¹ã¿ãŒã¯ã1ãããã§ã¯ãªãã2ããããã€ã·ãããããŸãã
- Kaiserã¹ããŒã ãF21ãã«ç€ºãããŠããè«çèŠçŽ ã«ã¯ã1ã€ã§ã¯ãªãã2ã€ã®åºåããããŸããããã¯ãèŠæ±ã¬ãžã¹ã¿ã®å·Šç«¯ïŒã¹ããŒã ã«ããïŒ2ãããã«å
¥ãåã«ãåãã¬ãžã¹ã¿ã®å³2ããããšXORã§ãã
- æå·åããŒã®æ¬¡ã®å·Šã®ïŒã¹ããŒã ã«å¿ããïŒããããèšç®ããããã«ãã¹ããŒã ã«è¡šç€ºãããŠããééã£ããããã䜿çšãããŸãã
ãŸããæå·åããŒãå€æŽããããã®ã¢ã«ãŽãªãºã ãèŠã€ããããšãã§ããŸãããããŒã¯ã2çªç®ãã3çªç®ã®æž¬å®ããšã«å€æŽãããŸãã
ããã ãã§ãªããçµæã®ããã·ã¥ã¯ãã©ã³ã¹ãã³ããŒã«ãã£ãŠãšãŒãã«ã«éä¿¡ãããªãããšãå€æããŸããã40ããããã¹ãŠã§ã¯ãªãããã®ãã¡ã®24ãããã ãã§ãã ãã®çµæãæå·åããŒã®ãã¹ãŠã®å¯èœãªçµã¿åãããããã«åæããéã«ãå€æ°ã®èª€ã£ãçµæã衚瀺ãããŸãã ãã ããããã¯ããã»ã©å€§ããªåé¡ã«ã¯ãªããŸããã§ããã次ã®ããŒãå床確èªããã®ã«ååã§ããããç°ãªããªã¯ãšã¹ã/ã¬ã¹ãã³ã¹ã®ãã¢ã䜿çšããŸããã 2çªç®ã®ãã§ãã¯ã§ãäžèŽããå ŽåãããŒã¯èŠã€ãã£ããšèŠãªãããŸãã

ããã«ãFPGA XILINXãæèŒããããŒããããŒã¹ã«ããããŒããŠã§ã¢ããŒãã«ãŒããã©ãŒãµãŒãéçºããŸããããã³ã¹ãã¯200ãã«åŒ±ã§ããã ãã®FPGAã®ãããã«ã¯ã100 MHzã®åšæ³¢æ°ã§åæåäœãã32åã®ããã·ã¥ã³ã¢ãé
眮ããããšãã§ããŸããã åã³ã¢ã¯ãæå·åããŒã®ãµãç¯å²ãæŽçããŸããã çæ³çã«ã¯ããã®ãããªããŒãã®1ã€ã§çŽ19æéã®æäœã§ããŒã®å
šç¯å²ãæŽçããå¿
èŠããããŸãïŒ
ïŒ2 40 x200ïŒ/ïŒ100x10 6 x32x3600ïŒ= 19.09æéã ãããå®éã«ã¯ãæéã®äžéšã¯ãªãŒããŒãããã«è²»ããããŸãã-ã³ã³ãã¥ãŒã¿ãŒããã®ã³ãã³ãã®ååŸã ãããã£ãŠãå®å
šãªæ€çŽ¢ã«ã¯çŽ21æéããããŸããã æ€çŽ¢ããã»ã¹ãé«éåããããã«ãåãããŒããããã«15å賌å
¥ããŸããã ãããã®ããããã§ã32åã®åãã³ã¢ãããã°ã©ã ãã1ã€ã®ãããã¯ãŒã¯å
ã§ããŒããäºãã«çµã¿åãããçµæã512åã®äžŠåã³ã¢ã®ã¯ã©ã¹ã¿ãŒãåãåããŸããã ãã®å Žåãåã³ã¢ã¯æ倧
2 40/512 = 2 31ãã«ããã·ã¥ãµã€ã¯ã«ãå®äºããå¿
èŠããããŸããã ãã®ã¯ã©ã¹ã¿ãŒã¯ã1æéåã§ã¿ã¹ã¯ãå®äºããŸããã
æåã®å®éšãŠãµã®ã¯ããŸãã«ãã®ãããªãã©ã³ã¹ãã³ããŒãåãã2005幎ã®Ford Escape SUVè»ã®ç¹ç«ããŒã§ããã éçºè
ã®ãããã䜿çšããŠã2ã€ã®ã©ã³ãã ãªèŠæ±ãããŒã«éä¿¡ããã2ã€ã®å¯Ÿå¿ããå¿çãåä¿¡ãããŸããã ãããã®2çµã®èŠæ±/å¿çã¯ãæ€çŽ¢ãéå§ããåã«ãã«ãŒããã©ãŒã¹åŒ·å¶ã«éä¿¡ããããœãŒã¹ããŒã¿ã«ãªããŸããã æ€çŽ¢ã®éå§ãã1æé以å
ã«ãç§å¯éµãæ£åžžã«èŠã€ãããŸããã

次ã®ã¹ãããã¯ããã®ãã©ã³ã¹ãã³ããŒã®ã·ãã¥ã¬ãŒã¿ãŒã®è£œé ã§ããããã®ã·ãã¥ã¬ãŒã¿ãŒã䜿çšããŠããã®è»ãå§åã§ããŸããã ãã©ã³ã·ãŒããŒããŒããã€ã³ã¹ããŒã«ããããã®ããŒãã«å€éšã¢ââã³ãããæ¥ç¶ããããã³ã³ãã¯ããªããŒãœãã«ã³ã³ãã¥ãŒã¿ãŒãããŒã¹ã«ãªããŸããã ãã¹ãŠã®éã®èªåŸçãªé»æºäŸçµŠã確ä¿ããããã«ãUPSã«è¿œå ã®ããããªãŒãŠããããæ¥ç¶ããŠäœ¿çšããŸããã ã³ã³ãã¥ãŒã¿ãŒã§ããã°ã©ã ãèµ·åãããã€ã¢ãã©ã€ã¶ãŒããã®èŠæ±ãåŸ
ã£ãŠããéã«ãã©ã³ã·ãŒããŒãä»ããŠãªãã¹ã³ããŸããã ãã®ãããªãªã¯ãšã¹ããåä¿¡ãããšãããã°ã©ã ã¯ãããããã·ã¥ããçµæã空äžã«éãè¿ããŸããã è»ã®ãšã³ãžã³ãå§åããããã«ããã©ã³ã¹ãã³ããŒãå«ãŸãªãã€ã°ããã·ã§ã³ããŒã®æ©æ¢°çãªã³ããŒã䜿çšãããŸããã
以äžã®ãããªã§ã¯ãAdamãšMatthewãã·ãã¥ã¬ãŒã¿ã䜿çšããŠãšã³ãžã³ãèµ·åããããã»ã¹ã瀺ããŠããŸãã
次ã«ããã®ã·ãã¥ã¬ãŒã¿ã䜿çšããŠãSpeedPassæ¯æãã·ã¹ãã ãåããã¬ãœãªã³ã¹ã¿ã³ãã§ã¬ãœãªã³ã賌å
¥ããŸããã
ããããã¹ãŠã®å®éšãæ£åžžã«å®äºããåŸãåãåã£ãæ
å ±ãå
¬éããããšã決å®ãããŸããã åœæãEvieã¯USENIXåäŒã®çäºäŒã®ã¡ã³ããŒã§ããããããã£ãŠã次ã®USENIXã»ãã¥ãªãã£ã·ã³ããžãŠã ã§ã®ãã®æ
å ±ã®å
¬éã¯è«ççãªæ±ºå®ã«ãªããŸããã
ããããæ¯æãã·ã¹ãã ã®æ¥éãªåŽ©å£ãé²ããæ³¥æ£ã«ã€ã¢ãã©ã€ã¶ãŒã«ç°¡åã«äŸµå
¥ããããã®ããŒã«ãæäŸããªãããã«ã圌ãã¯ãã¹ãŠã®æ
å ±ãå
¬éããŸããã§ããã ããšãã°ãæçµçãªããã·ã¥é¢æ°å³ã¯å
¬éãããŠããŸããã 圌ãã圌ãã®èšèã®ä¿¡ofæ§ã®ç¢ºèªãšããŠæäŸããå¯äžã®ãã®ã¯ãããŒããã·ã¥ã¢ã«ãŽãªãºã ãšFeistelãããã¯ãŒã¯ãæ§æããæ©èœèŠçŽ ã®ççå€è¡šãèšè¿°ããå
¬åŒã§ãã ããã¯ããããµã¹ã€ã³ã¹ãã«ã¡ã³ãã®ãšã³ãžãã¢ãDST40ã¢ã«ãŽãªãºã ã®å®å
šãªå€±æãå®çŸããã®ã«ååãªãã®ã§ããã
ããŒã3ïŒããããããããå©çãåŸãããšãã§ããŸããïŒ
2009幎ã§ããã 匷ããå¢ããŠããå±æ©ã®æ³¢ã¯ã倧声ã§å°çã«æ²¿ã£ãŠè»¢ãã£ãŠããŸããã ã¹ãã£ãŒããšãžã§ã³ãšãã2人ã®äººã
ã¯ãçžå¯Ÿçã«åå
¥ã皌ãããã®éžæè¢ãç©æ¥µçã«æ¢ããŠããŸããã DST40ãã©ã³ã¹ãã³ããŒããããã³ã°ããããšã«ã€ããŠã®ã»ã³ã»ãŒã·ã§ãã«ãªç©èªã¯ã圌ãã«ããã§å°ããéã皌ãããšãã§ãããšèããããã«ä¿ããŸããã ã¢ã€ãã¢ã¯ãåæ§ã®ã€ã¢ãã©ã€ã¶ãŒãè£
åããè»ã®ææè
ã«ãªã¢ãŒããšã³ãžã³ã¹ã¿ãŒãã·ã¹ãã ã®ã€ã³ã¹ããŒã«ãæäŸããããšã§ããã åœæãåæ§ã®ã·ã¹ãã ããã§ã«ååšããŠããŸãããããããã®ãã¹ãŠã1å°ã®è»ã®ããŒãç ç²ã«ããå¿
èŠããããŸãããããã¯ãªã¢ãŒãã¹ã¿ãŒãããã€ã¹ã®ããè¿ãã®ãã£ãã³ã«é
眮ããå¿
èŠããããŸããã ããã«ãããã€ã¢ãã©ã€ã¶ãŒã®äœ¿çšãäžåæå³ã倱ããè»ã®ææè
ãè»ã«å¥ã®ã¢ã©ãŒã ãåãä»ããããšãäœåãªããããããšã¯æããã§ãã ãã®å Žåãè»ã®ææè
ã¯ãããã®æ¬ ç¹ã®ãªãã·ã¹ãã ãæäŸãããŸãããã€ã°ããã·ã§ã³ããŒèªäœãã·ãã¥ã¬ãŒããããšæ³å®ããããšã³ãžã³ãé éå§åããã³ãã³ããåä¿¡ããããšãã«ã®ã¿ãããè¡ããŸãã
ã¹ãã£ãŒããšãžã§ã³ã¯ä»äºã«åãããããUSENIXã·ã³ããžãŠã ã§å
¬éãããããã¥ã¡ã³ããç 究ããããã·ã¥ã¡ã«ããºã ãèŠã€ããŸããã 圌ãã®åªåã®çµæããã®ãããªã¹ããŒã ã¯ãäžèšã®ææžã®14ããŒãžã«å
¬éãããå
¬åŒã«å®å
šã«æºæ ããããã«ãªããŸããïŒ
次ã«ã2ã€ã®ãã¶ã€ã³ãäœæããŸããã
ãããã®æåã¯DST40ãã©ã³ã¹ãã³ããŒããã°ã©ããŒã§ããã è»ã®ã€ã¢ãã©ã€ã¶ãŒã®ããã«ããã©ã³ã¹ãã³ããŒãããªãŒãã³æ
å ±ãèªã¿åãããã©ã³ã¹ãã³ããŒã«ãªã¯ãšã¹ããéä¿¡ããããã·ã¥çµæãåä¿¡ã§ããŸãããŸããæå·åããŒãšãšãã«ãã©ã³ã¹ãã³ããŒã«ãªãŒãã³æ
å ±ãæžã蟌ãããšãã§ããŸããã ããã°ã©ããŒã䜿çšããŠã2005ããšã¿ã«ã ãªããã€ã°ããã·ã§ã³ããŒã®2ã€ã®èŠæ±/å¿çãã¢ãåãåããŸããã
2çªç®ã®èšèšã¯ãXilinx Spartan 3E FPGAãããã«åºã¥ããŠæ§ç¯ããããã«ãŒããã©ãŒã¹ãšã³ãžã³ã§ããã ãã«ãŒããã©ãŒãµãŒã¯ããã«ãŒããã©ãŒã¹ã¡ãœããããã©ã³ã¹ãã³ããŒã«ä¿åãããæå·åããŒãèŠã€ããããšãå¯èœã«ããŸããã ãããè¡ãããã«ããã«ãŒããã©ãŒã¹ã®å
¥åã«ã¯ãèŠæ±/å¿çãšæå·åããŒã®2ã€ã®çµã¿åããã®åœ¢åŒã§åæããŒã¿ãæäŸãããããããæ€çŽ¢ãéå§ããå¿
èŠããããŸããã ãã«ãŒããã©ãŒã¹ã¯135ã¡ã¬ãã«ãã®åšæ³¢æ°ã§åäœããFPGAãããäžã«32åã®ããã·ã¥ã³ã¢ãå«ã¿ãçŽ14æéã§ãã¹ãŠã®çµã¿åããã®å®å
šãªåæãå®è¡ããŸããã
çµæã¯ãççŽã«èšã£ãŠãåæ°ã¥ãããããã®ã§ã¯ãããŸããã§ããã匷åŒãªåŽåè
ãä»äºããããšãã«æ°æéåŸ
ã€ã®ã¯ããšãŠã楜ããçµéšã§ã¯ãããŸããã§ããã ãã®ãããã¹ãã£ãŒããšãžã§ã³ã¯ãããšã¿ã®äžå€®ã³ã³ãã¥ãŒã¿ãŒãšã€ã¢ãã©ã€ã¶ãŒãŠãããã®éã®ããŒã¿è»¢éã®å¥ã®é åã«ç®ãåããŸããã å°èŠæš¡ãªæ€æ»ãšããã€ãã®ãã¹ããå®æœããåŸããã®ãµã€ãã¯éä¿¡ããŒã¿ã®ãã¹ãã³ã°ã¯ããçšåºŠãããŸãããéåžžã«åå§çã§ãããããææ¡ããŠããã€ã¹ããã®é åã®ééã«å°å
¥ããããšã¯é£ãããããŸããã§ããã ããã€ã¹ãã¹ã¿ã³ãã€ã¢ãŒãã§åäœããŠããéãã³ã³ãã¥ãŒã¿ãŒããã€ã¢ãã©ã€ã¶ãŒã«ããŒã¿ãéä¿¡ããããèªäœã§ããŒã¿ãéãè¿ããŸããã ãªã¢ãŒããšã³ãžã³ãã©ã³ããžã®ã³ãã³ããåä¿¡ãããšãã€ã¢ãã©ã€ã¶ãŒããªãã«ããã€ã¢ãã©ã€ã¶ãŒããã®è¯å®çãªå¿çãã·ãã¥ã¬ãŒãããŠãã³ã³ãã¥ãŒã¿ãŒãšã®éä¿¡ãéå§ããŸããã ãããŠããã®ããã»ã¹å
šäœã§æãéèŠãªããšã¯ãã€ã¢ãã©ã€ã¶ãŒã®å¿çãã³ã³ãã¥ãŒã¿ãŒã®èŠæ±ã®ã¿ã«äŸåããããšã§ããã ã€ã°ããã·ã§ã³ããŒã¯å¿
èŠãããŸããã§ããã
ããã°ã©ããŒããã³ãã«ãŒããã©ãŒã¹ãã©ã¯ãŒããŒã¯ãè«æ±ãããŸããã§ããã
ããŒã4ïŒçŽç²ã«ã¹ããŒãã®èå³

äžèšã®ã€ãã³ãããããã«æ°å¹Žãçµã¡ãããæ¥ã
DE0-Nano-SoCããŒããç§ã®æã«èœã¡ãŸããã 圌女ã®å¿èéšã¯ã¢ã«ãã©Cyclone V SE 5CSEMA4U23C6Nãããã§ãã ããã«ã¯ããã¥ã¢ã«ã³ã¢HPSããã»ããµïŒããŒãããã»ããµã·ã¹ãã ïŒARM Cortex-A9ããã³15094ã¢ãããã£ãããžãã¯ã¢ãžã¥ãŒã«ïŒALMïŒãåããFPGAãå«ãŸããŠããŸãã ããŒãã«å«ãŸããŠããã¡ãŒã«ãŒã¯ãmicroSDã¡ã¢ãªã«ãŒãã«å±éãããLinuxãæäŸããŠããŸãã ããã«ãããå€ãã®æéãè²»ããããšãªãããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ãç°¡åã«å®è£
ã§ããŸãã ãã®ããã€ã¹ãç¿åŸããåŸãDST40ãã©ã³ã¹ãã³ããŒããããã³ã°ãããšãã話ãæãåºããŸãããçŽç²ã«ã¹ããŒãã«èå³ããããŸãã-ãã®ãããªããã€ã¹ã䜿çšããŠãDST40ããŒã®ãã«ãŒããã©ãŒã¹ã§1ç§ãããããã€ã®ããã·ã¥ãå§çž®ã§ããŸããïŒ
ã¹ãã£ãŒããšãžã§ã³ãæããã¹ããŒã ãšãããšã¿ããŒããåãåã£ã2çµã®ãªã¯ãšã¹ã/ã¬ã¹ãã³ã¹ãæå
ã«çœ®ããŠãä»äºã«åãããããŸããã æåã¯ãããã·ã¥ã³ã¢ã®æ°ã倧å¹
ã«å¢ããç°¡åãªæ¹æ³ãéžæãããŸããããã®ã³ã¢ã®128åããã®ããŒãã®FPGAã¯ãªã¹ã¿ã«ã«åãŸããŸãã
ãã®å³ã«ã¯ã次ã®ã³ã³ããŒãã³ãã衚瀺ãããŸãã
- HPSããã»ããµ-dst40ããã°ã©ã ãå®è¡ããŸãã ãŠãŒã¶ãŒã«åæããŒã¿ãèŠæ±ããããããã³ã³ãããŒã«ãŠãããã®ã¬ãžã¹ã¿ãŒã«ããŒãããæ€çŽ¢ããã»ã¹ãéå§/åæ¢ããçŸåšã®ç¶æ
ã«é¢ããæ
å ±ãç»é¢ã«è¡šç€ºããŸãã
- ã³ã³ãããŒã«ãŠãããã ãã®ã¿ã¹ã¯ã¯ããã¹ãŠã®ããã·ã¥ã«ãŒãã«ã®ãœãŒã¹ããŒã¿ãæºåãããããã®äœæ¥ã管çããçµæãæ€èšŒããŠHPSã«è»¢éããããšã§ãã
- ã«ãŒãã«ã®ããã·ã¥ã åã³ã¢ã¯ã2ã€ã®éšåã®åæããŒãçæããŸãïŒã³ã¢ã®ã·ãªã¢ã«çªå·ã«äžèŽãã7ãããã®åºå®äžäœéšåïŒã³ã¢çªå·0ã®å Žåã¯00Hãã³ã¢çªå·127ã®å Žåã¯7FHïŒãšãã³ã³ãããŒã«ãŠãããããååŸãã33ãããã®äžäœå€æ°ã ã«ãŒãã«ã¯ãDST40ã¢ã«ãŽãªãºã ã䜿çšããŠèŠæ±ã®ããã·ã¥ãå®è¡ããŸã;ãã®ããã»ã¹ã®æåŸã«ãããã·ã¥çµæãå¿çãšæ¯èŒãããæ¯èŒçµæãå¶åŸ¡ãŠãããã«éä¿¡ãããŸãã
ããã€ã¹å
šäœã®åäœã®è¿äŒŒã¢ã«ãŽãªãºã ã¯æ¬¡ã®ãšããã§ãã
- ããã°ã©ã ã¯ãŠãŒã¶ãŒã«åæããŒã¿ãèŠæ±ããŸãããã©ã³ã¹ãã³ããŒã«éä¿¡ããã2ã€ã®èŠæ±ãšãã©ã³ã¹ãã³ããŒããåä¿¡ããã2ã€ã®å¯Ÿå¿ããå¿çãããã³æ€çŽ¢ãéå§ããæå·åããŒã
- ããã°ã©ã ã¯æåã®èŠæ±/å¿çãšããŒãã³ã³ãããŒã«ãŠãããã«ããŒãããæ€çŽ¢ããã»ã¹ãéå§ããŸãã ãã®åŸãå¶åŸ¡ãŠããããäžèŽã®æ€åºãŸãã¯æ€çŽ¢äžã®ããŒã®æ¯æžãéç¥ããã®ãåŸ
ã¡ãŸãã
- å¶åŸ¡ãŠãããã¯ããã¹ãŠã®ã³ã¢ã®ãœãŒã¹ããŒã¿ã®å
¥åã«èŠæ±/å¿çããã³ããŒãèšå®ãããããã«ããã·ã¥ãéå§ããã³ãã³ããäžããŸãã
- åã³ã¢ã¯ãªã¯ãšã¹ããããã·ã¥ããŸãã ããã«ã¯200ã¯ããã¯ãµã€ã¯ã«ããããŸãã äœæ¥ã®æåŸã«ãåã³ã¢ã¯ããã·ã¥çµæãšå¿çãæ¯èŒããæ¯èŒçµæãå¶åŸ¡ãŠãããã«éä¿¡ããŸãã
- ã³ã³ãããŒã«ãŠãããã¯ããã¹ãŠã®ã³ã¢ã®çµæãè©äŸ¡ããŸããäžèŽãããã®ãèŠã€ãããªãå ŽåãããŒãã€ã³ã¯ãªã¡ã³ãããã¢ã«ãŽãªãºã ã®ã¹ããã3ã«é²ã¿ãŸãã
- - , , .
- / .
- 3 5 . â .
- â , . . , .
ãã¶ã€ã³ã®ããŒããŠã§ã¢ã¯ã200ã¡ã¬ãã«ãã®ã¯ããã¯åšæ³¢æ°ã§ç²åŸããŠããŸããçµæãšããŠãæ€çŽ¢é床ã¯ã128x200x10ã6ç§/ 200 =1.28åããã·ã¥ãããã€ã¹ã¯ã2æé24åã§ãã¹ãŠã®ãªãã·ã§ã³ã®å®å
šãªåæãå®è¡ããŸããããã¡ãããããã¯éåžžã«è¯ãçµæã§ããããããã§ãããã»ã©è¯ãã¯ãããŸããã§ããã次ã«ãæ€çŽ¢ããã»ã¹ãé«éåããããã®ããã€ãã®æé ã説æããŸããã ãã...
æåã®ã¹ããã
ã¢ã«ãŽãªãºã ãæé©åããããšããå§ããŸããããäžèšã®ããã·ã¥ã¹ããŒã ãããäžåºŠèŠãŠãã ãããããã·ã¥çµæããªã¯ãšã¹ã/ã¬ã¹ãã³ã¹ã¬ãžã¹ã¿ã®äžäœ24ãããããèªã¿åãããããšãããããŸããäžäœ16ãããã¯äœ¿çšãããŸãããè«ççãªçåãçããŸããçµæãç Žæ£ãããå ŽåãæåŸã®8ã€ã®æž¬å®ãå®è¡ããã®ã¯ãªãã§ããïŒåçïŒãŸã£ããå¿
èŠãããŸããã192ã¯ããã¯ãµã€ã¯ã«ãåè·¯ã«é©çšããã¬ãžã¹ã¿ã®äžäœ24ãããããããã·ã¥çµæãååŸããã ãã§ååã§ããããã§ã¯ãããããã£ãŠã¿ãŸããããããã«ãããé床ãå®å
šã«ç¡æã§4ïŒ
åäžããŸãã第äºæ®µé
ããã¥ã¡ã³ãã®æåŸã«ããè«çèŠçŽ ã®ççå€è¡šãèŠãŠã¿ãŸããããé¢æ°Feã®ççå€è¡šãããèŠãŠãã ãã00000: 0
00001: 0
00010: 1
00011: 1
00100: 0
00101: 0
00110: 1
00111: 1
01000: 0
01001: 0
01010: 0
01011: 0
01100: 1
01101: 1
01110: 1
01111: 1
10000: 1
10001: 1
10010: 1
10011: 1
10100: 0
10101: 0
10110: 0
10111: 0
11000: 1
11001: 1
11010: 0
11011: 0
11100: 1
11101: 1
11110: 0
11111: 0
è¡ããã¢ã§è€è£œãããŠããããšã¯ç°¡åã«ããããŸãã ããã¯ãæäžäœã®å
¥åããããçµæã«åœ±é¿ãããæå·ãªãã§ç Žæ£ã§ããããšãæå³ããŸãã ããã«èšã£ãŠãã£ãã
ççå€è¡šã¯ãã®åœ¢åŒãååŸããŸãã0000: 0
0001: 1
0010: 0
0011: 1
0100: 0
0101: 0
0110: 1
0111: 1
1000: 1
1001: 1
1010: 0
1011: 0
1100: 1
1101: 0
1110: 1
1111: 0
ããã«ãããé床ãæããã«åäžããããšã¯ãããŸããã ãã ãããåãã®ãšãããåæåè·¯ã®çµã¿åããããžãã¯ã®æ°ãæžãããšãã¯ããã¯åšæ³¢æ°ãäžããå¯èœæ§ã«ãã©ã¹ã®å¹æããããŸãã
ãã®çµæãäžèšã®å€æŽãèæ
®ããã«ãŒãã«ã¹ããŒã ãèªçããŸããïŒãŸããã«ãŠã³ãããŒãããå§ãŸãããã«ã¬ãžã¹ã¿ã®ãããã®çªå·ãä»ãçŽãããŸã-ãããããäžè¬çã§ãïŒã
第äžæ®µé
ããã°ã©ã ã®ã«ãŒãéšåããæ倧é床ãååŸããããšããããã°ã©ããŒã¯ããã«ãŒãå±éããªã©ã®æé©åæ¹æ³ã䜿çšããŸãã ããã¯ãã«ãŒãã«ãŠã³ã¿ãŒãNåæžå°ãããã®ãµã€ã¯ã«ã§å®è¡ãããäžé£ã®ã³ãã³ãã次ã
ãšNåç¹°ãè¿ããããšããäºå®ã«ãããŸãã ããã«ããããµã€ã¯ã«ã«ãŠã³ã¿ãŒã¡ã³ããã³ã¹ããŒã ã«ãã£ãŠå°å
¥ãããåé·æ§ãåæžãããŸãã
è©ŠããŠã¿ãŠããã®æ¹æ³ã䜿çšããŸãã192ãµã€ã¯ã«ãµã€ã¯ã«å
šäœã1æ¬ã®å®ç·ã«æ¡åŒµããŸãã åãµã€ã¯ã«ã®äœæ¥ã¯åã®ãµã€ã¯ã«ã®çµæã«ã®ã¿äŸåããä»ã«ã¯äœãäŸåããªãããããã®ãªãã·ã§ã³ã®å®è£
ã¯éåžžã«å¯èœã§ãã
ãã®ã¹ããŒã ã§ã¯ããCYCLE Nããšããååã®åããžãã¯ãããã¯ã«ã¯ãDST40ã¢ã«ãŽãªãºã ã§äœ¿çšãããFeistelãããã¯ãŒã¯å
šäœãå«ãŸããŸãã è«çåè·¯ã®é·ããç°åžžã«é·ããªããã¯ããã¯é床ã倧å¹
ã«äœäžãããå¿
èŠãããããšã¯æããã§ãã ãã ãããã®ãããªã¹ããŒã ã§ã¯ãå
ã
ã®192çªç®ã®ã¡ãžã£ãŒããšã§ã¯ãªããåã¡ãžã£ãŒããšã«çµæãçæãããŸããè©ŠããŠã¿ã䟡å€ããããŸãã
ãã®ãããªã¹ããŒã ãå®è£
ããŠãã¹ãããŸããäºæ³ã©ãããã¯ããã¯åšæ³¢æ°ã2ã¡ã¬ãã«ãã«äžããå¿
èŠãããã8ã³ã¢ãã»ãšãã©æ°Žæ¶ã«åãŸããªãã»ã©å€ãã®ããžãã¯ããããŸããã æ¯ç§1600äžã®ããã·ã¥-ããã¯å®å
šã«è»œèã§ãïŒ
ãã®ã¢ã€ãã¢ãåãç«ãŠå°ã«æšãŠãŸããïŒ ãŸããïŒ ã¹ãªãŒãããåŒãæãããšãã§ããå¥ã®åãæããããŸãã ã³ã³ãã¢ãšåŒã°ããŸãã èªè
ã®å€ãã¯ãã€ãã©ã€ã³ã«ã€ããŠç¥ã£ãŠãããšæããŸãã äžæãªå Žåã¯ãIvan ShevchukïŒ
ishevchukãšãåŒã°ããïŒã®ãã°ãããèšäºã§ã
FPGAã®ãã€ãã©ã€ã³ã«é¢ããããã€ãã®èšè ãã§ãããã«ã€ããŠèªãããšããå§ãããŸãã
ãã®ãããè«çãã§ãŒã³ã192åã®ãªã³ã¯ã«ã«ãããããã®ãžã§ã€ã³ãã§2ã€ã®40ãããã¬ãžã¹ã¿ãé
眮ããŸãã
ã³ã³ãã€ã«ããŸãã ãã®èšèšã¯ã128ã³ã¢ã®å
ã®èšèšãšåãåšæ³¢æ°-200ã¡ã¬ãã«ãã§åäœããŸããã ããããæ°ãããœãŒã¹ããŒã¿ãåã¡ãžã£ãŒã®å
¥åã«ãªããŸããã ãŸããçµæã¯åã¯ããã¯ãµã€ã¯ã«ïŒã¯ããã¯ãµã€ã¯ã«192ããéå§ïŒã®åè·¯ã®åºåããåé€ãããŸãã å éã¯192åã§ããïŒ ãã£ã㌠ãããããã¹ãŠãç§ãã¡ãæãã»ã©ãã©è²ã§ã¯ãããŸããã ã³ã¢ã¹ããŒã ã¯éåžžã«èšæœ€ããŠããããã1ã€ã®ã³ã¢ã®ã¿ãçµæ¶ã«é©åããŸãã çµæã®åæçã¯ã1ç§ããã2åããã·ã¥ã§ããã
絶æããªãã§ãã ãã-劥åç¹ãæ¢ããŸãããã çµæã®å³ãããäžåºŠããèŠãŠã¿ãŸãããã 192ãªã³ã¯ã®ãã§ãŒã³å
šäœã3ãªã³ã¯ã®64åã®åäžãããã¯ã§æ§æãããŠããããšãå°è±¡çã§ãïŒãããã¯ã®æåã®ãªã³ã¯ã§ã¯ãããŒã¬ãžã¹ã¿ã¯å€æŽãããã2çªç®ã§ã¯-1ãããã·ããããã3çªç®ã§ã¯åã³å€æŽãããŸããã ã¹ããŒã ãå€æŽããŠã¿ãŸãããããããã®ãããã¯ã3ã€ã®éšåã«åå²ããã¬ãžã¹ã¿ãåé€ããŸãã ãããã£ãŠããã§ãŒã³ãªã³ã¯ã®æ°ã¯64ã«åæžãããåãªã³ã¯ã®è«çãã§ãŒã³ã®é·ãã¯3åã«ãªããŸãã ããã«ãããã¯ããã¯åšæ³¢æ°ãäžããå¿
èŠãçããŸãããåæã«ãã³ã¢ã®ãµã€ãºã倧å¹
ã«åæžããå¿
èŠããããŸãã

ãã®ãããªã¹ããŒã ãå®è£
ãããã®çµæãçµæ¶äžã«4ã€ã®ãã®ãããªæ žãé
眮ããæ©äŒãåŸãŸãã TimeQuestã¢ãã©ã€ã¶ãŒã§ã¯ããã®åè·¯ã125ã¡ã¬ãã«ãã§å®è¡ã§ããŸããã ãããã4ã€ã®ã³ã¢ããããã¹ããŒã ããµã€ã¯ã«ããšã«4ã€ã®çµæãæäŸããããïŒ64çªç®ããéå§ïŒãåèšåæé床ã¯4x125x10
6 = 5åããã·ã¥/ç§ã§ããã ãã§ã«ããªãè¯ãã§ãïŒ
第4ã¹ããã
ããŠãæåŸã®ä»äžãã¯ãªãŒããŒã¯ããã¯ã§ãïŒ åœŒãªãã§ã¯ã©ãã«ããã®ã§ããããïŒ åã®ã¹ãããã§åŸããã125ã¡ã¬ãã«ãã¯ãTimeQuestã¢ãã©ã€ã¶ãŒãèªããªãåšæ³¢æ°ã§ãã ããããCyclone Vãããã®é床ã«ã¯ããªãã®ãå®å
šããŒãžã³ãããããŸãã ãããå©çšããŠãåè·¯ãééãå§ãããŸã§åè·¯ã®ã¯ããã¯åšæ³¢æ°ãäžããŸã-ãœãŒã¹ããŒã¿ã®æ£ããçµã¿åããã§è³ãããæããŸãã åè·¯ã®æ£ããåäœãè©äŸ¡ããããã«ãHPSããã»ããµã®ããã°ã©ã ã¯ãã¹ãããã°ã©ã ã«çœ®ãæããããŸããïŒåãµã€ã¯ã«ã§ãã©ã³ãã ããŒ/ãªã¯ãšã¹ããã¢ãçæããçããèšç®ããããããã¹ãŠããã€ãã©ã€ã³ã«ããŒãããŠãåè·¯ãèµ·åããŸããã 64ã¯ããã¯ãµã€ã¯ã«åŸãåè·¯ãäžèŽæ€åºã®æåãå ±åããªãã£ãå Žåããã¹ãã¯äžåæ ŒãšèŠãªãããåè·¯ã®åšæ³¢æ°ãäžããå¿
èŠããããŸããã ãã®ããã«ããŠãåè·¯ãåäœãç¶ããéçåšæ³¢æ°ã§ãã170ã¡ã¬ãã«ããèŠã€ãããŸããã 175ã¡ã¬ãã«ãã§ãåè·¯ãæ
éãå§ããŸããã 170ã¡ã¬ãã«ãã§ã¯ãæ€çŽ¢é床ã¯4x170x10
6 = 680ããªç§ã®ããã·ã¥ã§ãã ããã€ã¹ã¯ã27å以å
ã«ããŒã®ãã¹ãŠã®å¯èœãªãªãã·ã§ã³ã®åŸ¹åºçãªæ€çŽ¢ã«å¯ŸåŠããŸããã
以äžã¯ããã®ãã«ãŒããã©ãŒã¹ã®å®éã®äœ¿çšã瀺ããããªã§ãã
ããŒã5ïŒæçµ
DE0-Nano-SoCããŒã¹ã®ãã«ãŒããã©ãŒãµãŒã®å
šäœçãªå¹çã¯ãEviããŒã ã«ãã£ãŠæ§ç¯ããã512ã³ã¢ã¯ã©ã¹ã¿ãŒã®å¹çãçŽ90åïŒèšèšã¯30åå®ãã3åé«éã§ããããšãå€æïŒ-çŸåšã®æ®µéã§ã¯é©ãããšã§ã¯ãããŸããã
誰ãããœãŒã¹ããæãäžããããå Žåã
ããã§è¡ãããšãã§ã
ãŸã ã binãã£ã¬ã¯ããªã«ã¯ãFPGAã«ã¢ããããŒãããããã®ã³ã³ãã€ã«ããããã¡ãŒã ãŠã§ã¢ïŒä¿¡é Œæ§ã®ããã«ã¯ããã¯åšæ³¢æ°ã¯150 MHzã«å¶éãããŠããŸãïŒãšãLinuxã®äžã§HPSã§å®è¡ããããã®ã³ã³ãã€ã«ãããããã°ã©ã ããããŸãã
ããã§ã¯ãäŒæãåãããŠãã ããïŒ ãã¹ãŠã®å¥åº·ãšå¹žéãïŒ ãæž
èŽããããšãããããŸããïŒ