Linux 32-bit, static linking and going open source!

Recently, it had been bought to my attention that I only provide 64-bit version of Steganosaurus. There is now a a 32-bit build available for Linux operating systems. In producing the new 32-bit build I realised that the 64-bit versions were not compiled with static linking, therefore, if you do not have the dependencies installed the application will fail to run

Over the next week or so I intend to release a 32-bit build for Windows (and maybe Mac) and release new 64-bits build to fix the static linking issue. I also want to provide the functionality on the website for users to report bugs and issues with the application.

Over the next few months i will be re-writing Steganosaurus from the ground-up with the intention of releasing the re-written version as an open source project.



Video Steganography

At the outset of this project I undertook this work with the assumption that hiding data in video would be a complex task - due to the complexity of working with video file formats and codecs. As this project unfolded it quickly transpired that despite my cautious approach to the task I had underestimated quite how complex this project would be.

Nine months on from the start of this project I have now developed and implemented simple steganographic schemes for hiding data in video by manipulating the motion vector values of H.264 and MPEG4 video files.

In order to allow other users to test my software solution I have provided Linux, Mac and Windows versions of the Steganosaurus tool for download. As a result of this action I believe (to the best of my knowledge) that I am the first person to publicly release a video steganography tool that:

  • is cross platform compatible
  • is capable of hiding data in H.264 and MPEG4 video using motion vector based techniques
  • uses AES-256 bit encryption to secure the hidden data

Throughout this project I have experienced many setbacks, however, I am now at the point where the software is developed, my draft of my final report is complete. As part of this project, and amongst the commotion of trying to write up my report in a timely manner, I have also given a detailed lecture on video steganography.

All I need to do now is make a poster and make corrections to the final report.



Download Section

Today I have updated the website to add a Download section. Hopefully over the next week I will be handing out the password so that people can test the software. I could be being too optomistic but I hope that I get the encoding scheme sorted in that time scale.



Appendices Rewrite

After proof reading Chapter 3: Requirements and Analysis I removed some of the redundant chapters (such as Progress) that were inherited from the Survey and Analysis. Upon doing this, I realised that this broke some of the references in the literature survey, so I have spend the last hour or so re-factoring the appendices and inserting some of the relevant information that resided in the chapters I removed.

The appendices inherited from the Survey and Analysis are now slightly more concise. I am reluctant to remove them as they document key problems and set backs that were experienced early on in the project. Furthermore, some of these set backs influenced the root forwards and the design choices made later in the project.



First Draft of Chapter 3

I have finished a first draft of Chapter 3: Requirements and Analysis which has put me in a good position. However, my work for today hasn't finished yet....

I now intend to spend the rest of the day finishing off bringing the GUI and app up to speed. The intention is to develop them further into a software product today, thus leaving the entire of tomorrow clear to focus on the problem of embedding data.

It is my intention that by the end of tomorrow I will have a working encoding system working, either that or I will have extensively determined that the "stepping" approach will not work. 

At this point I genuinely believe if implemented properly it can work. Unfortunately, this problem and corresponding solution means that I will not be able to conclusively determine the steganographic capacity of a video before I start encoding. Furthermore, this does also have the issue that it relies on the first sequence of frames of embed-able quality. Anyway, these are things to be mindful of, and to address in further iterations with the optimistic approach that the idea of stepping bad frames will work.