Autopsy  3.1
Graphical digital forensics platform for The Sleuth Kit and other tools.
Module Development Overview

This page covers the basics of Autopsy, including the types of modules and the basic services that are provided. Other pages will cover development environment setup and how to build specific types of modules. This page applies to both Java and Python modules.

Types of Modules

Autopsy was designed to be an extensible platform for other developers to leverage. There are several places in the platform where plug-in modules can be applied.

Languages

All modules can be written in Java. The Java Development Setup page covers setup of a Java environment.

Some of the modules can be written in Python, namely ingest an report modules. See Python Development Setup for setup details. Python modules have access to all of the same services as Java modules do, except they cannot currently make UI elements.

Basic Concepts

These are the basic concepts that you should be aware of before writing any type of module.

The Blackboard

The blackboard allows modules to communicate with each other and the UI. It has three main uses in Autopsy:

The blackboard is not unique to Autopsy. It is part of The Sleuth Kit datamodel and The Sleuth Kit Framework. In the name of reducing the amount of documentation that we need to maintain, we provide links here to those documentation sources.

Framework Services and Utilities

The following are basic services that are available to any module. They are provided here to be used as a reference. When you are developing your module and feel like something should be provided by the framework, then refer to this list to find out where it could be. If you don't find it, let us know and we'll talk about adding it for other writers to benefit.


Copyright © 2012-2015 Basis Technology. Generated on: Mon Oct 19 2015
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.