Secure Shell Programming:
Password encryption using Data Encryption Standard
This project is to simulate a “Simple Shell interpreter” to achieve specific command tasks on UNIX terminal, the requirements were,
1. The initial prompt of the command interpreter should be ">".
2. SSH should first prompt user for the login name and password. The list of login names and passwords should be stored in a table and the passwords stored in the table must be encrypted.
3. SSH should continue with a new "ssh>" prompt once the user gets logged in successfully.
4. The SSH should then read the command and parameters entered by the user,
SSH will analyze the command. If the command is one of the following commands supported by the SSH, it forks a new process to execute the command. Otherwise it prints the error message.
5. The SSH commands should be initially stored in an external file and read into a command array when SSH starts.
6. SSH should fork a child process to execute the command. The parent process will wait for the termination of the child process before go back to the "ssh>" prompt if the command is in a foreground process, otherwise it simply go back to the "ssh>" prompt if the command is in a background process. The command should be executed as a background process if a “&” sign is followed with the command.

|