sympy / sympy

A computer algebra system written in pure Python
https://sympy.org/
Other
12.93k stars 4.42k forks source link

Implementing classical ciphers as special cases of already existing ciphers in crypto.py #16495

Closed znxftw closed 5 years ago

znxftw commented 5 years ago

The file /sympy/crypto/crypto.py contains implementations of various classical ciphers.

Extending this file to include certain other classical ciphers which are derivatives of the ones already present in the file would be useful.

Such implementations would be just a couple of lines code (excluding comments explaining the working) for each as most of the encipher_ functions which are required already exist.

Examples of possible extensions are : ROT13 as an extension of encipher_shift() (and decipher_shift() likewise) Atbash as an extension of encipher_affine() (and decipher_affine() likewise)

If possible and if this issue is relevant, I would like to be assigned this issue and work on it and extending the crypto.py file further.

znxftw commented 5 years ago

@asmeurer is it okay for me to start work on this and submit a PR?