一種基於現場可編程門陣列的關鍵字檢測電路的製作方法
2023-05-14 06:09:06 1
一種基於現場可編程門陣列的關鍵字檢測電路的製作方法
【專利摘要】本發明公開一種基於現場可編程門陣列的關鍵字檢測電路,包括組合電路和寄存器。所述組合電路與寄存器電性連接,組合電路用於狀態解碼和產生輸出信號,寄存器用於存儲狀態;報文輸入組合電路進行狀態解碼,按照字節順序和預存關鍵字逐一比較,並將匹配狀態存入寄存器,挖掘出關鍵字完全匹配的報文。本發明通過組合電路和寄存器構成的硬體電路實現關鍵字檢測,執行時間短,運行速度快,佔用資源少。
【專利說明】—種基於現場可編程門陣列的關鍵字檢測電路
【技術領域】
[0001]本發明涉及報文檢測【技術領域】,尤其涉及一種基於現場可編程門陣列的關鍵字檢測電路。
【背景技術】
[0002]隨著通信技術的不斷發展,多種類型的通信工具逐漸成為人們進行信息交流的重要手段,使用這些通信工具的眾多用戶所形成的網絡被稱為通信網絡,通信網絡是社交關係在網際網路上的體現。通信網絡中的數據被稱為通信數據,通信數據為社交規律的發現提供了研究樣本。通常情況下,通信網絡上用戶眾多、規模巨大,因此通信數據屬於典型的海量數據,要通過通信數據來發現其中所蘊含的規律需要做信息挖掘。傳統信息挖掘的方法大多採用路由器、伺服器和相關軟體技術來實現,但該方法是實現過程複雜,效率低,佔用資源多。
【發明內容】
[0003]本發明的目的在於通過一種基於現場可編程門陣列的關鍵字檢測電路,來解決以上【背景技術】部分提到的問題。
[0004]為達此目的,本發明採用以下技術方案:
[0005]一種基於現場可編程門陣列的關鍵字檢測電路,包括組合電路和寄存器;所述組合電路與寄存器電性連接,組合電路用於狀態解碼和產生輸出信號,寄存器用於存儲狀態;報文輸入組合電路進行狀態解碼,按照字節順序和預存關鍵字逐一比較,並將匹配狀態存入寄存器,挖掘出關鍵字完全匹配的報文。
[0006]特別地,所述基於現場可編程門陣列的關鍵字檢測電路還包括解碼電路,其與組合電路電性連接,用於採用AES128解碼算法對所述關鍵字完全匹配的報文進行解密。
[0007]本發明提供的基於現場可編程門陣列的關鍵字檢測電路通過組合電路和寄存器構成的硬體電路實現關鍵字檢測,通過解碼電路對關鍵字完全匹配的報文進行解密,挖掘出所需信息,執行時間短,運行速度快,佔用資源少。
【專利附圖】
【附圖說明】
[0008]圖1為本發明實施例提供的基於現場可編程門陣列的關鍵字檢測電路結構圖。【具體實施方式】
[0009]下面結合附圖和實施例對本發明作進一步說明。可以理解的是,此處所描述的具體實施例僅僅用於解釋本發明,而非對本發明的限定。另外還需要說明的是,為了便於描述,附圖中僅示出了與本發明相關的部分而非全部內容。
[0010]請參照圖1所示,圖1為本發明實施例提供的基於現場可編程門陣列的關鍵字檢測電路結構圖。[0011]本實施例中基於現場可編程門陣列的關鍵字檢測電路包括組合電路101和寄存器 102。
[0012]所述組合電路101與寄存器102電性連接,組合電路101用於狀態解碼和產生輸出信號,寄存器102用於存儲狀態;報文輸入組合電路101進行狀態解碼,按照字節順序和預存關鍵字逐一比較,並將匹配狀態存入寄存器102,挖掘出關鍵字完全匹配的報文。
[0013]假如關鍵字為N個字節,組合電路101就有N個狀態,初始狀態為S0,如果第一字節匹配,則進入到狀態SI,否則回到SO狀態;如果第二個字節也匹配,則進入到狀態S2,否則回到SO狀態,或者如果跟第一字節匹配則回到SI狀態;如果第三個字節也匹配,則進入到狀態S3,否則回到SO狀態,或者如果跟第一字節匹配則回到SI狀態,如果最近2個字節跟第一、第二字節匹配,則回到S2狀態,如果最近3個字節跟第一、第二字節、第三字節匹配,則回到S3狀態;以此類推,當N個字節全部匹配,則輸出關鍵字完全匹配的報文。
[0014]於本實施例,該關鍵字檢測電路還包括解碼電路103,其與組合電路101電性連接,用於採用AES128解碼算法對所述關鍵字完全匹配的報文進行解密。
[0015]AES解密分為兩部分,第一部分是在程序中對密文和密鑰賦初值,通過與標準對照,檢查解密過程的正確性;第二部分是用戶手動輸入密文和密鑰,程序對其進行解密,得到最後的明文。解密過程基本如下:1)獲取輸入的密文和密鑰;2)通過密鑰擴展過程獲取各輪密鑰;3)輪密鑰加變換過程;4)逆行移位;5)逆字節替代;6)輪密鑰加變換;7)逆列混淆。其中,步驟4至7共循環9次,最後一輪實現步驟4至6步,完成解密過程,獲得所需數據。
[0016]另外,AES解密的電路原理如下:一、128位加密數據分組;二、與擴展密鑰XOR運算;三、反S盒變換;四、反行變換;五、反S變換;六、反行變換;七、反列變換;八、與擴展密鑰X0R,並返回步驟五;九、獲得128位解密數據。
[0017]如果採用中央處理器(CPU)操作實現上述關鍵字檢測及報文解密,CPU需要通過操作指令和硬體操作單元實現。而現場可編程門陣列(FPGA)控制只要採用組合電路、寄存器及解碼電路,通過狀態轉移,通過硬體描述語言描述和EDA工具綜合,根據關鍵字匹配比較,生成性能優越的有限狀態機,在執行時間、運行速度和佔用資源等方面均優於採用CPU實現的設計方案。
[0018]以上所述僅為本發明的優選實施例,並不用於限制本發明,對於本領域技術人員而言,本發明可以有各種改動和變化。凡在本發明的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種基於現場可編程門陣列的關鍵字檢測電路,其特徵在於,包括組合電路和寄存器;所述組合電路與寄存器電性連接,組合電路用於狀態解碼和產生輸出信號,寄存器用於存儲狀態;報文輸入組合電路進行狀態解碼,按照字節順序和預存關鍵字逐一比較,並將匹配狀態存入寄存器,挖掘出關鍵字完全匹配的報文。
2.根據權利要求1所述的基於現場可編程門陣列的關鍵字檢測電路,其特徵在於,還包括解碼電路,其與組合電路電性連接,用於採用AES128解碼算法對所述關鍵字完全匹配的報文進行解密。
【文檔編號】H04L12/26GK103986628SQ201410240097
【公開日】2014年8月13日 申請日期:2014年5月30日 優先權日:2014年5月30日
【發明者】何正未, 陳正明, 許莉, 趙國志, 郭正新, 陳興 申請人:無錫市同飛科技有限公司