Skip to content

Kripi01/Cryptography

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Manual implementation of basic cryptographic primitives

Asymmetric Cryptography

  • Finite Field Diffie-Hellman (FFDH)

    • cd Asymmetric/FFDH/ && python3 -m ffdh_tests.ffdh_test && cd ../..
  • RSA Cryptosystem:

    • cd Asymmetric/RSA && python3 -m rsa_tests.test_sign && cd ../..
    • cd Asymmetric/RSA && python3 -m rsa_tests.test_enc_dec && cd ../..
  • Elliptic Curve Cryptography (ECC)

Symmetric Cryptography

  • Data Encryption Standard (DES)
    • cd Symmetric/DES/ && ./compile.sh des && cd ../..
  • Vigenère cipher and cryptanalysis (for Kryptos)
    • cd Symmetric/Vigenere/ && python3 vigenere.py -d K1 palimpsest T && cd ../..
    • cd Symmetric/Vigenere/ && python3 vigenere.py -d K2 abscissa T && cd ../..
    • cd Symmetric/Vigenere/ && python3 crack_vigenere.py K2 T && cd ../..

Hash Functions

  • SHA-1 (Secure Hash Algorithm 1)
    • cd Hash_functions/SHA1/C/ && ./generate_big_tests.sh && ./exe.sh C_sha1sum very_long_msg.txt && cd ../../..
    • cd Hash_functions/SHA1/C/ && ./generate_big_tests.sh && ./exe.sh C_sha1sum million_a.txt && cd ../../..
    • Official Test Vectors

SHA-1 Performance Benchmark on a 1GB file

Implementation Total time CPU User CPU System
C_sha1sum (Personal) 1.357s 1.214s 0.141s
sha1sum (GNU) 0.597s 0.475s 0.119s

About

Personal implementation of basic cryptographic primitives.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors