# Toy cryptographic utilities

[![mypy status][type-badge]](https://mypy.readthedocs.io/en/stable/)
[![ruff status][lint-badge]](https://docs.astral.sh/ruff/)
[![pytest status][test-badge]](https://docs.pytest.org/en/stable/)
![Doctest status][doctest-badge]
[![PyPI](https://img.shields.io/pypi/v/toycrypto?label=pypi%20package)][published]
[![Documentation][doc-build-badge]][documentation]
[![License: MIT](https://img.shields.io/badge/license-MIT-C06524)](https://github.com/jpgoldberg/toy-crypto-math/blob/main/LICENSE.txt)

----

This is (almost certainly) not the package you are looking for.
The primary reason this is [published on PyPi][published] is so I can create reproducible Jupyter Notebooks,
but among the variety of tools that have been accumulated here might offer something to someone.

See the [documentation] for use (or not) and [reasons why this exists](https://jpgoldberg.github.io/toy-crypto-math/#motivation).

Note that if you need to do cryptography in Python, I recommend [pyca](https://cryptography.io/).
If you want tools to explore the algebraic and number theoretic constructs used in cryptography,
look at [SageMath](https://doc.sagemath.org/).

[published]: https://pypi.org/project/toycrypto/ "toycrypto on PyPi"
[documentation]: https://jpgoldberg.github.io/toy-crypto-math/

[type-badge]: https://github.com/jpgoldberg/toy-crypto-math/actions/workflows/type-check.yml/badge.svg
[lint-badge]: https://github.com/jpgoldberg/toy-crypto-math/actions/workflows/lint.yml/badge.svg
[test-badge]: https://github.com/jpgoldberg/toy-crypto-math/actions/workflows/pytest.yml/badge.svg
[doctest-badge]: https://github.com/jpgoldberg/toy-crypto-math/actions/workflows/doctest.yml/badge.svg
[doc-build-badge]: https://github.com/jpgoldberg/toy-crypto-math/actions/workflows/gh-pages.yml/badge.svg
