Skip to main content

Enigma Bridge Python client

With this repo you can use Enigma Bridge encryption service.

Installation

pip install ebclient.py

Usage

Calling processData():

from ebclient.process_data import ProcessData
from ebclient.uo import Configuration, Endpoint, SimpleRetry, UO
from ebclient.crypto_util import *

# Construct general configuration (endpoint, request config)
cfg = Configuration()
cfg.endpoint_process = Endpoint.url('https://site2.enigmabridge.com:11180')
cfg.api_key = 'API_TEST'

# UO you want to work with
uo_aes = UO(uo_id=0xee01,
            uo_type=0x4,
            enc_key=from_hex('e134567890123456789012345678901234567890123456789012345678901234'),
            mac_key=from_hex('e224262820223456789012345678901234567890123456789012345678901234'),
            configuration=cfg)

# ProcessData itself
pd = ProcessData(uo=uo_aes, config=cfg)
result = pd.call(from_hex('6bc1bee22e409f96e93d7e117393172a'))
print(from_hex('95c6bb9b6a1c3835f98cc56087a03e82') == result)

For more usage examples please refer to tests and our API documentation.

Dependencies

pip install pycrypto requests

Or to install to home directory

pip install --user pycrypto requests

If the error ImportError: No module named Crypto is thrown it’s needed to run pip with --upgrade and update pycrypto to the latest version.

Compatibility

We should be compatible with Python 2.6+ and Python 3+.

Troubleshooting

Error in installation of dependencies (cryptography, pyOpenSSL): sorry, but this version only supports 100 named groups [100-named-groups]

Solution: Install downgraded version of pycparser and pyOpenSSL:

pip install pycparser==2.13
pip install pyOpenSSL==0.13
pip install cryptography

You may need to install some deps for the python packages

yum install gcc g++ openssl-devel libffi-devel python-devel

SNI on Python < 2.7.9

TLS SNI support was added to Python. For earlier versions SNI needs to be added to Requests networking library.

pip install urllib3
pip install pyopenssl
pip install ndg-httpsclient
pip install pyasn1

Mac OSX installation

For new OSX versions (El Capitan and above) the default system python installation cannot be modified with standard means. There are some workarounds, but one can also use --user switch for pip.

pip install --user cryptography

Metadata

Release files for ebclient.py 0.1.22

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ebclient.py 0.1.22
File Size Uploaded
ebclient.py-0.1.22.tar.gz 21.4 kB Details

Release files / ebclient.py-0.1.22.tar.gz

Download URL ebclient.py-0.1.22.tar.gz
Size 21.4 kB
Tags Source
SHA-256 checksum
How to use checksums
2b6c88d61cf0dc8a39f54129a394fcb71c50f1a3730186eb9977216fa6892dbc
BLAKE2b-256 checksum
How to use checksums
6bc87e22f2bd8d46389f208e97e060e37f243d3a0c25ae49a94ccfc723ddd45b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.22 This release

1 release file

0.1.21

1 release file

0.1.20

1 release file

0.1.19

1 release file

0.1.18

1 release file

0.1.17

1 release file

0.1.16

1 release file

0.1.15

1 release file

0.1.14

1 release file

0.1.13

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page