-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
10/8 ·s®Ñ¨ì¡I 10/1 ·s®Ñ¨ì¡I 9/24 ·s®Ñ¨ì¡I 9/18 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

²`¤J²L¥X Hyperscan¡G°ª©Ê¯à¥¿«hªí¹F¦¡ºâªk­ì²z»P³]­p

( ²Åé ¦r)
§@ªÌ¡G¤ýµ¾¡A©÷©þ¡A¬x´­¡A±i½UÃþ§O¡G1. -> µ{¦¡³]­p -> ºî¦X
ĶªÌ¡G
¥Xª©ªÀ¡G¤H¥Á¶l¹q¥Xª©ªÀ²`¤J²L¥X Hyperscan¡G°ª©Ê¯à¥¿«hªí¹F¦¡ºâªk­ì²z»P³]­p 3dWoo®Ñ¸¹¡G 55018
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¦³®w¦s¡j
NT°â»ù¡G 400 ¤¸

¥Xª©¤é¡G9/1/2021
­¶¼Æ¡G258
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787115552099
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

¤º®e²¤¶¡G

¡m²`¤J²L¥X Hyperscan¡G°ª©Ê¯à¥¿«hªí¹F¦¡ºâªk­ì²z»P³]­p¡n¨t²Î¡B´`§Çº¥¶i¦a¤¶²ÐHyperscan§Þ³N¡C¥þ®Ñ¦@8³¹¡A¥D­n¤¶²Ð¥¿«hªí¹F¦¡¡B¤Ç°tºâªk©M¥¿«hªí¹F¦¡¤Ç°t©Ò¨Ì¿àªº¦Û°Ê¾÷­ì²z¡B¥¿«hªí¹F¦¡¤Ç°t®wµ¥¡A¦}­«ÂI¤¶²ÐHyperscanªº¥\¯à¯S©Ê¡B³]­p­ì²z©M©Ê¯à½ÕÀu§Þ¥©¡A¥H¤Î¤Ç°t¤ÞÀºªº®Ö¤ßºâªk©MSIMD¥[³t§Þ³Nªº¹B¥Î¡AÁÙ®i¥Ü¤FHyperscan¦h¼Ë¤ÆªºÀ³¥Î³õ´º¡C
¡m²`¤J²L¥X Hyperscan¡G°ª©Ê¯à¥¿«hªí¹F¦¡ºâªk­ì²z»P³]­p¡n¬J¾A¦X§@¬°Hyperscan¶}µoªÌªº¾Ç²ß¥Î®Ñ¡A¤]¾A¦X§@¬°°ªµ¥°|®Õ­pºâ¾÷¬ÛÃö±M·~ªº®v¥Í¥Î®Ñ©M¬ÛÃö°ö°V¾Ç®Õªº±Ð§÷¡C
¥Ø¿ý¡G

²Ä 1³¹¡@¥¿«hªí¹F¦¡Â²¤¶ 1
1.1¡@¥¿«hªí¹F¦¡ªº»yªk 1
1.2¡@¥¿«hªí¹F¦¡ªº¬y¬£»P¼Ð·Ç 7
1.2.1 PCRE²¤¶ 7
1.2.2 POSIX¼Ð·Ç 8
1.3¡@¥»³¹°Ñ¦Ò 10
²Ä 2³¹¡@¥¿«hªí¹F¦¡¤Ç°tºâªk 11
2.1¡@¯Â¦r²Å¦ê¤Ç°t 11
2.1.1 ³æ¦r²Å¦ê¤Ç°tKMPºâªk 11
2.1.2 ³æ¦r²Å¦ê¤Ç°tBMºâªk 16
2.1.3 ¦h¦r²Å¦ê¤Ç°tACºâªk 21
2.1.4 ACºâªk»P³æ¦r²Å¦ê¤Ç°t 24
2.1.5 SHIFT-ORºâªk 25
2.2¡@«D½T©w©Ê¦³­­ª¬ºA¦Û°Ê¾÷ 28
2.2.1 ©w¸q 28
2.2.2 ¹BºâÀu¥ý¯Å 29
2.2.3 Thompsonºc³yªk 31
2.2.4 £`-NFAªºÂ²¤Æ 34
2.2.5 Glushkovºc³yªk 36
2.3¡@½T©w©Ê¦³­­ª¬ºA¦Û°Ê¾÷ 40
2.3.1 ©w¸q 40
2.3.2 ±qNFA¨ìDFA 40
2.3.3 DFAªºª¬ºA³W¼Ò 46
2.3.4 DFAªºª¬ºA³Ì¤p¤Æ 52
2.4¡@¥»³¹°Ñ¦Ò 55
²Ä3³¹¡@¥¿«hªí¹F¦¡¤Ç°t®w 56
3.1¡@PCRE 56
3.1.1 »yªk¤ä«ù 56
3.1.2 ³]­p·§­z 57
3.1.3 °ò¥»API©M¥Ü¨Ò¥N½X 58
3.2¡@RE2 60
3.2.1 »yªk¤ä«ù 60
3.2.2 ³]­p·§­z 60
3.2.3 °ò¥»API©M¥Ü¨Ò¥N½X 60
3.3¡@Hyperscan 61
3.3.1 »yªk¤ä«ù 61
3.3.2 ¤Ç°t¼Ò¦¡ 62
3.3.3 ³]­p·§­z 63
3.3.4 °ò¥»API©M¥Ü¨Ò¥N½X 64
3.4¡@¥¿«hªí¹F¦¡¤Ç°t®wªº¤ñ¸û 65
3.4.1 ·§­z 65
3.4.2 »yªk¤ä«ù 65
3.4.3 ³]­p­ì²z 66
3.4.4 ©Ê¯à 68
3.5¡@¥»³¹°Ñ¦Ò 70
²Ä4³¹¡@Hyperscan¯S©Ê 71
4.1¡@Hyperscanªº»y¸q 71
4.2¡@½sĶ´Á©M¹B¦æ´Á 71
4.2.1 ½sĶ´Á 72
4.2.2 ¹B¦æ´Á 74
4.3¡@Hyperscan°ª¯Å¯S©Ê 77
4.3.1 ¬yª¬ºAÀ£ÁY 77
4.3.2 ªñ¦ü¤Ç°t 78
4.3.3 ÅÞ¿è²Õ¦X 79
4.3.4 Chimera 80
4.4¡@Hyperscan¤u¨ã 82
4.4.1 hsbench 82
4.4.2 hscheck 84
4.4.3 hscollider 85
4.4.4 hsdump 88
²Ä5³¹¡@Hyperscan³]­p­ì²z 92
5.1¡@³]­p­ì«h 92
5.1.1 ¹ê¥Î©ÊÀu¥ý 92
5.1.2 ·¥ºÝ±¡ªp¥i¥Î 93
5.1.3 ¬y¼Ò¦¡¤ä«ù 93
5.1.4 ¤j³W¼Ò¥iÂX®i 93
5.1.5 ¤p³W¼Ò°ª©Ê¯à 94
5.1.6 ©Ê¯àÀu¥ý 94
5.1.7 ¥­¿Å¶}¾P 94
5.1.8 º¥¶i¥D¸q 95
5.1.9 ¥i´ú¸Õ©Ê³]­p©M¦Û°Ê¥i´ú¸Õ©Ê³]­p 96
5.2¡@¹B¦æ­ì²z 96
5.2.1 ¤Ç°t²Õ¥ó 97
5.2.2 ¤Ç°t­ì«h 100
5.2.3 ¹B¦æ´Á¹ê²{ 103
5.2.4 ¹B¦æ´ÁÀu¤Æ 108
5.3¡@¹Ï¤À¸Ñ 112
5.3.1 ¤ä°t¸ô®|¤ÀªR 114
5.3.2 ¤ä°t°Ï°ì¤ÀªR 115
5.3.3 ºôµ¸¬y¤ÀªR 116
5.3.4 ¹Ï¤À¸Ñ¬yµ{ 117
5.4¡@¹ÏÀu¤Æ 122
5.4.1 ¸`ÂI¤¾§E 123
5.4.2 Ã䤾§E 129
5.5¡@¥»³¹°Ñ¦Ò 132
²Ä6³¹¡@Hyperscan¤ÞÀº 133
6.1¡@SIMD¥[³t 133
6.1.1 ·j¯Á³æ¦r²Åªº¥[³t 133
6.1.2 ·j¯ÁÂù¦r²Å§Ç¦Cªº¥[³t 134
6.1.3 ·j¯Á¤p³W¼Ò³æ¦r²Å¶°ªº¥[³t 136
6.1.4 ·j¯Á¤j³W¼Ò³æ¦r²Å¶°ªº¥[³t 140
6.1.5 Àôµø¾÷¨î 143
6.2¡@¯Â¦r²Å¦ê¤Ç°t 148
6.2.1 ¯Â¦r²Å¦ê¤Ç°t¦bHyperscan¤¤ªº§@¥Î 148
6.2.2 ³æ¦r²Å¦ê¤Ç°t¾¹¡§Noodle¡¨ 148
6.2.3 ¤j³W¼Ò¦h¦r²Å¦ê¤Ç°t¾¹¡§FDR¡¨ 150
6.2.4 ¤p³W¼Ò¦h¦r²Å¦ê¤Ç°t¾¹¡§Teddy¡¨ 156
6.3¡@¥¿«h¤ÞÀº 160
6.3.1 NFA¤ÞÀº 160
6.3.2 DFA¤ÞÀº 168
6.3.3 ­«´_¤ÞÀº 186
6.3.4 Tamarama 197
²Ä7³¹¡@Hyperscan©Ê¯àÀu¤Æ 199
7.1¡@Hyperscan©Ê¯à´ú¸Õ 199
7.1.1 ©Ê¯à´ú¸Õ¥Øªº 199
7.1.2 °ò¤_©Ê¯àªºµw¥ó©MGRUB°t¸m 199
7.1.3 hsbench´ú¸Õ 201
7.2¡@Hyperscan©Ê¯à½ÕÀu§Þ¥© 205
7.2.1 ¥¿«hªí¹F¦¡ºc³y 206
7.2.2 ³n¥ó®wªº¨Ï¥Î 207
7.2.3 ¶ô¼Ò¦¡ 207
7.2.4 ¼Æ¾Ú®w¤À°t 209
7.2.5 scratch¤º¦s¤À°t 209
7.2.6 Áã©w³W«h 211
7.2.7 ÀH³B¤Ç°tªº³W«h 212
7.2.8 ¬y¼Ò¦¡¤Uªº­«´_»y¸q 213
7.2.9 «C·ý¦r²Å¦ê 214
7.2.10 DOTALL¼Ð§Ó 215
7.2.11 ³æ¦¸¤Ç°t¼Ð§Ó 216
7.2.12 Start of Match¼Ð§Ó 217
7.2.13 ªñ¦ü¤Ç°t 218
²Ä8³¹¡@Hyperscan¹ê»Ú®×¨Ò¾Ç²ß 221
8.1¡@Snort 221
8.1.1 ¤¶²Ð 221
8.1.2 Hyperscan¶°¦¨ 222
8.1.3 °ò¤_¤º¦sªº©Ê¯à´ú¸Õ 225
8.2¡@Suricata 229
8.2.1 ¤¶²Ð 229
8.2.2 Hyperscan¶°¦¨ 229
8.2.3 °ò¤_¤º¦sªº©Ê¯à´ú¸Õ 234
8.3¡@©U§£¶l¥óÀË´ú 238
8.4¡@²`«×³ø¤åÀË´ú 242
8.4.1 nDPI 242
8.4.2 UDPI 245
8.5¡@¼Æ¾Ú®w 247
8.5.1 ¾ã¦X·§­z 248
8.5.2 ¹êÅçµ²ªG»P¤ÀªR 250
8.6¡@WebÀ³¥Î¨¾¤õùÙ 254
§Ç¡G