scispace - formally typeset
Open Access

Gathering evidence: Model-driven software engineering in automated digital forensics

Reads0
Chats0
TLDR
The research in this thesis forms an extensive case study in the application of MDSE in the domain of automated digital forensics, using the Rascal metaprogramming language, and provides concrete evidence for the successful application.
Abstract
Digital forensics concerns the acquisition, recovery and analysis of information on digital devices to answer legal questions. Exponential increases in available storage, as well as growing device adoption by the public, have made manual inspection of all information infeasible. A solution is automated digital forensics, which is the use of software to perform tasks in digital forensics automatically, reducing the time required. Software engineering techniques exist to construct high performance solutions. However, one requirement complicates the application of standard techniques: handling the high variability in how investigated information is stored. The number of different devices and applications is huge and constantly changing. This leads to a constant stream of required changes to digital forensics software in order to recover as much information as possible. Factoring out commonality so that the changing aspects of a solution can evolve separately is a supposed strength of model-driven software engineering (MDSE). This separation of concerns is achieved through the use of a domain-specific language (DSL). Changes expressed in this DSL are then automatically applied through the use of transformation tools, which handle fixed requirements such as high performance. The research in this thesis forms an extensive case study in the application of MDSE in the domain of automated digital forensics, using the Rascal metaprogramming language. It provides concrete evidence for the successful application of MDSE in automated digital forensics, and contributes to knowledge about the application of MDSE in general. The implementations illustrate the usefulness of Rascal in DSL engineering.

read more

Content maybe subject to copyright    Report

Citations
More filters
Book ChapterDOI

Sylvan: Multi-Core Decision Diagrams

TL;DR: Sylvan as discussed by the authors implements parallel operations on list decision diagrams, a variant of multi-valued decision diagrams that is useful for symbolic model checking, and combines parallel operations with parallelization on a higher level, by partitioning the transition relation.
Dissertation

The C standard formalized in Coq

TL;DR: Memory trees are a middle ground, and therefore suitable to describe both the low-level and high-level aspects of the C memory as discussed by the authors, and are used in the external interface of the memory model and throughout the operational semantics.
DissertationDOI

Scalable multi-core model checking

TL;DR: The goal of the current thesis is to enable the full use of computational power of modern multi-core computers for model checking, and achieves efficient parallelization of a broad set of model checking problems in three steps.

Similarity measures and algorithms for cartographic schematization

TL;DR: The final author version and the galley proof are versions of the publication after peer review and the final published version features the final layout of the paper including the volume, issue and page numbers.

Supervisory control in health care systems

TL;DR: The final author version and the galley proof are versions of the publication after peer review and the final published version features the final layout of the paper including the volume, issue and page numbers.
Trending Questions (1)
How can engineering forensics be used to help in the investigation of crime?

Model-driven software engineering can be used in automated digital forensics to handle the high variability in how investigated information is stored, reducing the time required for investigation.