Skip to main content

AesBridge is a modern, secure and cross-language AES encryption library

Project description

AesBridge Python

PyPI Version CI Status CI Status

AesBridge is a modern, secure, and cross-language AES encryption library. It offers a unified interface for encrypting and decrypting data across multiple programming languages. Supports GCM, CBC, and legacy AES Everywhere modes.

This is the Python implementation of the core project.
👉 Main repository: https://github.com/mervick/aes-bridge

Features

  • 🔐 AES-256 encryption in GCM (recommended) and CBC modes
  • 🌍 Unified cross-language design
  • 📦 Compact binary format or base64 output
  • 🐍 Pure Python with zero dependencies (except cryptography)
  • ✅ HMAC Integrity: CBC mode includes HMAC verification
  • 🔄 Backward Compatible: Supports legacy AES Everywhere format

Quick Start

Installation

pip install aes-bridge

Usage

from aes_bridge import encrypt, decrypt

ciphertext = encrypt("My secret message", "MyStrongPass")
plaintext = decrypt(ciphertext, "MyStrongPass")

API Reference

Main Functions (GCM by default)

  • encrypt(data, passphrase)
    Encrypts a string using AES-GCM (default).
    Returns: base64-encoded string.

  • decrypt(data, passphrase)
    Decrypts a base64-encoded string encrypted with AES-GCM.

GCM Mode (recommended)

  • encrypt_gcm(data, passphrase)
    Encrypts a string using AES-GCM. Returns: base64-encoded string.

  • decrypt_gcm(data, passphrase)
    Decrypts a base64-encoded string encrypted with encrypt_gcm.

  • encrypt_gcm_bin(data, passphrase)
    Returns encrypted binary data using AES-GCM.

  • decrypt_gcm_bin(data, passphrase)
    Decrypts binary data encrypted with encrypt_gcm_bin.

CBC Mode

  • encrypt_cbc(data, passphrase)
    Encrypts a string using AES-CBC. HMAC is used for integrity verification.
    Returns: base64-encoded string.

  • decrypt_cbc(data, passphrase)
    Decrypts a base64-encoded string encrypted with encrypt_cbc and verifies HMAC.

  • encrypt_cbc_bin(data, passphrase)
    Returns encrypted binary data using AES-CBC with HMAC.

  • decrypt_cbc_bin(data, passphrase)
    Decrypts binary data encrypted with encrypt_cbc_bin and verifies HMAC.

Legacy Compatibility

⚠️ These functions are kept for backward compatibility only. Their usage is strongly discouraged in new applications.

  • encrypt_legacy(data, passphrase)
    Encrypts a string in the legacy AES Everywhere format.

  • decrypt_legacy(data, passphrase)
    Decrypts a string encrypted in the legacy AES Everywhere format.

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

aes_bridge-2.0.4.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aes_bridge-2.0.4-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file aes_bridge-2.0.4.tar.gz.

File metadata

  • Download URL: aes_bridge-2.0.4.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for aes_bridge-2.0.4.tar.gz
Algorithm Hash digest
SHA256 72d85d289ac4678adad173c94e938c6061138f29a85462d93505f094acbc9ca1
MD5 7235eade1152e19011f4ec0dc089a8c5
BLAKE2b-256 5fc1ae7dfb7fbc84d48948e0d2d80878e5046211c98522045055d44332224924

See more details on using hashes here.

Provenance

The following attestation bundles were made for aes_bridge-2.0.4.tar.gz:

Publisher: publish-to-pypi.yml on mervick/aes-bridge-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aes_bridge-2.0.4-py3-none-any.whl.

File metadata

  • Download URL: aes_bridge-2.0.4-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for aes_bridge-2.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a6e3fbd83fbdd9491fd85d578e6b28fb19388676cb1c621442ed3282f51ccb6b
MD5 4aa36efb7595507130bc8d53479973f7
BLAKE2b-256 a1cab2b362c4b606d21bce706944f149bf489e0d00502cdb475a6247a0e1f7bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for aes_bridge-2.0.4-py3-none-any.whl:

Publisher: publish-to-pypi.yml on mervick/aes-bridge-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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