Scope & Subtask Analysis

Project Scope

This application will allow users to encrypt and decrypt images which have been modified via steganography. The user will be able to upload a variety of image types (such as bitmaps, PNGs, and GIFs) and choose an algorithm to either a) hide a secondary image within it, or b) disperse the original image into pieces which require the chosen assembly conditions to recreate the original image at a later date. The application will provide a zoom function as well as an easy-to-use UI to increase the ease of user experience.

Subtask Analysis

  • Research steganography, bit manipulation in C#, image types, and loss vs. lossless compression types
  • Document the process, methods, research, and developmental steps I take via my Capstone website and within commenting my code
  • Figure out how to embed program into my Capstone website if possible
  • File reading and writing using different image types (such as bitmaps, PNGs, JPEGs, GIFs, etc.)
    • Account for compression which may occur based on image type
    • Address compatibility issues between file formats when applicable
  • Design a user-friendly UI
    • Allow users to select and export images to and from the program
    • Show the image and any/all modified images, complete with a zoom function
    • Test the interface with many people and improve it based on feedback
  • Design a solution for Algorithm 1 which accounts for
    • Hidden image size > Host image size
    • Hidden image size = Host image size
    • Hidden image size < Host image size

Additionally, implement hashing to put the hidden image pixels in “random” positions so the hidden image doesn’t “ghost” through the host image.

  • Design a solution for Algorithm 2 which accounts for:
    • t = k = 2
    • general k
    • t < k

Additionally, consider the intersection of many areas so that the overlap blends two colors instead of adding the RGB/CYMK values together