§Ü¶q¤l±K½X´¹¤¸(¸ó¼Æ¾ÇÃøÃDªº°ÊºA«ºc¬[ºc³]p)(ºë)/¶°¦¨¹q¸ô¬ì¾Ç»P§Þ³NÂO®Ñ
¤º®e¤j¿û
§Ü¶q¤l±K½X´¹¤¸¬O¤ä¼µ¤½Æ_±K½XÅé¨t¦V§Ü¶q¤l±K½X¹L´ç¡B«O»Ù¶q¤lpºâ®É¥Nºô¸ô»P«H®§¦w¥þªºµwÅé°ò¦¡C¥»®Ñ¥Dn¤¶²Ð°ò©ó¥i«ºcpºâ§Þ³Nªº§Ü¶q¤l±K½X´¹¤¸³]p¤èªk¡Cº¥ý¡A¦bÄÄz§Ü¶q¤l±K½Xºtºâªk·§©À»P¼Ð·Ç¤Æ¶i®iªº°ò¦¤W¡AÁ`µ²§Ü¶q¤l±K½X´¹¤¸ªº²{ª¬»P³]p¬D¾Ô¡CÀH«á¡A¦b¹ï¥D¬y§Ü¶q¤l±K½Xºtºâªk¶i¦æ¤¶²Ðªº«e´£¤U¡A¤À§O¦bpºâ¬[ºc¡B¹Bºâ¹q¸ô¡B½sĶ§Þ³N»Pª«²z¦w¥þ¨¾Å@µ¥¤è±°Q½×¦p¦ó³]p¹ê²{ÝÅU¯à¶q®Ä²v¡B¥\¯àÆF¬¡©Ê»Pª«²z¦w¥þ©Êªº§Ü¶q¤l±K½X´¹¤¸¡C³Ì«á¡A¥»®Ñ¹ï¥¼¨Ó§Ü¶q¤l±K½Xºtºâªk»P´¹¤¸ªºµo®iÁͶնi¦æ¤F®i±æ»P¤ÀªR¡C
¥»®Ñ¾A¦X§@¬°«H®§¦w¥þ¡B±K½X´¹¤¸»PµwÅé¦w¥þ¬ÛÃö±M·~ªº±Ð§÷¡A¦P¼Ë¾A¦X¬ÛÃö»â°ìªº§Þ³N±q·~¤Hû°Ñ¦Ò¡C
§@ªÌ¤¶²Ð
¼B¹pªi//¦¶¤å¥//¦¶¯q§»//ÃQ¤Öx|³d½s:¤ýªÚ
¥Ø¿ý
²Ä1³¹ ºü½×
1.1 §Ü¶q¤l§ðÀ»±K½X·§z
1.1.1 §Ü¶q¤l±K½Xªº²£¥ÍI´º
1.1.2 §Ü¶q¤l±K½Xºtºâªkªº¼Ð·Ç¤Æ²{ª¬
1.1.3 §Ü¶q¤l±K½X¾E²¾ªººò¢©Ê
1.2 ¼Ð·Ç¤Æ¹Lµ{¤¤ªº§Ü¶q¤l±K½XµwÅé¥[³t§Þ³N
1.2.1 «ü¥OÅX°Êªº³q¥Î³B²z¾¹¹ê²{
1.2.2 ¥i½sµ{ÅÞ¿è¾¹¥óFPGA
1.3 §Ü¶q¤l±K½X´¹¤¸ªº»Ý¨D»P¬D¾Ô
°Ñ¦Ò¤åÄm
²Ä2³¹ §Ü¶q¤l±K½Xºtºâªk
2.1 °ò©ó®æªº§Ü¶q¤l±K½Xºtºâªk
2.1.1 ±K½Xºtºâªk¤¶²Ð
2.1.2 ºtºâªkpºâ¯S©Ê¤ÀªR
2.2 °ò©ó½s½Xªº§Ü¶q¤l±K½Xºtºâªk
2.2.1 ±K½Xºtºâªk¤¶²Ð
2.2.2 ºtºâªkpºâ¯S©Ê¤ÀªR
2.3 °ò©ó«¢§Æªº§Ü¶q¤l±K½Xºtºâªk
2.3.1 ¡uSPHINCS+¡vºtºâªk
2.3.2 ºtºâªkpºâ¯S©Ê¤ÀªR
2.4 ¨ä¥L§Ü¶q¤l±K½Xºtºâªk
2.4.1 °ò©ó¶W©_²§¦P·½ªº§Ü¶q¤l±K½Xºtºâªk¤Î¯S©Ê¤ÀªR
2.4.2 °ò©ó¦hÅܼƪº§Ü¶q¤l±K½Xºtºâªk¤Î¯S©Ê¤ÀªR
2.5 ±K½X®Ö¤ß¥\¯àªº°ª®Ä¹ê²{ºtºâªk
2.5.1 °ª®Ä¼Karatsubaºtºâªk
2.5.2 °ª®Ä¼TOOM-COOKºtºâªk
2.5.3 °ª®Ä¼NTTºtºâªk
2.5.4 ÂX®i¼Ú´X¨½±o¨D°fºtºâªk
°Ñ¦Ò¤åÄm
²Ä3³¹ §Ü¶q¤l±K½X´¹¤¸¬[ºc
3.1 §Ü¶q¤l±K½X´¹¤¸³]pªÅ¶¡
3.2 °ò©ó«ü¥O¶°ÂX®iªº§Ü¶q¤l±K½X´¹¤¸¬[ºc
3.2.1 MIT Sapphire
3.2.2 TUM RISQ-V
3.3 ±¦V¯S©wºtºâªkªº¥þ©w»sµwÅé¥[³t¬[ºc
3.3.1 ±¦V°ò©ó®æªº±K½Xºtºâªkªº¥þ©w»sµwÅé³]p
3.3.2 ±¦V°ò©ó½s½Xªº±K½Xºtºâªkªº¥þ©w»sµwÅé³]p
3.3.3 ±¦V°ò©ó«¢§Æºtºâªkªº¥þ©w»sµwÅé³]p
3.4 ²Ê²É«×¥i«ºc§Ü¶q¤l±K½X´¹¤¸¬[ºc
3.4.1 ¥i«ºc§Ü¶q¤l±K½X´¹¤¸RePQC
3.4.2 ¥i«ºc§Ü¶q¤l±K½X´¹¤¸QPu
°Ñ¦Ò¤åÄm
²Ä4³¹ ´¹¤¸¼Æ¾Ú³q¸ô
4.1 ¤½Æ_±K½X´¹¤¸ªº¼Æ¾Ú³q¸ô
4.1.1 ¸g¨å¤½Æ_±K½X¼Æ¾Ú³q¸ô
4.1.2 §Ü¶q¤l¤½Æ_±K½X¼Æ¾Ú³q¸ô
4.2 ºâ³N/ÅÞ¿èpºâ³æ¤¸
4.2.1 °ò©óNTTªº¦h¶µ¦¡pºâ
4.2.2 °ò©óKaratsubaªº¦h¶µ¦¡pºâ
4.2.3 ¨ä¥L¥ô°È¯Å¼Ò¶ô
4.2.4 ¦sÀx¬M®g¤è¦¡
4.3 ¼Æ¾Ú±Ä¼Ë»P¹ï»ô¼Ò¶ô
4.3.1 §¡¤Ã¤À§G©M©Úµ´±Ä¼Ë¼Ò¶ô
4.3.2 Â÷´²°ª´µ¤À§G©MÂ÷´²°ª´µ±Ä¼Ë¼Ò¶ô
4.3.3 ¤G¶µ¤À§G©M¤G¶µ±Ä¼Ë¼Ò¶ô
4.3.4 ÀH¾÷«eºó©M«í©w®É¶¡±Æ§Ç¼Ò¶ô
4.3.5 Fisher-Yatesºtºâªk¤Î¨ä¼Ò¶ô
4.3.6 ¹ï»ô¼Ò¶ô
°Ñ¦Ò¤åÄm
²Ä5³¹ ´¹¤¸½sͬM®g¨t²Î
5.1 ³q¥Î½sĶ§Þ³N
5.2 ¶}·½½s;¹®Ø¬[LLVM
5.2.1 °ò©óLLVM½s;¹ªº°ª¯Å³]p¬[ºc
5.2.2 LLVM IR·§z
5.2.3 LLVM«áºÝ
5.2.4 LLVM¤u§@¬yµ{Á`µ²
5.3 ±¦V±K½XÀ³¥Îªº½sĶ§Þ³N
5.3.1 ºc«Ø»â°ì©w»s¥[³tªº¦Û°Ê¤Æ½s;¹
5.3.2 ¦÷ù¥Ë°ì¥[³t³B²z¾¹ªº²V¦X½sĶ
5.3.3 ±¦V²Ê²É«×CGRAªº°ÊºA½s;¹
5.4 §Ü¶q¤l±K½X´¹¤¸ªº½sĶ®Ø¬[
5.4.1 ¥ô°È¹Bºâ¤¸¼h±
5.4.2 ±K½Xºtºâªk¼h±
5.4.3 »â°ì©w»sªºµwÅé¼Ò¶ô¼h±
5.5 §Ü¶q¤l±K½X´¹¤¸ªº½sĶ®Ø¬[¹ê²{
5.5.1 ¥Î¤á»y¨¥³]¸m
5.5.2 ½sĶ¡B¥ô°È½Õ«×
5.5.3 ¦a§}¬M®g
5.5.4 LLVM¹ê²{
5.5.5 ¤u§@®i±æ
5.6 ¥»³¹Á`µ²
°Ñ¦Ò¤åÄm
²Ä6³¹ ´¹¤¸ª«²z¦w¥þ³]p
6.1 §Ü¶q¤l±K½X´¹¤¸ªºª«²z¦w¥þ«Â¯Ù
6.1.1 °¼³q¹D§ðÀ»»P¬G»Ùª`¤J§ðÀ»
6.1.2 ¹ï±KÆ_«Ê¸Ë¾÷¨îªº°¼³q¹D§ðÀ»
6.1.3 ¹ï±KÆ_«Ê¸Ë¾÷¨îªº¬G»Ùª`¤J§ðÀ»
6.1.4 ¹ï¼Æ¦rñ¦Wªº°¼³q¹D§ðÀ»
6.1.5 ¹ï¼Æ¦rñ¦Wªº¬G»Ùª`¤J§ðÀ»
6.2 §Ü¶q¤l±K½X´¹¤¸ªºª«²z¦w¥þ¨¾Å@³]p
6.2.1 °¼³q¹D§ðÀ»¸g¨å¨¾Å@¤èªk
6.2.2 ¬G»Ùª`¤J§ðÀ»¸g¨å¨¾Å@¤èªk
6.2.3 §Ü¶q¤l±K½Xªºª«²z¦w¥þ¨¾Å@¬D¾Ô
6.2.4 °ò©ó°ÊºA«ºcªºª«²z¦w¥þ¨¾Å@¾÷¨î
°Ñ¦Ò¤åÄm
²Ä7³¹ ¥¼¨ÓÁͶծi±æ
7.1 §Ü¶q¤l±K½Xºtºâªkªººt¶i©MÁͶ