.. image:: https://img.shields.io/pypi/v/jaraco.crypto.svg
   :target: https://pypi.org/project/jaraco.crypto

.. image:: https://img.shields.io/pypi/pyversions/jaraco.crypto.svg

.. image:: https://github.com/jaraco/jaraco.crypto/workflows/tests/badge.svg
   :target: https://github.com/jaraco/jaraco.crypto/actions?query=workflow%3A%22tests%22
   :alt: tests

.. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json
    :target: https://github.com/astral-sh/ruff
    :alt: Ruff

.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
   :target: https://github.com/psf/black
   :alt: Code style: Black

.. image:: https://readthedocs.org/projects/jaracocrypto/badge/?version=latest
   :target: https://jaracocrypto.readthedocs.io/en/latest/?badge=latest

.. image:: https://img.shields.io/badge/skeleton-2023-informational
   :target: https://blog.jaraco.com/skeleton

A set of cryptographic routines and utilities
implemented in pure Python.

================
Acknowledgements
================

Many of the ideas and much of the code has been adapted from or inspired by
several other projects, including:

- The code repository was originally a fork of the `ctypescrypto project
  <http://code.google.com/p/ctypescrypto/>`_. The code history includes the
  full history of the ancestral project.
- The blowfish code was adapted from a module contributed to the community
  by Michael Gilfix.
