Data hiding additional files in a ZIP archive


A Zip archive consists of local file headers, local files, and at the end of the Zip file, the central directory. When a zip application like WinZip or FilZip opens an archive, it first reads the directory. Only when we actually extract a file, it reads the offset from its directory entry, and then the local file is read and uncompressed. Something that is not listed in the central directory will not be listed in the Zip application. Zip archives can contain lots of single files, each of them having two sizes: compressed size and uncompressed. This project uses code from ICSharpCode's SharpZipLib. This Zip file is clean, and every zipped file has an entry in the central directory.


  • Using SharpZipLib
  • Extending ZipOutputStream
  • Extending Zip File

Tools Used:

  • C#
  • .NET Frame Work