Metadata-Version: 2.1
Name: mathcrypto
Version: 0.3.0b0
Summary: A library of useful funtions used in cryptography. For learning purposes only.
Home-page: https://github.com/Czechbol/mathcrypto
Author: Adam Ludes
Author-email: adam@ludes.cz
License: MIT
Project-URL: Bug Tracker, https://github.com/Czechbol/mathcrypto/issues
Keywords: mathematics,number_theory,prime_numbers,cryptography
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE

# MathCrypto

MathCrypto is a library of useful funtions used in cryptography. Do not use this library for improving the security of your application, it is not safe or powerful enough to provide that.

Available functions include:

- Multiplicative group operations
  - Generate a group from modulus including group elements and generators
  - Get inverse element any element of the group
  - Get element order of any element in group
- Math functions
  - Number primality checks
    - Classic number modulus check
    - Fermat's primality test
  - Euler's Totient function (Phi)
  - Euclidean algorithm (GCD)
  - Simple number factorization
  - Chinese Remainder Theorem
  - Extended Euclidean Algorithm

Functions from this library can be used to solve recreational mathematics, cryptographic and programming problems.

## Installation

MathCrypto is avalaible through Python Package Index ([PyPI](https://pypi.python.org/pypi)) using [pip](https://pip.pypa.io). :

```console
foo@bar:~$ python3 -m pip install --upgrade mathcrypto
```

To uninstall using [pip](https://pip.pypa.io). :

```console
foo@bar:~$ python3 -m pip uninstall mathcrypto
```

## Documentation

You can read the full documentation [here](https://mathcrypto.readthedocs.io/en/latest/).

## Development

Source code repository is available on [GitHub](https://github.com/Czechbol/mathcrypto). Feel free to contribute. [Bug reports](https://github.com/Czechbol/mathcrypto/issues) and suggestions are welcome.

## License

mathcrypto is licensed under the [MIT License](https://github.com/Czechbol/mathcrypto/blob/main/LICENSE).


