I recently came across a Tweet from Hexadecim8 explaining how to make microdots using photographic film. This steganography technique was famously used in the cold war to relay sensitive information to and from human intelligence sources. Intrigued by this idea, I wanted to see if there was a more modern method for replicating this technique. In this article, I will show you how to create a “digital” microdot using free & open source tools (Figure 1).
What you need for this project:
- PDF document
- Word Processing Software
- Screenshotting software
Step #1 — Finding a PDF document
We will use a PDF document to hide our digital microdot. Scan through your PDF and identify a suitable area to hide your message. In this tutorial, I’ll be using a simple text based PDF and will hide my message inside a full stop.
Step #2 — Creating your hidden message
Once you have your PDF document you can move onto making your hidden message. In this tutorial, I will create the hidden message using LibreOffice Writer, however, any Word processing software will work. After opening the program, you first need to change the page background to match the color of the text or image that you’re disguising your message in. Next, adjust the font color to ensure that the message is visible.
In this case, I am disguising my hidden message inside black colored text. I therefore changed the page background to black and the font color to white as seen in Figure 2.
Step #3 — Screenshot your message
Once your message is ready, take a screenshot and crop the image of your hidden message to an appropriate size.
Step #4 — Embed your image into your PDF
Open your PDF document using Inkscape, then drag and drop the image file of your cropped screenshot into Inkscape. This will open an image import menu. Before continuing, make sure that the “Embed” option is selected for “Image import type” as seen in Figure 3.
After embedding your hidden message into your PDF document, use the mouse to drag your message to the required area. Drag the corners of the image to shrink your message to the necessary size. You can use Inkscape’s zoom function to increase the zoom to 25600% and make any further adjustments. Once satisfied, navigate to the “Print” option in Inkscape’s file menu and use the “Print to File” option to create a new PDF document containing your digital microdot. This process is illustrated in Figure 4 below.
Step #5 — Adjusting the file size of the PDF document
In some cases, the embedded image of the hidden message can significantly increase the size of the final PDF document. This could potentially attract unwanted attention. To mitigate this risk, you may want to consider compressing your PDF. This can be achieved using an online PDF shrinking service. Alternatively, consider downloading Ghostscript and using the gs or ps2pdf commands to compress your PDF document locally.
Step #6 — Sharing your digital microdot
Congratulation, you have successfully created a digital microdot and have hidden it in plain sight using a PDF document! You can share this document with the knowledge that your hidden message is unlikely to be found. To extract the message, your recipient will require Inkscape or another vector graphic tool that supports equivalent zoom levels as well as a hint to locate the message. They will then be able to locate and extract the hidden message.
Additional OPSEC Considerations
You may be wondering why we went to the effort of screenshotting our hidden message rather than using a text box in Inkscape. The reason for this is because the search function of some PDF viewers can recognize text boxes in PDF documents (Figure 4). Using screenshots obfuscates this and prevents PDF searches from revealing your hidden message.
Want to protect your hidden message even more? Then you may want to consider the use of a One Time Pad. This technique allows you to send an uncrackable message to your recipient. For more information on this technique, I recommend watching the video below by S2 Underground who explains this method in excellent detail.