CNIT 141 Projects

Fall 2020

Submitting Projects

CCSF students must do these things to get credit:

  • Perform the project steps until you find a flag
  • Capture a whole-desktop image showing the flag
  • Submit the image in the appropriate Project in Canvas
  • Type the flag into the text field

Basics

C 101. Binary Games (20 pts + 15 extra)
C 102. Caesar Cipher (30)   (requires windows)
C 103. Substitution Cipher (20)   (requires windows)
C 105. Two-Time Pad (20 pts + 65 extra)
C 106. The Rho Method (15 + 15 extra)

Extra Credit

C 104. Obfuscation CTF (49 pts extra)   
H 221: Google Cloud Windows Server (10 pts extra)   


CryptoHack (extra credit)

AES Modes

C 201. Cracking AES (With Weak Keys)   (requires windows) (10 + 10 extra)
C 202. ECB v. CBC Modes with Python 3 (10 + 10 extra)
Execute Python Online

RSA

C 401. RSA Using Very Small Keys (15 + 15 extra)
C 402. Cracking a Short RSA Key (20 + 30 extra)
C 403. RSA Key Formats (10 + 30 extra)

Sodium

C 430: Private-Key Encryption With Sodium (65 extra)
C 431: Public-Key Encryption With Sodium (25 extra)

Math

C 501. Padding Oracle Attack (20 + 50 extra)
C 502. Existential Forgery Attack on RSA Signatures (10 + 20 extra) (Updated 11-5-20)
C 503. Finding Large Primes (10 + 10 extra)
C 504. Factoring Large Numbers (10 + 10 extra)
C 506. Baby-Step, Giant-Step Attack on DLP (45 extra)
C 507. Pollard-Rho Attack on DLP (50 extra)
C 510. Quantum Computing (20 extra)
C 521: Homomorphic Encryption with SEAL (30 extra)
C 522: IBM Homomorphic Encryption (25 extra)

Blockchains

H 530: Blockchains (15 extra)
H 201: Google Cloud Linux Server (10 extra)
H 531: Hyperledger IROHA (15 extra)
H 532: Hacking PoWHCoin (15 extra)
C 311: Multichain (20 extra)

Updated for CNIT 141 8-20-2020 4:40 pm
Project submission instructions updated 8-26-2020
C 505 changed to 510 9-5-20
Extra credit points specified 9-10-20
C 521 added 9-12-20
C 105 and 501 updated 9-13-20
C 522 added 9-15-20
C 202 ported to python 3 on 9-17-2020
C 105 extra points specified 9-17-20
C 105 base points changed to 20, C106 upgraded to Python 3 9-24-20
C 502 updated 11-5-20
C 430 & 431 added 11-13-20
C 311 & 312 added 11-18-20
C 312 removed due to runaway CPU on server 3-3-21
C 402 updated to use pycryptodome 3-16-21