Skip to main content

Python Wrapper for openTDF SDK

Project description

OpenTDF SDK

The OpenTDF Python SDK allows developers to easily create and manage encrypted Trusted Data Format (TDF) objects and interact with Key Access and Attribute Provider services (KAS, AP).

Installation

Upgrade pip3 to the latest version and run

pip3 install opentdf

Backend services

To perform any TDF operation, first start the backend services. Follow the opentdf backend instructions here to get going quickly.

Authentication

The OpenTDF team has chosen Keycloak as its reference implementation IdP.

The OpenTDF SDK uses OIDC as authentication and authorization to verify the client has access on behalf of an entity or the a certain level of access appropriate to its subject attributes. The opentdf SDK currently supports only client attributes, not user or person entity attributes. First, create a client application in keycloak

Use the client creds to create an OIDCCredentials instance and pass into the TDFClient or NanoTDFClient. With the client initialized as such, you can use it to perform encrypt/decrypt operations on behalf of the assigned client profile.

Access control

OpenTDF enables the access control of the data by enabling attributes. The key access ABAC backend service can be used to add and remove attribute values to the client application.

Applying a data attribute to the TDF can be done using this SDK api.

client.add_data_attribute("https://example.com/attr/Classification/value/S", "optionalKasUrl")

Create TDF Object (minimal example)

import sys
from opentdf import TDFClient, NanoTDFClient, OIDCCredentials, LogLevel, TDFStorageType

# encrypt the file and apply the policy on tdf file and also decrypt.
OIDC_ENDPONT = "http://localhost:65432/"
KAS_URL = "http://localhost:65432/api/kas"
OIDC_CONFIGURATION_URL = "http://localhost:65432/auth/realms/tdf/.well-known/openid-configuration"
try:
    # Create OIDC credentials object
    oidc_creds = OIDCCredentials(OIDC_CONFIGURATION_URL)
    oidc_creds.set_client_id_and_client_secret(client_id = "tdf-client",
                                 client_secret = "123-456")

    client = TDFClient(oidc_credentials = oidc_creds,
                        kas_url = KAS_URL)
    client.enable_console_logging(LogLevel.Warn)

    #################################################
    # TDF - File API
    ################################################


    client.add_data_attribute("https://example.com/attr/Classification/value/S", KAS_URL)

    # NOTE: Make sure sample.txt file exists
    
    sampleTxtStorage = TDFStorageType()
    sampleTxtStorage.set_tdf_storage_file_type("sample.txt")
    client.enable_benchmark()
    client.encrypt_file(sampleTxtStorage, "sample.txt.tdf")

    sampleTdfStorage = TDFStorageType()
    sampleTdfStorage.set_tdf_storage_file_type("sample.txt.tdf")
    client.decrypt_file(sampleTdfStorage, "sample_out.txt")

    #################################################
    # TDF - Data API
    #################################################

    plain_text = 'Hello world!!'
    sampleStringStorage = TDFStorageType()
    sampleStringStorage.set_tdf_storage_string_type(plain_text)
    tdf_data = client.encrypt_data(sampleStringStorage)

    sampleEncryptedStringStorage = TDFStorageType()
    sampleEncryptedStringStorage.set_tdf_storage_string_type(tdf_data)
    decrypted_plain_text = client.decrypt_data(sampleEncryptedStringStorage)

    if plain_text == decrypted_plain_text:
        print("TDF Encrypt/Decrypt is successful!!")
    else:
        print("Error: TDF Encrypt/Decrypt failed!!")


    #################################################
    # Nano TDF - File API
    ################################################

    # create a nano tdf client.
    nano_tdf_client = NanoTDFClient(oidc_credentials = oidc_creds,
                                 kas_url = KAS_URL)
    nano_tdf_client.enable_console_logging(LogLevel.Warn)
    nano_tdf_client.enable_benchmark()

    sampleTxtStorageNano = TDFStorageType()
    sampleTxtStorageNano.set_tdf_storage_file_type("sample.txt")
    nano_tdf_client.encrypt_file(sampleTxtStorageNano, "sample.txt.ntdf")

    sampleTdfStorageNano = TDFStorageType()
    sampleTdfStorageNano.set_tdf_storage_file_type("sample.txt.ntdf")
    nano_tdf_client.decrypt_file(sampleTdfStorageNano, "sample_out.nano.txt")

    #################################################
    # Nano TDF - Data API
    #################################################

    plain_text = 'Hello world!!'
    sampleStringStorageNano = TDFStorageType()
    sampleStringStorageNano.set_tdf_storage_string_type(plain_text)
    nan_tdf_data = nano_tdf_client.encrypt_data(sampleStringStorageNano)

    sampleEncryptedStringStorageNano = TDFStorageType()
    sampleEncryptedStringStorageNano.set_tdf_storage_string_type(nan_tdf_data)
    decrypted_plain_text = nano_tdf_client.decrypt_data(sampleEncryptedStringStorageNano)

    if plain_text == decrypted_plain_text.decode("utf-8"):
        print("Nano TDF Encrypt/Decrypt is successful!!")
    else:
        print("Error: Nano TDF Encrypt/Decrypt failed!!")

except:
    print("Unexpected error: %s" % sys.exc_info()[0])
    raise

License

OpenTDF is licensed under the Clear BSD License.

See the LICENSE file for more details.

Terms of Service

Privacy Policy

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

opentdf-1.5.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded PyPy macOS 11.0+ ARM64

opentdf-1.5.5-pp310-pypy310_pp73-macosx_10_9_x86_64.whl (4.1 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

opentdf-1.5.5-pp39-pypy39_pp73-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded PyPy macOS 11.0+ ARM64

opentdf-1.5.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (4.1 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

opentdf-1.5.5-pp38-pypy38_pp73-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded PyPy macOS 11.0+ ARM64

opentdf-1.5.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (4.1 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

opentdf-1.5.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (4.1 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

opentdf-1.5.5-cp312-cp312-macosx_11_0_arm64.whl (3.8 MB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

opentdf-1.5.5-cp312-cp312-macosx_10_9_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

opentdf-1.5.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

opentdf-1.5.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

opentdf-1.5.5-cp311-cp311-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

opentdf-1.5.5-cp311-cp311-macosx_10_9_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

opentdf-1.5.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

opentdf-1.5.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

opentdf-1.5.5-cp310-cp310-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

opentdf-1.5.5-cp310-cp310-macosx_10_9_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

opentdf-1.5.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

opentdf-1.5.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

opentdf-1.5.5-cp39-cp39-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

opentdf-1.5.5-cp39-cp39-macosx_10_9_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

opentdf-1.5.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

opentdf-1.5.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

opentdf-1.5.5-cp38-cp38-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

opentdf-1.5.5-cp38-cp38-macosx_10_9_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

opentdf-1.5.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

opentdf-1.5.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.1 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

opentdf-1.5.5-cp37-cp37m-macosx_10_9_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

opentdf-1.5.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

opentdf-1.5.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.1 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ ARM64

File details

Details for the file opentdf-1.5.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 835e60092509c3423eab2533bafc0e1b489edc5f41681983c8e29f4148982d79
MD5 fc11198b6759365512f7a4374f602d2d
BLAKE2b-256 1cde0d5d5615012c9972d734182cf9ac81bec842cac25f8885140135d759fc51

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-pp310-pypy310_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-pp310-pypy310_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 35ecd2c16259bda8a0263d904c1e1c2c8fb15344417ccdf09a507e5a69bd17dd
MD5 4e0c5f912f67c3c9fe24d793f4df7d1a
BLAKE2b-256 8db6afba4c8c77e9f28cb47b3e8e25574aa912972bd928bb821788e3529ebea6

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-pp39-pypy39_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-pp39-pypy39_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d674895156a8a302219b9b4c232ecd7c5d9cbcd3da95e8735f676d46a476cbaf
MD5 8e5886b858d60bab789fb7be1df64359
BLAKE2b-256 5d4773d3d480f31907e0b5ed598b764fec422f76df262d12c1770df092e00a09

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cc6671bd91b7e1128e1daf66c4ebdeff748682b50f6999d74cd3041bba26e55d
MD5 9b24ef12c585ce482d276528597c0f25
BLAKE2b-256 127283a74684102bee2a6c0a8f18787e84b9e46c6c80e50c9a376dacaa9317a9

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-pp38-pypy38_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-pp38-pypy38_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b51a3912cec2d25e77734576741f3505737e6aed344daa6856d4d5702b74d0e6
MD5 e5a5a5d565945d78431c67b1fad43e2d
BLAKE2b-256 1fa49898f94bb9fb370f53891418ffecc50e246964231d8ed6bf07f501375949

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 10c39200bbdd54830508cc3ed33aa13541fc0a0b242b809f7d7fa62bf26a41a6
MD5 b359f17b267ed4f3ec5074ecfe6f9393
BLAKE2b-256 207c436d07dad2bc1735ac5ddcc1de51ee5e0c9a24dc85b7187525e5840016fc

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c8ae8a4c8ae8f257849add7ac97f795dc70c153d7e93edfd2d94c69c356ecb00
MD5 154c62fb048c787fba50d2e87583e9f9
BLAKE2b-256 d9ce7a7a2df22022b8e7e60b0c9b83f36da6aaac8e0295a1a192a4d4e4154c9b

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2887e9a25d283ab8f1b46c0bf7e68754f65da99f255c99c132c74571818f7532
MD5 1c9f1a755d2d4d2b7c2f4e3c3e1d2c13
BLAKE2b-256 ce8991bd0aee29e966804c4acce60cca50e54c465d5b5d8391de5964167e748b

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0ef5fab49e113d2ec371e9c10d411bf9f92a90bbe78b27083f0e097ba0de4edb
MD5 8beeaaa25cce5ec68be2b469c1510ad7
BLAKE2b-256 6793b9cde7305aaf22d05a771ace716515694a60bf1f6d33ab214fd5e4c3fa36

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 45df5512d6eb6b5c85b7d41cffa6df990c3c5ae3e873c20112060bce6de84133
MD5 69734637bf2149f88dada07214d4a188
BLAKE2b-256 7e300c69820acc8492154f8f9e7baf2470a3284fbe646a16fa3823dc8671834c

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8980b74eaf849b143c20fdc84ea26f46b3662aa16e834610bc0c40e03c972bc0
MD5 9d7788a36a5aeb8055be9777d06887a0
BLAKE2b-256 7fd9fd91fc493746408967aceac7621a97ff5a2ad0d1c364b2036419830bbcd0

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 09ba57308a20d9ad31cc74b8016f011e98648f55361c217e18c1de36be161f50
MD5 2a44452aa18b0623ed09713d7265650f
BLAKE2b-256 6b5a88f1b018e5054b90c5db52f8d7cda59012b612978104356d0a9a7e3fe45c

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0e0bb6376b63f84eb7d815e490887809726c94ad8950ea4f0d3d5fe94d765110
MD5 ce120ce8449fa10483fc7cbe2ab03afd
BLAKE2b-256 e49e83cdcd840b08d82f4c437a9fa80913c62d062b9d0182dbba88d65d6fb2f9

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2ebd536c8e94d994707afaa6f646ce56aa6eacdb96b2566caf24f32cb9bcf873
MD5 b1dfb30b930915af9855de8e862ef5b9
BLAKE2b-256 35b67d22137d19f6f7c54ef4f0f977e3a296166fa2370a1d30af8a1921861ce4

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 41affd88d2889267688974443850ac62248b4e51c9f6404f2d0224d4ea9f6832
MD5 11fef7f7b6cf30ad17040f002abefa1b
BLAKE2b-256 67989d1c03317bd1ce395e0720cf0b7fea9ba34ad04e53a0a3a09efec9fa8990

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0e41ef50ac4d85095524670ee0806f7f5c2ffcd54cae8fb729df69973fa31874
MD5 39ef516c535f53d9a2f097c061453f47
BLAKE2b-256 f583b7739c8fce79963771c4cb628710b2f3a574bee44a5c0ff95590c9aef0b7

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 102fac18e77b46a9e2eb747c754ba7a2b2cfab2d6cb70904a190c7dc7dff66d9
MD5 1a82f669987754be4eb30be13e8ea367
BLAKE2b-256 42752ed84e0ffccfa62e782b7282339573bdc12008935c5415fc334eb8c085a5

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9264a0a9f01a3d7dce36d9ab40ca0dec199dd11f08eb680d994f680509979c9a
MD5 efb08fae6231fa6d95283997362b2021
BLAKE2b-256 c1175264f5acce60eadf0ac3dfba163c7f892ec4f6828cf9c5bd900aec4b2eda

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2d1c40a74e179eac87f9794ec0f51b59412aedfb1453fcaff62a46beb427147d
MD5 ece733d4976818be8a023abf1594b194
BLAKE2b-256 098fe4418b83c474174efa787030f072ff3e7c546a6a244d75fb0294ebcb253c

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5d59ae669a80e7685f96e27471a6812d4c7d93708217d36f318c553df06e7e8a
MD5 0cd85558398ca0b61a232cb00129bcb3
BLAKE2b-256 2907585018d1dd1cf948567d3be74faf23f7ade506993f6a0dae88348c90be8b

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 be976abd96a1c6abc9713ae7fe87b90229fd8a5c8383f386a978d7dd454b3e5d
MD5 7e0124736d8a53142d9cc04c5922aafe
BLAKE2b-256 50f3a9daed80b913fe7544366e2232b1633a52c39eecd7cc87868978b5ebf373

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f5dd644d4d27b4d1f7300e4bf1c2a173c5af4902523ef67c46a0fec09563d6e0
MD5 434c0bfa2817771ad64c8aa66983e6c3
BLAKE2b-256 8b770c9ccd81e574741411feaaee48f80561174d2ac6c30ba98ad988906eb663

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 687aacc4e55cb49bef28f5311352fe5c601fc899fb144f98b520d2bfbe0ce367
MD5 5dd2c4771ed7f655178cf821fb1c4164
BLAKE2b-256 5c07260b451ecb68e451200eb2567c53a92b61eda834c818760d4a244e1bdf6b

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 03da64cf87e75965a3ec6887d62496ea9ff77383a1bf8d492a4402b4cadcd30a
MD5 b0bcba957ce1f4311dc5df09f93cd0f8
BLAKE2b-256 4d6ddb4a6b4be60a3098b5a08538d5b0fbc143628316235eed67a8b230833195

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c9866144bc647aec45f06a0f8b88364ba1ddf6679212360437717271fe036d25
MD5 235b71b42050d4de08de71c6e6eec2dc
BLAKE2b-256 450b1c242e2be970680480d05c37974288e9555308d41baadba12f58267482c1

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7646b8e2535f72102788b2bcfaae7214b2c2413d984d941ee38763c0d9646367
MD5 8e0fa34691615b0d9bdcde63091bfe64
BLAKE2b-256 c0078c19b150cb15a7d98c55349cc5adc05d98aabe5a0e248e67947bcd3c9af0

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d1b7f77e284a3cfec90863568b733942a43028572a5fc58a1c2ac3931b9bdfb6
MD5 e740eff8d9ce3d065641c9d94e59594a
BLAKE2b-256 9b14af4f75a10e79cf161cc8154f299f5775f37980fbb5895f69ff4b1e86589d

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 983dab4b30521badbd3ab0b2eba692132e4cd10a1816d387d020d68d916a8570
MD5 7d5d022cdacf9ec525936c7d7a53f4e9
BLAKE2b-256 2bb9816db4583b552da728913be91ee333b080a5de314ca46841d05d519f0bdd

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 378ee1896554c8a230a13033329aa5366070f9b21814288d4ae12935dbbdf05e
MD5 95d9b6ad770708f5818323e470de0705
BLAKE2b-256 d466df36da2aad2c059991a3254f6ff0f468285a331793957876fa85abbf39c7

See more details on using hashes here.

File details

Details for the file opentdf-1.5.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for opentdf-1.5.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a87e97254e707b3c2ce1dbcd207ea8d388367f2ade8691f1f302a745c5e9a3a3
MD5 51404fd58d335ed84424839e00cafff6
BLAKE2b-256 d87d2445eeab180dc6568d8893c8c8cd04c12735b743bd029d8d2248a3d7bb87

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