Projects


This is a tool for distributing and coordinating jobs on multiple machines over a network.

Currently, each available host must be on a separate line of hosts.txt, and each job must be on a separate line of jobs.txt. If each job consists of multiple commands, they must still be on the same line, separated by a semicolon.

I originally created this to facilitate using multiple computers to work on encoding several video files at the same time using ffmpeg.


This is an implementation of the AES encryption cipher in C++, with no dependencies other than the standard library. It should be 100% portable, as it does not use any instructions specific to a particular computer architecture. Of course, this means that it will be slower than any hardware-accelerated implementation. Adding hardware acceleration is a goal for this project.

This program was created in the United States, and contains an implementation of a cryptographic algorithm, and therefore (for reasons I personally believe are dumb) may be subject to restrictions regarding its exportation. So, don't download this if you're in a country for which the "exportation" of math is restricted by law.

I provide no guarantee of the robustness or cryptographic strength of this implementation. Please don't use this if you have serious cryptographic needs. Instead, use another open-source, more scrutinized implementation, such as that which comes with OpenSSL.


This is a tool for getting the checksum of piped input while it's in use. Since it outputs on standard out exactly what it received on standard in, it can be placed in the middle of an existing pipe to extract a hash of a stream of data.

For example, you could use it to verify a file as it's being downloaded:

curl http://url/image.iso | sump md5 > image.iso 2> image.iso.md5

As a side note, performance seems to be superior to corresponding md5sum-type programs for large data streams (in some cases, substantially faster).

x64 benchmarked with benchmark.sh using 1 GB of test data on an Intel Xeon E3-1271 @ 3.6 GHz in Ubuntu 14.04.3 LTS, built with GCC 4.8. ARMv6 benchmarked with benchmark.sh using 32 MB of test data on a Raspberry Pi B+ in Raspbian, built with GCC 4.6.

Hash*sum (x64)*sump (x64)*sum (ARMv6)*sump (ARMv6)
MD5671 MB/s709 MB/s20 MB/s20 MB/s
SHA1426 MB/s826 MB/s13.3 MB/s14.6 MB/s
SHA224244 MB/s292 MB/s8.34 MB/s9.64 MB/s
SHA256243 MB/s292 MB/s8.71 MB/s11.2 MB/s
SHA384365 MB/s447 MB/s471 kB/s6.52 MB/s
SHA512363 MB/s445 MB/s477 kB/s6.56 MB/s

There seems to be serious problems with the included sha384sum and sha512sum programs in Rasbpian, at least as of the end of 2015.


This is a tool for creating a sparse file from another file or data stream. It may be useful for keeping disk images small while still maintaining disk availability for virtualized clients, among other things.

This tool can only create sparse files if used with operating and file systems that have sparse file support.

This tool was designed primarily with disk images in mind. Decompressing an existing disk image may take up a large amount of disk space, even if most of the virtual sectors are unused and zeroed out. Decompressing a disk image to a sparse file can save a lot of disk space and prevent unnecessary disk I/O operations.


This is a tool designed for usage in Linux, in order to read to or write from a physical address in memory. It was primarily designed to allow writingto mapped device memory in an FPGA with an embedded ARM core.

Created to write to memory-mapped SPI flash from an ARM SoCin order to write a configuration image for an FPGA.

Similar to devmem2, but allows for reading multiple words at a time.

Precompiled binaries are available for the following systems/architectures:


A command-line tool for controlling relays attached to Rasbperry Pi gpio pins. Designed to be compiled to the C++11 standard, and dependent on WiringPi

@VectorCell
VectorCell pushed to master in VectorCell/misc-scripts Nov 28, 2020
1 commit to master
  • @VectorCell 701c940
    changed computer list in desktop-reset-all to reflect changes to setup

@VectorCell
VectorCell pushed to master in VectorCell/tmux-configuration Nov 28, 2020
1 commit to master
  • @VectorCell e12c938
    updated tmux-cpu for yogix

@VectorCell
VectorCell pushed to master in VectorCell/tmux-configuration Nov 28, 2020
1 commit to master
  • @VectorCell 79d4cae
    added webserver-apache to tmux-disk

@VectorCell

Firefox Sync Server Docker image based on Python Alpine Linux

Dockerfile 83 Updated Nov 26

@VectorCell
VectorCell starred daptin/dadadash Nov 20, 2020

Office suite with file browser, document editor, spreadsheet editor, calendar and data tables with CRUDX API's ready to deploy

Vue 63 Updated Nov 28

@VectorCell
VectorCell starred SabyasachiRana/WebMap Nov 18, 2020

WebMap-Nmap Web Dashboard and Reporting

Python 263 Updated Nov 28

@VectorCell
VectorCell starred authelia/authelia Nov 18, 2020

The Single Sign-On Multi-Factor portal for web apps

Go 2.5k 1 issue needs help Updated Nov 28

@VectorCell
VectorCell starred mitre/caldera Nov 17, 2020

Scalable Automated Adversary Emulation Platform

Python 2.2k Updated Nov 27