Prerequisites 

ECE 542 Computer Network Architectures and Protocols or equivalent (may be taken concurrently), OR

permission of the instructor granted assuming that you:

know basics of programming in C, C++, Java, or other high level language
OR
know basics of the digital circuit design and you are familiar with one of the CAD tools for design of digital VLSI circuits (e.g., Xilinx, Altera, Synopsys, Cadence, Mentor Graphics, etc.)
OR
possess basic knowledge of any field related to cryptology (e.g., number theory, physics, law, etc.)