Foremost is a console program that recovers files based on their headers, footers, and internal data structures. This process is commonly referred to as data carving. Foremost can work on image files, such as those generated by dd, Safeback, Encase, etc., or directly on a drive. The headers and footers can be specified by a configuration file, or you can use command line switches to specify built-in file types. These built-in types look at the data structures of a given file format, allowing for a more reliable and faster recovery. It was originally developed by the United States Air Force Office of Special Investigations and The Center for Information Systems Security Studies and Research.