Skip to main content

A crypto library for encrypting text data.

Reason this release was yanked:

bug fix

Project description

Alguns

Alguns is a symmetric encryption method that contains 2 keys, without which decryption of the message is impossible.

Alguns also uses 128-bit AES in CBC mode and PKCS7 padding.

Letters and symbols are encrypted using the replacement method generate_replacement. A replacement character for a letter consists of [randomSymbol, randomNumber(0,99), randomSymbol, randomNumber(0,99)]. A Alguns key as returned by the generate_key actually contains two 16-byte keys: A signing key used to sign the HMAC.

A private key used by the encryption. These two values are concatenated to form a 32 byte value. This 32 byte key is then encoded using Base64 encoding. This encodes the binary quantity as string of ASCII characters. The variant of Base64 used is URL and filename safe, meaning that it doesn't contain any characters that aren't permitted in a URL or a valid filename in any major operating system.


Supported Languages:

  • Russian
  • English

Installation

The installation method for this module is shown below.

pip3 install alguns


How generate keys?
key = Alguns.generate_key()
replacement = Alguns.generate_replacement()
# Put this somewhere safe!
How to encrypt a message?
mykey = # My key that I created earlier.
myreplacement = # My replacement that I created earlier.
al = Alguns(key=mykey, replacement=myreplacement)
msgcrypt = al.crypt('Hellow it is my message! Привет, это мое сообщение...')
print(msgcrypt)
# gAAAAABewxb_nE1mbHgN7ma79_XAbh68hLblIFdX3czIEmUDCSFWxMXTTEdIU5...
How to decrypt a message?
al = Alguns(key=mykey, replacement=myreplacement)
msgdecrypt = al.decrypt('gAAAAABewxb_nE1mbHgN7ma79_XAbh68hLblIFdX3czIEmUDCSFWxMXTTEdIU5...')
print(msgdecrypt)
# Hellow it's my message! Привет, это мое сообщение...

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

alguns-0.1.1.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

alguns-0.1.1-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file alguns-0.1.1.tar.gz.

File metadata

  • Download URL: alguns-0.1.1.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.8.1 Darwin/20.2.0

File hashes

Hashes for alguns-0.1.1.tar.gz
Algorithm Hash digest
SHA256 83115dfba1a9ce39f66898494ef5f8bd2ead33427aff2f8fd619482a2503a5b6
MD5 fdced35fb79a713572d7f0a189dfb2f1
BLAKE2b-256 02e7771270e6da18e25c6b500891ca958fab863021d68a55012bc88096ddac56

See more details on using hashes here.

File details

Details for the file alguns-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: alguns-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.8.1 Darwin/20.2.0

File hashes

Hashes for alguns-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6bfcc70c15039c8e5dc47a53125a23d7a1b107454edc4751d6b7a84c9a362b83
MD5 a347aece168c282093d37e6fbfaa4c32
BLAKE2b-256 d456e50c9e00e86654cc2104e320b5cbffb99bea0f173c851dbf5d817fc4f077

See more details on using hashes here.

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