hobbits v0.54 releases: multi-platform GUI for bit-based analysis, processing, and visualization
Hobbits is a software platform for analyzing, processing and visualizing bits. The Hobbits GUI is the central tool of the platform and will be the primary focus of this document. The Hobbits Runner CLI enables the execution of plugins and batches without a GUI.
Hobbits was developed to accelerate manual data analysis tasks that were starting to burden Mahlet’s hardware and software development. The de facto solution involved the use of multiple tools with slow turnaround and improvised integration (e.g. custom Python scripts and xxd.) Hobbits provided a fully integrated analysis environment without sacrificing flexibility. As a result, it has quickly accumulated success stories across the different development teams.
There are tools that are similar to Hobbits, but none can claim to be as extensible, portable, and flexible. GUI and plugin binaries can be easily dropped, swapped, and executed on a variety of platforms without dependencies or restrictions. Hobbits even supports pure Python plugins via a built-in CPython interpreter and custom hobbits library bindings. These are all priceless advantages when developing analysis tradecraft across a variety of communities, networks, or access levels.
The general architecture of Hobbits has proven to be highly effective and agile, and the budding Python capabilities are promising. With a stable interface in place, the development priorities will shift to core stability and performance, adding and improving plugins, and exploring the possibilities of distributed and client-server architectures.
The primary concern of Hobbits GUI is making machine-level data presentable to humans so that they can analyze/fix/generate it easily. This usually involves some combination of:
- Importing bits, e.g. from files, packets, or a radio interface
- Analyzing bits, e.g. framing, highlighting, or classifying
- Displaying bits so that a human can understand them
- Processing bits, e.g. enriching, decoding, or demuxing them
- Exporting bits, e.g. saving a file, or forwarding to follow-on processes
Hobbits simplifies the task of developing and repeating workflows comprised of these steps. Steps are developed independently as plugins, and Hobbits orchestrates their execution.
- add Edit plugin (9c091e5)
Copyright (c) 2020-2021 Mahlet, Inc.