Security Algorithms And Protocols

The Science of Cryptography

MSCS 630 | Spring 2018

Comic Image
Comic Image
Comic Image
Comic Image
Comic Image
Comic Image
Comic Image

Go to schedule now

Syllabus (.pdf)
iLearn Shell

Course Description

This course will introduce the students to fundamental risks, vulnerabilities and threats to mobile and cloud based applications and the countermeasures that must be implemented to reduce risks to these applications and associated infrastructure with a specific focus on cryptography. Topics covered include risk assessment; foundations of cryptography; symmetric and public key cryptography; stream ciphers; block ciphers and hashing algorithms; public key infrastructures; cryptographic algorithms such as RSA, DES, and AES; cryptographic protocols; key exchange protocols such as Diffie-Hellman, RSA and IKE; authentication protocols using Java APIs; and government regulations and cryptographic standards.


This course requires proficiency in the areas of discrete mathematics and algebra. Also, make sure you feel confident in the Java programming language since we will implement some of the algorithms covered.


You will be submitting assignments to GitHub. You will need to create an account upon registration for the course.

Credit Hours: 4

Not sure if this course is right for you?

Quite honestly, this is a difficult course. My recommendation is to attend lectures, write Java programs, study hard, code some more, start your project early, and seek help from the professor when you need it. If this is something you are committed do, this course might be right for you.

Professor's dream

Dr. Rivas dreams that at least one student will consider developing a mobile app that implements one of the security algorithms and protocols discussed in this class.


A. Stanoyevitch, Introduction to Cryptography with Mathematical Foundations and Computer Implementations, 1st Ed. 2010. (IC).

N. Ferguson,, Cryptography engineering: design principles and practical applications, John Wiley & Sons, 2011. (CE).

The professor also recommends the following books for further reference:

Further online resources include:


At the completion of this course, students will be able to:

Numbers in square brackets indicate the specific goals of the Department of Computing Technology that are being fulfilled.


The weekly coverage might change as it depends on the progress of the class. However, you must keep up with the reading assignments.

Week Date Content
1 1/15-1/19 Introduction to Cryptography.
Reading assignment: IC: Chapter 1. CE: Chapters 1 and 2.
Homework 0, Project, and Lab 1 assigned.
2 1/22-1/26 Divisibility and Primes.
Reading assignment: IC: Ch. 2 up to pp. 52. CE: Ch. 10.
Lab 2 assigned.
3 1/29-2/2 Congruences and Modular Arithmetic.
Reading assignment: IC: Chapter 2 start from pp. 52.
4 2/5-2/9 Codemaking State of The Art.
Reading assignment: IC: Chapter 3.
Project - proposal due.
5 2/12-2/16 Matrix-Based Cryptosystems.
Reading assignment: IC: Chapter 4.
Lab 3 assigned.
6 2/19-2/23 Midterm Review.
Codebreaking State of The Art.
Reading assignment: IC: Chapter 5.
Lab 4 assigned.
7 2/26-3/2 Midterm Exam.
Representation of Integers in Different Bases.
Reading assignment: IC: Chapter 6.
8 3/5-3/9 Block Cryptosystems.
Reading assignment: IC: Chapter 7. CE: Chapters 3 and 4.
Lab 5 assigned.
3/12-3/16 No class. Spring break.
9 3/19-3/23 Numbter Theory and Algorithms.
Reading assignment: IC: Chapter 8.
10 3/26-3/30 Public Key Cryptosystems.
Reading assignment: IC: Chapter 9. CE Chapters 11 and 12.
11 4/2-4/6 Introduction to Finite Fields and GF(28).
Reading assignment: IC: Chapter 10.
Project - milestone due.
12 4/9-4/13 Advanced Cryptosystems.
Reading assignment: IC: Chapter 11.
13 4/16-4/20 Advanced Hashing.
Reading assignment: CE: Chapter 5.
14 4/23-4/27 Student Presentations.
15 4/30-5/4 Student Presentations.
5/7 Project - writeup due.
5/8 Final Exam at 1pm.


Grade Distribution

Grades will be assigned based on the following breakdown:
Homework and Labs: 30%
Quizzes: 10%
Final project: 20%
Midterm exam: 20%
Final exam: 20%

Letter Grade Distribution

Final letter grades will be assigned at the discretion of the instructor, but here is a minimum guideline for letter grades:
A: 100-95, A-: <95-90,
B+: <90-87, B: <87-83, B-: <83-80,

C+: <80-77, C: <77-73, C-: <73-70,
D+: <70-65, D: <65-60,

F: <60

Course Policies



Attendance and Absences

Academic Honesty


In addition to skills and knowledge, Marist College aims to teach students appropriate Ethical and Professional Standards of Conduct. The Academic Honesty Policy exists to inform students and Faculty of their obligations in upholding the highest standards of professional and ethical integrity. All student work is subject to the Academic Honesty Policy. Professional and Academic practice provides guidance about how to properly cite, reference, and attribute the intellectual property of others. Any attempt to deceive a faculty member or to help another student to do so will be considered a violation of this standard.

Instructor's Intended Purpose

The student's work must match the instructor's intended purpose for an assignment. While the instructor will establish the intent of an assignment, each student must clarify outstanding questions of that intent for a given assignment.

Unauthorized/Excessive Assistance

The student may not give or get any unauthorized or excessive assistance in the preparation of any work.


The student must clearly establish authorship of a work. Referenced work must be clearly documented, cited, and attributed, regardless of media or distribution. Even in the case of work licensed as public domain or Copyleft, (See: the student must provide attribution of that work in order to uphold the standards of intent and authorship.


Online submission of, or placing one's name on an exam, assignment, or any course document is a statement of academic honor that the student has not received or given inappropriate assistance in completing it and that the student has complied with the Academic Honesty Policy in that work.


An instructor may impose a sanction on the student that varies depending upon the instructor's evaluation of the nature and gravity of the offense. Possible sanctions include but are not limited to, the following: (1) Require the student to redo the assignment; (2) Require the student to complete another assignment; (3) Assign a grade of zero to the assignment; (4) Assign a final grade of "F" for the course; and (5) Notify the Dean of the School of Computer Science and Mathematics about the issue. A student may appeal these decisions according to the Academic Grievance Procedure. (See the relevant section in the Student Handbook.) Multiple violations of this policy will result in a referral to the Conduct Review Board for possible additional sanctions.

To Conclude

Dr. Rivas takes academic honesty very seriously, after all, he also teach Ethics. Many studies, including one by Sheilah Maramark and Mindi Barth Maline have suggested that "some students cheat because of ignorance, uncertainty, or confusion regarding what behaviors constitute dishonesty" (Maramark and Maline, Issues in Education: Academic Dishonesty Among College Students, U.S. Department of Education, Office of Research, August 1993, page 5). In an effort to reduce misunderstandings, here is a minimal list of activities that will be considered cheating in this class:

Data for Research Disclosure

Any and all results of in-class and out-of-class assignments and examinations are data sources for research and may be used in published research. All such use will always be anonymous.

About The Professor

Pablo Rivas is a professional member of the ACM and IEEE. His degrees are in computer science (B.S. '03), electrical engineering (M.S. '07), and electrical and computer engineering (Ph.D. '11 from the University of Texas at El Paso). Currently, He is an Assistant Professor of Computer Science at Marist. Before that, he was a postdoc at Baylor University.

At Baylor he had the opportunity to work on different aspects of machine learning, data science, big data, and large-scale pattern recognition. Perhaps you have heard on NPR about one of his most recent projects on the detection of leukocoria (see for more info), where they used deep learning and image-processing techniques, which he loves. Another recent research project originated after an internship at NASA Goddard Space Flight Center where he worked in the detection of a particular kind of atmospheric particle using different machine learning methods. He currently works to make that remote sensing project available on-line in real time.

In the past he worked as Software Engineer for about 8 years; thus, he is quite familiar with programming languages, particularly C++, Java, and Python, but he likes to use MATLAB in order to save time when developing the prototypes of his algorithms.

He has been recognized for his creativity and academic excellence; for instance, he received the IEEE Student Enterprise Award in 2007, and the Research Excellence Award from the Paul L. Foster Health Sciences School of Medicine of Texas Tech University in 2009. In 2011, he had the honor of being inducted to the International Honor Society Eta Kappa Nu (HKN).

When he is not having fun doing research or teaching, he also likes to play basketball, code, eat pizza with friends, or go to the movie theater with his beautiful wife Nancy.

How to Contact The Professor

Dr. Rivas' office number is 3040 @ the Hancock Center, and office hours are:

He is glad to talk to students during and outside of office hours. If you can't come to his office hour, please make an appointment for another time, or just stop by if you see the door open. If you are going to stop by it is a good idea to check his schedule and call first to make sure he is there; the number is (845) 575 3000 x2086.

If extra help is needed, there are private tutors available at the student's expense at Marist's Academic Learning Center.

Note: Any student who needs learning accommodations should inform Dr. Rivas immediately at the beginning of the semester. The student is responsible for obtaining appropriate documentation and information regarding needed accommodations from the Office of Special Services in Donnelley 226 (or online here) and providing it to the professor early in the semester.

Pablo Rivas © 2018. All rights reserved. | Valid HTML | Valid CSS