/Information-Security

資訊安全作業 - 實作各種加解密方法 (RSA, DSA, DES, etc)

Primary LanguageC++

Information Security


HW1

  • Implement the method of encryp/decryp below:
  1. Caesar cipher (Key: 5)
  2. Playfair cipher (Key: COMP)
  3. Vernam proposed the autokey system (Key: TEC)
  4. Row transposition (Key: 45362178)
  5. Rail fence cipher (Key: 2)

HW2 - DES

  • Encrypt
    Input: ./EncryptDES {key} {plaintext}
    Output: {ciphertext}
  • Decrypt
    Input: ./EncryptDES {key} {ciphertext}
    Output: {plaintext}

HW3 - Block Cipher

  • Use AES to encrypt/decrypt:
  1. ECB mode
  2. CBC mode
  3. Find a cool mode or design your own block cipher mode
  • Turn jpg/png into ppm
    pip install Pillow
    
  • Use AES
    pip install pycryptodome
    

HW4 - RSA

  • Encrypt
    python RSA.py –e {plaintext}
  • Decrypt
    python RSA.py –d {ciphertext}

HW5 - DSA

python DSA.py {plaintext}