Download presentation
Presentation is loading. Please wait.
Published byCathleen Hall Modified over 9 years ago
1
Project 1
2
Goals Write a simple TCP/IP client that supports a specific protocol The server is running right now on login.ccs.neu.edu:27993 If your program is correct, the server will send you a secret flag Turn in your code and the secret flag in order to receive full credit DUE: September 16, 11:59:59 PM
3
Your Program Can be written in whatever language you want Must compile on the CCIS Linux machines and run on the command line Don’t use crazy libraries that aren’t installed by default Don’t write a program with a GUI If you use an IDE, make sure your code doesn’t have any hidden dependencies
4
Command Line Syntax $./client [hostname] [NEU ID] Your client must follow this syntax exactly Hostname – the name of the server E.g. login.ccs.neu.edu Port – Optional parameter, the port the server is listening on By default, port is 27993 Secure – Optional parameter, indicates that the client should use an SSL encrypted socket NEU ID – your NEU ID
5
The Protocol (Part 1) 4 messages HELLO, STATUS, SOLUTION, and BYE Your client begins by sending HELLO cs3700fall2015 HELLO [your NEU ID]\n The server will respond with a STATUS cs3700fall2015 STATUS [an equation]\n The equation will be a simple math problem E.g. “5 + 10” or “32 * 509” or “2391 / 93”
6
The Protocol (Part 2) Your client returns a SOLUTION message cs3700fall2015 [the solution]\n The server may respond with another STATUS, or it may respond with BYE cs3700fall2015 BYE [secret flag]\n The secret flag is what you want :)
7
Turning In Your Project 1. Register your group All group members must run the script! 2. Create a directory for your files All of your (well documented) code Makefile README secret_flags (a file with the secret flags of the group members, one per line) 3. Run the turn-in script
8
Grading 3% of your total grade To receive full credit: Turn in working code that compiles/runs successfully Turn in the secret flags of all group members If your code doesn’t compile or doesn’t run, you get zero credit All code will be scanned by plagiarism detection software
9
Extra Credit Possible to get 0.5% extra credit (3.5% total) Augment your client to support SSL sockets The protocol is exactly the same, its just encrypted with SSL If your SSL client is successful, you will get another secret flag Put these new keys in the secret_flags file The SSL server is running on the same host, port 27994
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.