- TOP
- ã¿ã°äžèЧ
- ã¢ã»ã³ãã©
ã¢ã»ã³ãã©
ã€ãã³ã
該åœããã³ã³ãã³ããèŠã€ãããŸããã§ãã
ãã¬ãžã³
該åœããã³ã³ãã³ããèŠã€ãããŸããã§ãã
æè¡ããã°
æ¬ããã°ã¯ 2026 幎 4 æ 7 æ¥ã«å
¬éããã Amazon Science Blog â Verifying and optimizing post-quantum cryptography at Amazon â ã翻蚳ãããã®ã§ãã èªåæšè«ã«ãã£ãŠãã»ãã¥ãªãã£ãæ§èœãä¿å®æ§ã®èŠæ±ãã©ã®ããã«äž¡ç«ããããã çŸåšãå®å
šãªãªã³ã©ã€ã³é信㯠å
¬ééµæå· ã«ãã£ãŠå®çŸãããŠããŸãã䞻㫠RSA ãšæ¥åæ²ç·æå· (ECC) ã䜿ãããŠããããã®å®å
šæ§ã¯ããèšç®åé¡ãå°é£ã§ãããšããä»®å®ã«äŸåããŠããŸãããããããããã®åé¡ã¯ åŸæ¥ã® ã³ã³ãã¥ãŒã¿ã§ã¯å°é£ãšèããããŠãããã®ã®ãååã«å€§èŠæš¡ãªéåã³ã³ãã¥ãŒã¿ã§ã¯æ±ããå¯èœæ§ããããŸãããStore now, decrypt laterã(ä»ä¿åããŠåŸã§åŸ©å·) æ»æã¯ãæå·åãããæ
å ±ãååããŠãããéåã³ã³ãã¥ãŒã¿ã§åŸ©å·ã§ããããã«ãªããŸã§ä¿æããæ»æã§ããããããæ»æãæè¡çã«å®çŸå¯èœã«ãªãããã¯ããåããã察çãå¿
èŠãšãªããŸãã ãã¹ãéåæå· (PQC) ã¯ãåŸæ¥ã®ã³ã³ãã¥ãŒã¿äžã§åäœããªããéåã³ã³ãã¥ãŒãã£ã³ã°ã«å¯ŸããŠãå®å
šãªæå·ã§ãã2024 幎ãç±³åœåœç«æšæºæè¡ç ç©¶æ (NIST) 㯠8 幎ã«ãããæšæºåäœæ¥ãçµãŠãæšæºèŠæ Œ FIPS-203 ãå
¬éããŸãããFIPS-203 ã§ã¯ãéåã³ã³ãã¥ãŒã¿ããã®æ»æã«å¯ŸããŠå®å
šãšèããããŠããéµå
±æã¡ã«ããºã ãšããŠãModule-Lattice-Based Key Encapsulation Mechanism (ML-KEM) ãèŠå®ãããŠããŸãã æ¬èšäºã§ã¯ãAmazon Automated Reasoning GroupãAWS CryptographyããããŠãªãŒãã³ãœãŒã¹ã³ãã¥ããã£ãååããŠãML-KEM ã®ãªãŒãã³ãœãŒã¹ãã€åœ¢åŒçã«æ€èšŒãããæé©åå®è£
ãã©ã®ããã«äœãäžããã客æ§ããStore now, decrypt laterãæ»æããæé«ã®ä¿èšŒãšæå°ã®ã³ã¹ãã§ä¿è·ããŠããããã玹ä»ããŸãã åªããæå·ãšã³ãžãã¢ãªã³ã°ãšã¯äœã? Amazon ã® Customer Obsession ã«åŸããAWS ã¯æå·ãœãªã¥ãŒã·ã§ã³ã«åãçµãéãæ¬¡ã® 3 ã€ã®ç®æšãåªå
ããŸãã ã客æ§ã®ããŒã¿ã®ã»ãã¥ãªã㣠: æå·ã¯å®å
šã«å®è£
ããããšã極ããŠé£ãããããããªæ¬ é¥ã§ãã客æ§ã®ãã©ã€ãã·ãŒãå±éºã«ãããå¯èœæ§ããããããäžå
šãæãå¿
èŠããããŸã ã客æ§ã®äœéš : æå·ã«ã¯èšç®ã³ã¹ãã䌎ããŸããAWS ã¯ãããæå°åããã客æ§ã«æå°ã®ã³ã¹ããšæè¯ã®äœéšãæäŸããŸã ãœãªã¥ãŒã·ã§ã³ãå°æ¥ã«ããã£ãŠä¿å®ããèœå : ä¿å®ã«è²»ããæéãå°ãªãã»ã©ãã客æ§ã®ããã«ããå€ãã®ã€ãããŒã·ã§ã³ãçã¿åºããŸã ãããããããã®ç®æšã®éã«ã¯ãã¬ãŒããªãããããŸããã·ã³ãã«ãªã³ãŒãã¯ä¿å®ãå®å
šãªèšè¿°ãæãç°¡åã§ãããåäœãé
ããªããã¡ã§ããäžæ¹ãé«éãªã³ãŒãã¯ç£æ»ãé£ããããšã©ãŒãèµ·ããããåŸåããããŸãã èªåæšè« ã«ãã£ãŠãAWS ã¯ãã®ãã¬ãŒããªããè§£æ¶ããå®å
šã§ãé«éã§ãä¿å®ããããæå·ãœãªã¥ãŒã·ã§ã³ãåæã«ã客æ§ã«æäŸã§ããŸãã ãªãæ°ã㪠ML-KEM å®è£
ãå¿
èŠãªã®ã ML-KEM (æ§ç§° Kyber) ã¯å®è£
ã®èгç¹ããååã«ç ç©¶ãããŠããŸããäžæ¹ã§ã¯ã Kyber ãªãã¡ã¬ã³ã¹ã³ãŒã ããé·å¹Žç²Ÿæ»ãããŠããã¯ãªãŒã³ãª C èšèªå®è£
ãæäŸããŠããŸãã仿¹ã§ã¯ãML-KEM ãããŸããŸãªææšããã©ãããã©ãŒã åãã«æé©åããæ¹æ³ãèšè¿°ããæ°å€ãã®ç ç©¶è«æããããŸãã 2024 幎㫠AWS Cryptography ãš Amazon Automated Reasoning Group ãçŽé¢ãã課é¡ã¯ããªãã¡ã¬ã³ã¹å®è£
ã®ã·ã³ãã«ããšãç ç©¶ã§æããã«ãªã£ãæé©åã®å¯èœæ§ããæ¬çªç°å¢ã§äœ¿ããåäžã®å®è£
ã«çµã¿åãããããšã§ããã 2024 幎ãAWS Cryptography ãš Amazon Automated Reasoning Group ã¯ã培åºçã«ç²Ÿæ»ããã ML-KEM ãªãã¡ã¬ã³ã¹å®è£
ã®ã·ã³ãã«ããšãç ç©¶ã§æããã«ãªã£ãæé©åã®å¯èœæ§ããæ¬çªç°å¢ã§äœ¿ããåäžã®å®è£
mlkem-native ã«ãŸãšãããšãã課é¡ã«åãçµã¿ãŸããã åãé ãAWS 㯠Linux Foundation ã® Post-Quantum Cryptography Alliance (PQCA) ã®åµèšã¡ã³ããŒãšãªããŸãããPQCA ã¯ããæšæºåéçšã«ãããã¹ãéåæå·ã¢ã«ãŽãªãºã ã®é«ä¿èšŒãœãããŠã§ã¢å®è£
ã®æ§ç¯ãç®æããªãŒãã³ãœãŒã¹ãããžã§ã¯ãã®éåãã§ãã Post-Quantum Cryptography Package (PQCP) ãç«ã¡äžããŸããã ããã§ AWS ã¯ç¬èªã«ã³ãŒããéçºããã®ã§ã¯ãªããããŒã ã¡ã³ããŒã PQCP ã«åå ãããŸããªã mlkem-native ãç«ã¡äžããŸãããããã¯ãML-KEM ãªãã¡ã¬ã³ã¹å®è£
ãšãæé©åããã³åœ¢åŒçæ€èšŒã«é¢ããç ç©¶ãçµã¿åãããããšãç®çãšãããML-KEM ã®é«ä¿èšŒã»é«æ§èœ C èšèªå®è£
ã§ãã éãããããŠæ
éãªã³ãŒãã£ã³ã° mlkem-native ã®ã¢ãžã¥ã©ãŒèšèšã¯ãML-KEM ã®é«ã¬ãã«ããžãã¯ãã«ããŒãã ããã³ããšã³ã ãšãæ§èœãéèŠãªãã¹ãŠã®ãµãã«ãŒãã³ãæ
åœãã ããã¯ãšã³ã ãçµã¿åãããŠããŸããåãµãã«ãŒãã³ (SHA3 ã®åºç€ãšãªã Keccak 眮æããé«éãªå€é
åŒæŒç®ã®åºç€ãšãªãæ°è«å€æ (NTT) ãå«ã) ã«ã¯ãç¹å®ã®ããŒããŠã§ã¢åãã«ãã€ãã£ãã«èšè¿°ããããé«å¹çãªè€æ°ã®å®è£
ãçšæãããŠããŸããããã©ã«ãã® C èšèªå®è£
ã«å ããŠãmlkem-native 㯠AArch64ãx86_64ãRISC-V64 åãã®ã¢ã»ã³ããª/çµã¿èŸŒã¿é¢æ°ããã¯ãšã³ããæäŸããŠããŸãã mlkem-native ã®ã¢ãžã¥ã©ãŒèšèšã¯ãML-KEM ã®é«ã¬ãã«ããžãã¯ãã«ããŒããããã³ããšã³ããšãæ§èœãéèŠãªãµãã«ãŒãã³ã®è€æ°ã®ããŒããŠã§ã¢åºæå®è£
ãããªãããã¯ãšã³ããçµã¿åãããŠããŸãã ä¿å®æ§ã®ããã«éèŠãªã®ã¯ãããã³ããšã³ããšããã¯ãšã³ãã®éã®ã€ã³ã¿ãŒãã§ã€ã¹ãåºå®ãããŠããããšã§ããæ°ããã¿ãŒã²ããã¢ãŒããã¯ãã£åãã®æé©åã远å ããéçºè
ã¯ãããã¯ãšã³ã仿§ã«åŸã£ãŠéžæããããã¯ãšã³ãæ©èœãå®è£
ããããã³ããšã³ãã¯ãã®ãŸãŸç¶æããŸããããã¯ãšã³ã仿§ã®çå®ã¯ãèŠããã»ã©åçŽã§ã¯ãªãããšãåãããŸãããããã«ã€ããŠã¯ä»¥äžã§èª¬æããŸãã éçãç¥ã ã¡ã¢ãªå®å
šæ§ C ããã°ã©ãã³ã°èšèªã®ããç¥ããã課é¡ã¯ããããã¡ãªãŒããŒãããŒã®ãªã¹ã¯ã§ããã¡ã¢ãªé åã®æå®ãããå¢çãè¶
ããŠæžã蟌ããšãããŒã¿æ§é ãç Žå£ãããæªæãæã£ãŠæªçšããããšéç¹æš©ã³ãŒãã®å®è¡ã«ã€ãªããå¯èœæ§ããããŸããããããåé¡ã®ç·ç§°ã ã¡ã¢ãªå®å
šæ§ ã§ããRust ã®ãããªã¡ã¢ãªå®å
šãªèšèªã¯ãç¯å²å€ã¢ã¯ã»ã¹ã®åœ±é¿ãå¶éã§ããŸã (ããšãã°ãæªå®çŸ©åäœã瀺ã代ããã«ãããã¯ãã)ãããããééããã®ãã®ãé²ãããã§ã¯ãããŸããã åå®å
šæ§ ããäžã€ã®ããç¥ããã課é¡ã¯ ML-KEM ã®å®è£
ã«é¢ãããã®ã§ãæŽæ°ãªãŒããŒãããŒã®ãªã¹ã¯ãã€ãŸã åå®å
šæ§ ã®åŽé¢ã§ããRSA ã ECC ãšåæ§ã«ãML-KEM ã¯ã¢ãžã¥ã©ãŒæŒç®ã«äŸåããŠããŸããã¢ãžã¥ã©ãŒæŒç®ã§ã¯ãæŒç®ã®çµæãç¹å®ã®æ° (ML-KEM ã®å Žåã¯çŽ æ° 3,329 ã§ã MLKEM_Q ãŸãã¯åã« q ãšè¡šèš) ã§å²ãããã®å°äœã ããæ¬¡ã«æã¡è¶ãããŸããå°äœæŒç®åã¯ããŒã»ã³ãèšå· % ã§è¡šãããŸãã è«ççã«ã¯ãML-KEM ã§ 2 ã€ã®æ° x ãš y ãå ç®ãŸãã¯ä¹ç®ããå¿
èŠãããå Žåã( x + y ) % q ããã³ ( x * y ) % q ãèšç®ããå¿
èŠããããŸããããšãã°ã(294 * 38) % q = 11,172 % q = 1,185 ãšãªããŸãããã®ãããªã峿ãã®ã¢ãžã¥ã©ãŒ q æŒç®ã¯ãããŒã¿ããæ£èŠãç¯å² {0, 1, 2, ⊠, q -1} ã§è¡šãããã«åžžã«ã¢ãžã¥ã©ãŒéå
ãé©çšãããã®ã§ã極ããŠé
ããªããŸãã å¹çç㪠ML-KEM å®è£
ã§ã¯ã代ããã«ãé
å»¶ãã¢ãžã¥ã©ãŒ q æŒç®ã䜿çšããŸããããŒã¿ã¯ã§ããã ãé·ãã¢ãžã¥ã©ãŒéå
ãªãã§æäœãããææªã®å Žåã®ãªãŒããŒãããŒã®ãªã¹ã¯ãçãããšãã«ã®ã¿éå
ãè¡ãããŸããããã«ãããã«ãã Montgomery éå
ã®ãããªäžå®å
šãªéå
ã¢ã«ãŽãªãºã ã䜿ããããã«ãªããŸããããã¯é«éã§ãããå¿
ãããå®å
šã«éå
ãããåºåãè¿ãããã§ã¯ãããŸããã ML-KEM ã®å Žåãã¢ãžã¥ã©ãŒ q = 3,329 ã®ããŒã¿ã¯éåžžã笊å·ä»ã 16 ãããæŽæ°ã«æ ŒçŽãããŸããML-KEM ã®æ°å€ãã®ç®è¡ã«ãŒãã³å
šäœã§é
å»¶æŒç®ãæ±ãéã«ã¯ãããŒã¿ã®ææªå€ã®å¢çã远跡ãããããã®å¢çã 16 ãããæŽæ°ã®éçãè¶
ããå¯èœæ§ã®ããç®æã«ã¢ãžã¥ã©ãŒéå
ãæ¿å
¥ããããšãäžå¯æ¬ ã§ãããã®é åã§ã®å°ããªééãã¯ããã¹ãã§èŠéãããããšããããŸãããªããªããå¹³åçãªå¢çã¯ææªå€ã®å¢çããã¯ããã«å°ããåŸåãããããã§ãããããŠãæ¬çªç°å¢ã§ã©ã³ãã ã«è¡šé¢åããããšããããŸãã ãããã¡å¢çãç¹ã«ç®è¡å¢çã®è¿œè·¡ã¯ãæéããããããšã©ãŒãèµ·ããããäœæ¥ã§ããããšãã°ãäœã¬ãã«ã®ç®è¡é¢æ°ã®åºåå¢çã匱ãããšããŸã£ããå¥ã®é¢æ°ã§çšã«ç®è¡ãªãŒããŒãããŒãçºçããããšããããŸãããããæäœæ¥ã§ç¢ºèªããã«ã¯ãç·»å¯ãªããã¥ã¡ã³ãäœæãšçç·Žããç£æ»æ
åœè
ãå¿
èŠãªã ãã§ãªããéçºãé
ããªããŸãã mlkem-native ã§ã¯ãC Bounded Model Checker (CBMC) ãšããããŒã«ã䜿çšããŠãC ã¬ãã«ã§ã¡ã¢ãªå®å
šæ§ãšåå®å
šæ§ãèªåçã«æ€èšŒããŠããŸããå颿°ã«ã€ããŠãæ©æ¢°å¯èªãã€äººéå¯èªãªå¥çŽããœãŒã¹ã³ãŒãã«è¿œå ããŠãããã¡ãšç®è¡ããŒã¿ã®å¢çãæå®ããCBMC ã«ãããã®å¢çã«å¯ŸããŠãããã¡ãªãŒããŒãããŒãç®è¡ãªãŒããŒãããŒãçºçãåŸãªãããšãèªåçã«æ€èšŒãããŸãã ã¢ãžã¥ã©ãŒéå
ã®ç°¡åãªäŸãèŠãŠã¿ãŸãããã void mlk_poly_reduce_c(mlk_poly *r) __contract__( requires(memory_no_alias(r, sizeof(mlk_poly))) assigns(memory_slice(r, sizeof(mlk_poly))) ensures(array_bound(r->coeffs, 0, MLKEM_N, 0, MLKEM_Q))) { unsigned i; for (i = 0; i < MLKEM_N; i++) __loop__( invariant(i <= MLKEM_N) invariant(array_bound(r->coeffs, 0, i, 0, MLKEM_Q))) { /* Barrett reduction, giving signed canonical representative */ int16_t t = mlk_barrett_reduce(r->coeffs[i]); /* Conditional addition to get unsigned canonical representative */ r->coeffs[i] = mlk_scalar_signed_to_unsigned_q(t); } mlk_assert_bound(r, MLKEM_N, 0, MLKEM_Q); } é¢é£ããéšåãäžã€ãã€èŠãŠãããŸãããããŸãã __contract__( ⊠) ã«æ³šç®ããŸããç°¡åã«èšããšã memory_no_alias ãš memory_slice ã®è¡ã¯ãã³ãŒããèªã¿æžãã§ããã¡ã¢ãªãæå®ããŠããŸããããã¯ã¡ã¢ãªå®å
šæ§ã«é¢é£ããŸãã ensures(array_bound(âŠ)) å¥ã¯åå®å
šæ§ã«é¢é£ããŠããŸããããã¯ã颿°ãæ»ã£ãæç¹ã§ããŒã¿ãåºé [0, 1, âŠ, q ) å
ã«ããããšã ä¿èšŒãã ããšãæå®ããŸãã蚌æã§ã¯ã __loop__(invariant(âŠ)) ããããã«ãŒãããã®å¢çãæ®µéçã«ã©ã確ç«ããããæå®ããŠããŸãã i çªç®ã®ã€ãã¬ãŒã·ã§ã³ã§ã¯ã i çªç®ã®ä¿æ°ãŸã§æç«ããŸããæåŸã«ãå®è£
ã¯å®è³ªçã« mlk_barrett_reduce ãš mlk_scalar_signed_to_unsigned_q ãçµã¿åãããŠããŸããCBMC ã¯ãããã®å
éšãèŠãããããã®å¥çŽã«çœ®ãæããŸãã int16_t mlk_barrett_reduce(int16_t a) __contract__( ensures(return_value > -MLKEM_Q_HALF && return_value < MLKEM_Q_HALF) { ... } int16_t mlk_scalar_signed_to_unsigned_q(int16_t c) __contract__( requires(c > -MLKEM_Q && c < MLKEM_Q) ensures(return_value >= 0 && return_value < MLKEM_Q) ensures(return_value == (int32_t)c + (((int32_t)c < 0) * MLKEM_Q)) { ... } mlk_barrett_reduce ããŸã察称çãªåºååºé ( -q /2, âŠ, q /2) ã確ç«ããæ¬¡ã« mlk_scalar_signed_to_unsigned_q ãããã [0,1, âŠ, q ) ã«ãããã³ã°ããŠããã®ãåãããŸãããã®äŸã§ã¯ã仿§ãæãŸããåœ¢ã§æŽåããŠããããšãç®èŠã§ç°¡åã«ç¢ºèªã§ããŸãããããè€éãªäŸã§ã¯ããã»ã©æç¢ºã§ã¯ãããŸããããããã«ãããCBMC ãèªåçã«ãã§ãã¯ããŠãããŸãã éãåãããªããå®å
šãä¿ã€ äžè¿°ã® CBMC 蚌æã¯ãmlkem-native ã® C ã³ãŒãã«å¯Ÿããã¡ã¢ãªå®å
šæ§ãšåå®å
šæ§ã確ç«ããŸããããããmlkem-native ã®æãæ§èœãéèŠãªéšå (Keccak 眮æãšæ°è«å€æ) ã¯ãAArch64 ãš x86_64 åãã«æäœæ¥ã§æé©åãããã¢ã»ã³ããªã§å®è£
ãããŠããŸãã mlkem-native ã®ã¢ã»ã³ããªå®è£
ã«å¯ŸããŠãé«ãæ§èœãç¶æãã€ã€ä¿èšŒãåŸãããã«ãAWS ã¯æ¬¡ã® 3 ã€ã®ã³ã³ããŒãã³ãã䜿çšããŠããŸããã¢ã»ã³ããªã®ã¹ãŒããŒãªããã£ãã€ã¶ãŒã§ãã SLOTHYã察話åå®ç蚌æåšã§ãã HOL Lightããã㊠HOL Light äžã«æ§ç¯ãããã¢ã»ã³ããªçšæ€èšŒåºç€ã§ãã s2n-bignum ã§ããããããçµã¿åãããããšã§ãéçºè
ãã¯ãªãŒã³ã§ä¿å®ããããã¢ã»ã³ããªãèšè¿°ãã€ã€ããããã€ãããã³ãŒããæ£åœæ§ã®åœ¢åŒçä¿èšŒã䌎ã£ãŠããŒã¯æ§èœãéæããã¯ãŒã¯ãããŒãå¯èœã«ãªããŸãã 髿§èœãªã¢ã»ã³ããªãæã§æžããšãæ ¹æ¬çãªãã¬ãŒããªããçããŸããèšç®ãæç¢ºã«è¡šçŸããã¯ãªãŒã³ã§ç£æ»å¯èœãªã³ãŒãã¯é
ããé«éãªã³ãŒãã¯å¯ã§ããã€ã¯ãã¢ãŒããã¯ãã£åºæã§ãä¿å®ãå°é£ã§ããSLOTHY ã¯ãã€ã¯ãã¢ãŒããã¯ãã£åºæã®æé©åãèªååããããšã§ããã®ãã¬ãŒããªããè§£æ¶ããŸããã¢ã»ã³ããªããã°ã©ã ãå¶çŽå
è¶³åé¡ã«å€æããå¶çŽãœã«ããŒã䜿çšããŠæé©ãªåœä»€ã¹ã±ãžã¥ãŒã«ãšã¬ãžã¹ã¿å²ãåœãŠãèŠã€ããæé©åãããã¢ã»ã³ããªãåºåããŸããéçºè
ã¯èšç®ã®ããžãã¯ãéèŠããã¯ãªãŒã³ãªã³ãŒããæžããSLOTHY ãé«éãªã³ãŒããçæããŸãã AWS ã¯ããã¹ãŠã® AArch64 ããã³ x86_64 ã¢ã»ã³ããªã«ãŒãã³ã®æ©èœçæ£åœæ§ããHOL Light ãš s2n-bignum ã䜿çšããŠèšŒæããŸããSLOTHY ã䜿çšãããå Žæã§ã¯ãç¹å®ã®åœä»€é åºãã¬ãžã¹ã¿å²ãåœãŠã«äŸåããªãããã«èšŒæãèšè¿°ãããŸãããããã£ãŠã蚌æã調æŽããããšãªããç¹å®ã®ãã€ã¯ãã¢ãŒããã¯ãã£åãã«ã³ãŒããåæé©åã§ããŸãããã®ãäºåŸãæ€èšŒã¢ãããŒãã¯ãã¢ã»ã³ããªã§è¡šçŸãããèšç®ã®æ°åŠçãªæ£ãããããããã©ã®ããã«çæããããã«ããããã確ç«ããŸããç¹ã«ãSLOTHY ã¯ä¿¡é Œã§ããã³ã³ãã¥ãŒãã£ã³ã°ããŒã¹ (TCB) ããé€å€ãããŸãã èª å®ããä¿ã€ 圢åŒçæ€èšŒã¯æ±ºããŠçµ¶å¯Ÿçãªãã®ã§ã¯ãããŸããããã¹ãŠã®èšŒæã¯ã圢åŒçãªãªããžã§ã¯ã (仿§ãšã¢ãã«) ãé圢åŒçãªçŸå®äžçã®èŠä»¶ãšã·ã¹ãã ã«çµã³ä»ãããã®ã§ããããããã®çµã³ä»ãã«ã¯ã®ã£ãããçããŸãã圢åŒç仿§ã¯å®éã«å¿
èŠãªãã®ãæããŠããã? 圢åŒçã¢ãã«ã¯å®éã®ã·ã¹ãã ãå¿ å®ã«åæ ããŠããã? 蚌æåºç€èªäœã¯å¥å
šã? ã客æ§ã®ä¿¡é Œãç²åŸãç¶æããã«ã¯ããããã®éçã«ã€ããŠéææ§ãä¿ã€å¿
èŠããããŸããããã§ AWS ã¯ã SOUNDNESS.md ãšé¡ããããã¥ã¡ã³ããäœæã»å
¬éããŸãããããã§ã¯ãmlkem-native ã§äœã蚌æãããäœãä»®å®ãããæ®åãªã¹ã¯ãã©ãã«ãããããHOL Light 蚌æã§äœ¿çšãããããŒããŠã§ã¢ã¢ãã«ã®å¿ 宿§ãCBMC ã®ãã倧ã㪠TCBã2 ã€ã®æ€èšŒã¹ã¿ãã¯éã®æåã®æ©æž¡ãã«è³ããŸã§ãããã³ã°ããŠããŸããåã®ã£ããã«ã€ããŠã宿œãããŠããç·©åçã説æããä»åŸã®äœæ¥ã®æŠèŠã瀺ããŠããŸãã AWS ã®ç®æšã¯å®ç§ã䞻匵ããããšã§ã¯ãªããéææ§ãéããŠä¿¡é Œãç²åŸããããšã§ããã³ãã¥ããã£ã®çæ§ã«ã¯ SOUNDNESS.md ãæ¹å€çã«èªã¿ãAWS ã®åæã«ç°è°ãå±ããæ®åããã®ã£ãããåããããšã«ãååããã ããã°å¹žãã§ãã æ¬çªç°å¢ãžã®å±é mlkem-native ã¯ãAWS ãµãŒãã¹å
šäœã®å®å
šãªéä¿¡ãæ¯ãã Amazon ã®ãªãŒãã³ãœãŒã¹æå·ã©ã€ãã©ãª AWS-LC ã«çµ±åãããŠããŸãããã®çµ±åã§ã¯ãèªåã€ã³ããŒã¿ãŒã䜿çšã㊠mlkem-native ã®ãœãŒã¹ã³ãŒããã¢ããã¹ããªãŒã ãªããžããªããçŽæ¥åã蟌ã¿ãAWS-LC ãææ°ã®æ€èšŒæžã¿å®è£
ãšåæãç¶ããããšãä¿èšŒããŸãã ãã®çµ±åã¯æéãæå°éã«æããããèšèšãããŠããŸããmlkem-native ã®ã¢ãžã¥ã©ãŒã¢ãŒããã¯ãã£ã«ãããAWS-LC ã¯ã³ã¢ã® ML-KEM ããžãã¯ãã€ã³ããŒãããªããããã©ãããã©ãŒã åºæã®ã³ã³ããŒãã³ãã«ã¯ç¬èªã®å®è£
ãæäŸã§ããŸããããšãã°ãAWS-LC 㯠mlkem-native ã®æå·ããªããã£ããæ¢åã® FIPS-202 (SHA-3) å®è£
ã«ãããã³ã°ããAWS-LC ã®ä¹±æ°çæããã³ã¡ã¢ãªãŒãå颿°ã䜿çšããå¿
èŠãªå Žåã¯ãã¢ã¯ã€ãºäžè²«æ§ãã¹ããªã© FIPS ã¢ãŒãæ©èœãæå¹ã«ããŸãããããå¯èœã«ããŠããã®ã¯ãæ€èšŒæžã¿ã³ãŒãã倿Žããããšãªã mlkem-native ã® API ã AWS-LC ã®ã€ã³ãã©ã¹ãã©ã¯ãã£ã«æ©æž¡ãããèãäºææ§ã¬ã€ã€ãŒã§ãã éèŠãªã®ã¯ãã¡ã¢ãªå®å
šæ§ãšåå®å
šæ§ã蚌æãã CBMC å¥çŽããã€ã³ããŒãããããœãŒã¹ã³ãŒãå
ã«ä¿æãããŠããããšã§ããããªããã»ããµãã³ã³ãã€ã«ããããã€ããªããããããåé€ããŸããããœãŒã¹å
ã«ã¯æ®ããã³ãŒãã®ä¿èšŒã®æ©æ¢°ãã§ãã¯å¯èœãªããã¥ã¡ã³ããšããŠæ©èœããŸããããã¯ãå®è£
ãšå
±ã«ç§»åããäžçš®ã®ãçãã蚌æãã§ãã ããã«ãmlkem-native ã AWS-LC ããªãŒãã³ãœãŒã¹ã§å¯å®¹ãªã©ã€ã»ã³ã¹ã®ããããã®å©ç¹ã¯ AWS ã®æ ãè¶
ããŠåºãããŸãã誰ã§ã mlkem-native ãèªç€Ÿã®ã·ã¹ãã ã«çµ±åããåãæ§èœãšä¿èšŒã®çµã¿åãããåŸãããšãã§ããŸãã圢åŒçæ€èšŒææç© (CBMC å¥çŽãš HOL Light 蚌æ) ã¯ãªããžããªã®äžéšã§ãããé¢é£ãããã¹ãŠã®ããŒã«ã¯ãªãŒãã³ãœãŒã¹ã§ãããã»ããã¢ãããšèšŒæãã§ãã¯ã®ã¹ã¯ãªãããæäŸãããŠãããããAWS ã®ã»ãã¥ãªãã£äž»åŒµãç¬ç«ã«æ€èšŒã§ããŸãã ã€ã³ãã¯ã mlkem-native ã®éçºã¯ãèªåæšè«ãäœç³»çã«é©çšããã°ãæå·ãšã³ãžãã¢ãªã³ã°ã® 3 ã€ã®ç®æš (ã»ãã¥ãªãã£ãæ§èœãä¿å®æ§) ãè¡çªããªãããšã瀺ããŠããŸãã CBMC ã¯ãè€éãªç®è¡å
šäœã§å¢çãæåã§è¿œè·¡ããäœæ¥ãã AWS ãè§£æŸãããã¹ãã§ã¯èŠéãããŠæ¬çªç°å¢ã§ã©ã³ãã ã«è¡šé¢åãããšã©ãŒãææããŸãããã¢ãããŒã·ã§ã³ã¯ãœãŒã¹ã³ãŒãå
ã«æ©æ¢°ãã§ãã¯å¯èœãªããã¥ã¡ã³ããšããŠæ®ããã³ãŒããåæã«ããä¿å®ãããããããå®å
šã«ããŸããHOL Light ãš s2n-bignum ã«ãããAWS ã¯æ°åŠçãªæ£åœæ§ã®ç¢ºå®æ§ãæã£ãŠç©æ¥µçãªã¢ã»ã³ããªæé©åããããã€ã§ããŸãããSLOTHY ã«ãããç¹å®ã®ãã€ã¯ãã¢ãŒããã¯ãã£åãã«ããŒã¯æ§èœãéæããªãããã¯ãªãŒã³ã§ç£æ»å¯èœãªã³ãŒããæžãããšãã§ããŸããããããŠã蚌æã¯æé©åã«äŸåããªãããã«èšè¿°ãããŠãããããæ€èšŒãããçŽãããšãªãã³ãŒãã®ã¿ãŒã²ããã倿Žã§ããŸãã ãã®çµæãåŸæ¥ã®éçºã§éæã§ãããã®ããããåæã«ããå®å
šã§ãããé«éã§ãããä¿å®ããããå®è£
ãå®çŸããŸãããAWS ã¯ã客æ§ã®ã»ãã¥ãªãã£ãã客æ§ã®äœéšããããŠé©æ°ããèœåã®éã§åŠ¥åããŸããã§ãããèªåæšè«ã¯ 3 ã€ãã¹ãŠãå®çŸããã®ã§ãã AWS-LC-FIPS ãªãªãŒã¹ ãã©ãããã©ãŒã åŠç 3.1 4.0 æ¹ååç c7i Keygen 30899 65146 2.1 Encaps 30623 61233 2.0 Decaps 25141 51545 2.0 c7g Keygen 29617 71134 2.4 Encaps 28482 66874 2.3 Decaps 23919 64765 2.3 Amazon ã®æå·ã©ã€ãã©ãª AWS-LC ã§ ML-KEM ãªãã¡ã¬ã³ã¹å®è£
ãã mlkem-native ã«åãæ¿ããéã®æ§èœåœ±é¿ãML-KEM-768 ã®æ§èœã¯ c7i ããã³ c7g EC2 ã€ã³ã¹ã¿ã³ã¹ã§æž¬å®ãããŠããŸããæ°å€ã¯ 1 ç§ãããã®åŠçæ°ã衚ããŸã (é«ãã»ã©è¯ã)ãããŒã¹ã©ã€ã³ã¯ ML-KEM ã® C ãªãã¡ã¬ã³ã¹å®è£
ãå«ã AWS-LC-FIPS 3.1 ãªãªãŒã¹ã§ããAWS-LC-FIPS 4 ãªãªãŒã¹ã¯ mlkem-native ã§ãã«ããããŠããŸãããã©ãããã©ãŒã 㯠Intel(R) Xeon(R) Platinum 8488C ãæèŒãã c7i ãšãGraviton 3 ããã»ããµãæèŒãã c7g ã§ãã è¬èŸ ååã® John Harrison æ° (Automated Reasoning Group ã® senior principal applied scientist) ã«ã¯ãHOL Light ã§ã® AArch64 ã¢ã»ã³ããªèšŒæã®å€§éšåãæäŸãããŸã HOL Light 察話åå®ç蚌æåšããã³ s2n-bignum æ€èšŒåºç€ã®ä¿å®ãæ
åœããã ããããšã«æè¬ããŸããmlkem-native 㯠AWS ã ãã§ãªãããªãŒãã³ãœãŒã¹ã³ãã¥ããã£ã®å€ãã®ã¡ã³ããŒãé¢ããå
±åäœæ¥ã§ãããšããããå
±åä¿å®è
ã§ãã zeroRISC ã® Matthias Kannwischer æ°ã«æè¬ããŸãã圌㯠AWS ãšå
±ã« mlkem-native ãç«ã¡äžãã以æ¥ãããžã§ã¯ãã®æåã«éèŠãªåœ¹å²ãæãããŠããŸããã èè
ã«ã€ã㊠Hanno Becker Hanno Becker 㯠Amazon ã® Automated Reasoning Group ã® principal applied scientist ã§ããå
Mbed TLS ã®éçºè
ã§ãArm äžã®é«æ§èœ (ãã¹ãéå) æå·ã«æ
ç±ã泚ãã§ããŸããSLOTHY ã¹ãŒããŒãªããã£ãã€ã¶ãŒã®äœè
ã§ããããŸãã Rod Chapman Rod Chapman 㯠Amazon Web Services (AWS) ã® senior principal scientist ã§ãã Dusan Kostic Dusan Kostic 㯠Amazon Web Services (AWS) ã® senior applied scientist ã§ãã æ¬ããã°ã¯ Security Solutions Architect ã® äžå³¶ ç« å ã翻蚳ããŸããã
æ¬ããã°ã¯ 2026 幎 3 æ 20 æ¥ã«å
¬éããã Amazon Science Blog â Formally verified AES-XTS: The first AES algorithm to join s2n-bignum â ã翻蚳ãããã®ã§ãã ã³ã¢æŒç®ã®ã¢ã»ã³ããªã³ãŒããåçŽåããŠæç¢ºåããããšã§ãèªåæé©åãšæ€èšŒãå¯èœã«ãªããŸããã æå·åã¢ã«ãŽãªãºã ã¯ãèªã¿åãå¯èœãªããŒã¿ãã©ã³ãã ãªãããã®äžŠã³ã®ããã«èŠããæå·æã«å€æããæ°åŠçæç¶ãã§ããæå·æã¯ã察å¿ãã埩å·ã¢ã«ãŽãªãºã ãšæ£ããéµã䜿çšãããšãã«ã®ã¿åŸ©å·ã§ããŸãã ä¿ç®¡äžã®ããŒã¿ (ãã£ã¹ã¯ãããŒã¿ããŒã¹ã«ä¿åãããæ
å ±) ã«å¯ŸããŠã¯ã AES-XTS ã®ãããªã¢ã«ãŽãªãºã ããã¹ãã¬ãŒãžã«æžã蟌ãŸããåã«åãããã¯ãæå·åããããšã§ãç©ççãªçé£ãã¹ãã¬ãŒãžã·ã¹ãã ãžã®äžæ£ã¢ã¯ã»ã¹ããä¿è·ããŸãã転éäžã®ããŒã¿ (ãããã¯ãŒã¯äžãç§»åããæ
å ±) ã«å¯ŸããŠã¯ãTLS ã®ãããªãããã³ã«ãè€æ°ã®ã¢ã«ãŽãªãºã ãçµã¿åãããŠäœ¿çšããŸããé察称æå·åã¢ã«ãŽãªãºã (RSA ãæ¥åæ²ç·) ã§å®å
šãªæ¥ç¶ã確ç«ããé«éãªå¯Ÿç§°æå·åã¢ã«ãŽãªãºã (AES-GCM ãªã©) ã§å®éã®ããŒã¿ã¹ããªãŒã ãä¿è·ãããšãšãã«æ¹ãããããŠããªãããšãæ€èšŒããŸããAmazon Web Services (AWS) ã§ã¯ã EBS ã Nitro Card ãDynamoDB ãªã©ã®ãµãŒãã¹ã§ã客æ§ã®ããŒã¿ãä¿è·ããããã« AES-XTS ã䜿çšããŠãããAES-GCM ãçšãã TLS ã«ãããµãŒãã¹éããã³ã客æ§ãšã®éä¿¡ãå«ããã¹ãŠã®ãããã¯ãŒã¯éä¿¡ãä¿è·ããŠããŸãã AWS ã¯ãAES-XTS 埩å·ã®æé©åããã Arm64 ã¢ã»ã³ããªå®è£
ã®åœ¢åŒçæ€èšŒã«ææŠããŸãããã圢åŒçæ€èšŒããšã¯ããšã³ãžãã¢ãªã³ã°ãããã·ã¹ãã ãç¹å®ã® 仿§ ãæºããããšãæ°åŠçã«èšŒæããããã»ã¹ã§ãã æ¬ç ç©¶ã¯ããããã¯æåã¹ãã¬ãŒãžããã€ã¹ã®æå·ä¿è·ã«é¢ãã IEEE æšæº 1619 ã«åŸããAES-XTS ã® AES-256-XTS ããªã¢ã³ãã«çŠç¹ãåœãŠãŠããŸããã256ãã¯æå·åéµã®ãµã€ãºã衚ããŸãã åºå®ãµã€ãºã®ãããã¯ãåŠçããã¢ã«ãŽãªãºã ãšã¯ç°ãªããAES-XTS 㯠16 ãã€ããã 16 ã¡ã¬ãã€ããŸã§ã®å¯å€é·ããŒã¿ãæ±ããäžå®å
šãªãããã¯ã«ã¯ç¹å¥ãªããžãã¯ã䜿çšããŸããæ€èšŒãããã¢ã»ã³ããªã³ãŒã㯠5 åã¢ã³ããŒã«çã§ãã«ãŒãã 5 ã€ã®ã¬ãžã¹ã¿ (ãããããå
¥åãããã¯ãæ ŒçŽ) ã§äžŠåå®è¡ãããããã«å±éãããææ°ã® CPU ãã€ãã©ã€ã³åãã«æé©åãããŠããŸããããšã©ãŒããããšã客æ§ããŒã¿ã®ã»ãã¥ãªãã£ãæãªãå¯èœæ§ãããéèŠãªã³ãŒãã§ãããªãããæåã¬ãã¥ãŒã§ã¯æ£åœæ§ãä¿èšŒã§ããªãã»ã©è€éã§ããã Amazon Web Services ã®åœ¢åŒçã«æ€èšŒãããå€§æ°æŒç®ã©ã€ãã©ãªã§ãã s2n-bignum ã®äžéšãšããŠãAWS ã¯æ¹åããã Arm64 ã¢ã»ã³ããªå®è£
ã«ãã AES-XTS æå·åãšåŸ©å·ãæäŸãããšãšãã«ãããŒã ã¡ã³ã㌠(John Harrison) ãéçºãã HOL Light 察話åå®ç蚌æåšãçšãã仿§èšè¿°ããã³åœ¢åŒçæ€èšŒãè¡ããŸããã ããã¯ãå
¥åé·ã«å¿ããŠè€æ°ã®çµè·¯ãæã€å€§èŠæš¡é¢æ°ã察象ãšãã蚌æé§åéçºã®å®éšã§ããããã®çµæãs2n-bignum ã©ã€ãã©ãªã«ãããŠãããŸã§ã§æå€§èŠæš¡ã®èšŒæã宿ããŸãããå
žåçãªå
¥åãµã€ãºã§ãã 512 ãã€ãã§ã¯ãã¢ã«ãŽãªãºã ã®ããã©ãŒãã³ã¹ã¯å
ã®ã³ãŒããšåçããé«åºŠã«æé©åããã Arm ã³ã¢ã§ã¯ãããã«åäžããŸããããã®ã¢ã«ãŽãªãºã ãšãã®èšŒæã s2n-bignum ã©ã€ãã©ãªã«è¿œå ããããšã§ãããå€ãã® AES ããŒã¹ã®ã¢ã«ãŽãªãºã ã远å ããéãéãããŸãã ã¢ã«ãŽãªãºã ã®èª¬æ AES ã¯éµä»ã眮æãå®è£
ãããããã¯æå·ã§ããã€ãŸããå¹³æãã¡ã€ã«ãããã㯠(ãã®å Žå㯠128 ãããã®ãããã¯) ã«åããŠåŠçããä»»æã®éµã«å¯ŸããŠãåå¹³æãããã¯ãäžæã®æå·æãããã¯ã«å¯Ÿå¿ä»ããå
šåå° (äžå¯Ÿäžãã€å¯é) 颿°ãå®çŸ©ããŸãããã®æ°åŠçæ§è³ªã«ããã埩å·ã«ãã£ãŠå
ã®å¹³æãäžæã«åŸ©å
ã§ããããšãä¿èšŒãããŸãã AES-XTS ã¯ãã¹ãã¬ãŒãžæå·åã®ããã«ç¹å¥ã«èšèšãããã¢ãŒãã§ããåºç€ãšãªãæ§æèŠçŽ ãšã㊠AES ã䜿çšããŸããããã£ã¹ã¯æå·åã®ç¬èªèŠä»¶ã«å¯Ÿå¿ãããããäœçœ®äŸåã® tweak (調æŽå€) ãšæå·æã¹ãã£ãŒãªã³ã° (ciphertext stealing) (éšåãããã¯ãåŠçããæ¹æ³) ã远å ããŠããŸãããã£ã¹ã¯æå·åã§ã¯ãä»»æã®ã»ã¯ã¿ãžã®ã©ã³ãã ã¢ã¯ã»ã¹ãå¿
èŠã§ãããããŒã¿ãµã€ãºãæ£ç¢ºã«ä¿ã€å¿
èŠããããŸãã AES-XTS ã¯ã2 ã€ã®éµã䜿çšããã¢ãããŒãã§ã¹ãã¬ãŒãžããŒã¿ãæå·åããŸããå 128 ããããããã¯ãšãã®äœçœ®äŸåã® tweak ã¯æä»çè«çå (XORãå
¥åå€ãç°ãªãå Žåã®ã¿ 1 ãåºåããäºé
æŒç®) ããããã®çµæã AES ã§æå·åãããåã³ tweak ãš XOR ãããŸããããã«ããããã£ã¹ã¯äžã®ç°ãªãäœçœ®ã«ããåäžã®ããŒã¿ãç°ãªãæå·æãçæããŸããtweak ã¯ãã»ã¯ã¿çªå·ã 2 çªç®ã®éµã§æå·åãã ã¬ãã¢äœ 㧠α ã®ã¹ãä¹ãæããããšã§çæãããåãããã¯äœçœ®ã«å¯ŸããŠäžæã®å€ãäœæãããŸãã æåŸã®ãããã¯ãå®å
šãª 128 ãããã§ãªãå Žåãæå·æã¹ãã£ãŒãªã³ã°ãæ©èœããŸããæå·æã¹ãã£ãŒãªã³ã°ã¯åã®ãããã¯ãããã€ãããåçšãããããšã§ãããã£ã³ã°ãç¡é§ãªé åãªãã«ä»»æã®é·ãã®ããŒã¿ãæå·åã§ããããã«ããŸããããã«ãããåãããã¯ã®æå·åãäœçœ®ã«åºã¥ããŠè¡ããªãããä»»æã®ã»ã¯ã¿ãç¬ç«ããŠèªã¿æžãã§ããŸããããã¯ãã£ã¹ã¯æå·åã«ãããŠéèŠãªæ©èœã§ãããªããªãããã£ã¹ã¯æå·åã®ã»ãã¥ãªãã£ã¢ãã«ã§ã¯ãæ»æè
ã察象以å€ã®ã»ã¯ã¿ã«ã¢ã¯ã»ã¹ãããããã倿Žãã埩å·ãèŠæ±ããããšã蚱容ãããŠããããã§ãããŸããæå·æã®ãµã€ãºãå¹³æãšå®å
šã«åãã«ãªãããšãä¿èšŒãããæå®ã®å Žæã«åãŸããŸãã XOR-æå·å-XOR (XEX) æ§é ãæ¡çšãã AES-XTS æå·å æå·æã¹ãã£ãŒãªã³ã°ã¯ãæåŸãã 2 çªç®ã®ãããã¯ã®åºåãåå²ããããšã§ãæå·åäžã®éšåãããã¯ãåŠç 察称埩å·ããã»ã¹ 埩å·ã®ããã®éæå·æã¹ãã£ãŒãªã³ã° ã¢ã»ã³ããªå®è£
ã®å¶åŸ¡ãã㌠AWS ã¯ãAmazon ã® AWS-LC æå·ã©ã€ãã©ãªã«ããæ¢åã® AES-XTS å®è£
ããéå§ããŸãããAES-XTS ã¯å¹³æã 128 ããããããã¯ã§ã«ãŒãåŠçããåãããã¯ã®æå·åã«ã¯ 15 ã®ã¹ããããå¿
èŠã§ãåã¹ãããã«ã¯æå·åéµããå°åºãããç¬èªã®ãã©ãŠã³ãããŒãã䜿çšãããŸããæ¢åã®å®è£
㯠5 åã¢ã³ããŒã«ãããŠããã5 ãããã¯ãã€äžŠåã§åŠçããŸããæåŸã®ãããã¯ã®é·ãã 128 ãããæªæºã®å Žåãå
¥åãããã¡ã®éçãè¶
ããŠèªã¿åãããããã¡ãªãŒããŒãªãŒããã®ãªã¹ã¯ããããŸãã ãªãŒããŒãªãŒããåé¿ãããããæ¢åã®å®è£
ã§ã¯å
¥åãããã¡å
ã®çŸåšäœçœ®ãžã®ãã€ã³ã¿ã«å¯ŸããŠè€éãªæäœãè¡ããŸããããã«ã¯ã远跡ãå°é£ãªé«åºŠãªå¶åŸ¡ãããŒãå¿
èŠã§ããã«ãŒãã«ãŠã³ã¿ã¯ã«ãŒãã®åãšéäžã§è€æ°åã€ã³ã¯ãªã¡ã³ãããã³ãã¯ãªã¡ã³ããããã«ãŒãã«ã¯æçµçãªã«ãŒãããã¯åå²ä»¥å€ã« 2 ã€ã®è¿œå ã®åºå£ç¹ããããŸãã 1 ã€ã®åºå£ç¹ã¯ãã«ãŒãã®æçµã€ãã¬ãŒã·ã§ã³ã§ 4 ãããã¯ãæ®ã£ãŠããå Žåã®ããã®ãã®ã§ããã 1 ã€ã®åºå£ç¹ã¯ 1 ïœ 3 ãããã¯ãæ®ã£ãŠããå Žåã®ããã®ãã®ã§ããã«ãŒãã®ãããŒã¯ããã€ãã©ã€ã³ã®äœ¿çšçãæå€§åããããã«ããŒã/ã¹ãã¢åœä»€ãš AES ããã³ XOR åœä»€ãã€ã³ã¿ãŒãªãŒãããŠããŸããã«ãŒãçµäºåŸãæ®ãã®ãããã¯ã®åŠç㯠4 ãã 1 ãŸã§ã®é·ãã«å¯ŸããŠçµ¡ã¿åã£ãŠãããæåŸã«éšåãããã¯ãããå Žåãã¢ã«ãŽãªãºã ã¯æå·æã¹ãã£ãŒãªã³ã°æé ãå®è¡ããŸããããã«ã15 åã®ã©ãŠã³ãããŒã®ãã¡ 7 ã€ã ããã¬ãžã¹ã¿ã«ä¿æãããä»ã® 8 ã€ã¯ã«ãŒãå
å€ã§ã¡ã¢ãªããç¹°ãè¿ãããŒããããŠããŸããã AWS ã¯ãŸããArm ã³ãŒãçšã®ã¹ãŒããŒãªããã£ãã€ã¶ã§ãã SLOTHY ã«åœä»€ãåé
眮ãããŠãã€ãã©ã€ã³ã®äœ¿çšçãæå€§åããããšã§ãã¡ã€ã³ã«ãŒãã®ããã©ãŒãã³ã¹ãåäžã§ãããã調æ»ããŸãããSLOTHY ã«ã¯ãããŸããŸãª Arm ãã€ã¯ãã¢ãŒããã¯ãã£ã®ç°¡ç¥åãããã¢ãã«ãå«ãŸããŠããŸããå¶çŽãœã«ããŒã䜿çšããŠãæé©ãªåœä»€ã¹ã±ãžã¥ãŒã«ãã¬ãžã¹ã¿ãªããŒãã³ã°ãããã³åšæçãªã«ãŒãã€ã³ã¿ãŒãªãŒããæäŸããŸãã ããããSLOTHY ãã«ãŒããèå¥ããŠæé©åããããã«ã¯ãã«ãŒãã¯å
žåçãªã«ãŒãã®åäœã瀺ããåã€ãã¬ãŒã·ã§ã³ã®æåŸã«ã«ãŠã³ã¿ãæžå°ãããæåã«æ»ãå¿
èŠããããŸããSLOTHY ã¯ãŸãã8 ã€ã®ã©ãŠã³ãããŒãããŒãããããšã§äœæããããã¹ããããã«ãŒããåŠçã§ããŸããã ãããã«ãŒãããæŽçããå§ããåæ©ãšãªããŸããããŸãããã¹ãŠã®ã©ãŠã³ãããŒãæ°žç¶çã«ä¿æããããã«ã¬ãžã¹ã¿ãè§£æŸããŸãããããã¯ãæé©åãããåœä»€ã®é åºãå
ã®ã³ãŒããããå°ãªãäžæã¬ãžã¹ã¿ããå¿
èŠãšããªãã£ãããå¯èœã§ãããæ¬¡ã«ãè€æ°ã®åºå£ç¹ãšãæ®ãã®ãããã¯ãåŠçããããã®ã«ãŒãã«ãŠã³ã¿ã®æäœãåãé€ããŸãããã«ãŠã³ã¿ã®å€ã¯åžžã«ãããã¡ã«æ®ã£ãŠãã 5 ãããã¯ãã£ã³ã¯ã®æ°ã瀺ããSLOTHY ã®èŠä»¶ã«é©åããŸããã«ãŒãã¯æ®ãã®ãããã¯ã®åŠçã®åã«çµäºããŸãã ã«ãŒããçµäºãããã1 ãã 4 ãŸã§ã®æ®ããããã¯æ°ã®ãããããåŠçããããã®åå¥ã®åŠçãã©ã³ããçšæããŸãã4 ã€ã®ãã©ã³ãã¯ãã¹ãŠæå·æã¹ãã£ãŒãªã³ã°ã§çµäºããŸããããã¯ãæå·åã¢ã«ãŽãªãºã ãšåŸ©å·ã¢ã«ãŽãªãºã ã®å¶åŸ¡ãããŒã°ã©ã (äžèšåç
§) ã§ç¢ºèªã§ããŸããã³ãŒãå
šäœãéããŠã宿°æéã®èšèšææ³ãç¶æããŸãããã€ãŸããåå²ãç¹å¥ãªåŠçã¯ç§å¯ããŒã¿ã§ã¯ãªããå
¥åãã€ãé·ãªã©ã®å
¬éå€ã®ã¿ã«åºã¥ããŠããŸãã AES-256-XTS æå·åå¶åŸ¡ãããŒã°ã©ã AES-256-XTS 埩å·å¶åŸ¡ãããŒã°ã©ã ããã©ãŒãã³ã¹ ã³ãŒããžã®ä¿®æ£ã«ãããAWS 㯠SLOTHY ã䜿çšããŠæå·åã¢ã«ãŽãªãºã ãæé©åã§ããããã«ãªããŸãããããã«ãã AWS Graviton ãã¡ããªãŒã® Arm ããã»ããµã§ããããªããã©ãŒãã³ã¹åäžãåŸãããŸããããæé©åãããã¢ãŠããªããªãŒããŒãã€ãã©ã€ã³ãæã€ããé«åºŠãªãããã§ã¯ãåäžå¹
ã¯å°ãããªããŸãããå
ã®å®è£
ãšæ¯èŒããŠãã¢ã«ãŽãªãºã ã®å®è¡ãéããŠã©ãŠã³ãããŒãã¬ãžã¹ã¿ã«ä¿æãã¡ã¢ãªããã®ããŒããç¯çŽããããšã§ãAES åœä»€ãä»ã®åœä»€ãšã€ã³ã¿ãŒãªãŒãããªãããšã®åœ±é¿ãçžæ®ºã§ããŸããã ã«ãŒãå
ã®åœä»€ãããŒãããã¯ãªãŒã³ã«ããåºå£åŠçãã¢ãžã¥ãŒã«åããããšã§ãã«ãŒãã€ãã¬ãŒã·ã§ã³ã®ããŸããŸãªã¢ã³ããŒã«ä¿æ°ã詊ãããšãã§ããŸãããAWS 㯠3 åã4 åã6 åã®ä¿æ°ãå®éšããããŸããŸãªãã€ã¯ãã¢ãŒããã¯ãã£ã«ãã㊠5 åãäŸç¶ãšããŠæè¯ã®éžæã§ãããšçµè«ä»ããŸããã 圢åŒçæ€èšŒã«ããæ£åœæ§ã®ç¢ºä¿ æé©åãããæå·åã³ãŒããæ¬çªç°å¢ã«ãããã€ããã«ã¯ããããæ£ããåäœããããšã®æ°åŠçãªç¢ºå®æ§ãå¿
èŠã§ããã©ã³ãã ãã¹ãã§ã¯åçŽãªã±ãŒã¹ãçŽ æ©ããã§ãã¯ã§ããŸãããAWS 㯠AES-XTS å®è£
ã«å¯ŸããŠæé«ã¬ãã«ã®ä¿èšŒãæäŸããããã«åœ¢åŒçæ€èšŒã掻çšããŠããŸãã ãªã AES-XTS ã« HOL Light ãªã®ã? AWS ã®å®è£
ã IEEE 1619 仿§ã«äžèŽããããšã蚌æããããã«ãååã® John Harrison ãéçºãã察話åå®ç蚌æåšã§ãã HOL Light ã䜿çšããŠããŸããHOL Light ã¯ãã³ãŒããæžãããéã«æ€èšŒããããæ§ç¯ã«ããæ£åœæ§ãã¢ãããŒãããœãããŠã§ã¢éçºã«å¯ŸããŠç¹ã«åçŽã«å®è£
ãããã®ã§ããHOL Light ã®ä¿¡é Œãããã«ãŒãã«ã¯ãããæ°çŸè¡ã®ã³ãŒãã§ãåºæ¬çãªè«çæšè«èŠåãå®è£
ããŠããŸããããã¯ãèšŒææŠè¡ãèªååã«ãã°ããã£ããšããŠããHOL Light ã誀ã£ã蚌æãåãå
¥ããåå ã«ã¯ãªãåŸãªãããšãæå³ããŸããææªã®å Žåããã°ã«ãã£ãŠèšŒæãå®äºã§ããªããªããŸãããåœã®åœé¡ã蚌æå¯èœã«ããããšã¯ã§ããŸããã AWS ã AES-XTS æ€èšŒã« HOL Light ãéžãã çç±ã¯ããã€ããããŸãã ã¢ã»ã³ããªã¬ãã«ã®æ€èšŒ : AWS ã¯ã³ã³ãã€ã«æžã¿ã³ãŒãã«äŸåããã®ã§ã¯ãªããå®è£
ãçŽæ¥ã¢ã»ã³ããªã§èšè¿°ããŠããŸããããå°é£ã§ã¯ãããŸãããããã«ãã蚌æã¯ããããã³ã³ãã€ã©ããç¬ç«ãããã®ã«ãªããŸããHOL Light 㯠CPU åœä»€ä»æ§ã䜿çšããŠãã·ã³ã³ãŒããã€ãã«ã€ããŠçŽæ¥æšè«ãããœãããŠã§ã¢ã¹ã¿ãã¯ã®æäžå±€ã§ä¿èšŒãæäŸããŸãã æ¢åã®æå·ã€ã³ãã©ã¹ãã©ã¯ã㣠: s2n-bignum ã¯ãå®è¡ã¢ãŒãã£ãã¡ã¯ããåãé€ãçŽç²ã«æ°åŠçãªåé¡ãæ®ãã·ã³ããªãã¯ã·ãã¥ã¬ãŒã·ã§ã³ãã¯ãŒãæŒç®çšã®ç¹æ®åãããæŠè¡ããã€ããªã¹ãåŠçãªã©ãæå·æ€èšŒã®ããã®åºç¯ãªãµããŒãããã§ã«æäŸããŠããŸããAWS 㯠AES æŒç®ã«é¢ãã蚌æãããè£é¡ã远å ããä»ã® AES ã¢ãŒãã®èšŒæã«ãåå©çšã§ããããã«ããŸããã è€éãªå¶åŸ¡ãããŒã®åŠç : ååãªèª¬æãªãã«è€éãªèšŒæã§å€±æããå¯èœæ§ã®ããå®å
šèªå蚌æåšãšã¯ç°ãªããHOL Light ã®å¯Ÿè©±åã¢ãããŒãã«ããã5 åã¢ã³ããŒã«ãããã«ãŒãã«å¿
èŠãªè€éãªã«ãŒãäžå€æ¡ä»¶ãçµç±ããŠèšŒæãå°ãããšãã§ããä»»æã®é·ãã®ããŒã¿ãããã¯ãåŠçããå¯å€é·å
¥åãšéšåãããã¯ã«å¿
èŠãªè€éãªã¡ã¢ãªæšè«ãå®è¡ã§ããŸãã s2n-bignum ãã¬ãŒã ã¯ãŒã¯ s2n-bignum ã AES-XTS ã®å®è£
ã«äœ¿çšããããšã¯ã2 ã€ã®ç®çãæãããŸãããã㯠x86-64 ããã³ Arm ã¢ãŒããã¯ãã£ã§ã¢ã»ã³ããªã³ãŒãã圢åŒçã«æ€èšŒããããã®ãã¬ãŒã ã¯ãŒã¯ã§ãããæå·åã®ããã®é«éã§æ€èšŒãããã¢ã»ã³ããªé¢æ°ã®ã³ã¬ã¯ã·ã§ã³ã§ããããŸãããã®ã©ã€ãã©ãªã«ã¯ãç¹ã«å€§æ°ã®æ°åŠçæŒç® (ãããååã®ç±æ¥) ã«é¢ãã倿°ã®æå·åã¢ã«ãŽãªãºã ã®æ€èšŒæžã¿å®è£
ããã§ã«å«ãŸããŠããããããã¯å
¬é鵿å·ããªããã£ãã®åºç€ãšãªã£ãŠããŸããs2n-bignum ã®äžéšãšããŠå
¬ééµã¢ã«ãŽãªãºã ã蚌æããããã« HOL Light ãã©ã®ããã«äœ¿çšããããã®è©³çްã«ã€ããŠã¯ãAmazon Science ã®ä»¥åã®ããã°èšäºã Graviton ã§ã® RSA ã®é«éå: 圢åŒçæ€èšŒã§æ£åœæ§ã蚌æãéçºãå é ãããã³ã èªåæšè«ã§ã25519ãæ¥åæ²ç·æå·ã®é«éåãšæ£åœæ§ä¿èšŒãå®çŸ ããåç
§ããŠãã ããã åè¿°ã®ãšãããAES-XTS 㯠AES ãããã¯æå·ã®ã¢ãŒãã® 1 ã€ã§ããAES ã¯ãæåæäœ (S ããã¯ã¹ã䜿çšãã SubBytes)ã転眮æäœ (ShiftRowsãMixColumns)ãããã³éµæ··åãçµã¿åãããæåã»è»¢çœ®ãããã¯ãŒã¯ (SPN) æ§é ã«åºã¥ããŠããŸããs2n-bignum ã Arm64 ããã³ x86_64 ããã»ããµã«ãã AES åœä»€ã»ããã¢ãŒããã¯ã㣠(ISA)ãAES ãããã¯æå·ã®ä»æ§ãããã³ AES-XTS çšã®è¿œå 仿§ãå«ãããã«æ¡åŒµããããšã§ãããå€ãã® AES ããŒã¹ã®ã¢ã«ãŽãªãºã ãåãå³å¯ãªæ€èšŒã§æ±ãéãéããŠããŸãã 仿§ã®éçºãšãã¹ã AES ããã³ããã«åºã¥ãã¢ãŒãã® SPN ã®æ§è³ªã¯ãå®ç蚌æåšãæ¬æ¥çè§£ã§ããåçŽãªæ°åŒ (å
¬é鵿å·ã®åºæ¬ã§ããå°äœä¹ç®ãªã©) ã§ã¯è¡šçŸã§ããŸãããããŒã¿ãåŠçããã¹ãããã®èšè¿°ãæžãå¿
èŠããããŸãããããã¢ã»ã³ããªãæ€èšŒããåã«ãHOL Light ã®ä»æ§ã IEEE æšæºãæ£ç¢ºã«æããŠãããšãã確信ãå¿
èŠã ã£ãçç±ã§ãã AWS ã¯ãå
¥åºåã«ãã€ããªã¹ãã䜿çšããå
éšãããã¯æŒç®ã«ã¯ 128 ãããã¯ãŒãã䜿çšããŠãæšæºã®æ§é ãåæ ããããã«ä»æ§ãèšè¿°ããŸãããæ¬¡ã«ã 倿 ãéçºããŸãããããã¯ãè©äŸ¡ãæ°åŠçã«æ£ãããšãã蚌æãçæããªãããå
·äœçãªå
¥åã§ä»æ§ãè©äŸ¡ããããã«äœ¿çšããã HOL Light 颿°ã§ãã AWS ã¯ãããŸããŸãª AES-XTS æå·å/埩å·ã·ããªãªãã«ããŒãããã¹ãŠã®ãããã¯ã®åŠç (ååž°ã䜿çš) ãšæå·æã¹ãã£ãŒãªã³ã°ãå®è¡ããåäœãã¹ãã宿œããããšã§ã仿§ãæ€èšŒããŸããã ãããã®ãã¹ãã«ãããããè€éãªã¢ã»ã³ããªæ€èšŒã«åãçµãåã«ã仿§ã IEEE æšæºãšäžèŽããããšã確èªãããŸããããã® 2 段éã®ã¢ãããŒã (ãŸããã¹ãã«ãã仿§ãæ£ããããšãä¿èšŒããæ¬¡ã«å®è£
ã仿§ãšäžèŽããããšã圢åŒçã«æ€èšŒãã) ã«ãããAWS ã¯æ£ããããšã蚌æããŠãããšãã確信ãåŸãããŸããã èšŒææŠç¥ AWS ã®èšŒæã¯ã³ã³ããžã·ã§ãã« (åæç) ã§ãããå
šäœã®åé¡ãåå¥ã«èšŒæã§ããéšååé¡ã«åè§£ããŸããéšååé¡ã«å¿ããŠãéšå蚌æã¯æç (å
¥åç¯å²ã«å¯ŸããŠã®ã¿ç) ãŸãã¯ç¡çãšãªããŸãã 5 ããã㯠(埩å·ã®å Žå㯠6 ãããã¯) æªæºã®å
¥åã«å¯ŸããŠã¯ãåã±ãŒã¹ãç¶²çŸ
çã«æ€èšŒããæç蚌æãäœæããŸããã5 ããã㯠(埩å·ã®å Žå㯠6 ãããã¯) 以äžã®å
¥åã«å¯ŸããŠã¯ãã«ãŒãå®è¡äžã«çã§ããç¶ããæ°åŠçåœé¡ã§ããã«ãŒãäžå€æ¡ä»¶ãéçºããä»»æã®é·ãã®å
¥åã«å¯Ÿããæ£åœæ§ã蚌æããŸãããã«ãŒãäžå€æ¡ä»¶ã¯ãã«ãŒãçµäºæ¡ä»¶ãæºãããããŸã§ã« 3 ã€ã®éèŠãªèŠçŽ ã远跡ããŸããåã€ãã¬ãŒã·ã§ã³ã§ã®ã¬ãžã¹ã¿ç¶æ
ããtweakã(åãããã¯ã®æå·åãäžæã«ãããã®) ã®é²åããããŠãããã¯ãåŠçãããã«ã€ããŠã®ã¡ã¢ãªå
容ã§ããéšåããã㯠(æ«å°Ÿ) åŠçã«ã€ããŠã¯ããã¹ãŠã®ã±ãŒã¹ã§åå©çšã§ããæå·æã¹ãã£ãŒãªã³ã°ã®åå¥ã®å®çã蚌æããŸããã ãããã¬ãã«ã®æ£åœæ§å®çã¯ãã¹ãŠã®èšŒæãçµã¿åãããæ¬¡ã®åœé¡ã䞻匵ããŸãã ããããã°ã©ã ãå
¥åãåºåãã¹ã¿ãã¯ãç¹å®ã®äºãã«çŽ ãªæ§è³ªãæºããã å
¥åé· len ã 16 <= len <= 2 24 ãæºãããªãã°ã åæãã·ã³ç¶æ
ãé©åãªã·ã³ããªãã¯å€ã§èšå®ãããŠããå Žåã ããã°ã©ã å
šäœãå®è¡ãããåŸãåºåãããã¡ã«æ ŒçŽãããå€ã¯ AES-XTS 仿§ãæºãããªããã°ãªããªãã ã¡ã¢ãªå®å
šæ§ãšå®æ°æéã®èšŒæ æè¿ãs2n-bignum ã«ã¯ã¢ã»ã³ããªé¢æ°ã®å®æ°æéããã³ã¡ã¢ãªå®å
šæ§ã®ç¹æ§ã圢åŒçã«å®çŸ©ããããã®æ°ãã颿°ãšæŠè¡ã远å ãããŸããããããã®ãªãœãŒã¹ã«ãããs2n-bignum ã®å€ãã®ã¢ã»ã³ããªãµãã«ãŒãã³ã宿°æéã§ã¡ã¢ãªå®å
šã§ããããšãæ€èšŒãããŸãããããã«ã¯ãæ¥åæ²ç·ã®ãããã¬ãã«ã®ã¹ã«ã©ãŒä¹ç®é¢æ°ãRSA ã®å€§æŽæ°æŒç®ãML-KEM æå·æšæºã® Arm å®è£
(Amazon Science ã§è¿æ¥å
¬éäºå®ã®ããã°èšäºã®ããŒã) ãå«ãŸããŸãã2025 幎 10 ææç¹ã§ AWS-LC ã§äœ¿çšããããã«ç¹å®ããããã¹ãŠã®ã¢ã»ã³ããªãµãã«ãŒãã³ã¯ã宿°æéã§ã¡ã¢ãªå®å
šã§ããããšã圢åŒçã«æ€èšŒãããŸããã AWS ã¯ãæ°ããæŠè¡ã AES-XTS ãªã©ããã®åŸè¿œå ãããã¢ã»ã³ããªãµãã«ãŒãã³ã®æ€èšŒã«ç°¡åã«äœ¿çšã§ããããæ¢ã£ãŠããŸããåè¿°ã®ãšãããAES-XTS ã¯éåžžã«è€éãªå¶åŸ¡ãããŒãæã£ãŠãããé·ã蟌ã¿å
¥ã£ãæ©èœçæ£åœæ§èšŒæãšãªããŸããããã®è€éãã¯å®å
šæ§èšŒæã«ãšã£ãŠã課é¡ã§ããããã»ã¹ã¯é²è¡äžã§ããã埩å·ããã³æå·åã¢ã«ãŽãªãºã ã®æå·æã¹ãã£ãŒãªã³ã°ãµãã«ãŒãã³ã®å®å
šæ§ç¹æ§ã¯ãã§ã«èšŒæãããŠããŸãã ãããã®æåã®èšŒæã¯ããããã¡ãªãŒããŒãªãŒããèµ·ãããããéèŠãªã¡ã¢ãªã¢ã¯ã»ã¹æé ã«çŠç¹ãåœãŠãŸããã埩å·ããã³æå·åã¢ã«ãŽãªãºã ã®æ®ãã®éšåã®èšŒæã¯ãåãæ¹æ³è«ã䜿çšã§ããŸãã宿°æéããã³ã¡ã¢ãªå®å
šæ§ã®èšŒæã¯ãæ©èœçæ£åœæ§ã®èšŒæãšåãæ§é ã«åŸããŸããã蚌æç®æšãããçŠç¹ãçµã£ãŠããããããåçŽã§ãã æ£åœæ§ã®ç¶ç¶çä¿èšŒ AWS ã¯åœ¢åŒçæ€èšŒã s2n-bignum ã®ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ (CI) ã¯ãŒã¯ãããŒã«çµ±åããŸãããããã«ãããAES-XTS å®è£
ãžã®å€æŽã¯ã圢åŒçãªæ£åœæ§èšŒæãæåè£ã«ééããªããã°ã³ãããã§ããªããšããä¿èšŒãåŸãããŸããCI ã®äžç°ãšããŠãCPU åœä»€ã¢ããªã³ã°ã¯å®éã®ããŒããŠã§ã¢ã«å¯Ÿããã©ã³ãã åãã¹ãã«ãã£ãŠæ€èšŒãããäžæ£ç¢ºããããã¡ãžã³ã°ãããããšã§ã仿§ãæ£ãã蚌æãå®éã«æç«ããããšãä¿èšŒããŸãã ããã«ã蚌æã§ã¯å
¥åãã·ã³ãã«ãšããŠè¡šçŸãããããããã¹ãŠã®å¯èœãªå
¥åã«å¯Ÿããæ£åœæ§ãä¿èšŒãããŸããããã«ãããã³ãŒãã®ãã¹ãŠã®çµè·¯ãã«ããŒã§ããŠãããã¹ãŠã®å
¥åå€ãã«ããŒã§ããªãå¯èœæ§ãããã«ãã¬ããžãã¹ãã®å
žåçãªæ¬ ç¹ãå
æããŸããããšãã°ãããã§äœ¿çšãããŠãããããªå®æ°æéã³ãŒãã¯ãç§å¯å€ã§åå²ããããšãªãèšè¿°ãããŸããéåžžãç§å¯å€ã¯ãããããæŽŸçãããã¹ã¯ã®äœ¿çšã«ããæŒç®ã«çµã¿èŸŒãŸããŸããåãåœä»€ãç§å¯å€ã«é¢ä¿ãªãå®è¡ãããŸãããããã£ãŠãã©ã€ã³ (è¡) ã«ãã¬ããžã®éæã¯éåžžéçºè
ã®æã®å±ãç¯å²ã«ãããŸãããå€ã«ãã¬ããžã®éæã¯æ£åœæ§ã®åœ¢åŒçæ€èšŒã«å§ããããŸãã ãã®åãæ¹æ³è«ã«ãããAWS ã¯æ°åŠçãªæ£åœæ§ã®ä¿èšŒãæã€æé©åãããæå·åå®è£
ããããã€ããåæã«å€§å¹
ãªããã©ãŒãã³ã¹åäžãéæã§ããŸãããããã«ãããéçºè
ãããŒã«ã¯ãã°ã®å°å
¥ãå¿é
ããããšãªãã³ãŒããããã«èªç±ã«æé©åã§ãããã°ã¯èšŒæã«ãã£ãŠèªåçã«æ€åºãããŸããAES-XTS ã§ã®çµéšã«ãããã¢ã»ã³ããªã³ãŒãã®èšŒæé§åéçºãã蚌æå¯èœãªæ£åœæ§ãä¿ã¡ã€ã€ãããçè§£ãããããã¬ãã¥ãŒãããããä¿å®ãããããæé©åããããå¶åŸ¡ãããŒãçã¿åºãããšã瀺ãããŸããã èè
ã«ã€ã㊠Yan Peng Yan Peng 㯠Amazon Web Services (AWS) ã® applied scientist (å¿çšç§åŠè
) ã§ããæå·ã©ã€ãã©ãªãšèªå¯è©äŸ¡ã©ã€ãã©ãªã®åœ¢åŒçæ€èšŒã«åãçµãã§ããŸãã Nevine Ebeid Nevine Ebeid 㯠Amazon Web Services (AWS) ã® Cryptography ã°ã«ãŒãã® senior applied scientist (ã·ãã¢å¿çšç§åŠè
) ã§ãããAWS æå·ã©ã€ãã©ãªã§ãã AWS-LC ã®ããã®æé©åãããã¢ã«ãŽãªãºã ã®éçºãæ€èšŒãã³ã³ãã©ã€ã¢ã³ã¹ã«æ³šåããŠããŸããAWS ã«å
¥ç€Ÿããåã¯ãèªåè»ããã³ã¢ãã€ã«ã»ãã¥ãªãã£ã¢ããªã±ãŒã·ã§ã³åãã®æå·ã©ã€ãã©ãªãšãããã³ã«ã®ç ç©¶éçºãè¡ã£ãŠããŸããã June Lee Juneyoung Lee 㯠Amazon ã® Automated Reasoning Group ã® senior applied scientist (ã·ãã¢å¿çšç§åŠè
) ã§ãã æ¬ããã°ã¯ Security Solutions Architect ã® äžå³¶ ç« å ã翻蚳ããŸããã
ã¿ãªããããã«ã¡ã¯ïŒã¯ã³ãã£ãªã¢ã§æ°åæ¡çšãµãŒãã¹ãã¯ã³ãã£ãªã¢ãã®éçºãæ
åœããŠããè
é(GitHub: sgasho ) ã§ãã æ®æ®µã¯Webã¢ããªã±ãŒã·ã§ã³éçºãäž»æŠå ŽãšããŠããŸãããæ¥åã®åãOSSã³ã³ããªãã¥ãŒãã«ã泚åããŠããŸãã
åç»
該åœããã³ã³ãã³ããèŠã€ãããŸããã§ãã






