Skip to main content

Python bindings for abcrypt

Project description

Python Bindings for abcrypt

CI PyPI Version PyPI Python Version crates.io Version MSRV Docs License

abcrypt-py is the Python bindings for the abcrypt crate.

Usage

Installation

To install this library:

pip install abcrypt-py

Example

from typing import Final

import abcrypt_py

DATA: Final[bytes] = b"Hello, world!\n"
PASSPHRASE: Final[bytes] = b"passphrase"

# Encrypt `DATA` using `PASSPHRASE`.
ciphertext = abcrypt_py.encrypt(DATA, PASSPHRASE)
assert ciphertext != DATA

# And extract the Argon2 parameters from it.
params = abcrypt_py.Params(ciphertext)
assert params.memory_cost == 19456
assert params.time_cost == 2
assert params.parallelism == 1

# And decrypt it back.
plaintext = abcrypt_py.decrypt(ciphertext, PASSPHRASE)
assert plaintext == DATA

Documentation

See the documentation for more details.

Minimum supported Rust version

The minimum supported Rust version (MSRV) of this library is v1.74.0.

Development

maturin is required for development of this library.

python3 -m venv venv
source venv/bin/activate
maturin develop
pip3 install abcrypt-py[test,dev]

Changelog

Please see CHANGELOG.adoc.

Contributing

Please see CONTRIBUTING.adoc.

License

Copyright © 2022–2024 Shun Sakai (see AUTHORS.adoc)

This library is distributed under the terms of either the Apache License 2.0 or the MIT License.

This project is compliant with version 3.0 of the REUSE Specification. See copyright notices of individual files for more details on copyright and licensing information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

abcrypt_py-0.1.4.tar.gz (35.1 kB view hashes)

Uploaded Source

Built Distributions

abcrypt_py-0.1.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.0 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

abcrypt_py-0.1.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

abcrypt_py-0.1.4-pp310-pypy310_pp73-macosx_11_0_arm64.whl (196.9 kB view hashes)

Uploaded PyPy macOS 11.0+ ARM64

abcrypt_py-0.1.4-pp310-pypy310_pp73-macosx_10_12_x86_64.whl (220.3 kB view hashes)

Uploaded PyPy macOS 10.12+ x86-64

abcrypt_py-0.1.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.0 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

abcrypt_py-0.1.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

abcrypt_py-0.1.4-pp39-pypy39_pp73-macosx_11_0_arm64.whl (196.8 kB view hashes)

Uploaded PyPy macOS 11.0+ ARM64

abcrypt_py-0.1.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl (220.3 kB view hashes)

Uploaded PyPy macOS 10.12+ x86-64

abcrypt_py-0.1.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.2 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

abcrypt_py-0.1.4-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.5 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

abcrypt_py-0.1.4-pp38-pypy38_pp73-macosx_11_0_arm64.whl (197.2 kB view hashes)

Uploaded PyPy macOS 11.0+ ARM64

abcrypt_py-0.1.4-pp38-pypy38_pp73-macosx_10_12_x86_64.whl (220.5 kB view hashes)

Uploaded PyPy macOS 10.12+ x86-64

abcrypt_py-0.1.4-cp312-none-win_amd64.whl (146.2 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

abcrypt_py-0.1.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (240.0 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

abcrypt_py-0.1.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (219.2 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

abcrypt_py-0.1.4-cp312-cp312-macosx_11_0_arm64.whl (195.8 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

abcrypt_py-0.1.4-cp312-cp312-macosx_10_12_x86_64.whl (219.1 kB view hashes)

Uploaded CPython 3.12 macOS 10.12+ x86-64

abcrypt_py-0.1.4-cp311-none-win_amd64.whl (147.2 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

abcrypt_py-0.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.3 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

abcrypt_py-0.1.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.4 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

abcrypt_py-0.1.4-cp311-cp311-macosx_11_0_arm64.whl (197.1 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

abcrypt_py-0.1.4-cp311-cp311-macosx_10_12_x86_64.whl (220.5 kB view hashes)

Uploaded CPython 3.11 macOS 10.12+ x86-64

abcrypt_py-0.1.4-cp310-none-win_amd64.whl (147.2 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

abcrypt_py-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.3 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

abcrypt_py-0.1.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.4 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

abcrypt_py-0.1.4-cp310-cp310-macosx_11_0_arm64.whl (197.1 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

abcrypt_py-0.1.4-cp310-cp310-macosx_10_12_x86_64.whl (220.6 kB view hashes)

Uploaded CPython 3.10 macOS 10.12+ x86-64

abcrypt_py-0.1.4-cp39-none-win_amd64.whl (147.4 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

abcrypt_py-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.5 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

abcrypt_py-0.1.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.6 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

abcrypt_py-0.1.4-cp39-cp39-macosx_11_0_arm64.whl (197.3 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

abcrypt_py-0.1.4-cp39-cp39-macosx_10_12_x86_64.whl (220.7 kB view hashes)

Uploaded CPython 3.9 macOS 10.12+ x86-64

abcrypt_py-0.1.4-cp38-none-win_amd64.whl (147.5 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

abcrypt_py-0.1.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.5 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

abcrypt_py-0.1.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.6 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

abcrypt_py-0.1.4-cp38-cp38-macosx_11_0_arm64.whl (197.3 kB view hashes)

Uploaded CPython 3.8 macOS 11.0+ ARM64

abcrypt_py-0.1.4-cp38-cp38-macosx_10_12_x86_64.whl (220.8 kB view hashes)

Uploaded CPython 3.8 macOS 10.12+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page