Skip to content

A bunch of cryptography algorithms written in python

Notifications You must be signed in to change notification settings

hatellezp/pwzuytx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

pwzuytx stands for kryptos, greek word meaning hidden. Surprise this repository is about cryptography !

For the moment I'm reading anything I can gather about several systems of cryptography. Padding, cyphers, prime theory and such. Whenever I think I understood something sufficiently then an implementation is made.

Must of the algorrithms are at the naive stade. Even more, python is not the best language to make stuff fast. Nevertheless, an algorithm well made is good in any language.

Modules

Each module is a file for the moment. If this project grows then I will make a more structured project.

  • caesar: Implements Caesar's cipher with some generalizations:
    • any alphabet;
    • preserve or not uppercase;
    • preserve or not unknown characters;
    • any shift's length;
  • prime: Some utilities to work with prime numbers:
    • decomposition as a multiplication of a power of two and an odd integer;
    • extended euclidean division, nice tool to find several remarkable numbers: gcd, lcm...
    • a naive primality test (trial division up to sqrt(n));
    • jacobi_symbol important for some primality test, this paper is interesing if you want to read it;
    • miller-rabin test the miller rabin primality test, be aware, this is a probabilistic primality test;
    • solovay-strassen test another probabilistic primality test;
    • factorization with the Pollard's rho

What's next:

  • quadratic sieve
  • elliptic curves
  • automatize several types of attacks (collision...)

About

A bunch of cryptography algorithms written in python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages