Ik wil in willekeurige bestanden zoeken naar bepaalde patronen.
De patronen zijn willekeurig van aard (denk aan het idee van een virusscanner, anti spyware). Het is niet voldoende om alleen een hash van het bestand te vergelijken.
Ideaal zou natuurlijk zijn om voor elk patroon een 'soort eindige automaat' te maken en die om te zetten naar een wiskundige grammatica.
Alle patronen/grammatica's samenvoegen d.m.v. een zelfgemaakte compiler in een eigen formaat bestand en die dan gebruiken bij het scannen.
Overigens denk ik niet dat ik de patronen op deze manier kan beschrijven, omdat ik ook bestandslengte checks e.d. moet uitvoeren. Deze optie lijkt me dus erg bewerkelijk.
Een andere optie is om gewoon voor elk patroon het bestand van begin tot eind te doorzoeken. Mijn eerste ingeving zegt dat dit niet echt positief is voor de performance. Maar het maakt het programma wel flexibel en makkelijk uitbreidbaar met andere patronen.
Hoe pakken andere scanners dit aan?
En wat is verstandig?
De patronen zijn willekeurig van aard (denk aan het idee van een virusscanner, anti spyware). Het is niet voldoende om alleen een hash van het bestand te vergelijken.
Ideaal zou natuurlijk zijn om voor elk patroon een 'soort eindige automaat' te maken en die om te zetten naar een wiskundige grammatica.
Alle patronen/grammatica's samenvoegen d.m.v. een zelfgemaakte compiler in een eigen formaat bestand en die dan gebruiken bij het scannen.
Overigens denk ik niet dat ik de patronen op deze manier kan beschrijven, omdat ik ook bestandslengte checks e.d. moet uitvoeren. Deze optie lijkt me dus erg bewerkelijk.
Een andere optie is om gewoon voor elk patroon het bestand van begin tot eind te doorzoeken. Mijn eerste ingeving zegt dat dit niet echt positief is voor de performance. Maar het maakt het programma wel flexibel en makkelijk uitbreidbaar met andere patronen.
Hoe pakken andere scanners dit aan?
En wat is verstandig?