Pattern Matching in YARA Improved Aho-Corasick Algorithm

Also Available Domains Xilinx Vivado|Xilinx ISE

Project Code :TVMAFE387

Abstract

In this project, string pattern matching by improved AC is implemented. We have, in fact, discovered several reasons why regular expressions can slow down scanning based on the nature of the used algorithm, Aho-Corasick. Since every byte of a packet has to be inspected by a large set of patterns, it often becomes a bottleneck of these applications and dominates the performance of an entire system. Many existing works have been devoted to alleviate this performance bottleneck either by algorithm optimization or hardware acceleration.  We have proposed a new version of this algorithm and have implemented it in the original version of this tool. The experiments are presented, proving that the speed of pattern matching with regular expressions can indeed be improved. In selected cases, the proposed version was faster than the original version. And in instances where strings were optimized for the original version, their speed was found to be comparable. The effectiveness of the proposed method is synthesized and simulated using Xilinx ISE 14.7/Xilinx Vivado.

Keywords:- String pattern matching, Deterministic and Non deterministic Finite Automaton, Aho-Corasick (AC) algorithm

NOTE: Without the concern of our team, please don't submit to the college. This Abstract varies based on student requirements.

Block Diagram

Specifications

Software Requirements:

  • Xilinx ISE/Xilinx Vivado Tool 
  • HDL: Verilog

Hardware Requirements:

  • Microsoft® Windows XP,
  • Intel® Pentium® 4 processor or Pentium 4 equivalent with SSE support 
  • 512 MB RAM
  • 100 MB of available disk space


Learning Outcomes

  • Basics of Digital Electronics
  • VLSI design Flow
  • Introduction to Verilog Coding
  • Different modeling styles in Verilog
    • Data Flow modeling
    • Structural modeling
    • Behavioral modeling
    • Mixed level modeling
  • Introduction to pattern matching
  • Knowledge on Aho- Corasick algorithm
  • Different pattern matching algorithms
  • Knowledge on multi string pattern matching
  • Applications in real time
  • Xilinx ISE 14.7/Xilinx Vivado for design and simulation
  • Generation of Netlist
  • Solution providing for real time problems
  • Project Development Skills:
    • Problem Analysis Skills
    • Problem Solving Skills
    • Logical Skills
    • Designing Skills
    • Testing Skills
    • Debugging Skills
    • Presentation Skills
    • Thesis Writing Skills

Demo Video

mail-banner
call-banner
contact-banner
Request Video