This document outlines the requirements for Assignment 7 in CS150, which involves building a program to encrypt and decrypt files using an N-way substitution cipher inspired by the Enigma machine. The program must allow the user to specify the number of mappings (between 2-25), encryption keys, input and output files. It must include functions to get user input, construct the mapping array, encode/decode characters, and handle file I/O. The completed project is due December 8th and requires electronic and printed submissions.