CSCI 391: Practical Cryptology Fall 2010
Course Material, Lecture Activities, Homework and Labs
Public Key Cryptology
RSA - Theory and
to Find Multiplicative Inverse
Knapsack Cryptosystem - Theory and Final Project
Computer Ethics HOMEWORK
ACM CODE OF ETHICS HOMEWORK
Computer Ethics - Lecture
Introduction to Computer Ethics, text: Ethics
in Information Technology, George Reynolds
Introduction to Computer Ethics: Privacy, text: Ethics
in Information Technology, George Reynolds
Computer Ethics Team Assignment
- Each team will read a research paper from ACM digital library related to
the topic of Computer Ethics
- Each team will design 4-5 Power Point presentation that will include the
- Title and Author of the Paper and the Short Summary of the Paper
- List of specific computer ethics aspects that your paper is related to.
- Your personal oppinion about the paper.
- 3-4 questions to assess understanding of the presentation by the peers
- Each team will prepare a Word file with the definitions of the specific
concepts assigned to your team
- Each team will prepare the Word file with the list of specific examples
- Each team will read the ACM CODE OF ETHICS
and prepare TWO asessment questions. Write your questions and your ANSWERS
in the separate Word file. I will choose one question from each team to
create a Homework.
- Due Day - Friday, Nov 12, 2010 - In Class
- The Power Point and THREE Word files should be sent to
CSCI391@gmail.com by 4:00
PM on Thursday, Nov
List of the Teams and Links to the papers
- Team 1: Jeff and Kimberly
and Security Why Isn't Cyberspace
More Secure? Privacy and Security
Why Isn.t Cyberspace
Joel F. Brenner
Definitions: Computer Virus and Worms, the difference between them
Example: Recent Computer Virus and recent Worm
- Team 2:Andrew and Louis:
and the ongoing battle for the inbox, J. Goodman, Gordon Cormack, David Heckerman
Definitions: Trojan Horse and Denial of Service
Attack, differences between
Virus, Worm and Trojan Horse
Example: Recent Trojan Horse
- Team 3: Maria and Peter
Piracy, computer crime, and IS misuse at the university, Timothy Paul Cronan,
C. Bryan Foltz,
Thomas W. Jones
Definitions:What is Identity Theft?
Example: Specific example of
Gender and Computer Ethics Links
computer ethics, Alison Adam
Does gender matter in
Gender and Computer Ethics in the Internet Age, by Alison Adam
How men and
women view ethics, Jennifer Kreie , Timothy Paul Cronan
decisions, Jennifer Kreie , Timothy Paul Cronan
- Team 4: Steve and Lakhbir
Why spyware poses multiple threats to security, Roger Thompson
Definitions: Explain what is Hacking of Large Databases
Example: Recent specific example Hacking of Large Databases
to Gain Personal
- Team 5: Hani and Sean
Using the new ACM code of ethics in decision making, Ronald E. Anderson
Deborah G. Johnson
Definitions: Phishing and Spear-phishing
Example: Specific Example of Phishing and
- Team 6: Joe G. and Mike
Computer ethics: Its birth and its future
Terrell Ward Bynum
Example: Specific Example of Spoofed e-mails
- Team 7: Joe F and Matthew
By JOHANNES BUCHMANN, ALEXANDER MAY,
and ULRICH VOLLMER
Definitions: Intellectual Property and Ethical
Example: Specific Example related to Ethical
Issues in this area
- Team 8: Russel and Eddie
OF SECURITY BY RYAN WEST
Definitions: Spyware and
Spamming, Ethical Issues related to Spyware and Spam
Example: Specific Example of Spyware and
History of Cryptology Web Resources
Lecture Activity and In Class Presentation - History of
All teams will prepare 4 - 5 Power Point slides with the summary
historical period or the topic that your team is covering.
The presentation should include the title and references slides.
Each team will present 5 minutes summary during lecture time on
Wed, Sept 8, 2010.
Submission of the History of Cryptology Project
- On Friday, Sept 3, send your Power Point to the course e-mail: CSCI391@gmail.com
- In case and you would not be able to finish everything in class on Friday, Sept 3, you can work on
presentation at home and send me by e-mail by Tuesday, Sept 7, before 3 pm.
- In addition to your Power Point presentation, each team will send 2-3 questions for assessment.
I will design a short homework from your questions to assess this topic.
- This homework will be handed out in class on Wed, Sept 8 and submission due day will be Friday, Sept
- For History of Cryptology Homework click HERE
- Due Day: by 11 AM, Friday, Sept 10, 2010 by e-mail to CSCI391@gmail.com
Affine Cipher Web Resources by Marc Renault
Programming Lab Assignment
- In this lab you will design a programming implementation for one of the Substitution Monoalphabetic
- You can use C, Java or Python programming languages in the UNIX/LINUX or Windows environment.
- You will start to work on the program at home after our class on Friday, Sept
- You will continue to work in class on Monday, Sept. 13
and complete the program at
home before due day which is Wed, Sept 15.
- The demonstration of the programming solution and the correctness check will be done in class
on Wed, Sept 15.
- You would need to send me your source file by e-mail to CSCI391@gmail.com by 4 pm, Wed, Sept 15, 2010
- The grade for this
programming lab will consist of the following:
- Correctness of the programming solution and in class
- Programming style, code appearance, and efficiency of the code
Good programming style includes well written comments,
indentation, meaningful variable and function names, output
expalanation, and more. See links below for more details.
- If you missed the due day class you have to demonstrate the correctness of the program during the course office hours within ONE
week of the due day to be qualified for the full credit.
- If you fail to demonstrate the correctness of the program within ONE week of the due day, each late day will result in reduction
the full credit by 25 points.
For Lab Description see here
Affine Cipher Lab Assessment
- Answer the following questions and
send me your answers by Friday class time.
Affine Cipher Lab Comments:
- A= 1 is a valid key - Shift Cipher
- To check validity of the input:
- Valid A: A%2 ! = 0 && A!= 13 OR A%2 != 0 && A == 1 && 26%A != 0
- Valid B: B>=0 && B<=25
- Confusion between programming structures and data structures.
- Examples of the programming structures: loops, if-else statements,
- Data structure is a particular way of storing and organizing
data in a
computer so that it can be used efficiently. Examples: arrays, linked
lists, stacks and queues, trees, etc.
Lecture: Cryptanalysis of Affine Cipher
Cryptanalysis of Affine Cipher Part I
Cryptanalysis of Affine Cipher Part II
Affine Cipher Cryptanalysis Graded Lab
- Team 1: Kimberly and Peter
- Team 2: Maria and Russel
- Team 3: Matthew and Michael
- Team 4: Louis and Hani
- Team 5: Steve and Sean
- Team 6: Joe and Joe
- Team 7: Andrew and Lakhbir
- Team 8: Jeff and Eddie
Lab Assignment Details:
- Each team will solve two problems:
- Problem 9 from the textbook (p.82): Consider the ciphretext:
QJKES REOGH GXXRE OXEO
which was encrypted with Affine Cipher. Given that plaintext T becomes
ciphertext H and plaintext O becomes ciphertext E, find the keys and
decrypt the message.
- Problem 10 from the textbook (p.82): The ciphertex
EUJPE HUNKL NPOJK VNKSJ FKTBO LCHBU PBOMM NPKBK HPBOM BMAHU PNKLN POJKV
NKSJF KRJTC JUKPB OMSJE HP
is the result if an affine cipher encipherment. Use the method of
Example 2.2.7 to find the keys and decipher the message. Hint: The tree
most frequent letters in the ciphertext correspond to the plaintext
letters O, S, and T not necessarily in that order
- For each problem you have to write detailed solution and explain
- You have to write a program that finds keys using 3 - step
that was explained in the lecture. The input for the program is four
characters ( two plaintext letters and two ciphertext
letters). The output for the program: affine cipher keys A and B.
- You will use the above program to perform calculations.
- Each team will submit one report that includes the printout of the
source file and detailed solution.
- Tentative Due Day: Friday, Sept 24, 2010 at the end of the class
Substitution and Transposition Cipher Lab Assignment
- Team 1: Mike, Peter, Lakhbir, Joe Fijalkowski
Topic: Mixed Alphabets with Words and Mixed Alphabets with Columnar
Chapter 2.3. pp. 83 - 89
- Team 2: Louis, Kimberly,Eddie, Steven
Topic: Simple Transposition Cipher: Chapter
2.4, pp. 96 - 100
- Team 3: Sean, Maria, Matthew, Jeff
Topic: Keyword Columnar Transpositions. Chapter 2.4, pp. 100 - 104
- Team 4: Hani, Andrew, Joe Gamble, Russel
Topic: Permutations and Ciphers Chapter 2.4, pp. 104 - 105
For HOMEWORK QUESTIONS see
Important: Additional Question based on the cipher that Joe showed in
class (see Joe example file).
Add the answer to this question to your
Using WORLDCHAMPS as the key word.
Encrypt the message
NLDS is the next step.
- Each team will learn the designated cipher and prepare the short
presentation of the cipher with examples and assessment questions.
- The teamwork will be divided as follows:
- one student will present the cipher description
- two other students will present 2-4 examples for encryption and
decryption using the designated cipher.
- one student in the team will prepare two - four quiz questions which
encryption and decryption to assess understanding of the presented
- Use Power Point to design your presentation. Each presentation will
consists of 4-6 slides: description of the cipher, examples, and
- The work will be done on Monday, Sept 27 in class
- The presentation will done on Wed, Sept 29 in class
- The assessment questions will be answered AT HOME and submitted by
e-mail to CSCI391@gmail.com by 11 AM, Friday, Oct 1, 2010
- Each team will have around 12 minutes to present the material
- Each team will submit the Power Point presentation and the list of assessment questions
by e-mail to CSCI391@gmail.com by 4:00 PM, Tuesday, Sept. 28
Substitution and Transposition Ciphers (Chapter 2.4)
Maria and Kimberly Presentation
Quiz 1 Preparation and Info
Quiz 1 Prep
to find modular multiplicative inverse - written by Andrew Burns
HILL CIPHER CRYPTANALYSIS
Example and Theory
In Class Practice
Problem 1: The ciphertext ZWSENIUSPLJVEU was obtained by Hill
matrix. You know that the block ZW corresponds to the plain text HO and
the block PL corresponds to the plain text UT. Determine the key matrix
and then use it to decipher the rest of the message.
following plaintext THE GOLD IS BURIED IN ORONO was encrypted by Hill
Cipher with 2X2 key matrix and the correspondent ciphertext is
Find a key matrix.
HILL CIPHER CRYPTANALYSIS PROGRAMMING LAB -
Due Day Wed, Nov 3,
For the detailed lab description click HERE
- You will start to work on the programming lab on
Oct 29 at HOME. There is NO CLASS on Friday October 29.
- You will continue to work in class on Monday, Nov 1, 2010
- The due day is Wed, Nov 3, 2010. The correction of the program will be
checked in class on Wed, Nov 3 and the source file must be sent to
CSCI391@gmail.com by the end of the class on Wed, Nov 3, 2010